Original FuncDecl

 
#GROUPNAMES

Basic "Basic"
UnitNumber "Number of units"
Transport "Transport"
Resource "Resources"
Objectives "Objectives"
Map "Map"
Message "Message windows"
Units "Units"
Extraction "Resource procurement"
Gates "Gates"
EndGame "Game end"
Vital "Vital"

% --------------------------------
% 13.11.2001
% --------------------------------
Selection "Select units"
UnitsOperation "Operations on units"
Players "Players"
UnitsCommand "Unit orders"
Advanced "Advanced"
New "New"
Buildings "Buildings"
SwitchesAndTimers "Flags and Timers"
Questions "Questions"
Upgrades "Upgrades"
AI "Computer player"

#END

#FUNCTIONS

Always()
"always"
"Always."

GetDiff([players])[e_ne_man][skill_levels_dat]
"difficulty level of player <1%name> <2%ratio> <3%difficulty>"
"Difficulty level."

GetResource([players],[resources])[e_ne_g_l][0..max]
"quantity of <2%resource> by player <1%name> <3%ratio> <4%number>"
"Quantity of resource by player."

GetUnitsAmount0([zones],[players])[e_ne_g_l][0..100000]
"number of units of player <2%name1> in zone <1%name2> <3%ratio> <4%number>"
"Number of player's units in zone."

GetUnitsAmount1([zones],[groups])[e_ne_g_l][0..100000]
"number of units of group <2%name1> in zone <1%name2> <3%ratio> <4%number>"
"Number of group units in zone."

GetUnitsByNation([groups],[players])[e_ne_g_l][0..100000]
"number of units of player <2%name1> in group <1%name2> <3%ratio> <4%number>"
"Number of player units in group."

GetTotalAmount0([groups])[e_ne_g_l][0..100000]
"number of units in group <1%name> <2%ratio> <3%number>"
"Number of units in group."

TimerDone([timers])
"timer <1%name> has snapped into action"
"Timer has snapped into action."

!TimerDone([timers])
"timer <1%name> has not snapped into action yet"
"Timer has not snapped into action yet."

AskQuestionEx([_pages])
"affirmative answer to <1%question>"
"Affirmative answer to question."

!AskQuestionEx([_pages])
"negative answer to <1%question>"
"Negative answer to question."

GetGroupNInside([players],[groups])[e_ne_g_l][0..1000]
"number of player <1%name1> units in ferryboat of group <2%name2> <3%ratio> <4%number>"
"Number of units in ferryboat."

AddResource([players],[resources],[0..max])
"add player <1%name> <3%quantity> of <2%resource>"
"Add resource to player."

SubResource([players],[resources],[0..max])
"take from player <1%name> <3%quantity> of <2%resource>"
"Take resource from player."

SetResource([players],[resources],[0..max])
"set player <1%name> <3%quantity> of <2%resource>"
"Set the amount of resource for player."

DisableMissionEx([objectives])
"hide objective <1%message>"
"Hide objective."

EnableMissionEx([objectives])
"show objective <1%message>"
"Show objective."

CompleteMission([objectives])
"reflect objective <1%message> as met"
"Reflect objective as met."

SetStartPoint([zones])
"set screen into zone <1%name>"
"Set screen into zone."

SetLightSpot([zones],[0..5],[0..63])
"open map area <3%number> of radius <2%parameter> in zone <1%name>"
"Open map area."

ShowPageEx([_pages])
"show message <1%text>"
"Bring on message."

[variables]=AskMultilineQuestionEx([_questions], 9, 0, [0..max])
"ask complex <2%question>, place the result into variable <1%name>"
"Ask complex question."

ClearSelection([players])
"deselect units of player <1%name>"
"Deselect player units."

ChangeFriendsEx([_friends],[0..max],[0..max])
"change <1%relations> between players"
"Change relations between players."

SelErase([players])
"remove selected units of player <1%name>"
"Remove units selected."

SelDie([players])
"kill selected units of player <1%name>"
"Kill selected units."

%SetUnitInfo([unitparams],[0..max],[groups])
%"change <1%parameters> of unit number <2%integer> from group <3%name>"
%"Change unit parameters."

SelAttackGroup([players],[groups])
"selected units of player <1%name1> attack group <2%name2>"
"Attack enemy with units selected."

AttackEnemyInZone([groups],[zones],[players])
"units of player <3%name1> attack enemies in zone <2%name2> with group <1%name3>"
"Attack enemy in zone with group of units."

AllowAttack([players],1)
"enable attack for selected units of player <1%name>"
"Enable attack."

AllowAttack([players],0)
"disable attack for selected units of player <1%name>"
"Disable attack."

InitialUpgradeEx([groups],[_upgrades])
"carry out upgrade <2%name1> for units of group <1%name2>"
"Carry out upgrade."

TakeFood([groups])
"order peasants of group <1%name> to gather food in place of their location"
"Order to gather food."

TakeWood([groups])
"order peasants of group <1%name> to chop wood in place of their location"
"Order to chop wood."

TakeStone([groups])
"order peasants of group <1%name> to quarry stone in place of their location"
"Order to quarry stone."

LooseGame()
"defeat"
"Defeat."

ShowVictory()
"victory"
"Victory."

% --------------------------------
% 09.11.2001
% --------------------------------

EnableUnit([players],[_unittypes],1)
"enable production of <2%type> units for player <1%name>"
"Enable production of units/buildings."

EnableUnit([players],[_unittypes],0)
"disable production of <2%type> units for player <1%name>"
"Disable production of units/buildings."

SelChangeNation([players],[players])
"transfer selected units from player <1%name1> to player <2%name2>"
"Change unit colour."

IfBlock()
"inserted condition block"
"Inserted condition block."

Trigg([switches])
"flag <1%name> is on"
"Flag is on."

!Trigg([switches])
"flag <1%name> is off"
"Flag is off."

PreserveTrigger([0..max])
"activate current trigger"
"Activate current trigger."

PushAllUnitsAway([players])
"disembark all units from selected transport by player <1%name>"
"Disembark all units from transport."

GetNInside([players],[groups])[e_ne_g_l][0..max]
"number of passengers in transport of group <2%name1> by player <1%name2> <3%ratio> <4%quantity>"
"Number of passangers in transport."

CheckGroupLeaveAbility([players],[groups])
"transport from group <2%name1> and belonging to player <1%name2> has landed"
"Transport has landed."

!CheckGroupLeaveAbility([players],[groups])
"transport from group <2%name1> and belonging to player <1%name2> has not landed yet"
"Transport has not landed yet."

SetTrigg([switches],1)
"turn flag <1%name> on"
"Turn flag on."

SetTrigg([switches],0)
"turn flag <1%name> off"
"Turn flag off."

% --------------------------------
% 12.11.2001
% --------------------------------

%int  GetTotalAmount1(GAMEOBJ* UnitType,byte Nation);
GetTotalAmount1([_unittypes],[players])[e_ne_g_l][0..max]
"number of <1%type> units by player <2%name> <3%ratio> <4%quantity>"
"Number of units of a certain type by player."

%int  GetUnitsAmount2(GAMEOBJ* Zone,GAMEOBJ* UnitType,byte Nation);
GetUnitsAmount2([zones],[_unittypes],[players])[e_ne_g_l][0..max]
"number of <2%type> units in zone <1%name1> by player <3%name2> <4%ratio> <5%quantity>"
"Number of units of a certain type in zone by player."

%int  GetDied(GAMEOBJ* UnitType,byte Nation);
GetDied([_unittypes],[players])[e_ne_g_l][0..max]
"number of deceased <1%type> units by player <2%name> <3%ratio> <4%quantity>"
"Number of deceased units of a certain type by player."

%int  GetReadyAmount(GAMEOBJ* UnitType,byte Nation);
%GetReadyAmount([_unittypes],[players])[e_ne_g_l][0..max]
%"number of already created <1%type> units by player <2%name>"
%"Number of already created units of a certain type by player."

%void AttackZoneByArtillery(GAMEOBJ* ArtGroup,GAMEOBJ* Zone,byte Nat);
AttackZoneByArtillery([groups],[zones],[players])
"attack zone <2%name1> with <3%name2> player's artillery from group <1%name3>"
"Attack zone with artillery."

%void AttackBuildingsInZone(GAMEOBJ* ArtGroup,GAMEOBJ* Zone,byte Nat);
AttackBuildingsInZone([groups],[zones],[players])
"attack buildings in zone <2%name1> with <3%name2> player's artillery from group <1%name3>"
"Attack buildings in zone."

%void ClearLightSpot(byte index);
ClearLightSpot([0..63])
"close map area numbered <1%integer>"
"Close open map area."

%void RepairBuildingsBySel(byte Nat,GAMEOBJ* Buildings);
RepairBuildingsBySel([players],[groups])
"repair/build up buildings of group <2%name1> with selected peasants of player <1%name2>"
"Repair/build up group buildings with peasants selected."

%bool CheckBuildingsComplete(GAMEOBJ* Buildings);
CheckBuildingsComplete([groups])
"buildings of group <1%name> have already been constructed"
"Group buildings have already been constructed."
!CheckBuildingsComplete([groups])
"buildings of group <1%name> have not been constructed yet"
"Group buildings have not yet been constructed."

%void StartAIEx(byte Nat,char* Name,int Land,int Money,int ResOnMap,int Difficulty);
StartAIEx([players],[aitxt],[ailand],[aimoney],[airesonmap],[skill_levels])
"launch <2%intelligence> AI for player <1%name>. Difficulty level: <6%difficulty>. Territory type: <3%relief>. Resources: <4%funds>. Minerals: <5%resources>"
"Give control to computer player."

%void ShowAlarm(GAMEOBJ* Zone);
ShowAlarm([zones])
"show alarm signal from zone <1%name> centre"
"Show alarm signal."

%int GetKilled(GAMEOBJ* Units);
GetKilled([groups])[e_ne_g_l][0..max]
"number of killings done by units of group <1%name> <2%ratio> <3%qunatity>"
"Number of killings done by group units."

%void SetDestPoint(GAMEOBJ* Units,GAMEOBJ* Zone);
SetDestPoint([groups],[zones])
"set rally point for buildings in group <1%name1> into zone <2%name2>"
"Set rally point for built units."

%bool CheckProduction(GAMEOBJ* Units);
!CheckProduction([groups])
"buildings of group <1%name> produce units"
"Buildings produce units."
CheckProduction([groups])
"buildings of group <1%name> do not produce units"
"Buildings do not produce units."

%void SaveSelectedUnits(byte NI,GAMEOBJ* Units,bool Add);
SaveSelectedUnits([players],[dyngroups],[oldsel])
"save selected units of player <1%name1> to dynamic group <2%name2> by <3%changing/adding> previous units"
"Save player's selected units to dynamic group."

%void SelectUnitsInZone(GAMEOBJ* Zone,byte Nation,bool add);
SelectUnitsInZone([zones],[players],[oldsel])
"select units of player <2%name1> in zone <1%name2> by <3%changing/adding> previous selection"
"Select player's units in zone."

%void SelectTypeOfUnitsInZone(GAMEOBJ* Zone,GAMEOBJ* Type,byte Nation,bool add);
SelectTypeOfUnitsInZone([zones],[_unittypes],[players],[oldsel])
"select <2%type> units of player <3%name1> in zone <1%name2> by <4%changing/adding> previous selection"
"Select player's units of a certain type in zone."

%void SelectUnitsType(GAMEOBJ* UnitsType,byte Nat,bool Add);
SelectUnitsType([_unittypes],[players],[oldsel])
"select <1%type> units of player <2%name> by <3%changing/adding> previous selection"
"Select units of a certain type by player."

%void DoNotUseSelInAI(byte Nat);
DoNotUseSelInAI([players])
"don't use selected units by computer player <1%name>"
"Don't use selected units by computer player."

%void RemoveGroup(GAMEOBJ* Source,GAMEOBJ* Dest);
RemoveGroup([dyngroups],[dyngroups])
"add units of dynamic group <1%name1> to units of dynamic group <2%name2>"
"Transfer units from one dynamic group to another one."

%bool IsUpgradeDoing(GAMEOBJ* Upgrade,byte Nation);
IsUpgradeDoing([_upgrades],[players])
"player <2%name1> has already launched upgrade <1%name2>"
"Player has already launched upgrade."
!IsUpgradeDoing([_upgrades],[players])
"player <2%name1> has not launched upgrade <1%name2> yet"
"Upgrade has not been launched by player yet."

%bool IsUpgradeDone(GAMEOBJ* Upgrade,byte Nation);
IsUpgradeDone([_upgrades],[players])
"player <2%name1> has already accomplished upgrade <1%name2>"
"Upgrade has already been accomplished by player."
!IsUpgradeDone([_upgrades],[players])
"player <2%name1> has not completed upgrade <1%name2> yet"
"Upgrade has not been completed by player yet."

%int GetGlobalTime();
GetGlobalTime()[e_ne_g_l][0..max]
"number of ticks after game beginning <1%ratio> <2%time>"
"Number of ticks after the game beginning."

SelectUnits([groups],[oldsel])
"select all units of group <1%name> by <2%changing/adding> previous selection"
"Select all units of group."

SelectUnits1([players],[groups],[oldsel])
"select units of player <1%name1> of group <2%name2> by <3%changing/adding> previous selection"
"Select player's group units."

PushUnitAway([players])
"disembark one unit from seleted transport of player <1%name>"
"Disembark one unit."

SendUnitsToTransport([players])
"embark slected units of player <1%name> on selected transport"
"Embark units on ferry."

SelOpenGates([players])
"open selected gates of player <1%name>"
"Open selected gates."

SelCloseGates([players])
"close selected gates of player <1%name>"
"Close gates selected."

DisableUpgrade([players],[_upgrades])
"disable upgrade <2%name1> for player <1%name2>"
"Disable upgrade"

Patrol([players],[zones],0)
"patrol territory with selected units of player <1%name1>, starting from their location to zone <2%name2>"
"Patrol the territory with units selected."

%bool SelSendAndKill(byte Nat,GAMEOBJ* Zone,byte Dir,byte Type);
SelSendAndKill([players],[zones],[0..255],2)
"order selected units of player <1%name1> to go and attack to zone <2%name2> saving waypoints and place them in direction <3%integer>"
"Order selected units to go and attack saving waypoints."
SelSendAndKill([players],[zones],[0..255],0)
"order selected units of player <1%name1> to go and attack to zone <2%name2> without saving waypoints and place them in direction <3%integer>"
"Order selected units to go and attack without saving waypoints."

SelSendTo([players],[zones],[0..255],2)
"order selected units of player <1%name1> to go to zone <2%name2> saving waypoints, place them in direction <3%integer>"
"Order selected units to go to zone saving waypoints."
SelSendTo([players],[zones],[0..255],0)
"order selected units of player <1%name1> to go to zone <2%name2> without saving waypoints, place them in direction <3%integer>"
"Order selected units to go to zone without saving waypoints."

RunTimer([timers],[0..max])
"set timer <1%name> for <2%integer> ticks"
"Set timer."

%int GetTime(byte ID);
GetTime([timers])[e_ne_g_l][0..max]
"number of ticks left before timer <1%name> snaps into action <2%ratio> <3%integer>"
"Number of ticks left before timer snaps into action."

SetStandGround([players],1)
"stand ground with selected units of player <1%name>"
"Stand ground."

SetStandGround([players],0)
"cancel stand ground for selected units of player <1%name>"
"Cancel stand ground."

%bool NationIsErased(byte Nat);
NationIsErased([players])
"player <1%name> has already been vanquished"
"Player has already been vanquished."
!NationIsErased([players])
"player <1%name> has not been vanquished yet"
"Player has not been vanquished yet."

%VarValue([variables])[e_ne_g_l][0..1000]
%"value of variable <1%name> <2%ratio> <3%number>"
%"Value of variable."

%TriggerDone([blocks])
%"trigger <1%name> was already executed"
%"Trigger was already executed."

% --------------------------------
% 22.11.2001
% --------------------------------

%void ProduceUnit(GAMEOBJ* Units,GAMEOBJ* UnitType,GAMEOBJ* DestGroup);
ProduceUnit([groups],[_unittypes],[dyngroups])
"carry out <2%type> unit building in structure of group <1%name1> and add to dynamic group <3%name2>"
"Carry out unit building and add to dynamic group."

%void ProduceUnitFast(GAMEOBJ* Units,GAMEOBJ* UnitType,GAMEOBJ* DestGroup,int Speed);
ProduceUnitFast([groups],[_unittypes],[dyngroups],1)
"carry out fast <2%type> unit building in structure of group <1%name1> and add to dynamic group <3%name2>"
"Carry out fast unit building and add to dynamic group."

CreateObject0([dyngroups],[players],[zones],[0..255],[_formations],[_unittypes])
"create <6%type> units in formation <5%name1> for player <2%name2>, place it in zone <3%name3> in direction <4%integer> and assign to dynamic group <1%name4>"
"Create units in formation and assign to dynamic group."


%bool CreateBuilding(byte Nat,GAMEOBJ* Zone,GAMEOBJ* UnitType,GAMEOBJ* DestGroup);
CreateBuilding([players],[zones],[_unittypes],[dyngroups])
"create <3%type> unit for player <1%name1> in zone <2%name2> and assign to dynamic group <4%name3>"
"Create unit and add to dynamic group."

% --------------------------------
% 28.11.2001
% --------------------------------

RefreshScreen()
"refresh Screen"
"Refresh Screen."

#END

#GROUPS

#resources
wood
gold
stone
food
iron
coal

#nations
red
blue
turquoise
violet
orange
black
white
brown

#skill_levels
easy
normal
hard
very hard

#skill_levels_dat
easy
normal
hard
very hard

#e_ne
equals to
does not equal to

#e_ne_man
equals to
does not equal to

#e_ne_g_l
equals to
does not equal to
is more than
is less than

# --------------------------------
# 12.11.2001
# --------------------------------

#oldsel
changing
adding to

#aitxt
Bavaria
Denmark
Austria
France
England
Germany
Piemont
Portugal
Venice
Spain
Sweden
Netherlands
Saxony
Poland
Ukraine
Turkey
Russia
Algeria

#ailand
Land
Mediterranean
Peninsulas
Islands
Continents
Continent

#aimoney
Normal
Rich
Thousands
Millions

#airesonmap
Lean
Medium
Rich

#END