UNPKG

anomaly-packer

Version:

Anomaly Packer is a utility package for STALKER Anomaly creators to help them develop addons at speed with TypeScript's type-safety and game-oriented build tools.

119 lines (117 loc) 4.31 kB
import type { Section } from 'anomaly-packer' declare global { class CWound { TypeSize(hit_type: number): number BloodSize(): number AddHit(power: number, type: number): void Incarnation(percent: number, min_wound_size: number): void TotalSize(): number SetBoneNum(num: number): void GetBoneNum(): number GetParticleBoneNum(): number SetParticleBoneNum(num: number): void SetDestroy(destroy: boolean): void GetDestroy(): boolean } class CEntityCondition { readonly eBoostHpRestore: 0 readonly eBoostPowerRestore: 1 readonly eBoostRadiationRestore: 2 readonly eBoostBleedingRestore: 3 readonly eBoostMaxWeight: 4 readonly eBoostRadiationProtection: 5 readonly eBoostTelepaticProtection: 6 readonly eBoostChemicalBurnProtection: 7 readonly eBoostBurnImmunity: 8 readonly eBoostShockImmunity: 9 readonly eBoostRadiationImmunity: 10 readonly eBoostTelepaticImmunity: 11 readonly eBoostChemicalBurnImmunity: 12 readonly eBoostExplImmunity: 13 readonly eBoostStrikeImmunity: 14 readonly eBoostFireWoundImmunity: 15 readonly eBoostWoundImmunity: 16 AddWound(hit_power: number, hit_type: number, element: number): CWound ClearWounds(): void GetWhoHitLastTimeID(): number GetPower(): number SetPower(power: number): void GetRadiation(): number GetPsyHealth(): number GetSatiety(): number GetEntityMorale(): number GetHealthLost(): number IsLimping(): boolean ChangeSatiety(satiety: number): void ChangeHealth(health: number): void ChangePower(power: number): void ChangeRadiation(rad: number): void ChangePsyHealth(psy: number): void ChangeAlcohol(alcohol: number): void SetMaxPower(power: number): void GetMaxPower(): number ChangeEntityMorale(morale: number): void ChangeBleeding(bleeding: number): void BleedingSpeed(): number } class SBooster { constructor() fBoostTime: number fBoostValue: number m_type: number } class CActorCondition extends CEntityCondition { readonly eCriticalPowerReached: 1 readonly eCriticalBleedingSpeed: 4 readonly eCriticalSatietyReached: 8 readonly eCriticalRadiationReached: 16 readonly eWeaponJammedReached: 32 readonly ePhyHealthMinReached: 64 readonly eCantWalkWeight: 128 readonly eCantWalkWeightReached: 256 m_MaxWalkWeight: number m_fJumpPower: number m_fStandPower: number m_fJumpWeightPower: number m_fWalkWeightPower: number m_fOverweightWalkK: number m_fOverweightJumpK: number m_fAccelK: number m_fSprintK: number m_condition_flags: Flags ClearAllBoosters(): void ApplyBooster(booster: SBooster, section: Section.Item): boolean /** @param functor called for each active booster as `(boostType, boostTime, boostValue)`; return `true` to stop iteration */ BoosterForEach(functor: (this: void, boostType: number, boostTime: number, boostValue: number) => boolean): void /** @param functor called for each wound; return `true` to stop iteration */ WoundForEach(functor: (this: void, wound: CWound) => boolean): void V_Satiety(): number V_SatietyPower(): number V_SatietyHealth(): number SatietyCritical(): number GetSatiety(): number SetPsyBar(psybar: number): void GetPsyBar(): number BoostMaxWeight(weight: number): void BoostHpRestore(restore: number): void BoostPowerRestore(restore: number): void BoostRadiationRestore(restore: number): void BoostBleedingRestore(restore: number): void BoostBurnImmunity(restore: number): void BoostShockImmunity(restore: number): void BoostRadiationImmunity(restore: number): void BoostTelepaticImmunity(restore: number): void BoostChemicalBurnImmunity(restore: number): void BoostExplImmunity(restore: number): void BoostStrikeImmunity(restore: number): void BoostFireWoundImmunity(restore: number): void BoostWoundImmunity(restore: number): void BoostRadiationProtection(restore: number): void BoostTelepaticProtection(restore: number): void BoostChemicalBurnProtection(restore: number): void IsLimping(): boolean IsCantWalk(): boolean IsCantWalkWeight(): boolean IsCantSprint(): boolean } }