List of codepointers: Difference between revisions
Bloodshedder (talk | contribs) |
Bloodshedder (talk | contribs) (→Miscellaneous Pointers: steamspawn) |
||
Line 70: | Line 70: | ||
*[[Fire]] | *[[Fire]] | ||
*[[Spawn]] | *[[Spawn]] | ||
*[[SteamSpawn]] | |||
*[[Turn]] | *[[Turn]] | ||
*[[Face]] | *[[Face]] |
Revision as of 03:11, 29 April 2009
General code pointers can be used in any frame that is not a player gun frame. Player Gun Frame code pointers cannot be used anywhere except in player gun frames. If a code pointer is used in the wrong type of frame, the internal function call stack will be corrupted, a "Segmentation Violation" error will most likely occur, and Cyberdemons will come to get you in the night. This isn't an Eternity bug or limitation. This problem would eventually manifest itself even in the original doom.exe, as a sudden, unexplained Venetian Blinds crash. There is additionally no way to type-check codepointers at run-time, so the user must accept this responsibility.
Note that as of Eternity Engine v3.31 public beta 3, there is a special codepointer called PlayerThunk, usable via EDF, which allows player gun frames to call a select set of monster codepointers by proxy.
Parameterized pointers take parameters via fields on the frame in which they are used. The code pointer parameter information will indicate what fields are used as parameters, and what parameter values mean.
Player Gun Frame Code Pointers
Weapon Maintenance Pointers
Player Attack Pointers
Miscellaneous Weapon Pointers
Parameterized Player Attack Pointers
Weapon Frame Scripting Pointers
These pointers allow a degree of programmatic control over an weapon's behavior, and are therefore termed "frame scripting" codepointers.
Counter fields may have values from -32768 to 32767. Values above or below this range will wrap around.
General Code Pointers
Miscellaneous Pointers
- BFGSpray
- BFG11KHit
- BouncingBFG
- BFGBurst
- Mushroom
- Nailbomb
- SetFlags
- UnSetFlags
- Fall
- Die
- BrainScream
- BrainExplode
- SpawnFly
- Fire
- Spawn
- SteamSpawn
- Turn
- Face
- LineEffect
- Stop
Heretic Miscellaneous Pointers
- SpawnGlitter
- AccelGlitter
- SpawnAbove
- MummySoul
- BlueSpark
- GenWizard
- Sor2DthInit
- Sor2DthLoop
- PodPain
- RemovePod
- MakePod
- DripBlood
Miscellaneous / Sound Pointers
Heretic Misc / Sound Pointers
Object Sound Pointers
AI Pointers
Heretic AI Pointers
AI Pointers with Walking Sounds
Blast Radius Attack Pointers
Heretic Blast Radius Attack Pointers
Monster Attack Pointers
- PosAttack
- SPosAttack
- VileTarget
- VileAttack
- SkelFist
- SkelMissile
- FatAttack1
- FatAttack2
- FatAttack3
- CPosAttack
- TroopAttack
- SargAttack
- HeadAttack
- BruisAttack
- SkullAttack
- BspiAttack
- CyberAttack
- PainAttack
- BrainSpit
Parameterized Monster Attacks
Heretic Monster Attack Pointers
- MummyAttack
- MummyAttack2
- ClinkAttack
- WizardAtk1
- WizardAtk2
- WizardAtk3
- Srcr2Decide
- Srcr2Attack
- KnightAttack
- BeastAttack
- BeastPuff
- SnakeAttack
- SnakeAttack2
- Srcr1Attack
- VolcanoBlast
- VolcBallImpact
- MinotaurAtk1
- MinotaurDecide
- MinotaurAtk2
- MinotaurAtk3
- MinotaurCharge
- MntrFloorFire
- LichFire
- LichWhirlwind
- LichAttack
- LichIceImpact
- LichFireGrow
- ImpChargeAtk
- ImpMeleeAtk
- ImpMissileAtk
Homing Missile Maintenance Pointers
Heretic Homing Missile Maintenance Pointers
Line of Sight Checking Pointers
Special Monster Death Effects
Heretic Special Monster Death Effects
Massacre Cheat Specials
Frame Scripting Pointers
These pointers allow a degree of programmatic control over an object's behavior, and are therefore termed "frame scripting" codepointers. Note that some other codepointers utilize the Counter fields of a thing, and so using those pointers along with these will cause interference. Codepointer descriptions now make note of which Counter fields they utilize, so be sure to check for conflicts.
Counter fields may have values from -32768 to 32767. Values above or below this range will wrap around.
- RandomJump
- HealthJump
- TargetJump
- CounterJump
- CounterSwitch
- SetCounter
- CounterOp
- CopyCounter
- SetTics
- AproxDistance
Small Scripting System
These codepointers allow execution of Small functions in either of the Gamescript or Levelscript VMs. See the Small Usage Documentation and the Small Function Reference for full information.
EDF-Related Pointers
These pointers interact directly with parts of the EDF system. For more information on EDF, see the EDF Documentation.