TypeInfoGen will now autobind doom scripts.

This commit is contained in:
Justin Marshall
2026-05-23 20:50:12 -07:00
parent df82170a67
commit 293942d07c
132 changed files with 7321 additions and 3762 deletions
+10 -6
View File
@@ -3578,7 +3578,7 @@ void idAI::PlayCinematic(void) {
torsoAnim.animBlendFrames = 0;
torsoAnim.lastAnimBlendFrames = 0;
ProcessEvent(&AI_PlayAnim, ANIMCHANNEL_TORSO, animname);
ProcessEvent(&EV_idActor_PlayAnim, ANIMCHANNEL_TORSO, animname);
// make sure our model gets updated
animator.ForceUpdate();
@@ -5132,12 +5132,7 @@ idCombatNode
***********************************************************************/
const idEventDef EV_CombatNode_MarkUsed("markUsed");
CLASS_DECLARATION(idEntity, idCombatNode)
EVENT(EV_CombatNode_MarkUsed, idCombatNode::Event_MarkUsed)
EVENT(EV_Activate, idCombatNode::Event_Activate)
END_CLASS
/*
=====================
@@ -5343,3 +5338,12 @@ void idCombatNode::Event_MarkUsed(void) {
disabled = true;
}
}
bool idAI::InvokeNativeScript(const char* name) {
if (nativeAIObject != NULL && nativeAIObject->HasNativeFunction(name)) {
nativeAIObject->Invoke(name, NULL);
return true;
}
return false;
}
+134 -15
View File
@@ -138,21 +138,6 @@ typedef struct predictedPath_s {
//
// events
//
extern const idEventDef AI_BeginAttack;
extern const idEventDef AI_EndAttack;
extern const idEventDef AI_MuzzleFlash;
extern const idEventDef AI_CreateMissile;
extern const idEventDef AI_AttackMissile;
extern const idEventDef AI_FireMissileAtTarget;
extern const idEventDef AI_AttackMelee;
extern const idEventDef AI_DirectDamage;
extern const idEventDef AI_JumpFrame;
extern const idEventDef AI_EnableClip;
extern const idEventDef AI_DisableClip;
extern const idEventDef AI_EnableGravity;
extern const idEventDef AI_DisableGravity;
extern const idEventDef AI_TriggerParticles;
extern const idEventDef AI_RandomPath;
class idPathCorner;
class rvmAIObject;
@@ -210,6 +195,8 @@ public:
void Save(idSaveGame* savefile) const;
void Restore(idRestoreGame* savefile);
virtual bool InvokeNativeScript(const char* name);
void Spawn(void);
void HeardSound(idEntity* ent, const char* action);
idActor* GetEnemy(void) const;
@@ -614,133 +601,261 @@ public:
bool WaitMoveDone(void) const;
bool Shrivel(float shrivel_time, bool firstFrame);
ID_SCRIPT_EVENT( "activate", 0 )
void Event_Activate(idEntity* activator);
ID_SCRIPT_EVENT( "<touch>", 0 )
void Event_Touch(idEntity* other, trace_t* trace);
ID_SCRIPT_EVENT( "findEnemy", 'e' )
void Event_FindEnemy(int useFOV);
ID_SCRIPT_EVENT( "findEnemyAI", 'e' )
void Event_FindEnemyAI(int useFOV);
ID_SCRIPT_EVENT( "findEnemyInCombatNodes", 'e' )
void Event_FindEnemyInCombatNodes(void);
ID_SCRIPT_EVENT( "closestReachableEnemyOfEntity", 'e' )
void Event_ClosestReachableEnemyOfEntity(idEntity* team_mate);
ID_SCRIPT_EVENT( "heardSound", 'e' )
void Event_HeardSound(int ignore_team);
ID_SCRIPT_EVENT( "setEnemy", 0 )
void Event_SetEnemy(idEntity* ent);
ID_SCRIPT_EVENT( "clearEnemy", 0 )
void Event_ClearEnemy(void);
ID_SCRIPT_EVENT( "muzzleFlash", 0 )
void Event_MuzzleFlash(const char* jointname);
ID_SCRIPT_EVENT( "createMissile", 'e' )
void Event_CreateMissile(const char* jointname);
ID_SCRIPT_EVENT( "attackMissile", 'e' )
void Event_AttackMissile(const char* jointname);
ID_SCRIPT_EVENT( "fireMissileAtTarget", 'e' )
void Event_FireMissileAtTarget(const char* jointname, const char* targetname);
ID_SCRIPT_EVENT( "launchMissile", 'e' )
void Event_LaunchMissile(const idVec3& muzzle, const idAngles& ang);
ID_SCRIPT_EVENT( "attackMelee", 'd' )
void Event_AttackMelee(const char* meleeDefName);
ID_SCRIPT_EVENT( "directDamage", 0 )
void Event_DirectDamage(idEntity* damageTarget, const char* damageDefName);
ID_SCRIPT_EVENT( "radiusDamageFromJoint", 0 )
void Event_RadiusDamageFromJoint(const char* jointname, const char* damageDefName);
ID_SCRIPT_EVENT( "attackBegin", 0 )
void Event_BeginAttack(const char* name);
ID_SCRIPT_EVENT( "attackEnd", 0 )
void Event_EndAttack(void);
ID_SCRIPT_EVENT( "meleeAttackToJoint", 'd' )
void Event_MeleeAttackToJoint(const char* jointname, const char* meleeDefName);
ID_SCRIPT_EVENT( "randomPath", 'e' )
void Event_RandomPath(void);
ID_SCRIPT_EVENT( "canBecomeSolid", 'f' )
void Event_CanBecomeSolid(void);
ID_SCRIPT_EVENT( "becomeSolid", 0 )
void Event_BecomeSolid(void);
ID_SCRIPT_EVENT( "becomeNonSolid", 0 )
void Event_BecomeNonSolid(void);
ID_SCRIPT_EVENT( "becomeRagdoll", 'd' )
void Event_BecomeRagdoll(void);
ID_SCRIPT_EVENT( "stopRagdoll", 0 )
void Event_StopRagdoll(void);
ID_SCRIPT_EVENT( "setHealth", 0 )
void Event_SetHealth(float newHealth);
ID_SCRIPT_EVENT( "getHealth", 'f' )
void Event_GetHealth(void);
ID_SCRIPT_EVENT( "allowDamage", 0 )
void Event_AllowDamage(void);
ID_SCRIPT_EVENT( "ignoreDamage", 0 )
void Event_IgnoreDamage(void);
ID_SCRIPT_EVENT( "getCurrentYaw", 'f' )
void Event_GetCurrentYaw(void);
ID_SCRIPT_EVENT( "turnTo", 0 )
void Event_TurnTo(float angle);
ID_SCRIPT_EVENT( "turnToPos", 0 )
void Event_TurnToPos(const idVec3& pos);
ID_SCRIPT_EVENT( "turnToEntity", 0 )
void Event_TurnToEntity(idEntity* ent);
ID_SCRIPT_EVENT( "moveStatus", 'd' )
void Event_MoveStatus(void);
ID_SCRIPT_EVENT( "stopMove", 0 )
void Event_StopMove(void);
ID_SCRIPT_EVENT( "moveToCover", 0 )
void Event_MoveToCover(void);
ID_SCRIPT_EVENT( "moveToEnemy", 0 )
void Event_MoveToEnemy(void);
ID_SCRIPT_EVENT( "moveToEnemyHeight", 0 )
void Event_MoveToEnemyHeight(void);
ID_SCRIPT_EVENT( "moveOutOfRange", 0 )
void Event_MoveOutOfRange(idEntity* entity, float range);
ID_SCRIPT_EVENT( "moveToAttackPosition", 0 )
void Event_MoveToAttackPosition(idEntity* entity, const char* attack_anim);
ID_SCRIPT_EVENT( "moveToEntity", 0 )
void Event_MoveToEntity(idEntity* ent);
ID_SCRIPT_EVENT( "moveToPosition", 0 )
void Event_MoveToPosition(const idVec3& pos);
ID_SCRIPT_EVENT( "slideTo", 0 )
void Event_SlideTo(const idVec3& pos, float time);
ID_SCRIPT_EVENT( "wander", 0 )
void Event_Wander(void);
ID_SCRIPT_EVENT( "facingIdeal", 'd' )
void Event_FacingIdeal(void);
ID_SCRIPT_EVENT( "faceEnemy", 0 )
void Event_FaceEnemy(void);
ID_SCRIPT_EVENT( "faceEntity", 0 )
void Event_FaceEntity(idEntity* ent);
ID_SCRIPT_EVENT( "waitAction", 0 )
void Event_WaitAction(const char* waitForState);
ID_SCRIPT_EVENT( "getCombatNode", 'e' )
void Event_GetCombatNode(void);
ID_SCRIPT_EVENT( "enemyInCombatCone", 'd' )
void Event_EnemyInCombatCone(idEntity* ent, int use_current_enemy_location);
ID_SCRIPT_EVENT( "waitMove", 0 )
void Event_WaitMove(void);
ID_SCRIPT_EVENT( "getJumpVelocity", 'v' )
void Event_GetJumpVelocity(const idVec3& pos, float speed, float max_height);
ID_SCRIPT_EVENT( "entityInAttackCone", 'd' )
void Event_EntityInAttackCone(idEntity* ent);
ID_SCRIPT_EVENT( "canSee", 'd' )
void Event_CanSeeEntity(idEntity* ent);
ID_SCRIPT_EVENT( "setTalkTarget", 0 )
void Event_SetTalkTarget(idEntity* target);
ID_SCRIPT_EVENT( "getTalkTarget", 'e' )
void Event_GetTalkTarget(void);
ID_SCRIPT_EVENT( "setTalkState", 0 )
void Event_SetTalkState(int state);
ID_SCRIPT_EVENT( "enemyRange", 'f' )
void Event_EnemyRange(void);
ID_SCRIPT_EVENT( "enemyRange2D", 'f' )
void Event_EnemyRange2D(void);
ID_SCRIPT_EVENT( "getEnemy", 'e' )
void Event_GetEnemy(void);
ID_SCRIPT_EVENT( "getEnemyPos", 'v' )
void Event_GetEnemyPos(void);
ID_SCRIPT_EVENT( "getEnemyEyePos", 'v' )
void Event_GetEnemyEyePos(void);
ID_SCRIPT_EVENT( "predictEnemyPos", 'v' )
void Event_PredictEnemyPos(float time);
ID_SCRIPT_EVENT( "canHitEnemy", 'd' )
void Event_CanHitEnemy(void);
ID_SCRIPT_EVENT( "canHitEnemyFromAnim", 'd' )
void Event_CanHitEnemyFromAnim(const char* animname);
ID_SCRIPT_EVENT( "canHitEnemyFromJoint", 'd' )
void Event_CanHitEnemyFromJoint(const char* jointname);
ID_SCRIPT_EVENT( "enemyPositionValid", 'd' )
void Event_EnemyPositionValid(void);
ID_SCRIPT_EVENT( "chargeAttack", 0 )
void Event_ChargeAttack(const char* damageDef);
ID_SCRIPT_EVENT( "testChargeAttack", 'f' )
void Event_TestChargeAttack(void);
ID_SCRIPT_EVENT( "testAnimMoveTowardEnemy", 'd' )
void Event_TestAnimMoveTowardEnemy(const char* animname);
ID_SCRIPT_EVENT( "testAnimMove", 'd' )
void Event_TestAnimMove(const char* animname);
ID_SCRIPT_EVENT( "testMoveToPosition", 'd' )
void Event_TestMoveToPosition(const idVec3& position);
ID_SCRIPT_EVENT( "testMeleeAttack", 'd' )
void Event_TestMeleeAttack(void);
ID_SCRIPT_EVENT( "testAnimAttack", 'd' )
void Event_TestAnimAttack(const char* animname);
ID_SCRIPT_EVENT( "shrivel", 0 )
void Event_Shrivel(float shirvel_time);
ID_SCRIPT_EVENT( "burn", 0 )
void Event_Burn(void);
ID_SCRIPT_EVENT( "preBurn", 0 )
void Event_PreBurn(void);
ID_SCRIPT_EVENT( "clearBurn", 0 )
void Event_ClearBurn(void);
ID_SCRIPT_EVENT( "setSmokeVisibility", 0 )
void Event_SetSmokeVisibility(int num, int on);
ID_SCRIPT_EVENT( "numSmokeEmitters", 'd' )
void Event_NumSmokeEmitters(void);
ID_SCRIPT_EVENT( "stopThinking", 0 )
void Event_StopThinking(void);
ID_SCRIPT_EVENT( "getTurnDelta", 'f' )
void Event_GetTurnDelta(void);
ID_SCRIPT_EVENT( "getMoveType", 'd' )
void Event_GetMoveType(void);
ID_SCRIPT_EVENT( "setMoveType", 0 )
void Event_SetMoveType(int moveType);
ID_SCRIPT_EVENT( "saveMove", 0 )
void Event_SaveMove(void);
ID_SCRIPT_EVENT( "restoreMove", 0 )
void Event_RestoreMove(void);
ID_SCRIPT_EVENT( "allowMovement", 0 )
void Event_AllowMovement(float flag);
ID_SCRIPT_EVENT( "<jumpframe>", 0 )
void Event_JumpFrame(void);
ID_SCRIPT_EVENT( "enableClip", 0 )
void Event_EnableClip(void);
ID_SCRIPT_EVENT( "disableClip", 0 )
void Event_DisableClip(void);
ID_SCRIPT_EVENT( "enableGravity", 0 )
void Event_EnableGravity(void);
ID_SCRIPT_EVENT( "disableGravity", 0 )
void Event_DisableGravity(void);
ID_SCRIPT_EVENT( "enableAFPush", 0 )
void Event_EnableAFPush(void);
ID_SCRIPT_EVENT( "disableAFPush", 0 )
void Event_DisableAFPush(void);
ID_SCRIPT_EVENT( "setFlySpeed", 0 )
void Event_SetFlySpeed(float speed);
ID_SCRIPT_EVENT( "setFlyOffset", 0 )
void Event_SetFlyOffset(int offset);
ID_SCRIPT_EVENT( "clearFlyOffset", 0 )
void Event_ClearFlyOffset(void);
ID_SCRIPT_EVENT( "getClosestHiddenTarget", 'e' )
void Event_GetClosestHiddenTarget(const char* type);
ID_SCRIPT_EVENT( "getRandomTarget", 'e' )
void Event_GetRandomTarget(const char* type);
ID_SCRIPT_EVENT( "travelDistanceToPoint", 'f' )
void Event_TravelDistanceToPoint(const idVec3& pos);
ID_SCRIPT_EVENT( "travelDistanceToEntity", 'f' )
void Event_TravelDistanceToEntity(idEntity* ent);
ID_SCRIPT_EVENT( "travelDistanceBetweenPoints", 'f' )
void Event_TravelDistanceBetweenPoints(const idVec3& source, const idVec3& dest);
ID_SCRIPT_EVENT( "travelDistanceBetweenEntities", 'f' )
void Event_TravelDistanceBetweenEntities(idEntity* source, idEntity* dest);
ID_SCRIPT_EVENT( "lookAt", 0 )
void Event_LookAtEntity(idEntity* ent, float duration);
ID_SCRIPT_EVENT( "lookAtEnemy", 0 )
void Event_LookAtEnemy(float duration);
ID_SCRIPT_EVENT( "setBoneMod", 0 )
void Event_SetJointMod(int allowJointMod);
ID_SCRIPT_EVENT( "throwMoveable", 0 )
void Event_ThrowMoveable(void);
ID_SCRIPT_EVENT( "throwAF", 0 )
void Event_ThrowAF(void);
ID_SCRIPT_EVENT( "setAngles", 0 )
void Event_SetAngles(idAngles const& ang);
ID_SCRIPT_EVENT( "getAngles", 'v' )
void Event_GetAngles(void);
ID_SCRIPT_EVENT( "<kill>", 0 )
void Event_RealKill(void);
ID_SCRIPT_EVENT( "kill", 0 )
void Event_Kill(void);
ID_SCRIPT_EVENT( "wakeOnFlashlight", 0 )
void Event_WakeOnFlashlight(int enable);
ID_SCRIPT_EVENT( "locateEnemy", 0 )
void Event_LocateEnemy(void);
ID_SCRIPT_EVENT( "kickObstacles", 0 )
void Event_KickObstacles(idEntity* kickEnt, float force);
ID_SCRIPT_EVENT( "getObstacle", 'e' )
void Event_GetObstacle(void);
ID_SCRIPT_EVENT( "pushPointIntoAAS", 'v' )
void Event_PushPointIntoNAV(const idVec3& pos);
ID_SCRIPT_EVENT( "getTurnRate", 'f' )
void Event_GetTurnRate(void);
ID_SCRIPT_EVENT( "setTurnRate", 0 )
void Event_SetTurnRate(float rate);
ID_SCRIPT_EVENT( "animTurn", 0 )
void Event_AnimTurn(float angles);
ID_SCRIPT_EVENT( "allowHiddenMovement", 0 )
void Event_AllowHiddenMovement(int enable);
ID_SCRIPT_EVENT( "triggerParticles", 0 )
void Event_TriggerParticles(const char* jointName);
ID_SCRIPT_EVENT( "findActorsInBounds", 'e' )
void Event_FindActorsInBounds(const idVec3& mins, const idVec3& maxs);
ID_SCRIPT_EVENT( "canReachPosition", 'd' )
void Event_CanReachPosition(const idVec3& pos);
ID_SCRIPT_EVENT( "canReachEntity", 'd' )
void Event_CanReachEntity(idEntity* ent);
ID_SCRIPT_EVENT( "canReachEnemy", 'd' )
void Event_CanReachEnemy(void);
ID_SCRIPT_EVENT( "getReachableEntityPosition", 'v' )
void Event_GetReachableEntityPosition(idEntity* ent);
};
@@ -769,7 +884,9 @@ private:
idVec3 offset;
bool disabled;
ID_SCRIPT_EVENT( "activate", 0 )
void Event_Activate(idEntity* activator);
ID_SCRIPT_EVENT( "markUsed", 0 )
void Event_MarkUsed(void);
};
@@ -778,7 +895,9 @@ public:
CLASS_PROTOTYPE(idAI_Vagary);
private:
ID_SCRIPT_EVENT( "vagary_ChooseObjectToThrow", 'e' )
void Event_ChooseObjectToThrow(const idVec3& mins, const idVec3& maxs, float speed, float minDist, float offset);
ID_SCRIPT_EVENT( "vagary_ThrowObjectAtEnemy", 0 )
void Event_ThrowObjectAtEnemy(idEntity* ent, float speed);
};
-6
View File
@@ -38,13 +38,7 @@ Vagary specific AI code
#include "../Game_local.h"
const idEventDef AI_Vagary_ChooseObjectToThrow( "vagary_ChooseObjectToThrow", "vvfff", 'e' );
const idEventDef AI_Vagary_ThrowObjectAtEnemy( "vagary_ThrowObjectAtEnemy", "ef" );
CLASS_DECLARATION( idAI, idAI_Vagary )
EVENT( AI_Vagary_ChooseObjectToThrow, idAI_Vagary::Event_ChooseObjectToThrow )
EVENT( AI_Vagary_ThrowObjectAtEnemy, idAI_Vagary::Event_ThrowObjectAtEnemy )
END_CLASS
/*
================
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmAIObject, rvmAIAlphaLabs2Scientist1 )
END_CLASS
void rvmAIAlphaLabs2Scientist1::Init( idAI* aiOwner ) {
rvmAIObject::Init( aiOwner );
-2
View File
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( idClass, rvmAIObject )
END_CLASS
rvmAIObject::rvmAIObject() {
owner = NULL;
-2
View File
@@ -14,8 +14,6 @@ namespace {
const float CHAR_BLEND_TURN_TO_IDLE = 0.0f;
}
CLASS_DECLARATION( rvmAIObject, rvmCharacter )
END_CLASS
rvmCharacter::rvmCharacter() {
talkMode = CHAR_TALK_PRIMARY;
-2
View File
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmAIObject, rvmAICharacterProne )
END_CLASS
void rvmAICharacterProne::Init( idAI* aiOwner ) {
rvmAIObject::Init( aiOwner );
@@ -25,8 +25,6 @@ namespace {
const float SENTRY_MIN_TURN = 10.0f;
}
CLASS_DECLARATION( rvmCharacter, rvmCharSentry )
END_CLASS
rvmCharSentry::rvmCharSentry() {
lead_player = false;
+7 -260
View File
@@ -37,260 +37,7 @@ If you have questions concerning this license or the applicable additional terms
***********************************************************************/
const idEventDef AI_FindEnemy("findEnemy", "d", 'e');
const idEventDef AI_FindEnemyAI("findEnemyAI", "d", 'e');
const idEventDef AI_FindEnemyInCombatNodes("findEnemyInCombatNodes", NULL, 'e');
const idEventDef AI_ClosestReachableEnemyOfEntity("closestReachableEnemyOfEntity", "E", 'e');
const idEventDef AI_HeardSound("heardSound", "d", 'e');
const idEventDef AI_SetEnemy("setEnemy", "E");
const idEventDef AI_ClearEnemy("clearEnemy");
const idEventDef AI_MuzzleFlash("muzzleFlash", "s");
const idEventDef AI_CreateMissile("createMissile", "s", 'e');
const idEventDef AI_AttackMissile("attackMissile", "s", 'e');
const idEventDef AI_FireMissileAtTarget("fireMissileAtTarget", "ss", 'e');
const idEventDef AI_LaunchMissile("launchMissile", "vv", 'e');
const idEventDef AI_AttackMelee("attackMelee", "s", 'd');
const idEventDef AI_DirectDamage("directDamage", "es");
const idEventDef AI_RadiusDamageFromJoint("radiusDamageFromJoint", "ss");
const idEventDef AI_BeginAttack("attackBegin", "s");
const idEventDef AI_EndAttack("attackEnd");
const idEventDef AI_MeleeAttackToJoint("meleeAttackToJoint", "ss", 'd');
const idEventDef AI_RandomPath("randomPath", NULL, 'e');
const idEventDef AI_CanBecomeSolid("canBecomeSolid", NULL, 'f');
const idEventDef AI_BecomeSolid("becomeSolid");
const idEventDef AI_BecomeRagdoll("becomeRagdoll", NULL, 'd');
const idEventDef AI_StopRagdoll("stopRagdoll");
const idEventDef AI_SetHealth("setHealth", "f");
const idEventDef AI_GetHealth("getHealth", NULL, 'f');
const idEventDef AI_AllowDamage("allowDamage");
const idEventDef AI_IgnoreDamage("ignoreDamage");
const idEventDef AI_GetCurrentYaw("getCurrentYaw", NULL, 'f');
const idEventDef AI_TurnTo("turnTo", "f");
const idEventDef AI_TurnToPos("turnToPos", "v");
const idEventDef AI_TurnToEntity("turnToEntity", "E");
const idEventDef AI_MoveStatus("moveStatus", NULL, 'd');
const idEventDef AI_StopMove("stopMove");
const idEventDef AI_MoveToCover("moveToCover");
const idEventDef AI_MoveToEnemy("moveToEnemy");
const idEventDef AI_MoveToEnemyHeight("moveToEnemyHeight");
const idEventDef AI_MoveOutOfRange("moveOutOfRange", "ef");
const idEventDef AI_MoveToAttackPosition("moveToAttackPosition", "es");
const idEventDef AI_Wander("wander");
const idEventDef AI_MoveToEntity("moveToEntity", "e");
const idEventDef AI_MoveToPosition("moveToPosition", "v");
const idEventDef AI_SlideTo("slideTo", "vf");
const idEventDef AI_FacingIdeal("facingIdeal", NULL, 'd');
const idEventDef AI_FaceEnemy("faceEnemy");
const idEventDef AI_FaceEntity("faceEntity", "E");
const idEventDef AI_GetCombatNode("getCombatNode", NULL, 'e');
const idEventDef AI_EnemyInCombatCone("enemyInCombatCone", "Ed", 'd');
const idEventDef AI_WaitMove("waitMove");
const idEventDef AI_GetJumpVelocity("getJumpVelocity", "vff", 'v');
const idEventDef AI_EntityInAttackCone("entityInAttackCone", "E", 'd');
const idEventDef AI_CanSeeEntity("canSee", "E", 'd');
const idEventDef AI_SetTalkTarget("setTalkTarget", "E");
const idEventDef AI_GetTalkTarget("getTalkTarget", NULL, 'e');
const idEventDef AI_SetTalkState("setTalkState", "d");
const idEventDef AI_EnemyRange("enemyRange", NULL, 'f');
const idEventDef AI_EnemyRange2D("enemyRange2D", NULL, 'f');
const idEventDef AI_GetEnemy("getEnemy", NULL, 'e');
const idEventDef AI_GetEnemyPos("getEnemyPos", NULL, 'v');
const idEventDef AI_GetEnemyEyePos("getEnemyEyePos", NULL, 'v');
const idEventDef AI_PredictEnemyPos("predictEnemyPos", "f", 'v');
const idEventDef AI_CanHitEnemy("canHitEnemy", NULL, 'd');
const idEventDef AI_CanHitEnemyFromAnim("canHitEnemyFromAnim", "s", 'd');
const idEventDef AI_CanHitEnemyFromJoint("canHitEnemyFromJoint", "s", 'd');
const idEventDef AI_EnemyPositionValid("enemyPositionValid", NULL, 'd');
const idEventDef AI_ChargeAttack("chargeAttack", "s");
const idEventDef AI_TestChargeAttack("testChargeAttack", NULL, 'f');
const idEventDef AI_TestMoveToPosition("testMoveToPosition", "v", 'd');
const idEventDef AI_TestAnimMoveTowardEnemy("testAnimMoveTowardEnemy", "s", 'd');
const idEventDef AI_TestAnimMove("testAnimMove", "s", 'd');
const idEventDef AI_TestMeleeAttack("testMeleeAttack", NULL, 'd');
const idEventDef AI_TestAnimAttack("testAnimAttack", "s", 'd');
const idEventDef AI_Shrivel("shrivel", "f");
const idEventDef AI_Burn("burn");
const idEventDef AI_ClearBurn("clearBurn");
const idEventDef AI_PreBurn("preBurn");
const idEventDef AI_SetSmokeVisibility("setSmokeVisibility", "dd");
const idEventDef AI_NumSmokeEmitters("numSmokeEmitters", NULL, 'd');
const idEventDef AI_WaitAction("waitAction", "s");
const idEventDef AI_StopThinking("stopThinking");
const idEventDef AI_GetTurnDelta("getTurnDelta", NULL, 'f');
const idEventDef AI_GetMoveType("getMoveType", NULL, 'd');
const idEventDef AI_SetMoveType("setMoveType", "d");
const idEventDef AI_SaveMove("saveMove");
const idEventDef AI_RestoreMove("restoreMove");
const idEventDef AI_AllowMovement("allowMovement", "f");
const idEventDef AI_JumpFrame("<jumpframe>");
const idEventDef AI_EnableClip("enableClip");
const idEventDef AI_DisableClip("disableClip");
const idEventDef AI_EnableGravity("enableGravity");
const idEventDef AI_DisableGravity("disableGravity");
const idEventDef AI_EnableAFPush("enableAFPush");
const idEventDef AI_DisableAFPush("disableAFPush");
const idEventDef AI_SetFlySpeed("setFlySpeed", "f");
const idEventDef AI_SetFlyOffset("setFlyOffset", "d");
const idEventDef AI_ClearFlyOffset("clearFlyOffset");
const idEventDef AI_GetClosestHiddenTarget("getClosestHiddenTarget", "s", 'e');
const idEventDef AI_GetRandomTarget("getRandomTarget", "s", 'e');
const idEventDef AI_TravelDistanceToPoint("travelDistanceToPoint", "v", 'f');
const idEventDef AI_TravelDistanceToEntity("travelDistanceToEntity", "e", 'f');
const idEventDef AI_TravelDistanceBetweenPoints("travelDistanceBetweenPoints", "vv", 'f');
const idEventDef AI_TravelDistanceBetweenEntities("travelDistanceBetweenEntities", "ee", 'f');
const idEventDef AI_LookAtEntity("lookAt", "Ef");
const idEventDef AI_LookAtEnemy("lookAtEnemy", "f");
const idEventDef AI_SetJointMod("setBoneMod", "d");
const idEventDef AI_ThrowMoveable("throwMoveable");
const idEventDef AI_ThrowAF("throwAF");
const idEventDef AI_RealKill("<kill>");
const idEventDef AI_Kill("kill");
const idEventDef AI_WakeOnFlashlight("wakeOnFlashlight", "d");
const idEventDef AI_LocateEnemy("locateEnemy");
const idEventDef AI_KickObstacles("kickObstacles", "Ef");
const idEventDef AI_GetObstacle("getObstacle", NULL, 'e');
const idEventDef AI_PushPointIntoNAV("pushPointIntoAAS", "v", 'v');
const idEventDef AI_GetTurnRate("getTurnRate", NULL, 'f');
const idEventDef AI_SetTurnRate("setTurnRate", "f");
const idEventDef AI_AnimTurn("animTurn", "f");
const idEventDef AI_AllowHiddenMovement("allowHiddenMovement", "d");
const idEventDef AI_TriggerParticles("triggerParticles", "s");
const idEventDef AI_FindActorsInBounds("findActorsInBounds", "vv", 'e');
const idEventDef AI_CanReachPosition("canReachPosition", "v", 'd');
const idEventDef AI_CanReachEntity("canReachEntity", "E", 'd');
const idEventDef AI_CanReachEnemy("canReachEnemy", NULL, 'd');
const idEventDef AI_GetReachableEntityPosition("getReachableEntityPosition", "e", 'v');
CLASS_DECLARATION(idActor, idAI)
EVENT(EV_Activate, idAI::Event_Activate)
EVENT(EV_Touch, idAI::Event_Touch)
EVENT(AI_FindEnemy, idAI::Event_FindEnemy)
EVENT(AI_FindEnemyAI, idAI::Event_FindEnemyAI)
EVENT(AI_FindEnemyInCombatNodes, idAI::Event_FindEnemyInCombatNodes)
EVENT(AI_ClosestReachableEnemyOfEntity, idAI::Event_ClosestReachableEnemyOfEntity)
EVENT(AI_HeardSound, idAI::Event_HeardSound)
EVENT(AI_SetEnemy, idAI::Event_SetEnemy)
EVENT(AI_ClearEnemy, idAI::Event_ClearEnemy)
EVENT(AI_MuzzleFlash, idAI::Event_MuzzleFlash)
EVENT(AI_CreateMissile, idAI::Event_CreateMissile)
EVENT(AI_AttackMissile, idAI::Event_AttackMissile)
EVENT(AI_FireMissileAtTarget, idAI::Event_FireMissileAtTarget)
EVENT(AI_LaunchMissile, idAI::Event_LaunchMissile)
EVENT(AI_AttackMelee, idAI::Event_AttackMelee)
EVENT(AI_DirectDamage, idAI::Event_DirectDamage)
EVENT(AI_RadiusDamageFromJoint, idAI::Event_RadiusDamageFromJoint)
EVENT(AI_BeginAttack, idAI::Event_BeginAttack)
EVENT(AI_EndAttack, idAI::Event_EndAttack)
EVENT(AI_MeleeAttackToJoint, idAI::Event_MeleeAttackToJoint)
EVENT(AI_RandomPath, idAI::Event_RandomPath)
EVENT(AI_CanBecomeSolid, idAI::Event_CanBecomeSolid)
EVENT(AI_BecomeSolid, idAI::Event_BecomeSolid)
EVENT(EV_BecomeNonSolid, idAI::Event_BecomeNonSolid)
EVENT(AI_BecomeRagdoll, idAI::Event_BecomeRagdoll)
EVENT(AI_StopRagdoll, idAI::Event_StopRagdoll)
EVENT(AI_SetHealth, idAI::Event_SetHealth)
EVENT(AI_GetHealth, idAI::Event_GetHealth)
EVENT(AI_AllowDamage, idAI::Event_AllowDamage)
EVENT(AI_IgnoreDamage, idAI::Event_IgnoreDamage)
EVENT(AI_GetCurrentYaw, idAI::Event_GetCurrentYaw)
EVENT(AI_TurnTo, idAI::Event_TurnTo)
EVENT(AI_TurnToPos, idAI::Event_TurnToPos)
EVENT(AI_TurnToEntity, idAI::Event_TurnToEntity)
EVENT(AI_MoveStatus, idAI::Event_MoveStatus)
EVENT(AI_StopMove, idAI::Event_StopMove)
EVENT(AI_MoveToCover, idAI::Event_MoveToCover)
EVENT(AI_MoveToEnemy, idAI::Event_MoveToEnemy)
EVENT(AI_MoveToEnemyHeight, idAI::Event_MoveToEnemyHeight)
EVENT(AI_MoveOutOfRange, idAI::Event_MoveOutOfRange)
EVENT(AI_MoveToAttackPosition, idAI::Event_MoveToAttackPosition)
EVENT(AI_Wander, idAI::Event_Wander)
EVENT(AI_MoveToEntity, idAI::Event_MoveToEntity)
EVENT(AI_MoveToPosition, idAI::Event_MoveToPosition)
EVENT(AI_SlideTo, idAI::Event_SlideTo)
EVENT(AI_FacingIdeal, idAI::Event_FacingIdeal)
EVENT(AI_FaceEnemy, idAI::Event_FaceEnemy)
EVENT(AI_FaceEntity, idAI::Event_FaceEntity)
EVENT(AI_WaitAction, idAI::Event_WaitAction)
EVENT(AI_GetCombatNode, idAI::Event_GetCombatNode)
EVENT(AI_EnemyInCombatCone, idAI::Event_EnemyInCombatCone)
EVENT(AI_WaitMove, idAI::Event_WaitMove)
EVENT(AI_GetJumpVelocity, idAI::Event_GetJumpVelocity)
EVENT(AI_EntityInAttackCone, idAI::Event_EntityInAttackCone)
EVENT(AI_CanSeeEntity, idAI::Event_CanSeeEntity)
EVENT(AI_SetTalkTarget, idAI::Event_SetTalkTarget)
EVENT(AI_GetTalkTarget, idAI::Event_GetTalkTarget)
EVENT(AI_SetTalkState, idAI::Event_SetTalkState)
EVENT(AI_EnemyRange, idAI::Event_EnemyRange)
EVENT(AI_EnemyRange2D, idAI::Event_EnemyRange2D)
EVENT(AI_GetEnemy, idAI::Event_GetEnemy)
EVENT(AI_GetEnemyPos, idAI::Event_GetEnemyPos)
EVENT(AI_GetEnemyEyePos, idAI::Event_GetEnemyEyePos)
EVENT(AI_PredictEnemyPos, idAI::Event_PredictEnemyPos)
EVENT(AI_CanHitEnemy, idAI::Event_CanHitEnemy)
EVENT(AI_CanHitEnemyFromAnim, idAI::Event_CanHitEnemyFromAnim)
EVENT(AI_CanHitEnemyFromJoint, idAI::Event_CanHitEnemyFromJoint)
EVENT(AI_EnemyPositionValid, idAI::Event_EnemyPositionValid)
EVENT(AI_ChargeAttack, idAI::Event_ChargeAttack)
EVENT(AI_TestChargeAttack, idAI::Event_TestChargeAttack)
EVENT(AI_TestAnimMoveTowardEnemy, idAI::Event_TestAnimMoveTowardEnemy)
EVENT(AI_TestAnimMove, idAI::Event_TestAnimMove)
EVENT(AI_TestMoveToPosition, idAI::Event_TestMoveToPosition)
EVENT(AI_TestMeleeAttack, idAI::Event_TestMeleeAttack)
EVENT(AI_TestAnimAttack, idAI::Event_TestAnimAttack)
EVENT(AI_Shrivel, idAI::Event_Shrivel)
EVENT(AI_Burn, idAI::Event_Burn)
EVENT(AI_PreBurn, idAI::Event_PreBurn)
EVENT(AI_SetSmokeVisibility, idAI::Event_SetSmokeVisibility)
EVENT(AI_NumSmokeEmitters, idAI::Event_NumSmokeEmitters)
EVENT(AI_ClearBurn, idAI::Event_ClearBurn)
EVENT(AI_StopThinking, idAI::Event_StopThinking)
EVENT(AI_GetTurnDelta, idAI::Event_GetTurnDelta)
EVENT(AI_GetMoveType, idAI::Event_GetMoveType)
EVENT(AI_SetMoveType, idAI::Event_SetMoveType)
EVENT(AI_SaveMove, idAI::Event_SaveMove)
EVENT(AI_RestoreMove, idAI::Event_RestoreMove)
EVENT(AI_AllowMovement, idAI::Event_AllowMovement)
EVENT(AI_JumpFrame, idAI::Event_JumpFrame)
EVENT(AI_EnableClip, idAI::Event_EnableClip)
EVENT(AI_DisableClip, idAI::Event_DisableClip)
EVENT(AI_EnableGravity, idAI::Event_EnableGravity)
EVENT(AI_DisableGravity, idAI::Event_DisableGravity)
EVENT(AI_EnableAFPush, idAI::Event_EnableAFPush)
EVENT(AI_DisableAFPush, idAI::Event_DisableAFPush)
EVENT(AI_SetFlySpeed, idAI::Event_SetFlySpeed)
EVENT(AI_SetFlyOffset, idAI::Event_SetFlyOffset)
EVENT(AI_ClearFlyOffset, idAI::Event_ClearFlyOffset)
EVENT(AI_GetClosestHiddenTarget, idAI::Event_GetClosestHiddenTarget)
EVENT(AI_GetRandomTarget, idAI::Event_GetRandomTarget)
EVENT(AI_TravelDistanceToPoint, idAI::Event_TravelDistanceToPoint)
EVENT(AI_TravelDistanceToEntity, idAI::Event_TravelDistanceToEntity)
EVENT(AI_TravelDistanceBetweenPoints, idAI::Event_TravelDistanceBetweenPoints)
EVENT(AI_TravelDistanceBetweenEntities, idAI::Event_TravelDistanceBetweenEntities)
EVENT(AI_LookAtEntity, idAI::Event_LookAtEntity)
EVENT(AI_LookAtEnemy, idAI::Event_LookAtEnemy)
EVENT(AI_SetJointMod, idAI::Event_SetJointMod)
EVENT(AI_ThrowMoveable, idAI::Event_ThrowMoveable)
EVENT(AI_ThrowAF, idAI::Event_ThrowAF)
EVENT(EV_GetAngles, idAI::Event_GetAngles)
EVENT(EV_SetAngles, idAI::Event_SetAngles)
EVENT(AI_RealKill, idAI::Event_RealKill)
EVENT(AI_Kill, idAI::Event_Kill)
EVENT(AI_WakeOnFlashlight, idAI::Event_WakeOnFlashlight)
EVENT(AI_LocateEnemy, idAI::Event_LocateEnemy)
EVENT(AI_KickObstacles, idAI::Event_KickObstacles)
EVENT(AI_GetObstacle, idAI::Event_GetObstacle)
EVENT(AI_PushPointIntoNAV, idAI::Event_PushPointIntoNAV)
EVENT(AI_GetTurnRate, idAI::Event_GetTurnRate)
EVENT(AI_SetTurnRate, idAI::Event_SetTurnRate)
EVENT(AI_AnimTurn, idAI::Event_AnimTurn)
EVENT(AI_AllowHiddenMovement, idAI::Event_AllowHiddenMovement)
EVENT(AI_TriggerParticles, idAI::Event_TriggerParticles)
EVENT(AI_FindActorsInBounds, idAI::Event_FindActorsInBounds)
EVENT(AI_CanReachPosition, idAI::Event_CanReachPosition)
EVENT(AI_CanReachEntity, idAI::Event_CanReachEntity)
EVENT(AI_CanReachEnemy, idAI::Event_CanReachEnemy)
EVENT(AI_GetReachableEntityPosition, idAI::Event_GetReachableEntityPosition)
END_CLASS
@@ -2183,7 +1930,7 @@ idAI::Kill
=====================
*/
void idAI::Kill(void) {
PostEventMS(&AI_RealKill, 0);
PostEventMS(&EV_idAI_Kill_real, 0);
}
/*
@@ -2980,12 +2727,12 @@ idAI::Event_WaitAction
=====================
*/
void idAI::Event_WaitAction(const char* waitForState) {
if (idThread::BeginMultiFrameEvent(this, &AI_WaitAction)) {
if (idThread::BeginMultiFrameEvent(this, &EV_idAI_WaitAction)) {
WaitAction(waitForState);
}
if (WaitActionDone()) {
idThread::EndMultiFrameEvent(this, &AI_WaitAction);
idThread::EndMultiFrameEvent(this, &EV_idAI_WaitAction);
}
}
@@ -3013,10 +2760,10 @@ idAI::Event_WaitMove
=====================
*/
void idAI::Event_WaitMove(void) {
idThread::BeginMultiFrameEvent(this, &AI_WaitMove);
idThread::BeginMultiFrameEvent(this, &EV_idAI_WaitMove);
if (WaitMoveDone()) {
idThread::EndMultiFrameEvent(this, &AI_WaitMove);
idThread::EndMultiFrameEvent(this, &EV_idAI_WaitMove);
}
}
@@ -3233,9 +2980,9 @@ idAI::Event_Shrivel
=====================
*/
void idAI::Event_Shrivel(float shrivel_time) {
const bool firstFrame = idThread::BeginMultiFrameEvent(this, &AI_Shrivel);
const bool firstFrame = idThread::BeginMultiFrameEvent(this, &EV_idAI_Shrivel);
if (Shrivel(shrivel_time, firstFrame)) {
idThread::EndMultiFrameEvent(this, &AI_Shrivel);
idThread::EndMultiFrameEvent(this, &EV_idAI_Shrivel);
}
}
-2
View File
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmAIObject, rvmFollower )
END_CLASS
void rvmFollower::Init( idAI* aiOwner ) {
rvmAIObject::Init( aiOwner );
+4 -3
View File
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmAIObject, rvmMonsterBase )
END_CLASS
rvmMonsterBase::rvmMonsterBase() {
run_distance = 0.0f;
@@ -1078,7 +1076,10 @@ void rvmMonsterBase::trigger_wakeup_targets() {
while ( kv ) {
idEntity* ent = gameLocal.FindEntity( kv->GetValue() );
if ( ent ) {
ent->ProcessEvent( &EV_Activate, owner );
const idEventDef* activateEvent = ent->FindEventDef( "activate", "e" );
if ( activateEvent ) {
ent->ProcessEvent( activateEvent, owner );
}
} else {
gameLocal.Warning( "Unknown wakeup_target '%s' on entity '%s'", kv->GetValue().c_str(), owner->GetName() );
}
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterBossCyberdemon )
END_CLASS
rvmMonsterBossCyberdemon::rvmMonsterBossCyberdemon() {
nextAttack = 0.0f;
@@ -4,12 +4,6 @@
#pragma hdrstop
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmSeekerBase )
END_CLASS
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterBossGuardianSpawner )
END_CLASS
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterBossGuardian )
END_CLASS
rvmSeekerBase::rvmSeekerBase() {}
void rvmSeekerBase::Init( idAI* aiOwner ) { rvmMonsterBase::Init( aiOwner ); }
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmSeekerBase, rvmMonsterBossGuardianSeeker )
END_CLASS
rvmMonsterBossGuardianSeeker::rvmMonsterBossGuardianSeeker() {
painNextTime = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterBossSabaoth )
END_CLASS
rvmMonsterBossSabaoth::rvmMonsterBossSabaoth() {
nextAttack = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterBossVagary )
END_CLASS
rvmMonsterBossVagary::rvmMonsterBossVagary() {
nextDodge = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonArchvile )
END_CLASS
rvmMonsterDemonArchvile::rvmMonsterDemonArchvile() {
nextDodge = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonCherub )
END_CLASS
rvmMonsterDemonCherub::rvmMonsterDemonCherub() {
explode = false;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonHellknight )
END_CLASS
rvmMonsterDemonHellknight::rvmMonsterDemonHellknight() {
nextDodge = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonImp )
END_CLASS
rvmMonsterDemonImp::rvmMonsterDemonImp() {
nextDodge = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonMaggot )
END_CLASS
rvmMonsterDemonMaggot::rvmMonsterDemonMaggot() {
explode = false;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonMancubus )
END_CLASS
rvmMonsterDemonMancubus::rvmMonsterDemonMancubus() {
nextAttack = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonPinky )
END_CLASS
rvmMonsterDemonPinky::rvmMonsterDemonPinky() {
nextDodge = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonRevenant )
END_CLASS
rvmMonsterDemonRevenant::rvmMonsterDemonRevenant() {
nextDodge = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonTrite )
END_CLASS
rvmMonsterDemonTrite::rvmMonsterDemonTrite() {
explode = false;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonVulgar )
END_CLASS
rvmMonsterDemonVulgar::rvmMonsterDemonVulgar() {
nextDodge = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterDemonWraith )
END_CLASS
rvmMonsterDemonWraith::rvmMonsterDemonWraith() {
invisible = false;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterFlyingCacodemon )
END_CLASS
rvmMonsterFlyingCacodemon::rvmMonsterFlyingCacodemon() {
nextAttack = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterFlyingLostsoul )
END_CLASS
rvmMonsterFlyingLostsoul::rvmMonsterFlyingLostsoul() {
nextAttack = 0.0f;
-2
View File
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterTurret )
END_CLASS
rvmMonsterTurret::rvmMonsterTurret() {
fire = false;
-2
View File
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterZombieBase, rvmMonsterZombie )
END_CLASS
rvmMonsterZombie::rvmMonsterZombie() {
painNextTime = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterZombieBase )
END_CLASS
stateResult_t rvmMonsterZombieBase::RunStateByName( const char* stateName, stateParms_t* parms ) {
AI_DISPATCH_STATE( "state_Killed", state_Killed );
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterZombieBase, rvmMonsterZombieBernie )
END_CLASS
rvmMonsterZombieBernie::rvmMonsterZombieBernie() {
painNextTime = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterZombieCommandoCGun )
END_CLASS
rvmMonsterZombieCommandoCGun::rvmMonsterZombieCommandoCGun() {
fire = false;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterBase, rvmMonsterZombieCommandoTentacle )
END_CLASS
rvmMonsterZombieCommandoTentacle::rvmMonsterZombieCommandoTentacle() {
nextAttack = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterZombieBase, rvmMonsterZombieMorgue )
END_CLASS
rvmMonsterZombieMorgue::rvmMonsterZombieMorgue() {
painNextTime = 0.0f;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterZombieBase, rvmMonsterZombieSawyer )
END_CLASS
rvmMonsterZombieSawyer::rvmMonsterZombieSawyer() {
attack = false;
@@ -6,8 +6,6 @@
#include "../Game_local.h"
CLASS_DECLARATION( rvmMonsterZombieBase, rvmMonsterZombieSecurityPistol )
END_CLASS
static float zsecp_num_stand_attacks = 1.0f;
static float zsecp_num_crouch_attacks = 1.0f;