Build 8629
SVN-
Add getarraysequence and setarraysequence
Show details
Patch from Fox.
-
Factor out implementations of setarray and resizearray commands
Show details
Patch from Fox.
SVN handles and Git names are merged into one person.
Add getarraysequence and setarraysequence
Patch from Fox.
Factor out implementations of setarray and resizearray commands
Patch from Fox.
Mostly clean up the codebase in preparation for tspritetype != uspritetype
Remaining exceptions: SW - ConnectCopySprite CON and M32Script - pSprite/pUSprite
Fix -Wfallthrough error in gamevars.h
Add userdef .gamepadactive
Add getgamefuncbind
new special purpose gamevar flag
Allow CON-specified actions to override hardcoded tsprpicnum behavior of PLAYERONWATER, CAMERA1, and RAT
Implement a new VM dispatch method using an explicit jump table
Most of this patch is by pogokeen.
Macro-ize CON keyword tokens in gamedef.h and gameexec.cpp
Most of this patch is by pogokeen.
Move five missed opcodeless keywords down in gamedef.h
#ifdef out deactivated stuff that should not be half-in, half-out
Add EVENT_DISPLAYROOMSCAMERATILE
Add "swaparrays" command, which performs a pointer-swap on arrays of the same storage class.
Factor out the parsing of gamearray names.
Remix resizearray in the following ways:
Make only one allocation instead of two. Calculate array byte sizes in a way compatible with GAMEARRAY_BOOLEAN. Clear the expanded part of grown arrays using correct counts for non-int32 sizes. Support resizing an array to 0 to free it.
Implement the copy command for GAMEARRAY_BOOLEAN.
Fix two regressions completely breaking the correctness of the copy command, introduced in r6343.
Revert r6526 and r6527. This restores the longstanding behavior of the killit command, and setting sprites' xrepeat to zero, to not actually delete sprites unless their statnum is STAT_ACTOR or STAT_MISC. Be sure to set a sprite's statnum to one of these statnums if you want it to be deleted.
This should fix the broken E1L1 sector warp in the existing release of the Duke 64 mod, and the Polymer light culling used in HHR.
WWII GI: Update the default values of the weapon gamevars to correctly match the original game.
Add spawnceilingglass, spawnwallglass, and spawnwallstainedglass commands.
Patch from Striker.
Add resetplayerflag 8, which mandates reload and not savegame load in single player.
Add EVENT_DAMAGESPRITE, EVENT_POSTDAMAGESPRITE, EVENT_DAMAGEWALL, EVENT_DAMAGECEILING, and EVENT_DAMAGEFLOOR.
In these events, THISACTOR is the projectile (or source of damage), and RETURN is the sprite/wall/sector affected. Set RETURN to -1 to cancel any hardcoded effects. ud.return 1 through 5 are the parameters passed to hitradius if RADIUSEXPLOSION is the source of the damage. ud.return 1 is -1 otherwise. New tokens "damageeventtile" and "damageeventtilerange" or tiledata[].gameflags & SFLAG_DAMAGEEVENT to enable processing for receivers with corresponding tilenums. CON commands to replicate hardcoded effects (beyond switching tilenums, such as spawning glass) are forthcoming. Use of EVENT_DAMAGEHPLANE is hereby discouraged. Patch from Striker, based on work by Fox.
Add gettiledata/settiledata. Same members as tiledata[] quick access struct. Not all fields writable.
Patch from Striker.
Improve r6723. Adds EVENT_LASTWEAPON.
Patch from Fox.
Move "EVENT_DISPLAYREST" after "EVENT_DISPLAYCROSSHAIR".
Patch from Fox.
1. Fix translucency in the mouse cursor.
2. In "EVENT_DISPLAYCROSSHAIR" and "EVENT_DISPLAYCURSOR", make "userdef[].return" 1 and 2 return the coordinates, and 3 the alpha ("EVENT_DISPLAYCURSOR" only). 3. New event "EVENT_DISPLAYPOINTER" Similar to "EVENT_DISPLAYCURSOR", it is used to display the pointer that controls the aiming in Wii. "RETURN" / "userdef[].return" work in the same way as "EVENT_DISPLAYCURSOR". Patch from Fox.
New userdef structure "return"
This works like an extension of the RETURN gamevar and it accepts multiple values. Reading or writing the value of "userdef[].return 0" is the same as reading of writing the RETURN gamevar. The following userdefs are now aliases: - m_origin_x = userdef[].return 1 - m_origin_y = userdef[].return 2 - screenarea_x1 = userdef[].return 0 - screenarea_y1 = userdef[].return 1 - screenarea_x1 = userdef[].return 2 Additionally, the API for EVENT_PLAYLEVELMUSICSLOT is hereby redefined to use return 1 and 2 (not 0) _instead of_ ud.m_*_number. Patch from Fox.
Save the player's map time before EVENT_ENDLEVELSCREEN, which happens regardless of whether the hardcoded bonus screen is displayed.
Make sure ud.displaybonusscreen is set to 1 if you want this to take place. The bonus screen can still be skipped by setting RETURN to -1 in EVENT_ENDLEVELSCREEN.
Some screentext fixes (that don't affect CON scripts)
Change OSD_Printf to initprintf for addlog and addlogvar
Add undefinecheat.
Add resetplayerflag 4, which always loads if possible
Replace bespoke CON/def module and clipmap filename array reallocing with a new class, GrowArray.