class
BaseGrenade
- 62 properties
- 98 functions
Extends game.weapon.Grenade game.ItemObject game.TimeDilatable game.Object ent.GameEntity ent.Entity IScriptable ISerializable
Properties
| Property | Type | Offset | |
|---|---|---|---|
projectileComponent | game.projectile.Component? | 0x100 | scripted |
user | WeakHandle<game.Object> | 0x110 | scripted |
projectileSpawnPoint | Vector4 | 0x120 | scripted |
shootCollision | ent.SimpleColliderComponent? | 0x130 | scripted |
visualComponent | ent.IComponent? | 0x140 | scripted |
stickyMeshComponent | ent.IComponent? | 0x150 | scripted |
decalsStickyComponent | ent.IComponent? | 0x160 | scripted |
homingMeshComponent | ent.IComponent? | 0x170 | scripted |
targetingComponent | game.TargetingComponent? | 0x180 | scripted |
resourceLibraryComponent | ResourceLibraryComponent? | 0x190 | scripted |
mappinID | game.NewMappinID | 0x1A0 | scripted |
timeSinceLaunch | float | 0x1A8 | scripted |
timeSinceExplosion | float | 0x1AC | scripted |
detonationTimer | float | 0x1B0 | scripted |
stickyTrackerTimeout | float | 0x1B4 | scripted |
timeOfFreezing | float | 0x1B8 | scripted |
spawnBlinkEffectDelayID | game.DelayID | 0x1BC | scripted |
detonateRequestDelayID | game.DelayID | 0x1C4 | scripted |
releaseRequestDelayID | game.DelayID | 0x1CC | scripted |
delayToDetonate | float | 0x1D4 | scripted |
detonationTimerActive | bool | 0x1D8 | scripted |
isAlive | bool | 0x1D9 | scripted |
isSinking | bool | 0x1DA | scripted |
landedOnGround | bool | 0x1DB | scripted |
isStuck | bool | 0x1DC | scripted |
isTracking | bool | 0x1DD | scripted |
isLockingOn | bool | 0x1DE | scripted |
isLockedOn | bool | 0x1DF | scripted |
readyToTrack | bool | 0x1E0 | scripted |
lockOnFailed | bool | 0x1E1 | scripted |
canBeShot | bool | 0x1E2 | scripted |
shotDownByThePlayer | bool | 0x1E3 | scripted |
forceExplosion | bool | 0x1E4 | scripted |
hasClearedIgnoredObject | bool | 0x1E5 | scripted |
detonateOnImpact | bool | 0x1E6 | scripted |
setStickyTracker | bool | 0x1E7 | scripted |
isContinuousEffect | bool | 0x1E8 | scripted |
additionalAttackOnDetonate | bool | 0x1E9 | scripted |
additionalAttackOnCollision | bool | 0x1EA | scripted |
targetAcquired | bool | 0x1EB | scripted |
collidedWithNPC | bool | 0x1EC | scripted |
isBroadcastingStim | bool | 0x1ED | scripted |
playingFastBeep | bool | 0x1EE | scripted |
hasExploded | bool | 0x1EF | scripted |
targetTracker | game.EffectInstance? | 0x1F0 | scripted |
potentialHomingTargets | GrenadePotentialHomingTarget[] | 0x200 | scripted |
homingGrenadeTarget | GrenadePotentialHomingTarget | 0x210 | scripted |
cuttingGrenadePotentialTargets | CuttingGrenadePotentialTarget[] | 0x228 | scripted |
drillTargetPosition | Vector4 | 0x240 | scripted |
attacksSpawned | game.EffectInstance?[] | 0x250 | scripted |
tweakRecord | game.data.Grenade_Record? | 0x260 | scripted |
additionalEffect | game.FxResource | 0x270 | scripted |
landedCooldownActive | bool | 0x278 | scripted |
landedCooldownTimer | float | 0x27C | scripted |
hasHitWater | bool | 0x280 | scripted |
waterHeight | float | 0x284 | scripted |
smokeEffectRadius | float | 0x288 | scripted |
smokeEffectDuration | float | 0x28C | scripted |
smokeVisionBlockerId | uint | 0x290 | scripted |
isSmokeEffectActive | bool | 0x294 | scripted |
smokeVFXDeescalationOffset | float | 0x298 | scripted |
cpoTimeBeforeRelease | float | 0x29C | scripted |
Functions
bool OnRequestComponents(ent.EntityRequestComponentsInterface ri)overrideRTTIre.Hooks.Place( "BaseGrenade", "OnRequestComponents", (BaseGrenade_OnRequestComponents x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnRequestComponents( BaseGrenade self, ent.EntityRequestComponentsInterface ri );bool OnTakeControl(ent.EntityResolveComponentsInterface ri)overrideRTTIre.Hooks.Place( "BaseGrenade", "OnTakeControl", (BaseGrenade_OnTakeControl x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnTakeControl( BaseGrenade self, ent.EntityResolveComponentsInterface ri );void PreloadAttackResources()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "PreloadAttackResources;", (BaseGrenade_PreloadAttackResources x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_PreloadAttackResources( BaseGrenade self );void ReleaseAttackResources()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "ReleaseAttackResources;", (BaseGrenade_ReleaseAttackResources x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_ReleaseAttackResources( BaseGrenade self );bool OnVisualSpawnAttached()overrideRTTIre.Hooks.Place( "BaseGrenade", "OnVisualSpawnAttached", (BaseGrenade_OnVisualSpawnAttached x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnVisualSpawnAttached( BaseGrenade self );bool OnProjectileInitialize(game.projectile.SetUpEvent eventData)RTTIre.Hooks.Place( "BaseGrenade", "OnProjectileInitialize", (BaseGrenade_OnProjectileInitialize x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnProjectileInitialize( BaseGrenade self, game.projectile.SetUpEvent? eventData );void Reset()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "Reset;", (BaseGrenade_Reset x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_Reset( BaseGrenade self );void SetupDeliveryMethodMesh()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SetupDeliveryMethodMesh;", (BaseGrenade_SetupDeliveryMethodMesh x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SetupDeliveryMethodMesh( BaseGrenade self );float GetAttackRadius()RTTIre.Hooks.Place( "BaseGrenade", "GetAttackRadius;", (BaseGrenade_GetAttackRadius x) => { return re.Hooks.CallOriginal<re.msgpack.Float>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetAttackRadius( BaseGrenade self );float GetAttackDuration()RTTIre.Hooks.Place( "BaseGrenade", "GetAttackDuration;", (BaseGrenade_GetAttackDuration x) => { return re.Hooks.CallOriginal<re.msgpack.Float>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetAttackDuration( BaseGrenade self );WeakHandle<game.data.Attack_Record> GetDefaultAttack()RTTIfloat GetInitialVelocity(bool isQuickThrow)RTTIre.Hooks.Place( "BaseGrenade", "GetInitialVelocity;Bool", (BaseGrenade_GetInitialVelocity x) => { return re.Hooks.CallOriginal<re.msgpack.Float>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetInitialVelocity( BaseGrenade self, bool isQuickThrow );float GetAccelerationZ()RTTIre.Hooks.Place( "BaseGrenade", "GetAccelerationZ;", (BaseGrenade_GetAccelerationZ x) => { return re.Hooks.CallOriginal<re.msgpack.Float>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetAccelerationZ( BaseGrenade self );void SetCanBeShot(bool canBeShot)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SetCanBeShot;Bool", (BaseGrenade_SetCanBeShot x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SetCanBeShot( BaseGrenade self, bool canBeShot );bool OnShoot(game.projectile.ShootEvent eventData)RTTIre.Hooks.Place( "BaseGrenade", "OnShoot", (BaseGrenade_OnShoot x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnShoot( BaseGrenade self, game.projectile.ShootEvent? eventData );bool OnShootTarget(game.projectile.ShootTargetEvent eventData)RTTIre.Hooks.Place( "BaseGrenade", "OnShootTarget", (BaseGrenade_OnShootTarget x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnShootTarget( BaseGrenade self, game.projectile.ShootTargetEvent? eventData );bool OnCollision(game.projectile.HitEvent eventData)RTTIre.Hooks.Place( "BaseGrenade", "OnCollision", (BaseGrenade_OnCollision x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnCollision( BaseGrenade self, game.projectile.HitEvent? eventData );bool OnForceActivation(game.projectile.ForceActivationEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnForceActivation", (BaseGrenade_OnForceActivation x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnForceActivation( BaseGrenade self, game.projectile.ForceActivationEvent? evt );bool OnHit(game.events.HitEvent evt)overrideRTTIre.Hooks.Place( "BaseGrenade", "OnHit", (BaseGrenade_OnHit x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnHit( BaseGrenade self, game.events.HitEvent? evt );void CheckForGunslingerAchievement(game.damage.AttackData attackData)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "CheckForGunslingerAchievement;AttackData", (BaseGrenade_CheckForGunslingerAchievement x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_CheckForGunslingerAchievement( BaseGrenade self, game.damage.AttackData? attackData );bool OnTick(game.projectile.TickEvent eventData)RTTIre.Hooks.Place( "BaseGrenade", "OnTick", (BaseGrenade_OnTick x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnTick( BaseGrenade self, game.projectile.TickEvent? eventData );void OnServerTick(game.projectile.TickEvent eventData)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "OnServerTick;gameprojectileTickEvent", (BaseGrenade_OnServerTick x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnServerTick( BaseGrenade self, game.projectile.TickEvent? eventData );void Detonate(Vector4? hitNormal)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "Detonate;Vector4", (BaseGrenade_Detonate x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_Detonate( BaseGrenade self, Vector4? hitNormal );void SendCombatGadgetIsAliveFeature()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SendCombatGadgetIsAliveFeature;", (BaseGrenade_SendCombatGadgetIsAliveFeature x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SendCombatGadgetIsAliveFeature( BaseGrenade self );void SetThrowableAnimFeatureOnGrenade(int newState, WeakHandle<game.Object> target)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SetThrowableAnimFeatureOnGrenade;Int32GameObject", (BaseGrenade_SetThrowableAnimFeatureOnGrenade x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SetThrowableAnimFeatureOnGrenade( BaseGrenade self, int newState, WeakHandle<game.Object> target );void SpawnVisualEffectsOnDetonation()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SpawnVisualEffectsOnDetonation;", (BaseGrenade_SpawnVisualEffectsOnDetonation x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SpawnVisualEffectsOnDetonation( BaseGrenade self );void AddWaterImpulsesOnDetonation(Vector4 position, float attackRadius, int numImpulses)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "AddWaterImpulsesOnDetonation;Vector4FloatInt32", (BaseGrenade_AddWaterImpulsesOnDetonation x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_AddWaterImpulsesOnDetonation( BaseGrenade self, Vector4 position, float attackRadius, int numImpulses );bool OnCuttingGrenadeSpawnBlinkEffectEvent(CuttingGrenadeSpawnBlinkEffectEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnCuttingGrenadeSpawnBlinkEffectEvent", (BaseGrenade_OnCuttingGrenadeSpawnBlinkEffectEvent x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnCuttingGrenadeSpawnBlinkEffectEvent( BaseGrenade self, CuttingGrenadeSpawnBlinkEffectEvent? evt );bool OnCuttingGrenadeDespawnEffectsEvent(CuttingGrenadeDespawnEffectsEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnCuttingGrenadeDespawnEffectsEvent", (BaseGrenade_OnCuttingGrenadeDespawnEffectsEvent x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnCuttingGrenadeDespawnEffectsEvent( BaseGrenade self, CuttingGrenadeDespawnEffectsEvent? evt );bool OnGrenadeAnimFeatureChange(GrenadeAnimFeatureChangeEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnGrenadeAnimFeatureChange", (BaseGrenade_OnGrenadeAnimFeatureChange x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnGrenadeAnimFeatureChange( BaseGrenade self, GrenadeAnimFeatureChangeEvent? evt );void SpawnEffectFromLibrary(CName key)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SpawnEffectFromLibrary;CName", (BaseGrenade_SpawnEffectFromLibrary x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SpawnEffectFromLibrary( BaseGrenade self, CName key );void SpawnEffectOnGround(game.FxResource groundEffect)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SpawnEffectOnGround;FxResource", (BaseGrenade_SpawnEffectOnGround x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SpawnEffectOnGround( BaseGrenade self, game.FxResource groundEffect );void SpawnPiercingExplosion()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SpawnPiercingExplosion;", (BaseGrenade_SpawnPiercingExplosion x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SpawnPiercingExplosion( BaseGrenade self );void RegisterSmokeExplosion(Vector4 position)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "RegisterSmokeExplosion;Vector4", (BaseGrenade_RegisterSmokeExplosion x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_RegisterSmokeExplosion( BaseGrenade self, Vector4 position );void UnregisterSmokeExplosion()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "UnregisterSmokeExplosion;", (BaseGrenade_UnregisterSmokeExplosion x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_UnregisterSmokeExplosion( BaseGrenade self );bool IsGrenadeOfType(EGrenadeType compareType)RTTIre.Hooks.Place( "BaseGrenade", "IsGrenadeOfType;EGrenadeType", (BaseGrenade_IsGrenadeOfType x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_IsGrenadeOfType( BaseGrenade self, EGrenadeType compareType );EGrenadeType GetGrenadeType()RTTIre.Hooks.Place( "BaseGrenade", "GetGrenadeType;", (BaseGrenade_GetGrenadeType x) => { return re.Hooks.CallOriginal<re.msgpack.EGrenadeType>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetGrenadeType( BaseGrenade self );TDBID GetMappinIconIDForGrenadeType(EGrenadeType grenadeType)RTTIre.Hooks.Place( "BaseGrenade", "GetMappinIconIDForGrenadeType;EGrenadeType", (BaseGrenade_GetMappinIconIDForGrenadeType x) => { return re.Hooks.CallOriginal<re.msgpack.TDBID>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetMappinIconIDForGrenadeType( BaseGrenade self, EGrenadeType grenadeType );bool ShouldUsePlayerAttack()RTTIre.Hooks.Place( "BaseGrenade", "ShouldUsePlayerAttack;", (BaseGrenade_ShouldUsePlayerAttack x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_ShouldUsePlayerAttack( BaseGrenade self );bool OnFollowSuccess(game.projectile.FollowEvent eventData)RTTIre.Hooks.Place( "BaseGrenade", "OnFollowSuccess", (BaseGrenade_OnFollowSuccess x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnFollowSuccess( BaseGrenade self, game.projectile.FollowEvent? eventData );void TriggerStimuli(float radius)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "TriggerStimuli;Float", (BaseGrenade_TriggerStimuli x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_TriggerStimuli( BaseGrenade self, float radius );void TriggerGrenadeLandedStimuli(bool hasLifeTime)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "TriggerGrenadeLandedStimuli;Bool", (BaseGrenade_TriggerGrenadeLandedStimuli x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_TriggerGrenadeLandedStimuli( BaseGrenade self, bool hasLifeTime );void RemoveGrenadeLandedStimuli()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "RemoveGrenadeLandedStimuli;", (BaseGrenade_RemoveGrenadeLandedStimuli x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_RemoveGrenadeLandedStimuli( BaseGrenade self );game.data.StimType DetermineLandedStimType()RTTIre.Hooks.Place( "BaseGrenade", "DetermineLandedStimType;", (BaseGrenade_DetermineLandedStimType x) => { return re.Hooks.CallOriginal<re.msgpack.game.data.StimType>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_DetermineLandedStimType( BaseGrenade self );game.EffectInstance? SpawnAttack(game.data.Attack_Record attackRecord, float? range, float? duration, Vector4? hitNormal, Vector4? position, Vector4? vfxOffset)RTTIre.Hooks.Place( "BaseGrenade", "SpawnAttack;Attack_RecordFloatFloatVector4Vector4Vector4", (BaseGrenade_SpawnAttack x) => { return re.Hooks.CallOriginal<re.msgpack.game.GameEffectInstance>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SpawnAttack( BaseGrenade self, game.data.Attack_Record? attackRecord, float? range, float? duration, Vector4? hitNormal, Vector4? position, Vector4? vfxOffset );void SpawnLaserAttack(game.data.Attack_Record attackRecord, int numberOfLasers, float? range, float? duration, bool playSlotAnimation, float? delayPerLaser)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SpawnLaserAttack;Attack_RecordInt32FloatFloatBoolFloat", (BaseGrenade_SpawnLaserAttack x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SpawnLaserAttack( BaseGrenade self, game.data.Attack_Record? attackRecord, int numberOfLasers, float? range, float? duration, bool playSlotAnimation, float? delayPerLaser );bool OnSpawnLaserAttackEvent(SpawnLaserAttackEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnSpawnLaserAttackEvent", (BaseGrenade_OnSpawnLaserAttackEvent x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnSpawnLaserAttackEvent( BaseGrenade self, SpawnLaserAttackEvent? evt );void SpawnLaserAttackSingle(game.data.Attack_Record attackRecord, float range, float duration, int index, bool playSlotAnimation)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SpawnLaserAttackSingle;Attack_RecordFloatFloatInt32Bool", (BaseGrenade_SpawnLaserAttackSingle x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SpawnLaserAttackSingle( BaseGrenade self, game.data.Attack_Record? attackRecord, float range, float duration, int index, bool playSlotAnimation );void TerminateCuttingGrenadeAttack()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "TerminateCuttingGrenadeAttack;", (BaseGrenade_TerminateCuttingGrenadeAttack x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_TerminateCuttingGrenadeAttack( BaseGrenade self );void PlayLaserSlotAnimation(int index)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "PlayLaserSlotAnimation;Int32", (BaseGrenade_PlayLaserSlotAnimation x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_PlayLaserSlotAnimation( BaseGrenade self, int index );Vector4 GetShootCollisionSize()RTTIre.Hooks.Place( "BaseGrenade", "GetShootCollisionSize;", (BaseGrenade_GetShootCollisionSize x) => { return re.Hooks.CallOriginal<re.msgpack.Vector4>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetShootCollisionSize( BaseGrenade self );void ReleaseMappin()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "ReleaseMappin;", (BaseGrenade_ReleaseMappin x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_ReleaseMappin( BaseGrenade self );void RequestGrenadeRelease(float delay)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "RequestGrenadeRelease;Float", (BaseGrenade_RequestGrenadeRelease x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_RequestGrenadeRelease( BaseGrenade self, float delay );bool OnReleaseRequestEvent(GrenadeReleaseRequestEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnReleaseRequestEvent", (BaseGrenade_OnReleaseRequestEvent x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnReleaseRequestEvent( BaseGrenade self, GrenadeReleaseRequestEvent? evt );void Release(bool? isInstant)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "Release;Bool", (BaseGrenade_Release x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_Release( BaseGrenade self, bool? isInstant );bool MultiplayerCanRelease()RTTIre.Hooks.Place( "BaseGrenade", "MultiplayerCanRelease;", (BaseGrenade_MultiplayerCanRelease x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_MultiplayerCanRelease( BaseGrenade self );bool OnDespawnRequest(GrenadeDespawnRequestEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnDespawnRequest", (BaseGrenade_OnDespawnRequest x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnDespawnRequest( BaseGrenade self, GrenadeDespawnRequestEvent? evt );void InitializeRotation()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "InitializeRotation;", (BaseGrenade_InitializeRotation x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_InitializeRotation( BaseGrenade self );void Freeze()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "Freeze;", (BaseGrenade_Freeze x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_Freeze( BaseGrenade self );void DrillThrough(game.projectile.HitInstance collisionEventData)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "DrillThrough;script_ref<gameprojectileHitInstance>", (BaseGrenade_DrillThrough x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_DrillThrough( BaseGrenade self, game.projectile.HitInstance collisionEventData );game.EffectInstance? SpawnOnPuppetCollisionAttack(game.data.Attack_Record attackRecord, ScriptedPuppet? targetEntity)RTTIre.Hooks.Place( "BaseGrenade", "SpawnOnPuppetCollisionAttack;Attack_RecordScriptedPuppet", (BaseGrenade_SpawnOnPuppetCollisionAttack x) => { return re.Hooks.CallOriginal<re.msgpack.game.GameEffectInstance>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SpawnOnPuppetCollisionAttack( BaseGrenade self, game.data.Attack_Record? attackRecord, ScriptedPuppet? targetEntity );Vector4 GetDrillTargetPosition(Vector4 currentPosition, Vector4 hitNormal)RTTIre.Hooks.Place( "BaseGrenade", "GetDrillTargetPosition;Vector4Vector4", (BaseGrenade_GetDrillTargetPosition x) => { return re.Hooks.CallOriginal<re.msgpack.Vector4>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetDrillTargetPosition( BaseGrenade self, Vector4 currentPosition, Vector4 hitNormal );void RequestGrenadeDetonation(float delay)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "RequestGrenadeDetonation;Float", (BaseGrenade_RequestGrenadeDetonation x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_RequestGrenadeDetonation( BaseGrenade self, float delay );bool OnDetonateRequest(GrenadeDetonateRequestEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnDetonateRequest", (BaseGrenade_OnDetonateRequest x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnDetonateRequest( BaseGrenade self, GrenadeDetonateRequestEvent? evt );bool OnStopDrillingRequest(GrenadeStopDrillingRequestEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnStopDrillingRequest", (BaseGrenade_OnStopDrillingRequest x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnStopDrillingRequest( BaseGrenade self, GrenadeStopDrillingRequestEvent? evt );void FloatCuttingGrenadeUp()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "FloatCuttingGrenadeUp;", (BaseGrenade_FloatCuttingGrenadeUp x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_FloatCuttingGrenadeUp( BaseGrenade self );bool OnAddAxisRotationEvent(CuttingGrenadeAddAxisRotationEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnAddAxisRotationEvent", (BaseGrenade_OnAddAxisRotationEvent x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnAddAxisRotationEvent( BaseGrenade self, CuttingGrenadeAddAxisRotationEvent? evt );void FloatToLockOnAltitude()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "FloatToLockOnAltitude;", (BaseGrenade_FloatToLockOnAltitude x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_FloatToLockOnAltitude( BaseGrenade self );float GetDistanceFromFloor()RTTIre.Hooks.Place( "BaseGrenade", "GetDistanceFromFloor;", (BaseGrenade_GetDistanceFromFloor x) => { return re.Hooks.CallOriginal<re.msgpack.Float>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetDistanceFromFloor( BaseGrenade self );float GetDistanceToFloat()RTTIre.Hooks.Place( "BaseGrenade", "GetDistanceToFloat;", (BaseGrenade_GetDistanceToFloat x) => { return re.Hooks.CallOriginal<re.msgpack.Float>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetDistanceToFloat( BaseGrenade self );void QueueSmartTrajectory(float delay)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "QueueSmartTrajectory;Float", (BaseGrenade_QueueSmartTrajectory x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_QueueSmartTrajectory( BaseGrenade self, float delay );GrenadePotentialHomingTarget ChooseSmartTrajectoryTarget()RTTIre.Hooks.Place( "BaseGrenade", "ChooseSmartTrajectoryTarget;", (BaseGrenade_ChooseSmartTrajectoryTarget x) => { return re.Hooks.CallOriginal<re.msgpack.GrenadePotentialHomingTarget>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_ChooseSmartTrajectoryTarget( BaseGrenade self );bool OnTriggerSmartTrajectory(GrenadeTriggerSmartTrajectoryEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnTriggerSmartTrajectory", (BaseGrenade_OnTriggerSmartTrajectory x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnTriggerSmartTrajectory( BaseGrenade self, GrenadeTriggerSmartTrajectoryEvent? evt );void StopCuttingGrenadeAttack()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "StopCuttingGrenadeAttack;", (BaseGrenade_StopCuttingGrenadeAttack x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_StopCuttingGrenadeAttack( BaseGrenade self );bool OnCuttingGrenadeStopAttackEvent(CuttingGrenadeStopAttackEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnCuttingGrenadeStopAttackEvent", (BaseGrenade_OnCuttingGrenadeStopAttackEvent x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnCuttingGrenadeStopAttackEvent( BaseGrenade self, CuttingGrenadeStopAttackEvent? evt );void DropToFloor()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "DropToFloor;", (BaseGrenade_DropToFloor x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_DropToFloor( BaseGrenade self );bool IsEMP()RTTIre.Hooks.Place( "BaseGrenade", "IsEMP;", (BaseGrenade_IsEMP x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_IsEMP( BaseGrenade self );float GetGrenadeAttackStatusEffectDuration()RTTIre.Hooks.Place( "BaseGrenade", "GetGrenadeAttackStatusEffectDuration;", (BaseGrenade_GetGrenadeAttackStatusEffectDuration x) => { return re.Hooks.CallOriginal<re.msgpack.Float>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetGrenadeAttackStatusEffectDuration( BaseGrenade self );bool IsUnderwater()RTTIre.Hooks.Place( "BaseGrenade", "IsUnderwater;", (BaseGrenade_IsUnderwater x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_IsUnderwater( BaseGrenade self );void TryToSinkAndRequestDetonation()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "TryToSinkAndRequestDetonation;", (BaseGrenade_TryToSinkAndRequestDetonation x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_TryToSinkAndRequestDetonation( BaseGrenade self );void ActivateSmartTrajectory()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "ActivateSmartTrajectory;", (BaseGrenade_ActivateSmartTrajectory x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_ActivateSmartTrajectory( BaseGrenade self );void SetTracking(bool state)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "SetTracking;Bool", (BaseGrenade_SetTracking x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SetTracking( BaseGrenade self, bool state );bool ProcessProximityTargets()RTTIre.Hooks.Place( "BaseGrenade", "ProcessProximityTargets;", (BaseGrenade_ProcessProximityTargets x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_ProcessProximityTargets( BaseGrenade self );bool CheckRegularDeliveryMethodConditions()RTTIre.Hooks.Place( "BaseGrenade", "CheckRegularDeliveryMethodConditions;", (BaseGrenade_CheckRegularDeliveryMethodConditions x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_CheckRegularDeliveryMethodConditions( BaseGrenade self );bool CheckStickyDeliveryMethodConditions()RTTIre.Hooks.Place( "BaseGrenade", "CheckStickyDeliveryMethodConditions;", (BaseGrenade_CheckStickyDeliveryMethodConditions x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_CheckStickyDeliveryMethodConditions( BaseGrenade self );void PlayNPCGrenadeBeepSound()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "PlayNPCGrenadeBeepSound;", (BaseGrenade_PlayNPCGrenadeBeepSound x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_PlayNPCGrenadeBeepSound( BaseGrenade self );void StopNPCGrenadeBeepSound()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "StopNPCGrenadeBeepSound;", (BaseGrenade_StopNPCGrenadeBeepSound x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_StopNPCGrenadeBeepSound( BaseGrenade self );void PlayStickyGrenadeLongBeepSound()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "PlayStickyGrenadeLongBeepSound;", (BaseGrenade_PlayStickyGrenadeLongBeepSound x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_PlayStickyGrenadeLongBeepSound( BaseGrenade self );void PlayStickyGrenadeShortBeepSound()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "PlayStickyGrenadeShortBeepSound;", (BaseGrenade_PlayStickyGrenadeShortBeepSound x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_PlayStickyGrenadeShortBeepSound( BaseGrenade self );void StopStickyGrenadeSounds()RTTIre.Hooks.PlaceVoid( "BaseGrenade", "StopStickyGrenadeSounds;", (BaseGrenade_StopStickyGrenadeSounds x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_StopStickyGrenadeSounds( BaseGrenade self );bool OnTargetAcquired(GrenadeTrackerTargetAcquiredEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnTargetAcquired", (BaseGrenade_OnTargetAcquired x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnTargetAcquired( BaseGrenade self, GrenadeTrackerTargetAcquiredEvent? evt );bool OnTargetLost(GrenadeTrackerTargetLostEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnTargetLost", (BaseGrenade_OnTargetLost x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnTargetLost( BaseGrenade self, GrenadeTrackerTargetLostEvent? evt );void DelayTargetTrackingStateChange(bool newState, float delay)RTTIre.Hooks.PlaceVoid( "BaseGrenade", "DelayTargetTrackingStateChange;BoolFloat", (BaseGrenade_DelayTargetTrackingStateChange x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_DelayTargetTrackingStateChange( BaseGrenade self, bool newState, float delay );bool OnTargetTrackerStateSet(GrenadeSetTargetTrackerStateEvent evt)RTTIre.Hooks.Place( "BaseGrenade", "OnTargetTrackerStateSet", (BaseGrenade_OnTargetTrackerStateSet x) => { return re.Hooks.CallOriginal<re.msgpack.Bool>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_OnTargetTrackerStateSet( BaseGrenade self, GrenadeSetTargetTrackerStateEvent? evt );WeakHandle<game.Object> GetUser()RTTIVector4 GetLastHitNormal()RTTIre.Hooks.Place( "BaseGrenade", "GetLastHitNormal;", (BaseGrenade_GetLastHitNormal x) => { return re.Hooks.CallOriginal<re.msgpack.Vector4>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetLastHitNormal( BaseGrenade self );game.data.GrenadeDeliveryMethodType GetDeliveryMethod()RTTIre.Hooks.Place( "BaseGrenade", "GetDeliveryMethod;", (BaseGrenade_GetDeliveryMethod x) => { return re.Hooks.CallOriginal<re.msgpack.game.data.GrenadeDeliveryMethodType>(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_GetDeliveryMethod( BaseGrenade self );static void SendGrenadeAnimFeatureChangeEvent(WeakHandle<game.Object> owner, game.ItemID itemID)staticRTTI globalre.Hooks.PlaceVoid( "BaseGrenade", "BaseGrenade::SendGrenadeAnimFeatureChangeEvent;GameObjectItemID", (BaseGrenade_SendGrenadeAnimFeatureChangeEvent x) => { re.Hooks.CallOriginalVoid(); } ); [Msgpack.Gen] public readonly partial record struct BaseGrenade_SendGrenadeAnimFeatureChangeEvent( WeakHandle<game.Object> owner, game.ItemID itemID );