DLLIMPORT
int AskMultilineQuestion(int Nx,char* Name1,byte or1,char* Quest);
DLLIMPORT
void TakeFood(GAMEOBJ* Units);
DLLIMPORT
void TakeWood(GAMEOBJ* Units);
DLLIMPORT
void TakeStone(GAMEOBJ* Units);
DLLIMPORT
void RepairBuildingsBySel(byte Nat,GAMEOBJ* Buildings);
DLLIMPORT
bool CheckBuildingsComplete(GAMEOBJ* Buildings);
DLLIMPORT
int GetKilled(GAMEOBJ* Units);
DLLIMPORT
int GetUnitsByNation(GAMEOBJ* Units,byte Nat);
DLLIMPORT
void ProduceUnit(GAMEOBJ* Units,GAMEOBJ* UnitType,GAMEOBJ* DestGroup);
DLLIMPORT
bool CreateBuilding(byte Nat,GAMEOBJ* Zone,GAMEOBJ* UnitType,GAMEOBJ* DestGroup);
DLLIMPORT
void SetDestPoint(GAMEOBJ* Units,GAMEOBJ* Zone);
DLLIMPORT
void RegisterDynGroup(GAMEOBJ* Units);
DLLIMPORT
bool NationIsErased(byte Nat);
DLLIMPORT
int GetNUnits(GAMEOBJ* Units);
struct OneUnit{
word Index;
word Serial;
word Life; //rw
word MaxLife;
byte AddDamage; //rw
byte AddShield; //rw
word Stage;
word MaxStage;
word Kills;
word NIndex;
byte Usage;
byte Building;
int x,y; //rw
byte Reserved[16];
};
DLLIMPORT
bool GetUnitInfo(GAMEOBJ* Units,int Index,OneUnit* Uni);
DLLIMPORT
void SetUnitInfo(OneUnit* Uni);
DLLIMPORT
void RemoveGroup(GAMEOBJ* Source,GAMEOBJ* Dest);
/////////////////////////////////////////////////////////////
// //
// AAA IIII //
// AA AA II //
// AA AA II //
// AAAAAAA II //
// AA AA IIII //
// //
/////////////////////////////////////////////////////////////
DLLIMPORT
int GetAINation();
DLLIMPORT
bool TryUnit(GAMEOBJ* UnitType,int Max,byte CostPercent,byte Probability);
DLLIMPORT
bool TryUpgrade(GAMEOBJ* Upgrade,int CostPercent,int Probability);
DLLIMPORT
void SetMineBalanse(int N,word* Bal);
DLLIMPORT
void SetPDistribution(int OnFood,int OnWood,int OnStone);
DLLIMPORT
void AssignAmountOfMineUpgrades(int MU);
DLLIMPORT
bool AssignMineUpgrade(word U,char* Str,word val);
DLLIMPORT
void SET_MINE_CAPTURE_RADIUS(int x);
DLLIMPORT
void SET_MINE_UPGRADE1_RADIUS(int x);
DLLIMPORT
void SET_MINE_UPGRADE2_RADIUS(int x);
DLLIMPORT
void SET_DEFAULT_MAX_WORKERS(int x);
DLLIMPORT
void SET_MIN_PEASANT_BRIGADE(int x);
DLLIMPORT
int GetMoney(byte id);
DLLIMPORT
int GetUnits(GAMEOBJ* UnitType);
DLLIMPORT
int GetReadyUnits(GAMEOBJ* UnitType);
DLLIMPORT
bool UpgIsDone(GAMEOBJ* Upgrade);
DLLIMPORT
bool UpgIsRun(GAMEOBJ* Upgrade);
DLLIMPORT
void AssignMine(char* Name);
DLLIMPORT
void AssignPeasant(char* Name);
DLLIMPORT
void AssignHouse(char* Name);
DLLIMPORT
void AssignWall(char* Name);
DLLIMPORT
bool FieldExist();
DLLIMPORT
int GetDifficulty();
DLLIMPORT
int GetStartRes();
DLLIMPORT
int GetResOnMap();
DLLIMPORT
int GetLandType();
DLLIMPORT
void SetStandartVictory();
DLLIMPORT
void SetPlayerName(byte Nat,char* ID);
inline int GetTotalAmount(GAMEOBJ* Units){
return GetTotalAmount0(Units);
};
inline int GetTotalAmount(GAMEOBJ* UnitType,byte Nation){
return GetTotalAmount1(UnitType,Nation);
};
#define REG(x) RegisterVar(&##x,sizeof x)
#define WOOD 0
#define GOLD 1
#define STONE 2
#define FOOD 3
#define IRON 4
#define COAL 5
#define LAND_AI 0
#define MEDITERR_AI 1
#define WATER_AI 2
#define EASY 0
#define NORMAL 1
#define HARD 2
#define VERY_HARD 3
#define START_NORMAL 0
#define START_RICH 1
#define START_MILLION 2
#define RES_POOR 0
#define RES_NORMAL 1
#define RES_RICH 2
#define DEVELOPMENT 0x1001
#define WATER_BATTLE 0x1002
#define LAND_BATTLE 0x1003
#define MINES_CAPTURE 0x1004
#define TOWN_DEFENCE 0x1005
#define MINES_UPGRADE 0x1006
#define FAST_DIVERSION 0x1007
//----------------------------------------------//
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
){
switch (ul_reason_for_call){
case DLL_PROCESS_ATTACH:{
OnInit();
break;
};
break;
};
return TRUE;