--- a/src/BotStuff.h Tue Feb 11 03:29:03 2014 +0200 +++ b/src/BotStuff.h Wed Feb 12 06:15:11 2014 +0200 @@ -32,6 +32,8 @@ #ifndef BOTC_BOTSTUFF_H #define BOTC_BOTSTUFF_H +#include "Main.h" + static const int gMaxStates = 256; static const int gMaxEvents = 32; static const int gMaxGlobalEvents = 32; @@ -44,153 +46,80 @@ static const int gMaxReactionTime = 52; static const int gMaxStoredEvents = 64; -enum EDataHeader +named_enum DataHeader { - dhCommand, - dhStateIndex, - dhStateName, - dhOnEnter, - dhMainLoop, - dhOnExit, - dhEvent, - dhEndOnEnter, - dhEndMainLoop, - dhEndOnExit, - dhEndEvent, - dhIfGoto, - dhIfNotGoto, - dhGoto, - dhOrLogical, - dhAndLogical, - dhOrBitwise, - dhEorBitwise, - dhAndBitwise, - dhEquals, - dhNotEquals, - dhLessThan, - dhAtMost, - dhGreaterThan, - dhAtLeast, - dhNegateLogical, - dhLeftShift, - dhRightShift, - dhAdd, - dhSubtract, - dhUnaryMinus, - dhMultiply, - dhDivide, - dhModulus, - dhPushNumber, - dhPushStringIndex, - dhPushGlobalVar, - dhPushLocalVar, - dhDropStackPosition, - dhScriptVarList, - dhStringList, - dhIncreaseGlobalVar, - dhDecreaseGlobalVar, - dhAssignGlobalVar, - dhAddGlobalVar, - dhSubtractGlobalVar, - dhMultiplyGlobalVar, - dhDivideGlobalVar, - dhModGlobalVar, - dhIncreaseLocalVar, - dhDecreaseLocalVar, - dhAssignLocalVar, - dhAddLocalVar, - dhSubtractLocalVar, - dhMultiplyLocalVar, - dhDivideLocalVar, - dhModLocalVar, - dhCaseGoto, - dhDrop, - dhIncreaseGlobalArray, - dhDecreaseGlobalArray, - dhAssignGlobalArray, - dhAddGlobalArray, - dhSubtractGlobalArray, - dhMultiplyGlobalArray, - dhDivideGlobalArray, - dhModGlobalArray, - dhPushGlobalArray, - dhSwap, - dhDup, - dhArraySet, + DH_Command, + DH_StateIndex, + DH_StateName, + DH_OnEnter, + DH_MainLoop, + DH_OnExit, + DH_Event, + DH_EndOnEnter, + DH_EndMainLoop, + DH_EndOnExit, + DH_EndEvent, + DH_IfGoto, + DH_IfNotGoto, + DH_Goto, + DH_OrLogical, + DH_AndLogical, + DH_OrBitwise, + DH_EorBitwise, + DH_AndBitwise, + DH_Equals, + DH_NotEquals, + DH_LessThan, + DH_AtMost, + DH_GreaterThan, + DH_AtLeast, + DH_NegateLogical, + DH_LeftShift, + DH_RightShift, + DH_Add, + DH_Subtract, + DH_UnaryMinus, + DH_Multiply, + DH_Divide, + DH_Modulus, + DH_PushNumber, + DH_PushStringIndex, + DH_PushGlobalVar, + DH_PushLocalVar, + DH_DropStackPosition, + DH_ScriptVarList, + DH_StringList, + DH_IncreaseGlobalVar, + DH_DecreaseGlobalVar, + DH_AssignGlobalVar, + DH_AddGlobalVar, + DH_SubtractGlobalVar, + DH_MultiplyGlobalVar, + DH_DivideGlobalVar, + DH_ModGlobalVar, + DH_IncreaseLocalVar, + DH_DecreaseLocalVar, + DH_AssignLocalVar, + DH_AddLocalVar, + DH_SubtractLocalVar, + DH_MultiplyLocalVar, + DH_DivideLocalVar, + DH_ModLocalVar, + DH_CaseGoto, + DH_Drop, + DH_IncreaseGlobalArray, + DH_DecreaseGlobalArray, + DH_AssignGlobalArray, + DH_AddGlobalArray, + DH_SubtractGlobalArray, + DH_MultiplyGlobalArray, + DH_DivideGlobalArray, + DH_ModGlobalArray, + DH_PushGlobalArray, + DH_Swap, + DH_Dup, + DH_ArraySet, numDataHeaders }; -//***************************************************************************** -// These are the different bot events that can be posted to a bot's state. -enum eEvent -{ - evKilledByEnemy, - evKilledByPlayer, - evKilledBySelf, - evKilledByEnvironment, - evReachedGoal, - evGoalRemoved, - evDamagedByPlayer, - evPlayerSay, - evEnemyKilled, - evRespawned, - evIntermission, - evNewMaps, - evEnemyUsedFist, - evEnemyUsedChainsaw, - evEnemyFiredPistol, - evEnemyFiredShotgun, - evEnemyFiredSsg, - evEnemyFiredChaingun, - evEnemyFiredMinigun, - evEnemyFiredRocket, - evEnemyFiredGrenade, - evEnemyFiredRailgun, - evEnemyFiredPlasma, - evEnemyFiredBfg, - evEnemyFiredBfg10k, - evPlayerUsedFist, - evPlayerUsedChainsaw, - evPlayerFiredPistol, - evPlayerFiredShotgun, - evPlayerFiredSsg, - evPlayerFiredChaingun, - evPlayerFiredMinigun, - evPlayerFiredRocket, - evPlayerFiredGrenade, - evPlayerFiredRailgun, - evPlayerFiredPlasma, - evPlayerFiredBfg, - evPlayerFiredBfg10k, - evUsedFist, - evUsedChainsaw, - evFiredPistol, - evFiredShotgun, - evFiredSsg, - evFiredChaingun, - evFiredMinigun, - evFiredRocket, - evFiredGrenade, - evFiredRailgun, - evFiredPlasma, - evFiredBfg, - evFiredBfg10k, - evPlayerJoinedGame, - evJoinedGame, - evDuelStartingCountdown, - evDuelFight, - evDuelWinSequence, - evSpectating, - evLmsStartingCountdown, - evLmsFight, - evLmsWinSequence, - evWeaponChange, - evEnemyBfgExplode, - evPlayerBfgExplode, - evBfgExplode, - evRecievedMedal, - - numBotEvents -}; - #endif // BOTC_BOTSTUFF_H