Difference between revisions of "Category:All commands"

From EDukeWiki
Jump to navigation Jump to search
(→‎Array Operations: Added setarray, setarraysequence, getarraysequence)
 
(31 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{EDuke32 Intro}}
 
{{EDuke32 Intro}}
  
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
+
==Preprocessor==
===Actor Control===
+
*[[include]]
*[[action]]
+
*[[includedefault]]
*[[ai]]
+
*[[define]]
*[[move]]
+
*// single-line comment
===Structure Access===
+
*/* block comment */
*[[getactor]]
+
*whitespace characters: <code>( ) ; ,</code>
*[[getactorvar]]
+
==Meta-Settings==
*[[getinput]]
+
<!-- These deal with matters outside the game world. -->
*[[getplayer]]
+
*[[dynamicremap]]
*[[getplayervar]]
+
*[[dynamicsoundremap]]
*[[getprojectile]]
+
*[[setcfgname]]
*[[getsector]]
+
*[[setdefname]]
*[[getthisprojectile]]
+
*[[setgamename]]
*[[gettspr]]
+
*[[precache]]
*[[getuserdef]]
+
*[[scriptsize]]
*[[getwall]]
+
*[[cheatkeys]]
*[[setactor]]
+
*[[definecheat]]
*[[setactorvar]]
+
*[[definegamefuncname]]
*[[setinput]]
+
*[[definegametype]]
*[[setplayer]]
+
*[[definevolumename]]
*[[setplayervar]]
+
*[[definevolumeflags]]
*[[setprojectile]]
+
*[[definelevelname]]
*[[setsector]]
+
*[[defineskillname]]
*[[setthisprojectile]]
+
*[[undefinevolume]]
*[[settspr]]
+
*[[undefinelevel]]
*[[setuserdef]]
+
*[[undefineskill]]
*[[setwall]]
+
===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]]
 +
*[[useractor]]
 +
*[[enda]]
 +
===Procedural===
 +
*[[onevent]]
 +
*[[appendevent]]
 +
*[[endevent]]
 +
 
 +
===Subroutines===
 +
*[[state]]
 +
*[[defstate]]
 +
*[[ends]]
 +
 
 +
==Flow Control==
 +
===If Components===
 +
*[[nullop]]
 +
*[[else]]
 +
===Switch===
 +
*[[switch]]
 +
*[[endswitch]]
 +
*[[case]]
 +
*[[default]]
 +
===Termination===
 +
*[[break]]
 +
*[[return]]
 +
===Jump===
 +
:''Note: Jumping commands are deprecated and will not be supported by Lunatic. Use [[#Loops|loops]] instead.''
 +
*[[getcurraddress]]
 +
*[[jump]]
 +
 
 +
===Loops===
 +
*[[whilevarn]]
 +
*[[whilevarvarn]]
 +
:''It is also possible to loop by calling a state from within itself.''
 +
 
 +
==Game Variables==
 +
*[[gamevar]]
 +
*[[gamearray]]
 
===Gamevar Operators===
 
===Gamevar Operators===
 +
*[[setvar]]
 +
*[[setvarvar]]
 +
*[[setarray]]
 
*[[addvar]]
 
*[[addvar]]
 
*[[addvarvar]]
 
*[[addvarvar]]
Line 46: Line 100:
 
*[[xorvar]]
 
*[[xorvar]]
 
*[[xorvarvar]]
 
*[[xorvarvar]]
===Gamevar Conditions==
+
*[[randvar]]
 +
*[[randvarvar]]
 +
===Gamevar Conditions===
 
*[[ifvare]]
 
*[[ifvare]]
 
*[[ifvarn]]
 
*[[ifvarn]]
Line 63: Line 119:
 
*[[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 72: Line 271:
 
*[[ezshoot]]
 
*[[ezshoot]]
 
*[[ezshootvar]]
 
*[[ezshootvar]]
===Unsorted===
+
==Player==
*[[activatebysector]]
+
===Commands===
*[[activatecheat]]
 
*[[actor]]
 
 
*[[addammo]]
 
*[[addammo]]
 
*[[addinventory]]
 
*[[addinventory]]
*[[addkills]]
 
*[[addlog]]
 
*[[addlogvar]]
 
*[[addphealth]]
 
*[[addstrength]]
 
 
*[[addweapon]]
 
*[[addweapon]]
 
*[[addweaponvar]]
 
*[[addweaponvar]]
*[[angoff]]
+
*[[addphealth]]
*[[angoffvar]]
+
*[[tossweapon]]
*[[betaname]]
+
*[[gmaxammo]]
*[[break]]
+
*[[smaxammo]]
*[[cactor]]
 
*[[calchypotenuse]]
 
*[[cansee]]
 
*[[canseespr]]
 
*[[case]]
 
*[[changespritesect]]
 
*[[changespritestat]]
 
*[[cheatkeys]]
 
*[[checkactivatormotion]]
 
 
*[[checkavailinven]]
 
*[[checkavailinven]]
 
*[[checkavailweapon]]
 
*[[checkavailweapon]]
*[[clearmapstate]]
+
*[[addkills]]
*[[clipdist]]
+
*[[lockplayer]]
*[[clipmove]]
+
*[[resetplayer]]
*[[clipmovenoslide]]
+
*[[resetplayerflags]]
*[[cmenu]]
+
===If===
*[[copy]]
+
*[[ifgotweaponce]]
*[[cos]]
+
*[[ifp]]
*[[count]]
+
*[[ifpdistg]]
*[[cstat]]
+
*[[ifpdistl]]
*[[cstator]]
+
*[[ifphealthl]]
*[[debris]]
+
*[[ifpinventory]]
*[[debug]]
+
*[[ifplayersl]]
*[[default]]
+
==Sectors==
*[[define]]
+
===Operating===
*[[definecheat]]
+
*[[operate]]
*[[definegamefuncname]]
+
*[[operateactivators]]
*[[definegametype]]
+
*[[operatemasterswitches]]
*[[definelevelname]]
+
*[[operaterespawns]]
*[[defineprojectile]]
+
*[[operatesectors]]
*[[definequote]]
+
*[[activatebysector]]
*[[defineskillname]]
+
*[[activate]]
*[[definesound]]
+
===Manipulation===
*[[definevolumename]]
 
*[[digitalnumber]]
 
*[[digitalnumberz]]
 
*[[displayrand]]
 
*[[displayrandvar]]
 
*[[displayrandvarvar]]
 
*[[dist]]
 
 
*[[dragpoint]]
 
*[[dragpoint]]
*[[dynamicremap]]
+
*[[sectsetinterpolation]]
*[[else]]
+
*[[sectclearinterpolation]]
*[[enda]]
+
===Analysis===
*[[endevent]]
+
*[[getceilzofslope]]
*[[endofgame]]
+
*[[getflorzofslope]]
*[[ends]]
+
*[[getzrange]]
*[[endswitch]]
+
*[[updatesector]]
*[[enhanced]]
+
*[[updatesectorz]]
*[[eqspawn]]
+
*[[checkactivatormotion]]
*[[eqspawnvar]]
+
*[[rotatepoint]]
*[[espawn]]
+
*[[lineintersect]]
*[[espawnvar]]
+
*[[rayintersect]]
*[[eventloadactor]]
+
*[[sectorofwall]]
*[[fall]]
+
==Discovery==
 +
===Searching===
 
*[[findnearactor]]
 
*[[findnearactor]]
 
*[[findnearactor3d]]
 
*[[findnearactor3d]]
Line 158: Line 335:
 
*[[findotherplayer]]
 
*[[findotherplayer]]
 
*[[findplayer]]
 
*[[findplayer]]
*[[flash]]
+
*[[neartag]]
*[[gamearray]]
+
*[[hitscan]]
*[[gamestartup]]
+
===Sorting===
*[[gametext]]
 
*[[gametextz]]
 
*[[gamevar]]
 
*[[getactorangle]]
 
*[[getangle]]
 
*[[getangletotarget]]
 
*[[getarraysize]]
 
*[[getceilzofslope]]
 
*[[getcurraddress]]
 
*[[getflorzofslope]]
 
*[[getincangle]]
 
*[[getkeyname]]
 
*[[getlastpal]]
 
*[[getplayerangle]]
 
*[[getpname]]
 
*[[gettextureceiling]]
 
*[[gettexturefloor]]
 
*[[getticks]]
 
*[[gettimedate]]
 
*[[getzrange]]
 
*[[globalsound]]
 
*[[globalsoundvar]]
 
*[[gmaxammo]]
 
*[[guniqhudid]]
 
*[[guts]]
 
 
*[[headspritesect]]
 
*[[headspritesect]]
 
*[[headspritestat]]
 
*[[headspritestat]]
*[[hitradius]]
 
*[[hitradiusvar]]
 
*[[hitscan]]
 
*[[ifaction]]
 
*[[ifactioncount]]
 
*[[ifactor]]
 
*[[ifactornotstayput]]
 
*[[ifactorsound]]
 
*[[ifai]]
 
*[[ifangdiffl]]
 
*[[ifawayfromwall]]
 
*[[ifbulletnear]]
 
*[[ifcansee]]
 
*[[ifcanseetarget]]
 
*[[ifcanshoottarget]]
 
*[[ifceilingdistl]]
 
*[[ifclient]]
 
*[[ifcount]]
 
*[[ifdead]]
 
*[[iffloordistl]]
 
*[[ifgapzl]]
 
*[[ifgotweaponce]]
 
*[[ifhitspace]]
 
*[[ifhitweapon]]
 
*[[ifinouterspace]]
 
*[[ifinspace]]
 
*[[ifinwater]]
 
*[[ifmove]]
 
*[[ifmultiplayer]]
 
*[[ifnosounds]]
 
*[[ifnotmoving]]
 
*[[ifonwater]]
 
*[[ifoutside]]
 
*[[ifp]]
 
*[[ifpdistg]]
 
*[[ifpdistl]]
 
*[[ifphealthl]]
 
*[[ifpinventory]]
 
*[[ifrespawn]]
 
*[[ifrnd]]
 
*[[ifserver]]
 
*[[ifsound]]
 
*[[ifspawnedby]]
 
*[[ifspritepal]]
 
*[[ifsquished]]
 
*[[ifstrength]]
 
*[[ifwasweapon]]
 
*[[include]]
 
*[[inittimer]]
 
*[[insertspriteq]]
 
*[[jump]]
 
*[[killit]]
 
*[[ldist]]
 
*[[lineintersect]]
 
*[[loadmapstate]]
 
*[[lockplayer]]
 
*[[lotsofglass]]
 
*[[mail]]
 
*[[mikesnd]]
 
*[[minitext]]
 
*[[money]]
 
*[[movesprite]]
 
*[[mulscale]]
 
*[[music]]
 
*[[myos]]
 
*[[myospal]]
 
*[[myospalx]]
 
*[[myosx]]
 
*[[neartag]]
 
 
*[[nextspritesect]]
 
*[[nextspritesect]]
 
*[[nextspritestat]]
 
*[[nextspritestat]]
*[[nullop]]
 
*[[onevent]]
 
*[[operate]]
 
*[[operateactivators]]
 
*[[operatemasterswitches]]
 
*[[operaterespawns]]
 
*[[operatesectors]]
 
*[[palfrom]]
 
*[[paper]]
 
*[[pkick]]
 
*[[precache]]
 
 
*[[prevspritesect]]
 
*[[prevspritesect]]
 
*[[prevspritestat]]
 
*[[prevspritestat]]
*[[pstomp]]
+
==Audio==
*[[qgetsysstr]]
+
===Sounds===
*[[qspawn]]
+
*[[definesound]]
*[[qspawnvar]]
+
*[[sound]]
 +
*[[soundvar]]
 +
*[[soundonce]]
 +
*[[soundoncevar]]
 +
*[[globalsound]]
 +
*[[globalsoundvar]]
 +
*[[screensound]]
 +
*[[stopsound]]
 +
*[[stopsoundvar]]
 +
*[[stopactorsound]]
 +
*[[stopallsounds]]
 +
*[[ifsound]]
 +
*[[ifactorsound]]
 +
*[[ifnosounds]]
 +
*[[setactorsoundpitch]]
 +
===Music===
 +
*[[music]]
 +
*[[starttrack]]
 +
*[[starttrackvar]]
 +
*[[getmusicposition]]
 +
*[[setmusicposition]]
 +
==Quotes==
 +
*[[definequote]]
 +
*[[redefinequote]]
 +
*[[quote]]
 +
*[[userquote]]
 
*[[qsprintf]]
 
*[[qsprintf]]
 +
*[[qstrcpy]]
 
*[[qstrcat]]
 
*[[qstrcat]]
*[[qstrcpy]]
+
*[[qstrncat]]
 
*[[qstrlen]]
 
*[[qstrlen]]
*[[qstrncat]]
 
 
*[[qsubstr]]
 
*[[qsubstr]]
 +
*[[qstrdim]]
 +
*[[qgetsysstr]]
 +
*[[getpname]]
 +
*[[getkeyname]]
 +
==Cutscenes==
 +
*[[startcutscene]]
 +
*[[ifcutscene]]
 +
==Screen==
 +
===Screen Manipulation===
 +
*[[palfrom]]
 +
*[[guniqhudid]]
 +
*[[setgamepalette]]
 +
*[[setaspect]]
 +
===Player Actions===
 +
*[[wackplayer]]
 
*[[quake]]
 
*[[quake]]
*[[quote]]
+
*[[pkick]]
*[[randvar]]
+
*[[pstomp]]
*[[randvarvar]]
+
*[[tip]]
*[[rayintersect]]
+
===Screen Drawing===
*[[readarrayfromfile]]
 
*[[readgamevar]]
 
*[[redefinequote]]
 
*[[resetactioncount]]
 
*[[resetcount]]
 
*[[resetplayer]]
 
*[[resizearray]]
 
*[[respawnhitag]]
 
*[[return]]
 
*[[rotatepoint]]
 
 
*[[rotatesprite]]
 
*[[rotatesprite]]
 
*[[rotatesprite16]]
 
*[[rotatesprite16]]
 +
*[[rotatespritea]]
 +
*[[screentext]]
 +
*[[gametext]]
 +
*[[gametextz]]
 +
*[[minitext]]
 +
*[[digitalnumber]]
 +
*[[digitalnumberz]]
 +
*[[showview]]
 +
*[[showviewunbiased]]
 +
===Math===
 +
*[[displayrand]]
 +
*[[displayrandvar]]
 +
*[[displayrandvarvar]]
 +
==Time Access==
 +
*[[getticks]]
 +
*[[gettimedate]]
 +
==Game-Changing==
 +
*[[activatecheat]]
 +
*[[startlevel]]
 +
*[[inittimer]]
 +
*[[endofgame]]
 +
*[[endoflevel]]
 +
*[[cmenu]]
 +
==Game Saving==
 
*[[save]]
 
*[[save]]
*[[savegamevar]]
+
*[[savenn]]
 +
===Hub Maps===
 +
*[[loadmapstate]]
 
*[[savemapstate]]
 
*[[savemapstate]]
*[[savenn]]
+
*[[clearmapstate]]
*[[scriptsize]]
+
==Debug==
*[[sectclearinterpolation]]
+
*[[debug]]
 +
*[[addlog]]
 +
*[[addlogvar]]
 +
*[[echo]]
 +
==Deprecated==
 +
*[[betaname]]
 +
*[[enhanced]]
 +
*[[eventloadactor]]
 +
*[[time]]
 +
*[[shadeto]]
 +
===Screen Drawing===
 +
*[[myos]]
 +
*[[myosx]]
 +
*[[myospal]]
 +
*[[myospalx]]
 +
===Single-Use Structure Access===
 +
*[[getactorangle]]
 +
*[[getplayerangle]]
 +
*[[gettextureceiling]]
 +
*[[gettexturefloor]]
 
*[[sectgethitag]]
 
*[[sectgethitag]]
 
*[[sectgetlotag]]
 
*[[sectgetlotag]]
*[[sectorofwall]]
+
*[[spgethitag]]
*[[sectsetinterpolation]]
+
*[[spgetlotag]]
 
*[[setactorangle]]
 
*[[setactorangle]]
*[[setarray]]
 
*[[setaspect]]
 
*[[setcfgname]]
 
*[[setdefname]]
 
*[[setgamename]]
 
*[[setgamepalette]]
 
 
*[[setplayerangle]]
 
*[[setplayerangle]]
*[[setsprite]]
 
*[[setvar]]
 
*[[setvarvar]]
 
*[[shiftvarl]]
 
*[[shiftvarr]]
 
*[[showview]]
 
*[[sin]]
 
*[[sizeat]]
 
*[[sizeto]]
 
*[[sleeptime]]
 
*[[smaxammo]]
 
*[[sound]]
 
*[[soundonce]]
 
*[[soundoncevar]]
 
*[[soundvar]]
 
*[[spawn]]
 
*[[spgethitag]]
 
*[[spgetlotag]]
 
*[[spriteflags]]
 
*[[spritenopal]]
 
*[[spritenoshade]]
 
*[[spritenvg]]
 
*[[spritepal]]
 
*[[spriteshadow]]
 
*[[sqrt]]
 
*[[ssp]]
 
*[[startlevel]]
 
*[[starttrack]]
 
*[[starttrackvar]]
 
*[[state]]
 
*[[stopactorsound]]
 
*[[stopallsounds]]
 
*[[stopsound]]
 
*[[stopsoundvar]]
 
*[[strength]]
 
*[[switch]]
 
*[[time]]
 
*[[tip]]
 
*[[tossweapon]]
 
*[[updatesector]]
 
*[[updatesectorz]]
 
*[[useractor]]
 
*[[userquote]]
 
*[[wackplayer]]
 
*[[whilevarn]]
 
*[[whilevarvarn]]
 
*[[writearraytofile]]
 
</div>
 
  
[[Category:All commands]]
+
[[Category:Scripting documentation]]

Latest revision as of 06:49, 11 February 2020

EDuke32 Scripting

Preprocessor

Meta-Settings

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

Gamevar Conditions

Math Operations

Array Operations

Data Saving

Structure Access

Actors

Structures

If

Commands

Measurements

Surroundings

Commands

If

Mapping Features

Player Interaction

Spawning

Materials

Projectiles

Player

Commands

If

Sectors

Operating

Manipulation

Analysis

Discovery

Searching

Sorting

Audio

Sounds

Music

Quotes

Cutscenes

Screen

Screen Manipulation

Player Actions

Screen Drawing

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

E

G

I

P

S