Category:All commands: Difference between revisions
Jump to navigation
Jump to search
Hendricks266 (talk | contribs) No edit summary |
Doom64hunter (talk | contribs) |
||
(32 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 75: | Line 111: | ||
*[[randvar]] | *[[randvar]] | ||
*[[randvarvar]] | *[[randvarvar]] | ||
= | ===Gamevar Conditions=== | ||
==Gamevar Conditions== | |||
*[[ifvare]] | *[[ifvare]] | ||
*[[ifvarn]] | *[[ifvarn]] | ||
Line 105: | Line 128: | ||
*[[ifvarvarxor]] | *[[ifvarvarxor]] | ||
*[[ifvarvareither]] | *[[ifvarvareither]] | ||
== | ===Math Operations=== | ||
*[[ | *[[sqrt]] | ||
*[[ | *[[calchypotenuse]] | ||
*[[ | *[[sin]] | ||
*[[ | *[[cos]] | ||
*[[ | *[[shiftvarl]] | ||
*[[ | *[[shiftvarr]] | ||
*[[ | *[[mulscale]] | ||
*[[ | *[[getangle]] | ||
==Spawning== | *[[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]] | *[[spawn]] | ||
*[[espawn]] | *[[espawn]] | ||
Line 122: | Line 263: | ||
*[[eqspawn]] | *[[eqspawn]] | ||
*[[eqspawnvar]] | *[[eqspawnvar]] | ||
==Materials== | ===Materials=== | ||
*[[debris]] | *[[debris]] | ||
*[[guts]] | *[[guts]] | ||
Line 129: | Line 270: | ||
*[[money]] | *[[money]] | ||
*[[paper]] | *[[paper]] | ||
==Projectiles== | |||
*[[defineprojectile]] | |||
*[[shoot]] | |||
*[[shootvar]] | |||
*[[eshoot]] | |||
*[[eshootvar]] | |||
*[[zshoot]] | |||
*[[zshootvar]] | |||
*[[ezshoot]] | |||
*[[ezshootvar]] | |||
==Player== | |||
===Commands=== | |||
*[[addammo]] | |||
*[[addinventory]] | |||
*[[addweapon]] | |||
*[[addweaponvar]] | |||
*[[addphealth]] | |||
*[[tossweapon]] | |||
*[[gmaxammo]] | |||
*[[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]] | |||
*[[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== | ==Audio== | ||
===Sounds=== | ===Sounds=== | ||
Line 138: | Line 362: | ||
*[[globalsound]] | *[[globalsound]] | ||
*[[globalsoundvar]] | *[[globalsoundvar]] | ||
*[[screensound]] | |||
*[[stopsound]] | *[[stopsound]] | ||
*[[stopsoundvar]] | *[[stopsoundvar]] | ||
*[[stopactorsound]] | *[[stopactorsound]] | ||
*[[stopallsounds]] | *[[stopallsounds]] | ||
*[[ifsound]] | |||
*[[ifactorsound]] | |||
*[[ifnosounds]] | |||
*[[setactorsoundpitch]] | |||
===Music=== | ===Music=== | ||
*[[music]] | *[[music]] | ||
*[[starttrack]] | *[[starttrack]] | ||
*[[starttrackvar]] | *[[starttrackvar]] | ||
*[[getmusicposition]] | |||
*[[setmusicposition]] | |||
==Quotes== | ==Quotes== | ||
*[[definequote]] | *[[definequote]] | ||
Line 151: | Line 382: | ||
*[[quote]] | *[[quote]] | ||
*[[userquote]] | *[[userquote]] | ||
*[[qsprintf]] | *[[qsprintf]] | ||
*[[qstrcpy]] | |||
*[[qstrcat]] | *[[qstrcat]] | ||
*[[ | *[[qstrncat]] | ||
*[[qstrlen]] | *[[qstrlen]] | ||
*[[qsubstr]] | *[[qsubstr]] | ||
*[[qstrdim]] | |||
*[[qgetsysstr]] | |||
*[[getpname]] | |||
*[[getkeyname]] | |||
==Cutscenes== | |||
*[[startcutscene]] | |||
*[[ifcutscene]] | |||
==Screen== | ==Screen== | ||
===Screen Manipulation=== | ===Screen Manipulation=== | ||
*[[palfrom]] | *[[palfrom]] | ||
*[[guniqhudid]] | |||
*[[setgamepalette]] | |||
*[[setaspect]] | |||
===Player Actions=== | |||
*[[wackplayer]] | *[[wackplayer]] | ||
*[[quake]] | *[[quake]] | ||
*[[pkick]] | *[[pkick]] | ||
*[[pstomp]] | *[[pstomp]] | ||
Line 171: | Line 410: | ||
*[[rotatesprite]] | *[[rotatesprite]] | ||
*[[rotatesprite16]] | *[[rotatesprite16]] | ||
*[[rotatespritea]] | |||
*[[screentext]] | |||
*[[gametext]] | *[[gametext]] | ||
*[[gametextz]] | *[[gametextz]] | ||
Line 177: | Line 418: | ||
*[[digitalnumberz]] | *[[digitalnumberz]] | ||
*[[showview]] | *[[showview]] | ||
*[[showviewunbiased]] | |||
===Math=== | ===Math=== | ||
*[[displayrand]] | *[[displayrand]] | ||
*[[displayrandvar]] | *[[displayrandvar]] | ||
*[[displayrandvarvar]] | *[[displayrandvarvar]] | ||
==Hub Maps== | ==Time Access== | ||
*[[getticks]] | |||
*[[gettimedate]] | |||
==Game-Changing== | |||
*[[activatecheat]] | |||
*[[startlevel]] | |||
*[[inittimer]] | |||
*[[endofgame]] | |||
*[[endoflevel]] | |||
*[[cmenu]] | |||
==Game Saving== | |||
*[[save]] | |||
*[[savenn]] | |||
===Hub Maps=== | |||
*[[loadmapstate]] | *[[loadmapstate]] | ||
*[[savemapstate]] | *[[savemapstate]] | ||
*[[clearmapstate]] | |||
*[[ | ==Debug== | ||
*[[debug]] | |||
*[[ | |||
*[[addlog]] | *[[addlog]] | ||
*[[addlogvar]] | *[[addlogvar]] | ||
*[[ | *[[echo]] | ||
==Deprecated== | |||
*[[betaname]] | *[[betaname]] | ||
*[[enhanced]] | *[[enhanced]] | ||
*[[ | *[[eventloadactor]] | ||
*[[time]] | *[[time]] | ||
*[[ | *[[shadeto]] | ||
===Screen Drawing=== | ===Screen Drawing=== | ||
*[[myos]] | *[[myos]] | ||
Line 384: | Line 468: | ||
*[[setplayerangle]] | *[[setplayerangle]] | ||
[[Category: | [[Category:Scripting documentation]] |
Latest revision as of 09:02, 7 January 2024
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 (254 P)
G
I
- If conditions (90 P)
P
S
- Screen drawing commands (22 P)
- Sound manipulation (24 P)
- String manipulation (18 P)