view Arcomage.h @ 1193:ca65b398c320

m
author Ritor1
date Fri, 07 Jun 2013 13:43:24 +0600
parents 569216b4f54d
children 9baf16113199
line wrap: on
line source

#pragma once
#include "OSAPI.h"

#include "Texture.h"

#pragma pack(push, 1)
struct am_st1
    {
    int field_0;
    int field_4;
    };
#pragma pack(pop)

/*  401 */
#pragma pack(push, 1)
struct Acromage_st1
    {
    int uCardId;
    int field_4;
    POINT field_8;
    int field_10_xplus;
    int field_14_y_plus;
    POINT field_18_point;
    };
#pragma pack(pop)


/*  272 */
#pragma pack(push, 1)
struct ArcomageCard
    {
    char pCardName[32];
    int slot;
    char field_24;
    char field_25;
    char field_26;
    char field_27;
    char field_28;
    char field_29;
    char field_2A;
    char field_2B;
    char field_2C;
    char field_2D;
    char field_2E;
    char field_2F;
    char field_30;
    char field_31;
    char field_32;
    char field_33;
    char field_34;
    char field_35;
    char field_36;
    char field_37;
    char field_38;
    char field_39;
    char field_3A;
    char field_3B;
    char field_3C;
    char field_3D;
    char field_3E;
    char field_3F;
    char field_40;
    char field_41;
    char field_42;
    char field_43;
    char field_44;
    char field_45;
    char field_46;
    char field_47;
    char field_48;
    char field_49;
    char field_4A;
    char field_4B;
    char field_4C;
    char field_4D;
    char field_4E;
    char field_4F;
    char field_50;
    char field_51;
    char field_52;
    char field_53;
    char field_54;
    char field_55;
    char field_56;
    char field_57;
    char field_58;
    char field_59;
    char field_5A;
    char field_5B;
    char field_5C;
    char field_5D;
    char field_5E;
    char field_5F;
    char field_60;
    char field_61;
    char field_62;
    char field_63;
    char field_64;
    char field_65;
    char field_66;
    char field_67;
    char field_68;
    char field_69;
    char field_6A;
    char field_6B;
    };
#pragma pack(pop)




#pragma pack(push, 1)
struct ArcomagePlayer
{
  char pPlayerName[32];
  int field_20;
  int field_24;
  int field_28;
  int field_2C;
  int field_30;
  int field_34;
  int field_38;
  int field_3C;
  int field_40;
  int cards_at_hand[10];
  am_st1 arr_6C[10];
};
#pragma pack(pop)



#pragma pack(push, 1)
struct ArcomageGame_stru1
{
  int field_0;
  int field_4;
  int field_8;
};
#pragma pack(pop)




#pragma pack(push, 1)
struct ArcomageGame
{
  ArcomageGame();

  static bool LoadBackground();
  static bool LoadSprites();
  static bool MsgLoop(int a1, ArcomageGame_stru1 *a2);
  static void PlaySound(unsigned int event_id);
  static void OnMouseClick(char right_left, bool bDown);
  static void OnMouseMove(POINT *pXY);
  static void GetCardRect(unsigned int uCardID, RECT *pCardRect);

  static void Loop();

  char field_0;
  char field_1;
  char field_2;
  char field_3;
  int field_4;
  ArcomageGame_stru1 stru1;
  tagMSG msg;
  int mouse_x;
  int mouse_y;
  char mouse_left;
  char field_39;
  char mouse_right;
  char field_3B;
  unsigned __int16 *pBackgroundPixels;
  unsigned __int16 *pSpritesPixels;
  unsigned __int16 *pBlit_Copy_pixels;
  struct GUIFont *pfntComic;//ptr_48;
  struct GUIFont *pfntArrus;//ptr_4C;
  int field_50;
  __int16 field_54;
  __int16 field_56;
  RGBTexture pGameBackground;
  RGBTexture pSprites;
  int event_timer_time;
  int uGameResult;
  int field_B0;
  char pPlayer1Name[32];
  char pPlayer2Name[32];
  char field_F4;
  char field_F5;
  char field_F6;
  char field_F7;
  char field_F8;
  char field_F9;
  char bGameInProgress;
};
#pragma pack(pop)




extern ArcomageGame *pArcomageGame;
extern ArcomageCard pCards[87];
extern ArcomagePlayer am_Players[2];


#pragma pack(push, 1)
struct stru272_stru1
    {
    int field_0;
    POINT field_4;
    int field_C;
    int field_10;
    int field_14;
    int field_18;
    };
#pragma pack(pop)

/*  404 */
#pragma pack(push, 1)
struct stru272_stru2
    {
    int field_0;
    int field_4;
    int field_8;
    int field_C;
    int field_10;
    int field_14;
    int field_18;
    float field_1Cf;
    int field_20;
    float field_24f;
    float field_28f;
    float field_2Cf;
    int field_30;
    int field_34;
    stru272_stru1* field_38;
    };
#pragma pack(pop)


/*  270 */
#pragma pack(push, 1)
struct stru272_stru0         // ARCOMAGE stuff
{
  static void _40DFD1(stru272_stru0 *a1);
  int _40DFFE();
  int _40E01A(stru272_stru2* a2);
  int _40E0F5(char a2, char a3);
  int _40E133();
  int _40E2A7();

  int signature;
  int field_4;
  int field_8;
  int field_C;
  int field_10;
  int field_14;
  int field_18;
  int field_1C;
  int field_20;
  int field_24;
  float field_28;
  float field_2C;
  float field_30;
  int field_34;
  int field_38;
  int field_3C;
  int field_40;
  int field_44;
  int field_48;
  int field_4C;
  int field_50;
  stru272_stru1 * field_54;
  char field_58;
  char field_59;
  char field_5A;
  char field_5B;
};
#pragma pack(pop)


/*  266 */
//#pragma pack(push, 1)
//struct stru272
//{
//  void _40DFD1();
//
//  struct stru272_stru0 *ptr_0;
//  char field_4[4264];
//};
//#pragma pack(pop)






#pragma pack(push, 1)
struct stru272
    {
    char field_0;
    char field_1;
    char field_2;
    char field_3;
    stru272_stru2 field_4;
    /*int field_4;
    int field_8;
    int field_C;
    int field_10;
    int field_14;
    int field_18;
    int field_1C;
    float field_20f;
    int field_24;
    float field_28f;
    float field_2Cf;
    float field_30f;
    int field_34;
    int field_38;
    stru272_stru1* field_3C;*/
    stru272_stru0 *field_40;
    stru272_stru1 field_44[150];
    };
#pragma pack(pop)