Commit Graph

896 Commits

Author SHA1 Message Date
terminx be5cf71c83 Remove 144 fps option from the menu, because it doesn't work right
git-svn-id: https://svn.eduke32.com/eduke32@6772 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:43:33 +00:00
hendricks266 928ce686a6 CON: 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.

git-svn-id: https://svn.eduke32.com/eduke32@6771 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:26:10 +00:00
hendricks266 cab8c9aadf Fix MSVC build
git-svn-id: https://svn.eduke32.com/eduke32@6770 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:26:05 +00:00
hendricks266 01606bb6fb Instrument the code to build without the struct trackers and disable them when the build options eliminate all uses of them (currently USE_OPENGL=0).
git-svn-id: https://svn.eduke32.com/eduke32@6769 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:26:01 +00:00
hendricks266 9462ad4076 Minor cleanup regarding buildtypes.h
git-svn-id: https://svn.eduke32.com/eduke32@6768 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:25:57 +00:00
hendricks266 a250f69a20 Fix horizoff with q16. This solve the problem with horiz returning to center after standing on a sloped floor.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6767 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-15 07:53:02 +00:00
hendricks266 ed38f0a75d CON: Add gettiledata/settiledata. Same members as tiledata[] quick access struct. Not all fields writable.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@6766 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-15 01:19:27 +00:00
hendricks266 548d335316 Polymer: Fix smoothness of q16 mouse aiming
git-svn-id: https://svn.eduke32.com/eduke32@6765 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-13 23:29:42 +00:00
hendricks266 607ddc45e0 xa.cpp: Tabs to spaces.
git-svn-id: https://svn.eduke32.com/eduke32@6764 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-13 23:29:38 +00:00
hendricks266 6acbb77ac5 xa.cpp: Fix the crackling noise.
git-svn-id: https://svn.eduke32.com/eduke32@6763 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-13 23:29:35 +00:00
hendricks266 5f52049948 xa.cpp: Cleanup that didn't help the crackling noise.
git-svn-id: https://svn.eduke32.com/eduke32@6762 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-13 23:29:31 +00:00
hendricks266 1460dec6d8 In case a requested quick load upon death cannot be completed, perform a pistol start instead of doing nothing
git-svn-id: https://svn.eduke32.com/eduke32@6761 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-11 03:47:11 +00:00
terminx 491783d81e Fix Polymer issues introduced with change to Q16.16 view angles
git-svn-id: https://svn.eduke32.com/eduke32@6760 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-09 10:20:53 +00:00
terminx ef853e8b92 Inline drawrooms() wrapper
git-svn-id: https://svn.eduke32.com/eduke32@6759 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-09 05:55:50 +00:00
hendricks266 bfc6b7589e Improve file loading
git-svn-id: https://svn.eduke32.com/eduke32@6757 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-09 03:10:53 +00:00
hendricks266 f21d36403f Fix save deletion in the load menu not closing the verification prompt appropriately.
While here, also fix the formatting of the save cleanup verification prompt to center vertically since the message was expanded to 3 lines.

git-svn-id: https://svn.eduke32.com/eduke32@6756 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-09 02:51:28 +00:00
hendricks266 fba53b144a Accept "BUILDART" prepended to ART files
git-svn-id: https://svn.eduke32.com/eduke32@6755 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-09 02:51:24 +00:00
terminx ae0b6e87be Display number of savegames to be deleted before removing, automatically remove old savegames from the install dir in EDUKE32_STANDALONE builds. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@6754 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 05:15:11 +00:00
terminx 8b80937424 CSV format for CON timing output
git-svn-id: https://svn.eduke32.com/eduke32@6753 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 05:15:05 +00:00
hendricks266 9e0c1277ba Remove " Settings" from user profile folders on Windows
git-svn-id: https://svn.eduke32.com/eduke32@6752 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:52 +00:00
hendricks266 6895ca0fc0 Menu stuff
git-svn-id: https://svn.eduke32.com/eduke32@6751 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:48 +00:00
hendricks266 328fec27fb Add verification screens for deleting saves
git-svn-id: https://svn.eduke32.com/eduke32@6750 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:45 +00:00
hendricks266 10d67bdf9e Menus: "Clean Up Obsolete Saves"
git-svn-id: https://svn.eduke32.com/eduke32@6749 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:41 +00:00
hendricks266 d3882d2c2c Autosave culling
git-svn-id: https://svn.eduke32.com/eduke32@6748 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:36 +00:00
hendricks266 210df6f92d Saves: Make the save filename counter automatically take the highest number present so as to not fill in gaps (which would make sorting inaccurate)
git-svn-id: https://svn.eduke32.com/eduke32@6747 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:32 +00:00
hendricks266 d04d0128e3 ReadSaveGameHeaders at start and close
git-svn-id: https://svn.eduke32.com/eduke32@6746 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:28 +00:00
hendricks266 867b4db1a0 Menus: Delete key in save/load game menu
git-svn-id: https://svn.eduke32.com/eduke32@6745 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:25 +00:00
hendricks266 8019d8f6f0 Saves: Sort saves Z-A by filename and internally preserve the names of ones deemed unfit to display
git-svn-id: https://svn.eduke32.com/eduke32@6744 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:21 +00:00
hendricks266 b437636528 Saves: implement isAutoSave for headers
git-svn-id: https://svn.eduke32.com/eduke32@6743 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:17 +00:00
hendricks266 b80501b2c2 Menus: Add "Save Setup" menu, currently for standalone builds only
git-svn-id: https://svn.eduke32.com/eduke32@6742 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:12 +00:00
hendricks266 3d8e1afba9 Saves: Add userbyteversion to savegame header and userdef
git-svn-id: https://svn.eduke32.com/eduke32@6741 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:07 +00:00
hendricks266 4c48a848a3 Saves: Overload ptrsize as a bitfield
git-svn-id: https://svn.eduke32.com/eduke32@6740 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:02 +00:00
hendricks266 f4ba85b600 Saves: Change header string to "E32SAVEGAME" (but still accept "EDuke32SAVE")
git-svn-id: https://svn.eduke32.com/eduke32@6739 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:54:58 +00:00
hendricks266 4158aa802a Improve r6723. Adds EVENT_LASTWEAPON.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6738 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:54:54 +00:00
terminx 6e7cc1878a Improve CON perf tracking's ability to determine actor names
git-svn-id: https://svn.eduke32.com/eduke32@6737 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 02:39:21 +00:00
terminx a22394db8d Backport some CON profiling stuff from Lunatic. Use "printtimes" in the console.
git-svn-id: https://svn.eduke32.com/eduke32@6736 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 00:29:41 +00:00
terminx ee37c04623 Remove attempt at being compatible with the original ranges of ang and horiz values, and introduce a q16 version of drawrooms (and showroom)
git-svn-id: https://svn.eduke32.com/eduke32@6735 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 12:02:03 +00:00
terminx b99aaf0438 Truncate instead of round when returning avel and horz from getinput
git-svn-id: https://svn.eduke32.com/eduke32@6734 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 12:01:55 +00:00
terminx 8e8892aa3a And we'll put a happy little int16_t right over here
git-svn-id: https://svn.eduke32.com/eduke32@6733 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 05:41:11 +00:00
terminx dfa5c0d712 Missed files from last commit
git-svn-id: https://svn.eduke32.com/eduke32@6732 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:23:58 +00:00
terminx 48270bfb9c q16avel/q16horz
git-svn-id: https://svn.eduke32.com/eduke32@6731 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:52 +00:00
terminx d9722401ed Store configuration data in AppData on Windows in standalone builds
git-svn-id: https://svn.eduke32.com/eduke32@6730 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:46 +00:00
terminx aca16910d0 Use ~/.config/APPBASENAME instead of ~/.APPBASENAME on Linux
git-svn-id: https://svn.eduke32.com/eduke32@6729 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:41 +00:00
terminx 0e0de77439 Move APPNAME and APPBASENAME to common_game.h so we can use them for the data paths in common.cpp
git-svn-id: https://svn.eduke32.com/eduke32@6728 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:37 +00:00
terminx 3b6bb3b7a3 Fix up CON to work with Q16.16 values
git-svn-id: https://svn.eduke32.com/eduke32@6727 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:31 +00:00
terminx 5f13160dd6 Flesh out Fix16 with some operators we need to work with it from CON
git-svn-id: https://svn.eduke32.com/eduke32@6726 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:25 +00:00
terminx a76750df55 Q16.16 for player angle, too
git-svn-id: https://svn.eduke32.com/eduke32@6725 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:18 +00:00
terminx 4d8bb170a3 Use Q16.16 fixed point for player horiz
git-svn-id: https://svn.eduke32.com/eduke32@6724 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:05 +00:00
terminx 7fa0abda26 Add gamefunc for switching to your last used weapon
git-svn-id: https://svn.eduke32.com/eduke32@6723 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:20:50 +00:00
hendricks266 ea391a9b83 Re-allow negative hitags on crack sprites.
git-svn-id: https://svn.eduke32.com/eduke32@6722 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-06 10:25:17 +00:00
hendricks266 cd5b23e855 Perform CON_SAVE after a frame is drawn
git-svn-id: https://svn.eduke32.com/eduke32@6721 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-06 10:25:11 +00:00
hendricks266 9c23735d98 Menu stuff
git-svn-id: https://svn.eduke32.com/eduke32@6720 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-06 10:25:07 +00:00
hendricks266 821814fe32 Avoid filtering seams by drawing custom scrollbars twice, like the scuba gear and chaingun.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6719 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-06 10:25:04 +00:00
hendricks266 a1f3ec8c63 Menus: Allow mouse axis scale to go to zero.
git-svn-id: https://svn.eduke32.com/eduke32@6718 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-06 10:24:59 +00:00
hendricks266 ab3c4366e4 Fix "setvarvar: Gv_GetVarX(): invalid player ID -1" message for certain userdef accesses
git-svn-id: https://svn.eduke32.com/eduke32@6717 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-03 08:22:55 +00:00
hendricks266 478165f00c Fix "too many sprites spawned" check
git-svn-id: https://svn.eduke32.com/eduke32@6716 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-03 06:37:16 +00:00
hendricks266 1adf766fac Move "EVENT_DISPLAYREST" after "EVENT_DISPLAYCROSSHAIR".
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6715 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-01 13:46:56 +00:00
hendricks266 293491644f 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.

git-svn-id: https://svn.eduke32.com/eduke32@6714 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-01 13:46:52 +00:00
hendricks266 920ec3f6a2 Fix the position of the notch when scaling the slidebar with the mouse.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6713 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-01 13:46:48 +00:00
terminx b7dfd992ae Revert change to _multivc.h because it fucked up the volume slider
git-svn-id: https://svn.eduke32.com/eduke32@6712 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-27 16:54:42 +00:00
terminx 1c342e0bde Reduce max volume to prevent audio clipping
git-svn-id: https://svn.eduke32.com/eduke32@6711 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-27 15:21:01 +00:00
hendricks266 de272d0d00 Hide the joystick menu instead of disabling it.
git-svn-id: https://svn.eduke32.com/eduke32@6710 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-27 01:11:47 +00:00
pogokeen 94b2fc68af astub.cpp: only call GL functions if we are in a GL mode
git-svn-id: https://svn.eduke32.com/eduke32@6709 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-27 00:52:28 +00:00
hendricks266 322f1b46dd Disable the switching of keyboard layout on window focus gain and loss.
git-svn-id: https://svn.eduke32.com/eduke32@6708 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 20:27:58 +00:00
hendricks266 3a14b405a2 Clean up order of UserdefsLabels[].
Bump BYTEVERSION.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6707 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 20:20:05 +00:00
hendricks266 4f17a26061 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.

git-svn-id: https://svn.eduke32.com/eduke32@6706 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 20:20:00 +00:00
hendricks266 9878d0c322 Revise the userdef code to accept multiple values.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6705 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 20:19:55 +00:00
hendricks266 e26760b6af Use the user's desktop resolution, fullscreen, as the default, instead of 1024x768 windowed.
git-svn-id: https://svn.eduke32.com/eduke32@6704 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 14:46:52 +00:00
hendricks266 9deeb94f06 Invalidate TILE_SAVESHOT whenever it is overwritten, so that it updates properly in GL.
(Also remove a redundant call to the screenshot function.)

git-svn-id: https://svn.eduke32.com/eduke32@6703 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 14:46:48 +00:00
hendricks266 d155564975 Menus: Improve text position over save/load screenshots.
git-svn-id: https://svn.eduke32.com/eduke32@6702 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 14:46:44 +00:00
hendricks266 5bb5612cba Menus: Don't allow loading previous version saves.
git-svn-id: https://svn.eduke32.com/eduke32@6701 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 14:46:40 +00:00
hendricks266 6f7313a46a Fix whitespace issues
git-svn-id: https://svn.eduke32.com/eduke32@6700 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 14:46:36 +00:00
hendricks266 dfffa5a9c5 Clear userquotes when returning to the menu.
git-svn-id: https://svn.eduke32.com/eduke32@6699 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 14:46:31 +00:00
pogokeen c0b0ed2240 polymost.cpp: fix polymost_dorotatesprite() issue where sprites could be rendered with fractional positions and sizes leading to GL filtering imperfections.
git-svn-id: https://svn.eduke32.com/eduke32@6698 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 11:26:40 +00:00
pogokeen cb9ee858bf menus.cpp: Make windowed-only resolutions clear in both their name and by disabling the fullscreen menu option
Additionally, increase MAXRESOLUTIONSTRINGLENGTH to accomodate new resolution name suffix

git-svn-id: https://svn.eduke32.com/eduke32@6697 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 02:48:09 +00:00
pogokeen 15b11232c3 sdlayer.h/winlayer.cpp: If a resolution is supported for fullscreen, also support the mode as a windowed resolution.
git-svn-id: https://svn.eduke32.com/eduke32@6696 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 02:48:06 +00:00
pogokeen 5370beb026 baselayer.cpp: add 1280x720 resolution to defaultres windowed resolutions
git-svn-id: https://svn.eduke32.com/eduke32@6695 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 02:48:03 +00:00
hendricks266 3117dcf006 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.

git-svn-id: https://svn.eduke32.com/eduke32@6694 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-25 01:18:36 +00:00
hendricks266 042c0e9796 Fix the interaction between starttrack and toggling music off.
git-svn-id: https://svn.eduke32.com/eduke32@6693 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-25 01:18:32 +00:00
hendricks266 aa94f12666 Fix autoaim getting overwritten on load by whatever it was when the save was created.
git-svn-id: https://svn.eduke32.com/eduke32@6692 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-25 01:18:29 +00:00
hendricks266 cd796647d1 animlib: Editorialize the code style a bit more.
git-svn-id: https://svn.eduke32.com/eduke32@6691 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-25 01:18:25 +00:00
hendricks266 f10551086b animlib: Make some weird code easier to read.
git-svn-id: https://svn.eduke32.com/eduke32@6690 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-25 01:18:21 +00:00
pogokeen 9f48927ea8 sdlayer.cpp: fix vsync heartbeat issue on some NVidia & Intel drivers
git-svn-id: https://svn.eduke32.com/eduke32@6689 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-22 23:25:56 +00:00
hendricks266 b2470aa677 Fix typo in collections.h. DONT_BUILD
git-svn-id: https://svn.eduke32.com/eduke32@6688 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-22 14:15:13 +00:00
hendricks266 7a9684e350 Amend previous commit
git-svn-id: https://svn.eduke32.com/eduke32@6687 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-22 14:09:38 +00:00
hendricks266 63d93e8d9f New userdef structures: "menu_scrollbartilenum", "menu_scrollbarz", "menu_scrollcursorz"
Set "menu_scrollbartilenum" to the first tilenum of a series of 4 tiles:

<tilenum> = Middle (tiled to fill the scrollbar height)
<tilenum> + 1 = Top
<tilenum> + 2 = Bottom
<tilenum> + 3 = Cursor
Default value for menu_scrollbartilenum is -1, which will display EDuke32's default scrollbar.

Use "menu_scrollbarz" and "menu_scrollcursorz" to control the scale of the scrollbar. Default values are 65536.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6686 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-22 13:34:34 +00:00
hendricks266 50ac58f374 Improve translucence of menu cursor
git-svn-id: https://svn.eduke32.com/eduke32@6685 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-22 13:34:28 +00:00
hendricks266 3543d6f3fa Some screentext fixes (that don't affect CON scripts)
git-svn-id: https://svn.eduke32.com/eduke32@6684 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-22 13:34:24 +00:00
pogokeen e5c6cc2238 sdlayer.cpp: remove unnecessary call to SDL_WarpMouseInWindow() on SDL2 that was causing issues with mouse movement when vsync was enabled on some hardware
git-svn-id: https://svn.eduke32.com/eduke32@6683 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-22 03:38:54 +00:00
pogokeen 94246b5dd1 game.cpp: fixed GL vsync resetting issue due to system_getcvars() call coming before cvars were loaded
git-svn-id: https://svn.eduke32.com/eduke32@6682 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-22 01:05:18 +00:00
hendricks266 92091a4425 CON: Change OSD_Printf to initprintf for addlog and addlogvar
git-svn-id: https://svn.eduke32.com/eduke32@6681 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-20 11:55:28 +00:00
hendricks266 d26635cfa9 Menu stuff
git-svn-id: https://svn.eduke32.com/eduke32@6680 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-20 11:55:24 +00:00
hendricks266 7a30b3452f CON: Add undefinecheat.
git-svn-id: https://svn.eduke32.com/eduke32@6679 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-20 11:55:20 +00:00
hendricks266 5bd6f6e28f Menus: Hide blank cheats
git-svn-id: https://svn.eduke32.com/eduke32@6678 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-20 11:55:16 +00:00
hendricks266 26749bf881 CON: Add resetplayerflag 4, which always loads if possible
git-svn-id: https://svn.eduke32.com/eduke32@6677 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-20 11:55:13 +00:00
hendricks266 60223012be Menus: Add MenuEntryFlag "Hidden", which is safer than setting the entry's position in its parent's EntryList to null.
git-svn-id: https://svn.eduke32.com/eduke32@6676 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-20 11:55:07 +00:00
pogokeen 9001ec60a0 Polymost: workaround for texcache expecting all mipmap levels to be available
git-svn-id: https://svn.eduke32.com/eduke32@6675 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-19 06:11:44 +00:00
hendricks266 dc7e727f0c Fix the definetint def token, broken in r6557.
git-svn-id: https://svn.eduke32.com/eduke32@6674 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-18 00:24:54 +00:00
hendricks266 3ae7cb1de5 Replace bespoke CON/def module and clipmap filename array reallocing with a new class, GrowArray.
git-svn-id: https://svn.eduke32.com/eduke32@6673 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-17 22:30:39 +00:00
hendricks266 a5be1c2e17 Update credits.
git-svn-id: https://svn.eduke32.com/eduke32@6672 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-17 22:30:26 +00:00
pogokeen d6926cb7d3 Fix building on Visual Studio after GLAD & Polymost changes
git-svn-id: https://svn.eduke32.com/eduke32@6671 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-17 06:38:15 +00:00
terminx 97de73a760 Don't save skill level to settings.cfg
git-svn-id: https://svn.eduke32.com/eduke32@6670 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-17 00:06:01 +00:00
pogokeen 59b01d9d67 Polymost: fix typo causing bug where persistentStreamBuffer was being reset to the config value when it should be disabled
git-svn-id: https://svn.eduke32.com/eduke32@6669 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 08:35:45 +00:00
hendricks266 a8370e8d0c Keep individually specified RTS files and the rtsname cfg setting completely separate. This fixes a few issues.
git-svn-id: https://svn.eduke32.com/eduke32@6668 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 08:33:44 +00:00
hendricks266 0c9b00e277 CON: Remove GAMEFUNC_* hardcoded labels.
git-svn-id: https://svn.eduke32.com/eduke32@6666 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 08:33:36 +00:00
hendricks266 aa4c8f75f5 Make sure we clear the keyboard buffer when beginning text input.
git-svn-id: https://svn.eduke32.com/eduke32@6665 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 08:33:32 +00:00
pogokeen 451bdb4601 Polymost: fix bug where polymost2_drawVBO() wouldn't reset the bound buffer state properly for polymost1
git-svn-id: https://svn.eduke32.com/eduke32@6664 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:54 +00:00
pogokeen 7b2ac67e9d Polymost: adjust parenthesis to cease compiler warnings
git-svn-id: https://svn.eduke32.com/eduke32@6663 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:51 +00:00
pogokeen 1f133cd049 Polymost: streaming VBO optimizations for polymost_drawpoly()
git-svn-id: https://svn.eduke32.com/eduke32@6662 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:48 +00:00
pogokeen e416c0a953 GLAD: update to include "GL_ARB_sync" extension
git-svn-id: https://svn.eduke32.com/eduke32@6661 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:44 +00:00
pogokeen 512b396c54 screens.cpp: Fixed a bug in FPS calculation
git-svn-id: https://svn.eduke32.com/eduke32@6660 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:40 +00:00
pogokeen 8ebb8083a5 polymost_dorotatesprite(): fix for Polymer bug introduced by Polymost drawarrays optimization
git-svn-id: https://svn.eduke32.com/eduke32@6659 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:37 +00:00
pogokeen ff1d948d44 In-progress POLYMOST2 work
git-svn-id: https://svn.eduke32.com/eduke32@6658 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:34 +00:00
pogokeen a2cf961591 Moved BUILD engine defined CSTAT enums into the BUILD engine side of the code base.
git-svn-id: https://svn.eduke32.com/eduke32@6657 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:31 +00:00
pogokeen 3ca5f33c73 Moved to GLAD for dynamic GL/WGL and extension loading.
Refactored extension usage that became core in GL2, and adjusted some types for GL2 compatibility.

git-svn-id: https://svn.eduke32.com/eduke32@6656 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:21 +00:00
pogokeen 037289a812 polymost_drawpoly(): only change the blend mode if blending is enabled
git-svn-id: https://svn.eduke32.com/eduke32@6655 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:07 +00:00
pogokeen 28f9fcebb4 Polymost: Avoid generation of mipmaps if filter mode isn't set to use them
git-svn-id: https://svn.eduke32.com/eduke32@6654 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:05 +00:00
pogokeen a1c88b740f Polymost: texture format optimizations
git-svn-id: https://svn.eduke32.com/eduke32@6653 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:02 +00:00
pogokeen 464e65541c polymost_drawpoly(): drawarrays optimization
git-svn-id: https://svn.eduke32.com/eduke32@6652 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:37:58 +00:00
hendricks266 ff0768eaa9 Fix build issues with ARM and USE_OPENGL=0. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@6651 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-15 03:49:23 +00:00
hendricks266 8094104f0b Menu stuff
git-svn-id: https://svn.eduke32.com/eduke32@6650 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-13 00:13:06 +00:00
hendricks266 7be5abbe37 Revert the functional changes of r4741 and r4703 relating to conveyors. This restores conveyor belts to their original v1.5 speeds at the expense of the corner cases the original commits addressed.
This can be revisited in the future to address these corner cases without breaking the original game.

git-svn-id: https://svn.eduke32.com/eduke32@6649 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-12 02:32:43 +00:00
hendricks266 8ddcef89fc Fix FPS limiter in EVENT_SCREEN.
git-svn-id: https://svn.eduke32.com/eduke32@6648 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-12 02:32:39 +00:00
hendricks266 f2538230b7 Re-allow MUSICANDSFX ambient sounds with a hitag in the interval [32768, 65535].
git-svn-id: https://svn.eduke32.com/eduke32@6647 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-11 05:04:03 +00:00
hendricks266 9cf6c85623 Move new CON_FOR iterators to the bottom of their enum to unbreak savegames using CON_FOR made before r6635.
git-svn-id: https://svn.eduke32.com/eduke32@6646 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-11 05:03:59 +00:00
hendricks266 d68c9b45c6 Add "rtsname" token to grpinfo grammar.
git-svn-id: https://svn.eduke32.com/eduke32@6645 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-11 05:03:55 +00:00
hendricks266 0cbb522ff0 Use an unsigned type when we need right shifts to zero-extend for use in tagbitmap.
Fixes crash in boeing.map.

git-svn-id: https://svn.eduke32.com/eduke32@6644 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-11 05:03:50 +00:00
hendricks266 65b3bccf06 Add support for MapArt from within zip files.
git-svn-id: https://svn.eduke32.com/eduke32@6643 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-11 05:03:46 +00:00
hendricks266 4cea9ec804 Fix MSVC build breakage.
git-svn-id: https://svn.eduke32.com/eduke32@6642 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-10 22:58:38 +00:00
hendricks266 210f3e54ff Apply the FPS limiter to EVENT_SCREEN.
git-svn-id: https://svn.eduke32.com/eduke32@6641 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-10 22:58:34 +00:00
hendricks266 f228b68736 CON: Add if statements if(var(var)){a,b}(e).
Inspired by x86 assembly, these stand for "above" and "below", and perform unsigned versions of greater-than and less-than, respectively.

Useful for testing array bounds.

git-svn-id: https://svn.eduke32.com/eduke32@6640 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-31 05:23:48 +00:00
hendricks266 190d71832a Temporarily revert r6633.
git-svn-id: https://svn.eduke32.com/eduke32@6639 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-31 05:23:43 +00:00
hendricks266 d2fd7a2c30 Re-revise r6625.
git-svn-id: https://svn.eduke32.com/eduke32@6638 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-31 05:23:39 +00:00
terminx 3bc83a7ceb Revise r6625
git-svn-id: https://svn.eduke32.com/eduke32@6637 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-31 04:13:40 +00:00
terminx cd02a9223e Use enum
git-svn-id: https://svn.eduke32.com/eduke32@6636 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-31 04:13:35 +00:00
terminx d9a5b4aa13 Restore previous behavior of "allsprites" iterator for CON_FOR and add "allspritesbystat" and "allspritesbysect"
git-svn-id: https://svn.eduke32.com/eduke32@6635 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-31 04:13:31 +00:00
terminx 9c408fc26c Useless assertion that only fires in alternate universes
git-svn-id: https://svn.eduke32.com/eduke32@6634 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-31 04:13:25 +00:00
hendricks266 0542d32989 Modernize naming of gamefuncs.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6633 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-30 16:02:33 +00:00
hendricks266 27d93ac698 Satisfy -Wmaybe-uninitialized warnings exposed by -Og.
git-svn-id: https://svn.eduke32.com/eduke32@6632 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-30 16:02:29 +00:00
hendricks266 874b7df3aa Remix r5063
git-svn-id: https://svn.eduke32.com/eduke32@6630 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-30 16:02:20 +00:00
hendricks266 b497a6cbde CON: Add STR_USERMAPFILENAME for qgetsysstr.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6629 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-30 01:03:50 +00:00
hendricks266 e741c8d067 Unbreak r6608.
git-svn-id: https://svn.eduke32.com/eduke32@6628 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 15:28:07 +00:00
hendricks266 ea6955009f Fix a bug in r6587, where "statusbarcustom" was not saved in the cfg file.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6627 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:14:20 +00:00
hendricks266 12f1767de2 New userdef structure "shadow_pal"
Sets the black palette used for enemy shadows and for black rectangles in the menu. Default value is 4.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6626 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:14:17 +00:00
hendricks266 4bedc0c39d Fix overflow issue with tsprite shade of gibs.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6625 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:14:12 +00:00
hendricks266 e7cbf0b1a9 New events EVENT_PLAYLEVELMUSICSLOT and EVENT_CONTINUELEVELMUSICSLOT.
Called when a music track will be started from the beginning, and when the current track is continued after loading a save, etc.

The requested track is passed into PLAYLEVELMUSICSLOT via ud.m_volume_number and ud.m_level_number.

git-svn-id: https://svn.eduke32.com/eduke32@6624 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:14:08 +00:00
hendricks266 d41a013a57 CON: Add commands "swaptrackslot" and "preloadtrackslotforswap"
git-svn-id: https://svn.eduke32.com/eduke32@6623 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:14:04 +00:00
hendricks266 0d1137be5d Add read-only userdefs music_episode and music_level.
TODO: Exposing whether any music is currently playing at all. (No, it is not ud.musictoggle.)

git-svn-id: https://svn.eduke32.com/eduke32@6622 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:59 +00:00
hendricks266 969c9b77d6 Turn get/setmusicposition into no-ops.
People were using these commands in spite of my explicit instructions not to.

Now that music track is saved properly, no one has any excuse to continue using these.

git-svn-id: https://svn.eduke32.com/eduke32@6621 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:55 +00:00
hendricks266 6470b51fb9 Properly save the currently playing music track in savegames.
Bump BYTEVERSION.

git-svn-id: https://svn.eduke32.com/eduke32@6620 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:49 +00:00
hendricks266 d792054ce2 Refactor all calls to S_PlayMusic.
This allows as much of the control flow as possible to fail gracefully without interruping currently playing music.

git-svn-id: https://svn.eduke32.com/eduke32@6619 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:43 +00:00
hendricks266 254b822003 When playing a user map, print "User Map: <filename>" to the log instead of "E1L8: User Map".
git-svn-id: https://svn.eduke32.com/eduke32@6618 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:37 +00:00
hendricks266 2679b42e72 When playing a user map, don't show an episode name in the automap.
git-svn-id: https://svn.eduke32.com/eduke32@6617 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:34 +00:00
hendricks266 0ca09c08da CON: Add user_map and m_user_map read-only userdefs.
git-svn-id: https://svn.eduke32.com/eduke32@6616 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:30 +00:00
hendricks266 03fa42b17e Move G_HaveUserMap to game.h, retitle it Menu_HaveUserMap, and add a proper G_HaveUserMap.
git-svn-id: https://svn.eduke32.com/eduke32@6615 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:21 +00:00
hendricks266 b25e48a1b3 boardfilename cleanups
git-svn-id: https://svn.eduke32.com/eduke32@6614 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:16 +00:00
hendricks266 2cdf98f07a Systematize the appearance of the menu fonts using the DOS version as a reference.
New events:
"EVENT_MENUCURSORLEFT"
"EVENT_MENUCURSORRIGHT"
"EVENT_MENUCURSORSHADE"
"EVENT_MENUSHADESELECTED"

New userdef structures:
"menu_shadedeselected"
"menu_shadedisabled"
"menutext_zoom"
"menutext_xspace"
"menutext_pal"
"menutext_palselected"
"menutext_paldeselected"
"menutext_paldisabled"
"menutext_palselected_right"
"menutext_paldeselected_right"
"menutext_paldisabled_right"
"gametext_zoom"
"gametext_xspace"
"gametext_pal"
"gametext_palselected"
"gametext_paldeselected"
"gametext_paldisabled"
"gametext_palselected_right"
"gametext_paldeselected_right"
"gametext_paldisabled_right"
"minitext_zoom"
"minitext_xspace"
"minitext_tracking"
"minitext_pal"
"minitext_palselected"
"minitext_paldeselected"
"minitext_paldisabled"
"minitext_palselected_right"
"minitext_paldeselected_right"
"minitext_paldisabled_right"
"menutitle_pal"
"slidebar_palselected"
"slidebar_paldisabled"

Self-explanatory. Use in conjunction with "menutext_tracking" and "gametext_tracking" ("mgametext_tracking" is now ignored).

The values for disabled shade is added to the selected or deselected shades. The palettes have a disabled > selected > deselected hierarchy, and are applied if not zero.

Patch from Fox

git-svn-id: https://svn.eduke32.com/eduke32@6613 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 02:14:16 +00:00
hendricks266 c7edef4f43 New LOGO_FLAGS bits LOGO_NOHELP and LOGO_NOCREDITS.
LOGO_NOHELP: Remove the "Help" item in the main menu and the F1 key function.

LOGO_NOCREDITS: Remove the "Credits" item in the main menu.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6612 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 02:14:09 +00:00
hendricks266 e1e5e338dc New commands: "divr", "divru", "divrd"
divr <dividend> <divisor>

Divide gamevar <dividend> by <divisor> and round (aka round to nearest) the result. A result of 0.5 will equal 1.

divru <dividend> <divisor>

Divide gamevar <dividend> by <divisor> and round up (aka round away from zero) the result.

Additionally "divrd" can be used to round down (aka round toward zero), which is equivalent to the current div command as tested on x86, ARM, and PowerPC.

Note that "shiftr" rounds up negative values.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6611 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 02:14:04 +00:00
hendricks266 29de10fc91 Maintenance on Gv_DivVar
git-svn-id: https://svn.eduke32.com/eduke32@6610 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 02:14:00 +00:00
hendricks266 1cbf5e36e1 New command "qstrcmp"
qstrcmp <quote1> <quote2> <var>

Compare two quotes. <var> returns zero if they are identical, -1 if the first quote comes first in alphabetical order, 1 if it comes later.

Note that the lexicographical order is rudimentary, for example "Player 2" is considered greater than "Player 10".

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6609 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 02:13:55 +00:00
hendricks266 97fd71c3db Add EVENT_DISPLAYOVERHEADMAPPLAYER.
RETURN is the tilenum to be displayed. It is pre-populated with what the game will display for the current frame.

Set RETURN to -1 to disable.

git-svn-id: https://svn.eduke32.com/eduke32@6608 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:31:04 +00:00
hendricks266 25ccdca408 Add the official Nuclear Winter demo GRP to the list of recognized GRPs.
git-svn-id: https://svn.eduke32.com/eduke32@6607 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:31:00 +00:00
hendricks266 6ffcd671fc Menu stuff
git-svn-id: https://svn.eduke32.com/eduke32@6606 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:30:57 +00:00
hendricks266 7718d661a0 Revert changes made to SIDEBOLT1 in r6244.
git-svn-id: https://svn.eduke32.com/eduke32@6605 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:30:53 +00:00
hendricks266 a2f5891064 Fix typos in r6244.
git-svn-id: https://svn.eduke32.com/eduke32@6604 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:30:50 +00:00
hendricks266 4978a8f167 Fix some preprocessor logic errors regrading GL ES on ARM devices with desktop operating systems.
git-svn-id: https://svn.eduke32.com/eduke32@6603 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:30:46 +00:00
hendricks266 af6097a281 Fix more uses of lotag with values >= 32768 beyond those reported as warnings.
git-svn-id: https://svn.eduke32.com/eduke32@6602 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:30:42 +00:00
hendricks266 1396f51ca2 Fix all "truncation of constant value" warnings in MSVC due to restoring hitag/lotag to signedness.
git-svn-id: https://svn.eduke32.com/eduke32@6601 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:30:38 +00:00
hendricks266 b3fd642bf4 Replace "INT16_32768" macro with unsigned literal "32768u".
git-svn-id: https://svn.eduke32.com/eduke32@6600 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:30:34 +00:00
hendricks266 0bad11ee9d Fix typo in r6589.
git-svn-id: https://svn.eduke32.com/eduke32@6599 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:30:29 +00:00
hendricks266 cbbe66365f Remove function left behind in r6587.
git-svn-id: https://svn.eduke32.com/eduke32@6598 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:30:25 +00:00
hendricks266 947402e28c New LOGO_FLAGS bit LOGO_HIDEEPISODE: Omit the episode name from the automap.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6597 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:37 +00:00
hendricks266 740cedefbb New userdef structures "default_volume", "default_skill"
Lets you choose which episode or skill should be selected by default in the menus. Default values are 0 and 1, respectively.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6596 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:33 +00:00
hendricks266 535b7c4d66 Display sprite shadows in Polymer if dynamic lighting is disabled.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6595 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:29 +00:00
hendricks266 a96613f496 Add "Alternate Weapon" key similar to Shadow Warrior Classic Redux.
When pressed it switches between pipebomb / detonator or shrinker / expander.

New event "EVENT_ALTWEAPON"

Akin to "EVENT_PREVIOUSWEAPON" and "EVENT_NEXTWEAPON". RETURN is set to 12.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6594 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:23 +00:00
hendricks266 8744a70dcf Fix the aspect of save thumbnails in Polymost / Polymer in widescreen.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6593 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:19 +00:00
hendricks266 6a77175ac5 New def token "shadefactor"
shadefactor <value>

Controls the level of shading in GL modes. Normally it is set to the shade at which all colors are pitch black.

The default value calculated from Duke 3D's palette is 30, but most other Build games with a different palette are calculate to 31.

This token is for GL mods without a palette.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6592 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:15 +00:00
hendricks266 67438d0cd2 New userdef structure: "global_r", "global_g", "global_b"
Set the tinting RGB values of textures being rendered. Can be used in DISPLAYROOMS or before rotatesprite (similar to setaspect). Remember to reset the values afterwards.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6591 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:11 +00:00
hendricks266 392d5fc942 Fix visibility in Polymer with r_usenewshading 4 and palette emulation off.
Move some visibility-related constants from Polymer "core" code elsewhere.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6590 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:06 +00:00
hendricks266 1e04f43240 New userdef structure: "menu_slidebarz", "menu_slidebarmargin", "menu_slidecursorz"
Self-explanatory. Default value for all is 65536.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6589 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:02 +00:00
hendricks266 4da012a15f Add an option to move the status bar to the top of the screen in the Android version.
Restores a feature temporarily disabled in r6553.

Currently only supports the modern status bar.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6588 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:34:57 +00:00
hendricks266 150ddded12 New userdef structure: "statusbarflags", "statusbarrange", "statusbarcustom"
"statusbarflags" is a bitfield. Values are:
STATUSBAR_NONONE = 1
STATUSBAR_NOMINI = 2
STATUSBAR_NOFULL = 4
STATUSBAR_NOSHRINK = 8
STATUSBAR_NOFRAGBAR = 16
STATUSBAR_NOOVERLAY = 32
STATUSBAR_NOMODERN = 64
Default value is 8. In case you modify it, you also have to set the other status bar related userdefs in EVENT_SETDEFAULTS. Default values in EDuke32 are: screen_size = 4; statusbarmode = 1; althud = 1;

"statusbarrange" is used to add more alternatives for the status bar without breaking the option in the menu. If used, the mini status bar (screen_size = 4) will cycle through "statusbarcustom" when changing the screen size.

Also fix the size of the viewport when the screen is shrunk and the scale of the status bar is not 100%.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6587 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:34:51 +00:00
hendricks266 1031f2dec0 Make cutscene "aspect" def token work with ANMs too.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6586 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:34:46 +00:00
hendricks266 85d0a3c520 New userdef structure "menubackground"
Set to 0 to disable the black transparent mask below the in-game menu.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6585 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:34:43 +00:00
hendricks266 cf64b480f1 Add new events at various points that display hardcoded screens.
New event "EVENT_MAINMENUSCREEN"

Triggered before the main menu is displayed. Set RETURN to -1 to disable the screens that appear before the main menu.

New event "EVENT_NEWGAMESCREEN"

Triggered when a new game is started. Set RETURN to -1 to disable The Birth intro animation.

New event "EVENT_ENDLEVELSCREEN"

Triggered when a level ends. Set RETURN to -1 to disable the bonus and deathmatch score screens after a level ends.

New event "EVENT_EXITGAMESCREEN"

Triggered when a running game is ended. Set RETURN to -1 to disable the deathmatch score screen when you quit mid-game.

New event "EVENT_EXITPROGRAMSCREEN"

Triggered when the program is closed. Set RETURN to -1 to disable the shareware or TEN screen,sif they were enabled in LOGO_FLAGS.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6584 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:34:38 +00:00
hendricks266 29543fd087 Menus: Fix current selection of episode menu when you return from the skill menu.
git-svn-id: https://svn.eduke32.com/eduke32@6583 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:34:33 +00:00
hendricks266 9949a3cf5c When SE 17 can't find the next sector for the floor, use the heuristic added for ceilings in r3013 to determine the floorz, replacing the game exit added in r2971.
git-svn-id: https://svn.eduke32.com/eduke32@6582 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-18 04:28:55 +00:00
hendricks266 214109b506 Revert the parts of r3159 corresponding to redefining lotag and hitag as unsigned, so that they are once again signed.
Any issues in Duke's code relating to misunderstanding these types are now restricted to Duke itself rather than changing the engine and potentially introducing new issues in all Build games.

git-svn-id: https://svn.eduke32.com/eduke32@6581 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-15 23:13:50 +00:00
hendricks266 ecdb08eb68 Revert slight change to fall behavior of pickup sprites in r6500.
git-svn-id: https://svn.eduke32.com/eduke32@6580 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-15 17:46:28 +00:00
hendricks266 fcd9238a67 Don't stomp on shrunken teammates unless friendly fire is enabled.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@6579 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-15 17:46:25 +00:00
hendricks266 8fa438dc0b Fix friendly fire damage conditions in multiplayer.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@6578 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-15 17:46:21 +00:00
hendricks266 ee298f18b8 Add is_(un)signed to compat.h, with specializations for the Tracker classes.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@6577 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-13 22:15:07 +00:00
terminx 0ece42110c Fix breakage I introduced into CON_FOR while fixing breakage in CON_FOR. :(
git-svn-id: https://svn.eduke32.com/eduke32@6576 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-29 19:27:11 +00:00
terminx 7291688875 Use native_t instead of bssize_t in gameexec.cpp
git-svn-id: https://svn.eduke32.com/eduke32@6575 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-29 19:27:04 +00:00
terminx fcfac7c1d9 Fix issues with CON_FOR
git-svn-id: https://svn.eduke32.com/eduke32@6574 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-29 02:32:12 +00:00
terminx 09c03151db Uncomment extra check in COMBINE_STRIPS
git-svn-id: https://svn.eduke32.com/eduke32@6573 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-20 08:35:49 +00:00
hendricks266 2c48a359e2 Fix corruption in filenames in new savegame system
git-svn-id: https://svn.eduke32.com/eduke32@6572 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-19 01:26:18 +00:00
pogokeen 9c695d6bc4 Fix line spacing tab issue in rev 6570.
git-svn-id: https://svn.eduke32.com/eduke32@6571 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-19 00:03:12 +00:00
pogokeen 741305e976 Fix a number of cases where files opened with cache1d.cpp's kopen_internal() could be leaked.
git-svn-id: https://svn.eduke32.com/eduke32@6570 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-18 23:36:05 +00:00
hendricks266 d9b0479343 ZDoom-style saves
git-svn-id: https://svn.eduke32.com/eduke32@6569 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-18 11:24:53 +00:00
hendricks266 29a0fffd5b Menu tweak
git-svn-id: https://svn.eduke32.com/eduke32@6568 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-18 11:24:46 +00:00
terminx ca308d5879 Happened to be reading a SDL doc and noticed we were creating our surface with the wrong flags
git-svn-id: https://svn.eduke32.com/eduke32@6567 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-17 09:27:32 +00:00
terminx c728176352 Revert a tweak made for HTTKC
git-svn-id: https://svn.eduke32.com/eduke32@6566 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-17 09:27:27 +00:00
pogokeen 59597982c5 Fixed file handle leak when loading a save game
git-svn-id: https://svn.eduke32.com/eduke32@6565 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-17 02:03:55 +00:00
pogokeen efaf328e4d Fixed race condition where XMP voices could be played by the audio driver thread before they were fully initialized or fully freed
git-svn-id: https://svn.eduke32.com/eduke32@6564 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-17 02:03:52 +00:00
hendricks266 bcb41aac3e New player structures "frags" and "deaths"
player[<killer>].frags <victim>

Equals how many times player <killer> killed <victim>. Note that the sum of these values will not equal the total kills or deaths for a player since another player may disconnect, so use "frag" or "deaths" instead.

player[<id>].deaths

Equals the total number of times the player died in the round, not including suicides.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6563 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:14:19 +00:00
hendricks266 71e3948e70 Fix the position of the "KILLS" header and the number of deaths for each player in the frag screen.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6562 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:14:15 +00:00
hendricks266 4c095c954d Fix tints with negative shades in r_usenewshading 4.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6561 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:14:12 +00:00
hendricks266 583dc0f47a Polymost: Account for yscale when deciding if the sky is tall enough to repeat or not. Comment out code that is not working as expected.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6560 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:14:09 +00:00
hendricks266 b6d7de7d27 Add def "globalflags" bit 4, and for individual palettes the "tint" flag bit 512. This makes fog the same for all shades. Make fog behave normally with sector structure .fogpal.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6559 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:14:06 +00:00
hendricks266 2f98d759f6 Fix visibility in Polymer with r_usenewshading 4.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6558 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:14:02 +00:00
hendricks266 ae47d2f11d New def tokens for "tint": "shadered" or "sr", "shadeblue" or "sb", "shadegreen" or "sg"
tint { pal <pal> shadered <0-255> shadegreen <0-255> shadeblue <0-255> }

Make shade apply a tint based on the RGB.
Default values for shade are zero (black).

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6557 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:13:58 +00:00
hendricks266 756fa2bbd8 New userdef structure "screenfade"
Set to zero to disable the hard-coded fade to black transition between screens, menu or when the level ends.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6556 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:13:53 +00:00
hendricks266 63748e5381 New LOGO_FLAGS bits:
- LOGO_STOPMISCSOUNDS = 2097152: Don't play NITEVISION_ONOFF when the logo starts.
- LOGO_NOGAMETITLE = 4194304: Don't display the title (INGAMEDUKETHREEDEE and PLUTOPAKSPRITE+2) in the main menu.
- LOGO_NOTITLEBAR = 8388608: Don't display the title bar background (TITLEBAR) above the menu.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6555 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:13:49 +00:00
hendricks266 ea36d5289a New event "EVENT_SETDEFAULTS".
Use this event to change the value of userdefs when initializing cfg settings with defaults.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6554 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:13:46 +00:00
hendricks266 9765526948 Move the modern status bar option into the screen size slider.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6553 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:13:42 +00:00
hendricks266 084c661fa0 New def tokens for "cutscene": "texturefilter", "forcefilter", "forcenofilter"
Changes the filtering for cutscenes. By default, ANMs are unfiltered and IVFs filtered regardless of the filtering option in the menu. Use “texturefilter” to use the same filtering as textures, “forcenofilter” to never use filtering and “forcefilter” to always use filtering.

cutscene <path> { texturefilter }

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6552 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:13:38 +00:00
hendricks266 45a8742e42 New def token for "cutscene": "aspect"
Overrides the aspect ratio for IVF files.

cutscene <path> { aspect <numerator> <denominator> }

Note: For ANMs, you can use rotatesprite and setaspect to draw TILE_ANIM (currently defined as 30716) in EVENT_CUTSCENE with a custom aspect.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6551 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:13:32 +00:00
terminx 415c5e219e screenpeek for EVENT_RECOGSOUND
git-svn-id: https://svn.eduke32.com/eduke32@6550 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-10 03:24:47 +00:00
terminx d3417b763a Untabify engine.cpp
git-svn-id: https://svn.eduke32.com/eduke32@6547 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-09 02:56:31 +00:00
terminx 4edc1c6523 Revert a minor change I made to EVENT_LOGO
git-svn-id: https://svn.eduke32.com/eduke32@6546 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-09 02:56:26 +00:00
terminx 3ab1c2c722 Fix problem where sometimes fullscreen GL modes display incorrectly. I'm not sure why this fixes it and I believe it to be a SDL bug.
git-svn-id: https://svn.eduke32.com/eduke32@6544 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-09 02:56:17 +00:00
terminx f97aee59c8 Address issue where timers will no longer update after several hours of runtime
git-svn-id: https://svn.eduke32.com/eduke32@6543 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-09 02:56:12 +00:00
terminx 948fe80304 Fix undefined behavior in gameexec.cpp
git-svn-id: https://svn.eduke32.com/eduke32@6542 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-09 02:56:05 +00:00
terminx 3c8f050565 Fix memory leak with .ANM playback in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@6541 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 12:42:40 +00:00
terminx bb836cfc0b Fix small memory leak in OSD
git-svn-id: https://svn.eduke32.com/eduke32@6540 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 12:42:36 +00:00
terminx a66703b01a tabs -> spaces
git-svn-id: https://svn.eduke32.com/eduke32@6539 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 12:42:31 +00:00
terminx cba4b950ef Fix memory leak in MACT scriplib.cpp
git-svn-id: https://svn.eduke32.com/eduke32@6538 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 12:42:25 +00:00
terminx de5f16b1c5 Fix events added in recent commits
git-svn-id: https://svn.eduke32.com/eduke32@6537 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 09:24:55 +00:00
terminx 9e9f4168af Fix huge memory leak with savemapstate
git-svn-id: https://svn.eduke32.com/eduke32@6536 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 08:45:09 +00:00
terminx 6231c0bdf5 Change ARRAY_SSIZE macro to return type native_t
git-svn-id: https://svn.eduke32.com/eduke32@6535 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 08:45:04 +00:00
terminx a18d03635c Fix crash issue with nested console script execution
git-svn-id: https://svn.eduke32.com/eduke32@6534 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 08:44:59 +00:00
terminx bf2047bc0f Print message to console at startup when successfully loading a RTS file instead of when the RTS file is missing
git-svn-id: https://svn.eduke32.com/eduke32@6533 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 08:44:53 +00:00
hendricks266 c5ebf96217 Remix screencapture_begin into OutputFileCounter.
git-svn-id: https://svn.eduke32.com/eduke32@6532 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-01 06:19:19 +00:00
hendricks266 f9a90e6f33 Add anticipatory fields to ud; bump BYTEVERSION.
git-svn-id: https://svn.eduke32.com/eduke32@6531 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-01 06:19:15 +00:00
hendricks266 d722b998ed Make sure I_EnterText never writes a null terminator out of bounds.
git-svn-id: https://svn.eduke32.com/eduke32@6530 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-01 06:19:12 +00:00
hendricks266 4313460da7 Bump savegame name limits from 22 in memory and 19 in practice to 32 in memory and 30 in practice.
This bumps SV_MINOR_VER.

git-svn-id: https://svn.eduke32.com/eduke32@6529 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-01 06:19:09 +00:00
hendricks266 f808648079 Cleanups to handling of old save versions
git-svn-id: https://svn.eduke32.com/eduke32@6528 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-01 06:19:04 +00:00
terminx ee0524bc23 Revise previous commit
git-svn-id: https://svn.eduke32.com/eduke32@6527 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-01 02:07:34 +00:00
terminx 933161fc2d Fix issue with non-actor sprites not being deleted at size 0
git-svn-id: https://svn.eduke32.com/eduke32@6526 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-01 01:49:00 +00:00
terminx 7acf811eae Re-comment out part of COMBINE_STRIPS in polymost.cpp
git-svn-id: https://svn.eduke32.com/eduke32@6525 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-30 23:54:23 +00:00
terminx 845abb435a Drop VSPMAX back to 2048 from 4096
git-svn-id: https://svn.eduke32.com/eduke32@6524 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-30 23:54:18 +00:00
hendricks266 90045e4ce3 Revert r6496
git-svn-id: https://svn.eduke32.com/eduke32@6523 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-30 02:57:23 +00:00
hendricks266 5de5dc9fcd Menus: Change "Size:" entries in HUD Setup to "Scale:" and indent them.
git-svn-id: https://svn.eduke32.com/eduke32@6522 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:57 +00:00
hendricks266 12c4d033f1 Polymost: Set r_parallaxskypanning to 1 by default.
This enables sky panning, which allows the effect of CLOUDYSKIES to work properly.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6521 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:54 +00:00
hendricks266 ad83ca0188 Polymost: Display paper-skies correctly when looking up or down.
Show a solid color for skies taller than 256 px, otherwise repeat.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6520 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:51 +00:00
hendricks266 5fbe1b89be New def token for "multipsky": "yscale".
multipsky <tile> { yscale <yscale> }

Default value is 65536.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6519 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:48 +00:00
hendricks266 6164e3dae8 Revise view background / border drawing code.
New event "EVENT_UPDATESCREENAREA"

Use this event to change the size of the game view, similar to when you press + or -.

New event "EVENT_DISPLAYBORDER"

Set RETURN to change the background tile of the game view, set -1 to disable the background and border.

New userdef structures "screenarea_x1", "screenarea_y1", "screenarea_x2", "screenarea_y2"

Use these structures to change the boundaries of the view in EVENT_UPDATESCREENAREA.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6518 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:44 +00:00
hendricks266 1c107bd877 CON: Add EVENT_RECOGSOUND.
Set RETURN to -1 to disable the sound played when an enemy awaken. You have to use a command to play a sound, because the bosses use globalsound.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6517 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:40 +00:00
hendricks266 102a720402 CON: Add EVENT_OPENMENUSOUND.
Set RETURN to the sound played when the menu is opened. -1 to cancel.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6516 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:37 +00:00
hendricks266 66162032a0 Add r_usenewshading 4.
Uses a constant determined from the shade tables.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6515 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:33 +00:00
hendricks266 5adb8364b6 Calculate the perceptual (i.e. "real") max shade in the given tables.
git-svn-id: https://svn.eduke32.com/eduke32@6514 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:30 +00:00
hendricks266 23b1b650bb Clean up E_PostLoadPalette.
git-svn-id: https://svn.eduke32.com/eduke32@6513 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:27 +00:00
hendricks266 c9981e76af CON: Add EVENT_DISPLAYEND and EVENT_DISPLAYROOMSEND.
EVENT_DISPLAYROOMSEND: Triggered right after the game world is rendered and before any sprite above the screen.
EVENT_DISPLAYEND: Triggered after the game draws everything above the screen, including menus. A counterpart to EVENT_DISPLAYSTART.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6512 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:23 +00:00
hendricks266 50f7f6cda4 Pause the game when playing IVF files with startcutscene.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6511 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:20 +00:00
hendricks266 a72295f7f1 Fix flickering in IVF files.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6510 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:17 +00:00
hendricks266 74908b1def CON: Add screenpal command.
screenpal <r> <g> <b> <a>

Similar to palfrom, but works on screen events. Values range from 0 to 255.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6509 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:14 +00:00
hendricks266 f6678b336a CON: Add command "startscreen" and corresponding EVENT_SCREEN.
Use startscreen to take control away from the game and display content with rotatesprite.

RETURN is set to 1 when any key is pressed, and if it is nonzero when the event ends, the screen ends and the game resumes.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6508 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:11 +00:00
hendricks266 dbd8b72d10 CON: Add EVENT_SKIPCUTSCENE.
Used with startcutscene. RETURN is set to 1 when any key is pressed, and is used to control when a cutscene ends.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6507 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:07 +00:00
hendricks266 1377afe414 CON: Add EVENT_PRECUTSCENE.
Used with startcutscene. RETURN sets the frame of an ANM before it is rendered.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6506 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:04 +00:00
hendricks266 a89ad84f4d CON: Run EVENT_CUTSCENE during IVFs as well.
Changing the frame of an IVF file is unsupported, so its only purpose is to play sounds.

Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6505 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:01 +00:00
hendricks266 38df0b7e82 CON: Add "actorsound" command.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@6504 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:28:58 +00:00
hendricks266 bad61e3934 Replace arbitrary MAXGAMEEVENTS macro with the properly generated MAXEVENTS.
git-svn-id: https://svn.eduke32.com/eduke32@6503 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:28:54 +00:00
terminx 67e3166fb3 Add palette emulation menu options to control r_usetileshades and r_pr_artmapping
git-svn-id: https://svn.eduke32.com/eduke32@6502 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-22 05:23:43 +00:00
terminx 5df760b347 Small change to G_FPSLimit()
git-svn-id: https://svn.eduke32.com/eduke32@6501 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-22 05:23:38 +00:00
terminx 63d3f70258 Minor hard-coded Duke sprite cleanup
git-svn-id: https://svn.eduke32.com/eduke32@6500 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-22 05:23:33 +00:00
terminx 15b223840b Useless removal of a couple of redundant blocks of code
git-svn-id: https://svn.eduke32.com/eduke32@6499 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-22 05:23:28 +00:00
terminx fe9c6d25f4 Move autoexec.cfg execution to directly after settings.cfg execution
git-svn-id: https://svn.eduke32.com/eduke32@6498 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-22 05:23:23 +00:00
hendricks266 9d0e76b2e3 Fox's projection patch 2.0
git-svn-id: https://svn.eduke32.com/eduke32@6496 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-06 05:56:48 +00:00
hendricks266 7033d83d26 Fox's maskwall fix 2.0
git-svn-id: https://svn.eduke32.com/eduke32@6495 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-02 04:25:59 +00:00
terminx 7fd86d09ad If Fox's patch to fix flickering masked walls is correct, this change should improve FPS in some areas.
git-svn-id: https://svn.eduke32.com/eduke32@6494 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-31 02:09:44 +00:00
terminx 7bdd0e1361 Crash fix
git-svn-id: https://svn.eduke32.com/eduke32@6493 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-31 02:09:39 +00:00
terminx c52e003e2a Fix issue with arrays, saved map states, and savegames
git-svn-id: https://svn.eduke32.com/eduke32@6492 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-31 02:09:25 +00:00
hendricks266 366d823894 Revert r6490.
git-svn-id: https://svn.eduke32.com/eduke32@6491 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-31 00:35:23 +00:00
hendricks266 e12b63c3bd A potential fix for the disappearing maskwall problem.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6490 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-30 03:48:31 +00:00
hendricks266 e979aa1ff4 Eliminate the need for cache1d to calculate and remember the CRC32 of every GRP loaded.
git-svn-id: https://svn.eduke32.com/eduke32@6489 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-30 03:48:28 +00:00
terminx d33107808e Fix crash with "setrendermode 4" in builds with Polymer disabled
git-svn-id: https://svn.eduke32.com/eduke32@6488 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-16 21:17:53 +00:00
terminx 3b9587cfa2 Fix issue with savemapstate/loadmapstate and gamearrays
git-svn-id: https://svn.eduke32.com/eduke32@6487 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-16 21:17:47 +00:00
hendricks266 c746b486b7 Polymost: New projection hack algorithm: Keep zoom equivalent to Classic when looking straight ahead.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6486 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-16 03:32:37 +00:00
hendricks266 d6682d58d3 Expand use of VM_GetKeywordForID to all other references to vm_keywords[].
Fixes printing of incorrect keywords, reported by Trooper Dan.

git-svn-id: https://svn.eduke32.com/eduke32@6485 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-16 03:32:34 +00:00
hendricks266 b3455b7b4d Amend r6460 to move vm_keywords[] back to gamedef.cpp and factor the ID to keyword mapping into VM_GetKeywordForID().
git-svn-id: https://svn.eduke32.com/eduke32@6484 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-16 03:32:30 +00:00
hendricks266 aea57fde17 Fix infinite loop when requesting to open an invalid map from the command line.
git-svn-id: https://svn.eduke32.com/eduke32@6483 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-16 03:32:26 +00:00
hendricks266 ddd94d7b92 Re-add GAMETYPE_FRAGBAR to the default cases for deathmatch modes.
While the fragbar is indeed too cumbersome for use with more than 8 players, and a "show current score overlay" button is a better and more modern solution, this flag should connote whether a mode is *eligible* for it, not whether it is used at all.

TODO: Add a cvar for toggling the fragbar and turn it off by default.

git-svn-id: https://svn.eduke32.com/eduke32@6482 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-15 23:10:21 +00:00
hendricks266 6aaddf3fa2 Enumify the definition of g_gametypeFlags.
git-svn-id: https://svn.eduke32.com/eduke32@6481 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-15 23:10:18 +00:00
hendricks266 04d1f0eb29 Fix the bug where tapping (but not holding) fire with 1 ammo left for the chaingun would fail to switch away.
Reported by RunningDuke.

git-svn-id: https://svn.eduke32.com/eduke32@6480 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-15 23:10:15 +00:00
hendricks266 17c4d27298 if (A ? 1 : B) --> if (A || B)
git-svn-id: https://svn.eduke32.com/eduke32@6479 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-15 23:10:12 +00:00
hendricks266 2c7840d928 Fix infinite loop in OSD_StripColors() when trying to display a quote containing '^' not followed by a number.
This fixes Mission 2 of Platoon Leader, as reported by RunningDuke.

git-svn-id: https://svn.eduke32.com/eduke32@6478 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-15 23:10:09 +00:00
hendricks266 486791b3ee Add the Platoon Leader expansion for WWII GI to the GRP list.
git-svn-id: https://svn.eduke32.com/eduke32@6477 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-15 23:10:06 +00:00
hendricks266 1a256f2509 Duke: Scan for *.dat in addition to .grp, .zip, .ssi, etc.
git-svn-id: https://svn.eduke32.com/eduke32@6476 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-15 23:10:03 +00:00
hendricks266 64d76db260 Add support for MTM modules.
git-svn-id: https://svn.eduke32.com/eduke32@6475 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-15 23:09:59 +00:00
hendricks266 a14d427359 libxmp-lite: Import mtm_load.c
git-svn-id: https://svn.eduke32.com/eduke32@6474 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-15 23:09:55 +00:00
hendricks266 95d93f770e Eliminate the force-disabling of glprojectionhacks during showview.
Please notify me if this change negatively affects your code.

git-svn-id: https://svn.eduke32.com/eduke32@6473 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-09 07:37:17 +00:00
hendricks266 dfb98028f1 compat.h: Use C++17, C++11, or C11 static_assert if available.
git-svn-id: https://svn.eduke32.com/eduke32@6472 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-09 07:37:14 +00:00
hendricks266 4966b0922d compat.h: Only use C++ attribute versions of fallthrough if C++11 or greater.
git-svn-id: https://svn.eduke32.com/eduke32@6471 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-09 07:37:11 +00:00
hendricks266 3ac0a936c8 build.h: Error out if Visual Studio is older than 2013.
We keep getting support requests about this. See previous commit.

git-svn-id: https://svn.eduke32.com/eduke32@6470 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-09 07:37:08 +00:00
hendricks266 8ff6d59688 compat.h: Add EDUKE32_MSVC_CXX_PREREQ().
It is necessary for testing C++11 functionality because Visual Studio never defines __cplusplus to be 201112L.

git-svn-id: https://svn.eduke32.com/eduke32@6469 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-09 07:37:05 +00:00
hendricks266 7c2f233450 compat.h: Add detection of C++17.
git-svn-id: https://svn.eduke32.com/eduke32@6468 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-09 07:37:01 +00:00
hendricks266 32d3ca1591 Some more standalone stuff.
git-svn-id: https://svn.eduke32.com/eduke32@6467 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-09 07:36:58 +00:00
hendricks266 60fcb6527c Menus: If you open the Help menu with the F1 key, make Help the selected item on the main menu, if applicable.
git-svn-id: https://svn.eduke32.com/eduke32@6466 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-09 07:36:55 +00:00