This is an old revision of the document!
FIXED_MIN
and FIXED_MAX
constants for BCSUtils.No changes needed.
This release breaks backwards compatibility. Be sure to update your code accordingly.
acsutils_noerrors
cvar. ACSUtilsErrorHandler
is ignored.
1. Remove ACSUTILS_HUDLIB_SAVEDSTATES
and ACSUtilsErrorHandler
from your project.
2. Replace any uses of removed functions according to the table:
Name | Original | Replacement |
---|---|---|
AngleDistCCW | AngleDistCCW(a, b) | abs(a - b) |
AngleDistCW | AngleDistCW(a, b) | (1.0 - abs(a - b)) |
itof | itof(x) | (x << 16) |
lang | lang(s) | StrParam(l:s) |
byte2ang | byte2ang(x) | (x * 256) |
ang2byte | ang2byte(x) | (x / 256) |
GetCVarPercentage | GetCVarPercentage(name) | ((GetCVar(name)<<16) / 100) |
3. Rename the following functions:
Original name | New name |
---|---|
GetActorCurrentSpeed | GetActorVelocity |
GetActorCurrentSpeed2D | GetActorXYVelocity |
StrTimes | StrRepeat |
StrMidRange | StrSlice |
HasRoom | HasRoomFor |
StatusBarShown | StatusBarVisible |
TakeAllInventory | TakeMaxInventory |
TakeAllActorInventory | TakeMaxActorInventory |
4. Replace all uses of SwapActivator and RestoreActivator with ACS_NamedExecuteWithResult.
5. Recompile all script objects linked to ACSUtils to suppress warnings about renamed internal arrays.
This is a bugfix release. It now uses the MIT license.
#libdefine
."NOAUTOFIRE"
instead of "WEAPON.NOAUTOFIRE"
). Update decorate/changeflag.txt
to use this. (Thanks to The Zombie Killer.)decorate/changeflag.txt
.SendString!
IsZandronum212()
GetAspectRatio()
now triggers a ProgramError when used serverside.ChangeFlag
not working with INVENTORY.NOTELEPORTFREEZE
.ACSUtils_
prefix.ScreenWidth()
, ScreenHeight()
, and AspectRatio()
.ScreenWidth()
and ScreenHeight()
with ZDoom functions GetScreenWidth
and GetScreenHeight
.AspectRatio()
with IntDiv(GetScreenWidth(), GetScreenHeight())
.Widescreen support!
GetAspectRatio()
.ACSUtils is now distributed not as a collection of files, bu as a single file (generated using acsinclude).
swap()
.atoi()
and atof()
now return INT_MAX
multiplied by sign instead of 0 on overflow.ftoi()
.ftoi()
with floor()
.atoi()
and atof()
.Fixed duplicate actor warnings in changeflag.txt
No changes needed.
ChangeFlag, IsGZDoom, and improved cursor API! Thanks to The Zombie Killer for allowing ACS-X technologies to be included into ACSUtils!
ChangeFlag
! (implementation from ACS-X)CursorMotionX()
and CursorMotionY()
and changed CursorDeltaX()
and CursorDeltaY()
to return the actual delta.EnableCursorWrapX()
and EnableCursorWrapY()
.IsOpenGL()
now does not return true in ZDoom with vid_renderer 1.ClearHudMessageBold()
.CusrorDeltaX/Y
and need them to return non-zero values at the edges of the screen, replace their uses with CursorMotionX/Y
.Fixed a very dumb bug in fixed-point logarithms that I made when adding them to ACSUtils.
New logarithm functions and proper IntDiv
by TechnoDoomed1. Thank you!
IntDiv
now handles any numbers whose ratio is less than 32768.SyncSpeed()
.ACSUtilsVersion()
.No changes needed.
This is a bugfix release.
GetCVarFixed
to a_GetCVarFixed
for GDCC compatibility.HudSetCameraAngles
no longer inverts the pitch.StrIsAscii
storing an integer in a str
variable. GetCVarFixed
with a_GetCVarFixed
.HudSetCameraAngles
.New features!
IsOpenGL()
now emits a ProgramError when used serverside.IsOpenGL()
is now very slightly more accurate.IsServer()
killing the calling script in ZDoom.npo2()
.mod()
.cond()
.sign()
to sgn()
to reduce name clashes.#define ACSUTILS_HUDLIB_SAVEDSTATES 16
ACSUtils settings before #include “acsutils.acs”
. You can change the amount of saved states if needed.sign()
with sgn()
.IsOpenGL()
.HudSetProjectionMode(HUD_PROJECTION_YSHEARING)
.HudSetProjectionMode(HUD_PROJECTION_3D)
to fix the ProgramError about using IsOpenGL()
serverside.This is a maintenance release that enables ACSUtils to be used in AOW-scale projects.
IsServer()
returning false in singleplayer.IsServer()
.This is a bugfix release.
IsServer()
function.StrAddInt()
, StrAddFixed()
, and StrAddChar()
functions.IsOpenGL()
now takes gl_nogl
into account.ActorName()
to GetActorName()
to reduce name clashes.ParseFixed()
returning an error on integers.PARSENUMBER_BADFORMAT
and PARSENUMBER_OVERFLOW
having the same value.ActorName()
with GetActorName()
.This is a release that overcomes the 256 functions per compiled file limitation.
#nocompact
to fix ZDoom crashes when there are more than 256 functions in a compiled file.No changes needed.
#libdefine
instead of #define
, making them usable in map scripts.GiveMaxInventory
, GiveMaxActorInventory
, TakeAllInventory
, TakeAllActorInventory
.IntDiv
lang
ceil
and iceil
incorrectly adding 1 to already round numbers (ceil(1.0) == 2.0
)SetInventory
and SetActorInventory
for multiplayer.ACSUTILS_ERROR_HANDLER
.ceil
.