Category:All commands: Difference between revisions
| Hendricks266 (talk | contribs) No edit summary | |||
| (35 intermediate revisions by 4 users not shown) | |||
| Line 1: | Line 1: | ||
| {{EDuke32 Intro}} | {{EDuke32 Intro}} | ||
| === | ==Preprocessor== | ||
| *[[include]] | |||
| *[[includedefault]] | |||
| *[[define]] | |||
| *// single-line comment | |||
| */* block comment */ | |||
| *whitespace characters: <code>( ) ; ,</code> | |||
| ==Meta-Settings== | |||
| <!-- These deal with matters outside the game world. --> | |||
| *[[dynamicremap]] | |||
| *[[dynamicsoundremap]] | |||
| *[[setcfgname]] | |||
| *[[setdefname]] | |||
| *[[setgamename]] | |||
| *[[precache]] | |||
| *[[scriptsize]] | |||
| *[[cheatkeys]] | |||
| *[[definecheat]] | |||
| *[[definegamefuncname]] | |||
| *[[definegametype]] | |||
| *[[definevolumename]] | |||
| *[[definevolumeflags]] | |||
| *[[definelevelname]] | |||
| *[[defineskillname]] | |||
| *[[undefinevolume]] | |||
| *[[undefinelevel]] | |||
| *[[undefineskill]] | |||
| ===If=== | |||
| *[[ifrespawn]] | |||
| *[[ifmultiplayer]] | |||
| *[[ifclient]] | |||
| *[[ifserver]] | |||
| ==Global Settings== | |||
| <!-- These deal with matters inside the game world. --> | |||
| *[[gamestartup]] | |||
| *[[spritenopal]] | |||
| *[[spritenoshade]] | |||
| *[[spritenvg]] | |||
| *[[spriteshadow]] | |||
| ==Block Delimiting== | |||
| ===Object-Oriented=== | |||
| *[[actor]] | *[[actor]] | ||
| *[[useractor]] | *[[useractor]] | ||
| *[[enda]] | *[[enda]] | ||
| ===Procedural=== | |||
| *[[onevent]] | |||
| *[[appendevent]] | |||
| *[[endevent]] | |||
| ===Subroutines=== | |||
| *[[state]] | *[[state]] | ||
| *[[defstate]] | |||
| *[[ends]] | *[[ends]] | ||
| *[[ | *[[prependstate]] | ||
| *[[ | *[[appendstate]] | ||
| *[[ | |||
| ==Flow Control== | |||
| ===If Components=== | |||
| *[[nullop]] | |||
| *[[else]] | |||
| ===Switch=== | |||
| *[[switch]] | *[[switch]] | ||
| *[[endswitch]] | *[[endswitch]] | ||
| *[[case]] | *[[case]] | ||
| *[[default]] | *[[default]] | ||
| ===Termination=== | |||
| *[[break]] | *[[break]] | ||
| *[[continue]] | |||
| *[[exit]] | |||
| *[[return]] | |||
| *[[terminate]] | |||
| ===Jump=== | |||
| :''Note: Jumping commands are deprecated and will not be supported by Lunatic. Use [[#Loops|loops]] instead.'' | |||
| *[[getcurraddress]] | *[[getcurraddress]] | ||
| *[[jump]] | *[[jump]] | ||
| ===Loops=== | ===Loops=== | ||
| *[[whilevarl]] | |||
| *[[whilevarvarl]] | |||
| *[[whilevare]] | |||
| *[[whilevarn]] | *[[whilevarn]] | ||
| *[[whilevarvarn]] | *[[whilevarvarn]] | ||
| :''It is also possible to loop by calling a state from within itself.'' | |||
| ==Game Variables== | |||
| *[[gamevar]] | |||
| === | *[[gamearray]] | ||
| *[[ | |||
| *[[ | |||
| ===Gamevar Operators=== | ===Gamevar Operators=== | ||
| *[[setvar]] | *[[setvar]] | ||
| *[[setvarvar]] | *[[setvarvar]] | ||
| *[[setarray]] | |||
| *[[addvar]] | *[[addvar]] | ||
| *[[addvarvar]] | *[[addvarvar]] | ||
| Line 68: | Line 111: | ||
| *[[randvar]] | *[[randvar]] | ||
| *[[randvarvar]] | *[[randvarvar]] | ||
| ===Gamevar Conditions=== | ===Gamevar Conditions=== | ||
| *[[ifvare]] | *[[ifvare]] | ||
| Line 98: | Line 128: | ||
| *[[ifvarvarxor]] | *[[ifvarvarxor]] | ||
| *[[ifvarvareither]] | *[[ifvarvareither]] | ||
| ===Projectiles== | ===Math Operations=== | ||
| *[[sqrt]] | |||
| *[[calchypotenuse]] | |||
| *[[sin]] | |||
| *[[cos]] | |||
| *[[shiftvarl]] | |||
| *[[shiftvarr]] | |||
| *[[mulscale]] | |||
| *[[getangle]] | |||
| *[[getincangle]] | |||
| ===Array Operations=== | |||
| *[[getarraysize]] | |||
| *[[getarraysequence]] | |||
| *[[resizearray]] | |||
| *[[copy]] | |||
| *[[setarray]] | |||
| *[[setarraysequence]] | |||
| ===Data Saving=== | |||
| *[[readgamevar]] | |||
| *[[savegamevar]] | |||
| *[[readarrayfromfile]] | |||
| *[[writearraytofile]] | |||
| ==Structure Access== | |||
| *[[getactor]] | |||
| *[[getactorvar]] | |||
| *[[getinput]] | |||
| *[[getplayer]] | |||
| *[[getplayervar]] | |||
| *[[getprojectile]] | |||
| *[[getsector]] | |||
| *[[getthisprojectile]] | |||
| *[[gettspr]] | |||
| *[[getuserdef]] | |||
| *[[getwall]] | |||
| *[[setactor]] | |||
| *[[setactorvar]] | |||
| *[[setinput]] | |||
| *[[setplayer]] | |||
| *[[setplayervar]] | |||
| *[[setprojectile]] | |||
| *[[setsector]] | |||
| *[[setthisprojectile]] | |||
| *[[settspr]] | |||
| *[[setuserdef]] | |||
| *[[setwall]] | |||
| ==Actors== | |||
| ===Structures=== | |||
| *[[cactor]] <!-- picnum --> | |||
| *[[action]] <!-- htg_t 4 (2, 3) --> | |||
| *[[ai]] <!-- htg_t 5 (1?) --> | |||
| *[[move]] <!-- htg_t 1 --> | |||
| *[[count]] <!-- htg_t 0 --> | |||
| *[[resetactioncount]] <!-- htg_t 2 --> | |||
| *[[resetcount]] <!-- htg_t 0 --> | |||
| *[[cstat]] <!-- cstat --> | |||
| *[[cstator]] <!-- cstat --> | |||
| *[[clipdist]] <!-- clipdist --> | |||
| *[[sizeat]] <!-- [xy]repeat --> | |||
| *[[sizeto]] <!-- [xy]repeat --> | |||
| *[[strength]] <!-- extra --> | |||
| *[[addstrength]] <!-- extra --> | |||
| *[[spritepal]] <!-- pal --> | |||
| *[[getlastpal]] <!-- httempang --> | |||
| *[[sleeptime]] <!-- httimetosleep --> | |||
| *[[spriteflags]] <!-- htflags --> | |||
| *[[angoff]] <!-- angoff --> | |||
| *[[angoffvar]] <!-- angoff --> | |||
| *[[changespritesect]] <!-- sectnum --> | |||
| *[[changespritestat]] <!-- statnum --> | |||
| *[[setsprite]] <!-- [xyz] --> | |||
| ====If==== | |||
| *[[ifactor]] | |||
| *[[ifaction]] | |||
| *[[ifactioncount]] | |||
| *[[ifai]] | |||
| *[[ifcount]] | |||
| *[[ifmove]] | |||
| *[[ifspawnedby]] | |||
| *[[ifspritepal]] | |||
| *[[ifstrength]] | |||
| *[[ifhitweapon]] | |||
| *[[ifwasweapon]] | |||
| *[[ifdead]] | |||
| *[[ifactornotstayput]] | |||
| ===Commands=== | |||
| *[[fall]] | |||
| *[[insertspriteq]] | |||
| *[[killit]] | |||
| *[[movesprite]] | |||
| *[[ssp]] | |||
| *[[clipmove]] | |||
| *[[clipmovenoslide]] | |||
| ===Measurements=== | |||
| *[[dist]] | |||
| *[[ldist]] | |||
| *[[cansee]] | |||
| *[[canseespr]] | |||
| ===Surroundings=== | |||
| ====Commands==== | |||
| *[[hitradius]] | |||
| *[[hitradiusvar]] | |||
| *[[flash]] | |||
| ====If==== | |||
| *[[ifawayfromwall]] | |||
| *[[ifbulletnear]] | |||
| *[[ifceilingdistl]] | |||
| *[[iffloordistl]] | |||
| *[[ifgapzl]] | |||
| *[[ifsquished]] | |||
| *[[ifnotmoving]] | |||
| *[[ifinwater]] | |||
| *[[ifonwater]] | |||
| *[[ifoutside]] | |||
| *[[ifinspace]] | |||
| *[[ifinouterspace]] | |||
| *[[ifrnd]] <!-- This is here because it really only has a use in actor code. --> | |||
| ===Mapping Features=== | |||
| *[[mikesnd]] | |||
| *[[respawnhitag]] | |||
| ===Player Interaction=== | |||
| *[[ifangdiffl]] | |||
| *[[ifcansee]] | |||
| *[[ifcanseetarget]] | |||
| *[[ifcanshoottarget]] | |||
| *[[ifhitspace]] | |||
| *[[getangletotarget]] | |||
| ===Spawning=== | |||
| *[[spawn]] | |||
| *[[espawn]] | |||
| *[[espawnvar]] | |||
| *[[qspawn]] | |||
| *[[qspawnvar]] | |||
| *[[eqspawn]] | |||
| *[[eqspawnvar]] | |||
| ===Materials=== | |||
| *[[debris]] | |||
| *[[guts]] | |||
| *[[lotsofglass]] | |||
| *[[mail]] | |||
| *[[money]] | |||
| *[[paper]] | |||
| ==Projectiles== | |||
| *[[defineprojectile]] | |||
| *[[shoot]] | *[[shoot]] | ||
| *[[shootvar]] | *[[shootvar]] | ||
| Line 107: | Line 280: | ||
| *[[ezshoot]] | *[[ezshoot]] | ||
| *[[ezshootvar]] | *[[ezshootvar]] | ||
| === | ==Player== | ||
| *[[ | ===Commands=== | ||
| *[[ | *[[addammo]] | ||
| *[[ | *[[addinventory]] | ||
| *[[ | *[[addweapon]] | ||
| *[[ | *[[addweaponvar]] | ||
| *[[ | *[[addphealth]] | ||
| *[[ | *[[tossweapon]] | ||
| === | *[[gmaxammo]] | ||
| ====Sounds | *[[smaxammo]] | ||
| *[[checkavailinven]] | |||
| *[[checkavailweapon]] | |||
| *[[addkills]] | |||
| *[[lockplayer]] | |||
| *[[resetplayer]] | |||
| *[[resetplayerflags]] | |||
| ===If=== | |||
| *[[ifgotweaponce]] | |||
| *[[ifp]] | |||
| *[[ifpdistg]] | |||
| *[[ifpdistl]] | |||
| *[[ifphealthl]] | |||
| *[[ifpinventory]] | |||
| *[[ifplayersl]] | |||
| ==Sectors== | |||
| ===Operating=== | |||
| *[[operate]] | |||
| *[[operateactivators]] | |||
| *[[operatemasterswitches]] | |||
| *[[operaterespawns]] | |||
| *[[operatesectors]] | |||
| *[[activatebysector]] | |||
| *[[activate]] | |||
| ===Manipulation=== | |||
| *[[dragpoint]] | |||
| *[[movesector]] | |||
| *[[sectsetinterpolation]] | |||
| *[[sectclearinterpolation]] | |||
| ===Analysis=== | |||
| *[[getceilzofslope]] | |||
| *[[getflorzofslope]] | |||
| *[[getzrange]] | |||
| *[[updatesector]] | |||
| *[[updatesectorz]] | |||
| *[[checkactivatormotion]] | |||
| *[[rotatepoint]] | |||
| *[[lineintersect]] | |||
| *[[rayintersect]] | |||
| *[[sectorofwall]] | |||
| ==Discovery== | |||
| ===Searching=== | |||
| *[[findnearactor]] | |||
| *[[findnearactor3d]] | |||
| *[[findnearactor3dvar]] | |||
| *[[findnearactorvar]] | |||
| *[[findnearactorz]] | |||
| *[[findnearactorzvar]] | |||
| *[[findnearsprite]] | |||
| *[[findnearsprite3d]] | |||
| *[[findnearsprite3dvar]] | |||
| *[[findnearspritevar]] | |||
| *[[findnearspritez]] | |||
| *[[findnearspritezvar]] | |||
| *[[findotherplayer]] | |||
| *[[findplayer]] | |||
| *[[neartag]] | |||
| *[[hitscan]] | |||
| ===Sorting=== | |||
| *[[headspritesect]] | |||
| *[[headspritestat]] | |||
| *[[nextspritesect]] | |||
| *[[nextspritestat]] | |||
| *[[prevspritesect]] | |||
| *[[prevspritestat]] | |||
| ==Audio== | |||
| ===Sounds=== | |||
| *[[definesound]] | *[[definesound]] | ||
| *[[sound]] | *[[sound]] | ||
| Line 124: | Line 364: | ||
| *[[globalsound]] | *[[globalsound]] | ||
| *[[globalsoundvar]] | *[[globalsoundvar]] | ||
| *[[screensound]] | |||
| *[[stopsound]] | *[[stopsound]] | ||
| *[[stopsoundvar]] | *[[stopsoundvar]] | ||
| *[[stopactorsound]] | *[[stopactorsound]] | ||
| *[[stopallsounds]] | *[[stopallsounds]] | ||
| *[[ifsound]] | |||
| *[[ifactorsound]] | |||
| *[[ifnosounds]] | |||
| *[[setactorsoundpitch]] | |||
| ===Music=== | |||
| *[[music]] | *[[music]] | ||
| *[[starttrack]] | *[[starttrack]] | ||
| *[[starttrackvar]] | *[[starttrackvar]] | ||
| *[[getmusicposition]] | |||
| *[[setmusicposition]] | |||
| ==Quotes== | |||
| *[[definequote]] | *[[definequote]] | ||
| *[[redefinequote]] | *[[redefinequote]] | ||
| *[[quote]] | *[[quote]] | ||
| *[[userquote]] | *[[userquote]] | ||
| *[[qsprintf]] | *[[qsprintf]] | ||
| *[[qstrcpy]] | |||
| *[[qstrcat]] | *[[qstrcat]] | ||
| *[[ | *[[qstrncat]] | ||
| *[[qstrlen]] | *[[qstrlen]] | ||
| *[[qsubstr]] | *[[qsubstr]] | ||
| *[[qstrdim]] | |||
| *[[ | *[[qgetsysstr]] | ||
| *[[ | *[[getpname]] | ||
| *[[getkeyname]] | |||
| *[[ | ==Cutscenes== | ||
| *[[ | *[[startcutscene]] | ||
| *[[ifcutscene]] | |||
| *[[ | ==Screen== | ||
| *[[ | ===Screen Manipulation=== | ||
| *[[palfrom]] | |||
| *[[guniqhudid]] | |||
| *[[ | *[[setgamepalette]] | ||
| *[[ | *[[setaspect]] | ||
| *[[ | ===Player Actions=== | ||
| *[[ | *[[wackplayer]] | ||
| *[[quake]] | |||
| *[[ | *[[pkick]] | ||
| *[[ | *[[pstomp]] | ||
| *[[ | *[[tip]] | ||
| *[[ | ===Screen Drawing=== | ||
| *[[ | *[[rotatesprite]] | ||
| *[[rotatesprite16]] | |||
| *[[rotatespritea]] | |||
| *[[screentext]] | |||
| *[[gametext]] | |||
| *[[gametextz]] | |||
| *[[minitext]] | |||
| *[[ | |||
| *[[ | |||
| *[[ | |||
| *[[ | |||
| *[[ | |||
| *[[ | |||
| *[[ | |||
| *[[digitalnumber]] | *[[digitalnumber]] | ||
| *[[digitalnumberz]] | *[[digitalnumberz]] | ||
| *[[showview]] | |||
| *[[showviewunbiased]] | |||
| ===Math=== | |||
| *[[displayrand]] | *[[displayrand]] | ||
| *[[displayrandvar]] | *[[displayrandvar]] | ||
| *[[displayrandvarvar]] | *[[displayrandvarvar]] | ||
| ==Time Access== | |||
| *[[getticks]] | *[[getticks]] | ||
| *[[gettimedate]] | *[[gettimedate]] | ||
| ==Game-Changing== | |||
| *[[activatecheat]] | |||
| *[[startlevel]] | |||
| *[[ | |||
| *[[ | |||
| *[[inittimer]] | *[[inittimer]] | ||
| *[[ | *[[endofgame]] | ||
| *[[ | *[[endoflevel]] | ||
| *[[ | *[[cmenu]] | ||
| *[[ | ==Game Saving== | ||
| *[[ | *[[save]] | ||
| *[[ | *[[savenn]] | ||
| *[[ | ===Hub Maps=== | ||
| *[[ | *[[loadmapstate]] | ||
| *[[ | *[[savemapstate]] | ||
| *[[ | *[[clearmapstate]] | ||
| *[[ | ==Debug== | ||
| *[[debug]] | |||
| *[[addlog]] | |||
| *[[addlogvar]] | |||
| *[[echo]] | |||
| ==Deprecated== | |||
| *[[betaname]] | |||
| *[[enhanced]] | |||
| *[[eventloadactor]] | |||
| *[[time]] | |||
| *[[shadeto]] | |||
| ===Screen Drawing=== | |||
| *[[myos]] | *[[myos]] | ||
| *[[myosx]] | |||
| *[[myospal]] | *[[myospal]] | ||
| *[[myospalx]] | *[[myospalx]] | ||
| ===Single-Use Structure Access=== | |||
| === | |||
| *[[getactorangle]] | *[[getactorangle]] | ||
| *[[getplayerangle]] | *[[getplayerangle]] | ||
| Line 375: | Line 470: | ||
| *[[setplayerangle]] | *[[setplayerangle]] | ||
| [[Category: | [[Category:Scripting documentation]] | ||
Latest revision as of 08:30, 5 July 2025
EDuke32 Scripting
Scripting · Full command list (alphabetized · categorized) · Event list · Structure members
Preprocessor
- include
- includedefault
- define
- // single-line comment
- /* block comment */
- whitespace characters: ( ) ; ,
Meta-Settings
- dynamicremap
- dynamicsoundremap
- setcfgname
- setdefname
- setgamename
- precache
- scriptsize
- cheatkeys
- definecheat
- definegamefuncname
- definegametype
- definevolumename
- definevolumeflags
- definelevelname
- defineskillname
- undefinevolume
- undefinelevel
- undefineskill
If
Global Settings
Block Delimiting
Object-Oriented
Procedural
Subroutines
Flow Control
If Components
Switch
Termination
Jump
- Note: Jumping commands are deprecated and will not be supported by Lunatic. Use loops instead.
Loops
- It is also possible to loop by calling a state from within itself.
Game Variables
Gamevar Operators
- setvar
- setvarvar
- setarray
- addvar
- addvarvar
- subvar
- subvarvar
- mulvar
- mulvarvar
- divvar
- divvarvar
- modvar
- modvarvar
- andvar
- andvarvar
- orvar
- orvarvar
- xorvar
- xorvarvar
- randvar
- randvarvar
Gamevar Conditions
- ifvare
- ifvarn
- ifvarg
- ifvarl
- ifvarand
- ifvaror
- ifvarxor
- ifvareither
- ifvarvare
- ifvarvarn
- ifvarvarg
- ifvarvarl
- ifvarvarand
- ifvarvaror
- ifvarvarxor
- ifvarvareither
Math Operations
Array Operations
Data Saving
Structure Access
- getactor
- getactorvar
- getinput
- getplayer
- getplayervar
- getprojectile
- getsector
- getthisprojectile
- gettspr
- getuserdef
- getwall
- setactor
- setactorvar
- setinput
- setplayer
- setplayervar
- setprojectile
- setsector
- setthisprojectile
- settspr
- setuserdef
- setwall
Actors
Structures
- cactor
- action
- ai
- move
- count
- resetactioncount
- resetcount
- cstat
- cstator
- clipdist
- sizeat
- sizeto
- strength
- addstrength
- spritepal
- getlastpal
- sleeptime
- spriteflags
- angoff
- angoffvar
- changespritesect
- changespritestat
- setsprite
If
- ifactor
- ifaction
- ifactioncount
- ifai
- ifcount
- ifmove
- ifspawnedby
- ifspritepal
- ifstrength
- ifhitweapon
- ifwasweapon
- ifdead
- ifactornotstayput
Commands
Measurements
Surroundings
Commands
If
- ifawayfromwall
- ifbulletnear
- ifceilingdistl
- iffloordistl
- ifgapzl
- ifsquished
- ifnotmoving
- ifinwater
- ifonwater
- ifoutside
- ifinspace
- ifinouterspace
- ifrnd
Mapping Features
Player Interaction
Spawning
Materials
Projectiles
Player
Commands
- addammo
- addinventory
- addweapon
- addweaponvar
- addphealth
- tossweapon
- gmaxammo
- smaxammo
- checkavailinven
- checkavailweapon
- addkills
- lockplayer
- resetplayer
- resetplayerflags
If
Sectors
Operating
- operate
- operateactivators
- operatemasterswitches
- operaterespawns
- operatesectors
- activatebysector
- activate
Manipulation
Analysis
- getceilzofslope
- getflorzofslope
- getzrange
- updatesector
- updatesectorz
- checkactivatormotion
- rotatepoint
- lineintersect
- rayintersect
- sectorofwall
Discovery
Searching
- findnearactor
- findnearactor3d
- findnearactor3dvar
- findnearactorvar
- findnearactorz
- findnearactorzvar
- findnearsprite
- findnearsprite3d
- findnearsprite3dvar
- findnearspritevar
- findnearspritez
- findnearspritezvar
- findotherplayer
- findplayer
- neartag
- hitscan
Sorting
Audio
Sounds
- definesound
- sound
- soundvar
- soundonce
- soundoncevar
- globalsound
- globalsoundvar
- screensound
- stopsound
- stopsoundvar
- stopactorsound
- stopallsounds
- ifsound
- ifactorsound
- ifnosounds
- setactorsoundpitch
Music
Quotes
- definequote
- redefinequote
- quote
- userquote
- qsprintf
- qstrcpy
- qstrcat
- qstrncat
- qstrlen
- qsubstr
- qstrdim
- qgetsysstr
- getpname
- getkeyname
Cutscenes
Screen
Screen Manipulation
Player Actions
Screen Drawing
- rotatesprite
- rotatesprite16
- rotatespritea
- screentext
- gametext
- gametextz
- minitext
- digitalnumber
- digitalnumberz
- showview
- showviewunbiased
Math
Time Access
Game-Changing
Game Saving
Hub Maps
Debug
Deprecated
Screen Drawing
Single-Use Structure Access
Subcategories
This category has the following 14 subcategories, out of 14 total.
D
- Duke3D 1.3/1.5 commands (110 P)
E
- EDuke commands (77 P)
- EDuke32 specific commands (270 P)
G
I
- If conditions (90 P)
P
S
- Screen drawing commands (24 P)
- Sound manipulation (25 P)
- String manipulation (18 P)
