From f0571385d50f4bc58df9f3d6c81050e8170c93a0 Mon Sep 17 00:00:00 2001 From: smallmodel <15067410+smallmodel@users.noreply.github.com> Date: Mon, 14 Aug 2023 19:00:16 +0200 Subject: [PATCH] Export events for AISpawnPoint --- code/fgame/actor.h | 122 ++++++++++++++++++++++++++++++-------- code/fgame/entity.h | 3 + code/fgame/sentient.h | 5 ++ code/fgame/simpleentity.h | 3 + code/fgame/weapon.cpp | 4 +- code/fgame/weapon.h | 12 ++++ 6 files changed, 122 insertions(+), 27 deletions(-) diff --git a/code/fgame/actor.h b/code/fgame/actor.h index 6417fd15..7b91c024 100644 --- a/code/fgame/actor.h +++ b/code/fgame/actor.h @@ -35,31 +35,103 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #include "grenadehint.h" #include "parm.h" -extern Event EV_Actor_Start; -extern Event EV_Actor_Dead; -extern Event EV_Actor_LookAt; -extern Event EV_Actor_TurnTo; -extern Event EV_Actor_FinishedBehavior; -extern Event EV_Actor_NotifyBehavior; -extern Event EV_Actor_FinishedMove; -extern Event EV_Actor_FinishedAnim; -extern Event EV_Actor_WalkTo; -extern Event EV_Actor_RunTo; -extern Event EV_Actor_Anim; -extern Event EV_Actor_AttackFinished; -extern Event EV_Actor_Attack; -extern Event EV_Actor_AttackPlayer; -extern Event EV_Actor_AIOn; -extern Event EV_Actor_AIOff; -extern Event EV_Actor_AIDeaf; -extern Event EV_Actor_AIDumb; -extern Event EV_ActorIncomingProjectile; -extern Event EV_Anim_Done; -extern Event EV_ActorOnlyShootable; -extern Event EV_Actor_BounceOff; -extern Event EV_Actor_Push; -extern Event EV_Actor_Statemap; -extern Event EV_Actor_SetTargetable; +// +// Export these events for AISpawnPoint (since 2.30) +// +extern Event EV_Actor_SetGun; +extern Event EV_Actor_SetGun2; +extern Event EV_Actor_GetGun; +extern Event EV_Actor_GetSight; +extern Event EV_Actor_SetSight; +extern Event EV_Actor_SetSight2; +extern Event EV_Actor_GetHearing; +extern Event EV_Actor_SetHearing; +extern Event EV_Actor_SetHearing2; +extern Event EV_Actor_GetFov; +extern Event EV_Actor_SetFov; +extern Event EV_Actor_SetFov2; +extern Event EV_Actor_SetTypeIdle; +extern Event EV_Actor_SetTypeIdle2; +extern Event EV_Actor_GetTypeIdle; +extern Event EV_Actor_SetTypeAttack; +extern Event EV_Actor_SetTypeAttack2; +extern Event EV_Actor_GetTypeAttack; +extern Event EV_Actor_SetTypeDisguise; +extern Event EV_Actor_SetTypeDisguise2; +extern Event EV_Actor_GetTypeDisguise; +extern Event EV_Actor_SetDisguiseLevel; +extern Event EV_Actor_SetDisguiseLevel2; +extern Event EV_Actor_GetDisguiseLevel; +extern Event EV_Actor_SetTypeGrenade; +extern Event EV_Actor_SetTypeGrenade2; +extern Event EV_Actor_GetTypeGrenade; +extern Event EV_Actor_SetPatrolPath; +extern Event EV_Actor_SetPatrolPath2; +extern Event EV_Actor_GetPatrolPath; +extern Event EV_Actor_SetPatrolWaitTrigger; +extern Event EV_Actor_SetPatrolWaitTrigger2; +extern Event EV_Actor_GetPatrolWaitTrigger; +extern Event EV_Actor_SetAlarmNode; +extern Event EV_Actor_SetAlarmNode2; +extern Event EV_Actor_GetAlarmNode; +extern Event EV_Actor_SetAccuracy; +extern Event EV_Actor_SetAccuracy2; +extern Event EV_Actor_GetAccuracy; +extern Event EV_Actor_SetMinDistance; +extern Event EV_Actor_SetMinDistance2; +extern Event EV_Actor_GetMinDistance; +extern Event EV_Actor_SetMaxDistance; +extern Event EV_Actor_SetMaxDistance2; +extern Event EV_Actor_GetMaxDistance; +extern Event EV_Actor_GetLeash; +extern Event EV_Actor_SetLeash; +extern Event EV_Actor_SetLeash2; +extern Event EV_Actor_GetInterval; +extern Event EV_Actor_SetInterval; +extern Event EV_Actor_SetInterval2; +extern Event EV_Actor_SetDisguiseRange; +extern Event EV_Actor_SetDisguiseRange2; +extern Event EV_Actor_GetDisguiseRange; +extern Event EV_Actor_SetDisguisePeriod; +extern Event EV_Actor_SetDisguisePeriod2; +extern Event EV_Actor_GetDisguisePeriod; +extern Event EV_Actor_SetGrenadeAwareness; +extern Event EV_Actor_SetGrenadeAwareness2; +extern Event EV_Actor_GetGrenadeAwareness; +extern Event EV_Actor_SetTurret; +extern Event EV_Actor_SetTurret2; +extern Event EV_Actor_GetTurret; +extern Event EV_Actor_SetSoundAwareness; +extern Event EV_Actor_SetSoundAwareness2; +extern Event EV_Actor_GetSoundAwareness; +extern Event EV_Actor_SetGrenadeAwareness; +extern Event EV_Actor_SetGrenadeAwareness2; +extern Event EV_Actor_SetAmmoGrenade; +extern Event EV_Actor_SetAmmoGrenade2; +extern Event EV_Actor_GetAmmoGrenade; +extern Event EV_Actor_GetMaxNoticeTimeScale; +extern Event EV_Actor_SetMaxNoticeTimeScale; +extern Event EV_Actor_SetMaxNoticeTimeScale2; +extern Event EV_Actor_GetFixedLeash; +extern Event EV_Actor_SetFixedLeash; +extern Event EV_Actor_SetFixedLeash2; +extern Event EV_Actor_GetEnemyShareRange; +extern Event EV_Actor_SetEnemyShareRange; +extern Event EV_Actor_SetEnemyShareRange2; +extern Event EV_Actor_SetWeapon; +extern Event EV_Actor_GetWeapon; +extern Event EV_Actor_GetVoiceType; +extern Event EV_Actor_SetVoiceType; +extern Event EV_Actor_SetVoiceType2; +extern Event EV_Actor_GetFavoriteEnemy; +extern Event EV_Actor_SetFavoriteEnemy; +extern Event EV_Actor_SetFavoriteEnemy2; +extern Event EV_Actor_SetBalconyHeight; +extern Event EV_Actor_SetBalconyHeight2; +extern Event EV_Actor_GetBalconyHeight; +extern Event EV_Actor_GetNoSurprise; +extern Event EV_Actor_SetNoSurprise; +extern Event EV_Actor_SetNoSurprise2; extern Event EV_Actor_DeathEmbalm; // Bones used by actor diff --git a/code/fgame/entity.h b/code/fgame/entity.h index c3e73eed..56c93e00 100644 --- a/code/fgame/entity.h +++ b/code/fgame/entity.h @@ -116,6 +116,7 @@ extern Event EV_NoDamage; // script stuff extern Event EV_Model; +extern Event EV_GetModel; extern Event EV_Hide; extern Event EV_Show; extern Event EV_BecomeSolid; @@ -129,6 +130,8 @@ extern Event EV_Unglue; extern Event EV_JoinTeam; extern Event EV_QuitTeam; extern Event EV_SetHealth; +extern Event EV_SetHealth2; +extern Event EV_Entity_GetHealth; extern Event EV_SetSize; extern Event EV_SetAlpha; extern Event EV_SetTargetName; diff --git a/code/fgame/sentient.h b/code/fgame/sentient.h index b719eb4f..0f515cd1 100644 --- a/code/fgame/sentient.h +++ b/code/fgame/sentient.h @@ -57,6 +57,11 @@ extern Event EV_Sentient_UseItem; extern Event EV_Sentient_UseLastWeapon; extern Event EV_Sentient_UseWeaponClass; extern Event EV_Sentient_ToggleItemUse; +extern Event EV_Sentient_DontDropWeapons; +extern Event EV_Sentient_ForceDropWeapon; +extern Event EV_Sentient_ForceDropHealth; +extern Event EV_Sentient_GetForceDropHealth; +extern Event EV_Sentient_GetForceDropWeapon; // Shutup compiler class Weapon; diff --git a/code/fgame/simpleentity.h b/code/fgame/simpleentity.h index 3f2c1e19..d1f846e3 100644 --- a/code/fgame/simpleentity.h +++ b/code/fgame/simpleentity.h @@ -29,6 +29,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA extern Event EV_SetAngles; extern Event EV_SetAngle; extern Event EV_SetOrigin; +extern Event EV_SetTarget; +extern Event EV_SetTarget2; +extern Event EV_GetTarget; typedef int entflags_t; diff --git a/code/fgame/weapon.cpp b/code/fgame/weapon.cpp index 2e450fa2..533d9fcb 100644 --- a/code/fgame/weapon.cpp +++ b/code/fgame/weapon.cpp @@ -176,7 +176,7 @@ Event EV_Weapon_SetMinRange "Set the minimum range of a weapon so the AI knows how to use it", EV_NORMAL ); -Event EV_Weapon_SetFireDelay +Event EV_Weapon_FireDelay ( "firedelay", EV_DEFAULT, @@ -886,7 +886,7 @@ CLASS_DECLARATION(Item, Weapon, NULL) { {&EV_Weapon_AddToClip, &Weapon::AddToAmmoClip }, {&EV_Weapon_SetMaxRange, &Weapon::SetMaxRangeEvent }, {&EV_Weapon_SetMinRange, &Weapon::SetMinRangeEvent }, - {&EV_Weapon_SetFireDelay, &Weapon::SetFireDelay }, + {&EV_Weapon_FireDelay, &Weapon::SetFireDelay }, {&EV_Weapon_NotDroppable, &Weapon::NotDroppableEvent }, {&EV_Weapon_SetAimAnim, &Weapon::SetAimAnim }, {&EV_Weapon_Shoot, &Weapon::Shoot }, diff --git a/code/fgame/weapon.h b/code/fgame/weapon.h index aa1ba5d0..7ef15123 100644 --- a/code/fgame/weapon.h +++ b/code/fgame/weapon.h @@ -38,8 +38,20 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA extern Event EV_Weapon_Shoot; extern Event EV_Weapon_SetAmmoClipSize; extern Event EV_Weapon_SetAmmoInClip; +extern Event EV_Weapon_FireDelay; extern Event EV_Weapon_SetProjectile; +extern Event EV_Weapon_SetBulletDamage; +extern Event EV_Weapon_SetBulletLarge; +extern Event EV_Weapon_SetTracerSpeed; +extern Event EV_Weapon_SetBulletKnockback; +extern Event EV_Weapon_SetBulletThroughWood; +extern Event EV_Weapon_SetBulletThroughMetal; +extern Event EV_Weapon_SetBulletCount; +extern Event EV_Weapon_SetBulletRange; +extern Event EV_Weapon_SetBulletSpread; +extern Event EV_Weapon_SetTracerFrequency; extern Event EV_Weapon_GiveStartingAmmo; +extern Event EV_Weapon_SetMeansOfDeath; typedef enum { FT_NONE,