ACS header files - DavidPH/GDCC GitHub Wiki
In addition to the standard C library headers, GDCC includes a set of ACS_*
headers to make use of functions from supported engines.
The currently available headers are as follows:
ACS_Hexen.h
- Includes Hexen ACS functions and line specials.ACS_ZDoom.h
- IncludesACS_Hexen.h
, plus GZDoom (and derivatives thereof) functions and line specials.ACS_Zandronum.h
- IncludesACS_ZDoom.h
, plus Zandronum-specific functions and line specials.ACS_GLOOME.h
- IncludesACS_Zandronum.h
, plus GLOOME-specific functions.
All functions and line specials included in the above headers have their identifiers prefixed with ACS_
. Defining a macro named ACS_SHORT_NAMES
before including any of the headers will disable this prefix.
Some functions may return/take more than one data type (as in ZDoom's GetActorProperty
, which may return int
, _Accum
/fixed
or string
, and SetActorProperty
where the third parameter may equally vary, depending on the property accessed). Whenever this is the case, GDCC provides additional declarations with the proper types, where int
is the default, _Accum
/fixed
is the variant suffixed Fixed
, and __str_ent *
/__str
is the variant suffixed String
.
An example, again using ZDoom's GetActorProperty
:
ACS_GetActorProperty
has anint
return type.ACS_GetActorPropertyFixed
has an_Accum
/fixed
return type.ACS_GetActorPropertyString
has a__str_ent *
/__str
return type.