void AssignNation(byte Src,byte Dst);
bool RegisterUnits(GAMEOBJ* GOBJ,char* Name);
Registration of Group.(&Group_perem.,”Name Group ”);
bool RegisterString(GAMEOBJ* GOBJ,char* ID);
bool RegisterSound(GAMEOBJ* GOBJ,char* Name);
void RegisterVar(void* Var,int size);(&____,size in bytes);
Variable registration (For variable storing)
void RegisterZone(GAMEOBJ* GOBJ,char* Name);
Zone registration .(&Zone_perem.,”Name Zone ”);
void RegisterVisibleZone(GAMEOBJ* GOBJ,char* Name);
?
bool RegisterUnitType(GAMEOBJ* GOBJ,char* Name);
Registration of unit’s type (&<type of variable>,”<Type of a unit from the description file of the nations .nds>”).
bool RegisterUpgrade(GAMEOBJ* GOBJ,char* Name);
Upgrade registration. (“<type a variable>,”<Type of an upgrade from the file of description of the nation.nds>”).
void InitialUpgrade(char* Grp,char* Upgrade);
Make an instant upgrade (“<Group name>”,”<Name of upgrade from file of description of the nation .nds >”). The group is necessary for nation instruction in which the upgrade becomes.
bool RegisterFormation(GAMEOBJ* GOBJ,char* Name);
Formation registration (necessary for creation of dynamic groups of units) (&”Variable of formation”,”<Name of construction from file orders.lst>”).
bool RegisterUnitsForm(GAMEOBJ* GOBJ,char* Name);
?
int GetUnitsAmount0(GAMEOBJ* Zone,byte Nation);
Returns a quantity of units of nation “NATION” in zone “ZONE”.
int GetUnitsAmount1(GAMEOBJ* Zone,GAMEOBJ* Group);
Returns a quantity of units of group “GROUP” in zone “ZONE”.
int GetUnitsAmount2(GAMEOBJ* Zone,GAMEOBJ* UnitType,byte Nation);
Returns a quantity of units of type “UnitType” of nation “Nation” in zone “ZONE”.
int GetTotalAmount0(GAMEOBJ* Group);
Returns a quantity of units in group “Group”.
int GetTotalAmount1(GAMEOBJ* UnitType,byte Nation);
Returns a quantity of units of nation “Nation” in group “Group”.
int GetReadyAmount(GAMEOBJ* UnitType,byte Nation);
?
bool IsUpgradeDoing(GAMEOBJ* Upgrade,byte Nation);
?
bool IsUpgradeDone(GAMEOBJ* Upgrade,byte Nation);
?
int GetAmountOfWarriors(byte Nat);
???
bool IsUpgradeEnabled(GAMEOBJ* Upgrade,byte Nation);
?
int GetDied(GAMEOBJ* UnitType,byte Nation);
?
bool CreateObject0(GAMEOBJ* DstObj,GAMEOBJ* Form,GAMEOBJ* UnitType,byte NatID,GAMEOBJ* Zone,byte Direction);
(&<Variable of dynamic group>, &<Variable of formation>, &<Variable of type of unit>, Nation, &<Variable of zone, in which units are created>, Direction)
Creates the dynamic group of nation “Nation” with direction “Direction”.
void ClearSelection(byte Nat);
Remove an allocation from units of nanion “Nat”.
void SelectUnits(GAMEOBJ* Group,bool Add);
Allocate units of group “Group”. “Add” shows, whether they will be united with previous allocation (1 – yes, 0 - no).
void SelectUnitsType(GAMEOBJ* UnitsType,byte Nat,bool Add);
?
void SelectUnits1(byte Nat, GAMEOBJ* Group, bool Add);
Allocate units of group “Group” of nation “Nat”. Add shows, whether they will be united with previous (1 – yes, 0 - no).
int GetNInside(byte Nat);
Returns quantity of units inside !The allocated! Of changer of nation “Nat”.
int GetMaxInside(byte Nat);
?
void PushUnitAway(byte Nat);
Put ashore(on beach) one unit from !The allocated! Of changer of nation “Nat”.
bool CheckLeaveAbility(byte Nat);
Returns 1, if !The allocated! Changer of nation “Nat” has moored to coast (differently 0).
void SendUnitsToTransport(byte Nat);
Get allocated units in allocated changer of nation “Nat”.
void PushAllUnitsAway(byte Nat);
Put ashore all units from !The allocated! Of changer of nation “Nat”.
void AttackZoneByArtillery(GAMEOBJ* ArtGroup,GAMEOBJ* Zone,byte Nat);
To fire units and constructions of nation “Nat” in zone “Zone” of artillery group “ArtGroup”.
void AttackBuildingsInZone(GAMEOBJ* ArtGroup,GAMEOBJ* Zone,byte Nat);
Обстреливать постройки нации Nat в зоне Zone артиллерией группы ArtGroup.
bool SelDie(byte Nat);
Kill the allocated units of nation “Nat”
bool SelOpenGates(byte Nat);
Open the allocated gate of nation “Nat”
bool SelCloseGates(byte Nat);
Close the allocated gate of nation “Nat”
bool SelSendTo(byte Nat,GAMEOBJ* Zone,byte Dir,byte Type);
Send the allocated units of nation “Nat” in zone “Zone”. Arrange them there in direction “Dir”. If “Type” is equal 2, then remember the previous way.
bool SelSendAndKill(byte Nat,GAMEOBJ* Zone,byte Dir,byte Type);
Send the allocated units of nation “Nat” in zone “ZONE”. Arrange them there in direction “Dir”. If “Type” is equal 2, then remember the previous way. Identically direction of units under the letter “A”.
void SelAttackGroup(byte Nat,GAMEOBJ* Enemy);
Attack by the allocated units of nation “NAT” group “Enemy”. Given command is necessary to repeat all time.
bool Patrol(byte Nat,GAMEOBJ* Zone,byte Dir);
Expose the patrol by the allocated units of nation “NAT” from current position to zone “ZONE”. “Dir” – direction of a turn of units in zone “ZONE”.
void ChangeFriends(byte Nat,byte Flags);