Commit Graph

5070 Commits

Author SHA1 Message Date
terminx cb2dcdc99e Minor engine cleanup
git-svn-id: https://svn.eduke32.com/eduke32@4984 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-11 05:21:53 +00:00
terminx 97f04d8083 Fix program entry point on win32, allows debugging SDL builds under MSVC.
git-svn-id: https://svn.eduke32.com/eduke32@4983 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-11 05:21:50 +00:00
terminx 5595d41ccd Macro for handling ud.bgstretch. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4982 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-11 05:21:46 +00:00
terminx 88e0bfd7d3 More twalltype
git-svn-id: https://svn.eduke32.com/eduke32@4981 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-11 05:21:38 +00:00
helixhorned b9834f9832 mdsprite.c: in md3load(), allocate m->head.surfs with Xcalloc, amending r4952.
And preventing enormous corruption due to a free() called on a garbage (malloc'd)
pointer values this time. DO_BUILD_VERY_FAST_PLEASE!

git-svn-id: https://svn.eduke32.com/eduke32@4980 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-10 19:51:15 +00:00
helixhorned 1abe65f3ce Makefile.common: disallow building Lunatic with C++ for now. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4979 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-10 17:50:23 +00:00
hendricks266 529d43f116 Provide a RETURN value of -2 to EVENT_DISPLAYLOADINGSCREEN after G_CacheMapData().
git-svn-id: https://svn.eduke32.com/eduke32@4978 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-09 05:50:47 +00:00
hendricks266 929b04d473 CON: Add undefinevolume, undefineskill, and undefinelevel.
git-svn-id: https://svn.eduke32.com/eduke32@4977 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-09 05:50:33 +00:00
hendricks266 81b09a9ff5 Rename "Polymost.f" string back to "Polymost" because it only confused users.
git-svn-id: https://svn.eduke32.com/eduke32@4976 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-09 05:50:08 +00:00
helixhorned c18ae15dc5 gameexec.c: in VM_Move(), update actor[].{floor,ceiling}z for enemies.
Previously, that was the case only with DRONE and COMMANDER. This makes
non-falling enemies pass properly through TROR bunches.

git-svn-id: https://svn.eduke32.com/eduke32@4975 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-08 18:48:31 +00:00
helixhorned 7cc1067a3d actors.c: style-cleanup A_MoveSpriteClipdist(). DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4974 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-08 18:48:31 +00:00
helixhorned d915c49935 Mapster32: in build.c, prevent oob of wall[] if joining non-adjacent sectors.
Also, some minor stylistic cleanup.

git-svn-id: https://svn.eduke32.com/eduke32@4973 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-08 18:48:30 +00:00
helixhorned 70dc2f7376 CON: Amend retrieval of STR_*TIME for qgetsysstr, fixing LunaCON and possible oob.
- Add declarations of C functions to defs.ilua, names to dynsymlist,
  fix typo in con_lang.lua, ffi.string() calls in control.lua
- Assert that G_LastMapInfoIndex() is always called with ud.last_level >= 1.
  (A stricter requirement than necessary to prevent follow-up oob accesses, but
  logically the most meaningful.)
- In G_PrintParTime() and G_PrintDesignerTime(), return "<invalid>" if the above
  does not hold. This can happen from EVENT_NEWGAME, for example. Add a test to
  lunatic/test/qgetsysstr.con.  DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4972 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-08 18:48:28 +00:00
hendricks266 b980ca7b0b Engine: Remove some conditional disabling of spriteext features when !defined USE_OPENGL.
git-svn-id: https://svn.eduke32.com/eduke32@4971 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-08 08:04:23 +00:00
hendricks266 e8f842ac28 CON: Add read-only access to ud.config.MusicToggle through the "musictoggle" member.
git-svn-id: https://svn.eduke32.com/eduke32@4970 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-08 08:04:09 +00:00
hendricks266 b355d75ab3 CON: Add STR_YOURTIME, STR_PARTIME, STR_DESIGNERTIME, and STR_BESTTIME to qgetsysstr.
git-svn-id: https://svn.eduke32.com/eduke32@4969 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-08 08:03:50 +00:00
hendricks266 d7f846d0b6 Factor out generation of strings for time values in the bonus screen. This involves the creation of ud.playerbest.
git-svn-id: https://svn.eduke32.com/eduke32@4968 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-08 08:03:30 +00:00
hendricks266 c5b3cfa445 Correct the special behavior to select the pipebomb detonator when you have no pipebombs in your inventory but you have some thrown in the environment so that it animates properly and also applies with the next/previous weapon functions.
git-svn-id: https://svn.eduke32.com/eduke32@4967 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-08 08:03:06 +00:00
hendricks266 2cbd80ad90 Move EVENT_DISPLAYMENU to after the black translucent background is drawn when in-game.
git-svn-id: https://svn.eduke32.com/eduke32@4966 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-08 08:02:51 +00:00
helixhorned a7bea4f6bc Classic: fix underallocation of TILE_TILT and tilting at very small resolutions.
Since TILE_TILT is only allocated once, it must be done with the maximum
possible size.

git-svn-id: https://svn.eduke32.com/eduke32@4965 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-07 17:29:15 +00:00
helixhorned 1a7816065c sdlayer.c: minor stylistic simplification of sdlayer_checkversion(). DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4964 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-07 17:29:14 +00:00
helixhorned c6b9fa52d9 osd.c: in OSD_HandleChar() for TAB, fix use of uninitialized osd->editor.buf[i].
Exposed by Valgrind. DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4963 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-07 17:29:13 +00:00
helixhorned de2a14290f LunaCON: make -fbad-getactorvar-use-pli enabled by default. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4962 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-07 17:29:12 +00:00
helixhorned 952a723229 Make g_player a +1 offset pointer into 'static g_player_s[1 + MAXPLAYER]'.
This fixes the out-of-bounds read of former g_player[] in VM_EventCommon_().

git-svn-id: https://svn.eduke32.com/eduke32@4961 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-07 17:29:11 +00:00
helixhorned c3ddf08fd1 Classic: on desktops, handle abs. z diff. of floor/ceiling to camera >= 1<<24.
git-svn-id: https://svn.eduke32.com/eduke32@4960 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-07 17:29:10 +00:00
helixhorned d95aaa5da5 engine.c: style-cleanup owallmost() and wallmost(). DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4959 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-07 17:29:08 +00:00
helixhorned c7774f9c43 In DEBUGANYWAY=2/DEBUG_MAIN_ARRAYS build, declare tsprite[] as tspritetype.
Fixing a bunch of warnings. DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4958 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-05 17:17:05 +00:00
helixhorned 0190983067 Lunatic: fix typos in control.lua (get/setmusicposition).
git-svn-id: https://svn.eduke32.com/eduke32@4957 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-05 16:30:15 +00:00
helixhorned 57079dfee1 Add SFLAG_NOWATERDIP, unconditionally preventing actors from dipping into ST1 water.
By default, the following enemies have this flag set: OCTABRAIN, COMMANDER, DRONE.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4956 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-05 16:30:14 +00:00
helixhorned f022631fa8 Actor ST1 handling: use A_GetWaterZOffset() with VM_Move(), too. DONT_BUILD.
This is where things are changed at last. This fixes lizmen walking on water.

git-svn-id: https://svn.eduke32.com/eduke32@4955 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-05 16:30:13 +00:00
helixhorned c0d45ef1ec Actor ST1 handling: cleanup part 2. DONT_BUILD.
Factor out condition for whether a z offset is added or not
("fix for flying/jumping monsters getting stuck in water", etc.) into
a function A_GetWaterZOffset() (and a helper A_GetVerticalVel()).

git-svn-id: https://svn.eduke32.com/eduke32@4954 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-05 16:30:12 +00:00
helixhorned 36c3fd9216 Actor ST1 handling: clean up code a bit. (Preparation for real changes.)
In VM_Fall(), keep a temp preliminary new z position of the actor and
assign only when we return. This is to each ease watching its value in GDB.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4953 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-05 16:30:12 +00:00
helixhorned 910716fa11 mdsprite.c: in md3free(), also free s->geometry for each surface. DONT_BUILD.
This prevents a enormous leak being reported by LeakSanitizer. Not that it
matters much, since we most frequently free models only at exit. (Sometimes one
may be freed earlier though -- if there was an error loading it, AFAICS.)

git-svn-id: https://svn.eduke32.com/eduke32@4952 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-05 16:30:09 +00:00
helixhorned a0a4006d85 menus.c: fix C build. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4951 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-04 21:32:53 +00:00
hendricks266 9f910ff10c Fix next/previous weapon when the pipebomb detonator is active.
git-svn-id: https://svn.eduke32.com/eduke32@4950 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:27:52 +00:00
hendricks266 7c800f6631 Don't allow Ogg Vorbis or FLAC files to be defined from def if the binary was built without the proper libraries.
git-svn-id: https://svn.eduke32.com/eduke32@4949 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:18:11 +00:00
hendricks266 b6d625b202 Modularize .mid --> .ogg --> .flac code to apply to sounds as well, and various cleanup in music/sound filename-handling code.
git-svn-id: https://svn.eduke32.com/eduke32@4948 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:17:59 +00:00
hendricks266 ef4a19bb50 Fix a bug where FLAC sound effects would loop when they were not supposed to.
git-svn-id: https://svn.eduke32.com/eduke32@4947 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:17:25 +00:00
hendricks266 3018dee77c Menus: Mouse, touch, and pointer controls now take the origin into account.
git-svn-id: https://svn.eduke32.com/eduke32@4946 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:17:10 +00:00
hendricks266 93a3ff34e8 Add events EVENT_DISPLAYINACTIVEMENU and EVENT_DISPLAYINACTIVEMENUREST and userdef members m_origin_x and m_origin_y.
This allows for CON screen display code to use menu animations. The following is an example of how to adapt screen features that should animate.

before:

onevent EVENT_DISPLAYMENUREST
    ifvare current_menu 0 // main menu
    {
        setvar x 1
        setvar y 1
        rotatesprite x y zoom ang tilenum shade pal orientation 0 0 xdim ydim
    }
endevent

after:

state DisplayMenuCommon
    ifvare RETURN 0 // main menu
    {
        getuserdef[THISACTOR].m_origin_x x
        getuserdef[THISACTOR].m_origin_y y
        addvar x 65536
        addvar y 65536
        rotatesprite16 x y zoom ang tilenum shade pal orientation 0 0 xdim ydim
    }
ends

onevent EVENT_DISPLAYMENUREST state DisplayMenuCommon endevent
onevent EVENT_DISPLAYINACTIVEMENUREST state DisplayMenuCommon endevent

git-svn-id: https://svn.eduke32.com/eduke32@4945 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:16:58 +00:00
hendricks266 7fb76291ee Make my menu animation code a little bit more modular.
git-svn-id: https://svn.eduke32.com/eduke32@4944 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:16:34 +00:00
hendricks266 74bb822804 Revise r4707 to fix some remaining issues with next/previous weapon.
git-svn-id: https://svn.eduke32.com/eduke32@4943 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:16:22 +00:00
hendricks266 6048f9d766 Simplify the macros used for distinguishing between OS X and iOS.
git-svn-id: https://svn.eduke32.com/eduke32@4942 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:16:10 +00:00
hendricks266 36291f2e30 Fix "rv may be used uninitialized".
git-svn-id: https://svn.eduke32.com/eduke32@4941 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:15:50 +00:00
hendricks266 3c8b06c688 Fix "textsize.x may be used uninitialized".
git-svn-id: https://svn.eduke32.com/eduke32@4940 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-25 12:15:37 +00:00
helixhorned a50a332933 compat_tools.c: match definition of 'editstatus'to declarations in other places. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4939 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-24 19:14:39 +00:00
helixhorned 038bc1517b engine.c: in qsetmodeany(), call initsmost() after setting xdim and ydim.
This makes sure that the engine arrays have sufficient space allocated for usage
in Mapster32's 2D mode, for example from drawmapview().


git-svn-id: https://svn.eduke32.com/eduke32@4938 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-19 01:54:53 +00:00
helixhorned 038a9f8eb6 Lunatic: fix build and linking. DONT_BUILD.
- t{sector,wall}type are simply typedef'd to the non-t versions
- make FORCE_INLINE unconditional of DISABLE_INLINING (otherwise there are
  multiple definitions of these functions)
- update lunatic/doc/lpeg-lunatic.patch to apply against the LPeg 0.12 I just
  downloaded


git-svn-id: https://svn.eduke32.com/eduke32@4937 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-19 00:11:25 +00:00
helixhorned 621b52aec5 osdfuncs.c: get rid of a warning with GCC. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4936 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-19 00:03:00 +00:00
helixhorned ace6087f7b Classic: fix "windowed" modes (r_size >= 12) by reverting r4920; adapt.
In setview(), we now assert windowx2 < xdim. The only calling places where its
non-violation is non-trivial to ascertain are (1) showview from CON and
(2) draw-to-tile for look-sideways in game.c. AFAICS case 1 should be fine.
Case 2 is adapted; see comments there.


git-svn-id: https://svn.eduke32.com/eduke32@4935 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-18 23:16:37 +00:00
helixhorned 451dcfa073 Mapster32: remove unused key* options in mapster32.cfg and corresponding BK_* macros. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4934 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-18 22:11:31 +00:00
helixhorned 3a433130bb Fix bsearch() call for user G_LoadMapHack(): don't access nonexistent storage. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4933 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-18 20:31:37 +00:00
helixhorned 80da69f6a0 polymost.c: fix possible access of wallchanged[-1]. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4932 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-18 20:28:59 +00:00
helixhorned 03be585ff7 engine.c: fix memory leak. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4931 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-18 20:22:25 +00:00
helixhorned a05cc6ec20 polymost.c: fix C build. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4930 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-18 20:21:17 +00:00
hendricks266 b8783d0448 Fix warning in previous commit. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4929 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-17 05:40:42 +00:00
hendricks266 011fd40dda CON: Add new commands "getmusicposition" and "setmusicposition" that operate on the playback position of the current music track.
// Example: Switch between tracks like radio stations.
 getmusicposition temp
 starttrackvar next_music_track
 setmusicposition temp

Only implemented for Ogg Vorbis, FLAC, and XA. Consult the devs before using these commands.

git-svn-id: https://svn.eduke32.com/eduke32@4928 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-17 00:28:49 +00:00
hendricks266 86e7a97ef7 Fix a crash exposed by animating the menu back button.
git-svn-id: https://svn.eduke32.com/eduke32@4927 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-17 00:27:46 +00:00
hendricks266 e7b7a9fcf1 Clean up duplicate and strangely-formed cases in C_ParseCommand().
git-svn-id: https://svn.eduke32.com/eduke32@4926 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-17 00:27:19 +00:00
terminx c98555616d Fix kplib zip support
git-svn-id: https://svn.eduke32.com/eduke32@4925 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-16 06:30:51 +00:00
terminx 8e21ad20c2 MSYS2 build fix. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4924 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-16 06:30:48 +00:00
terminx bd27267b6b Fix savemapstate/loadmapstate (fixes a crash at shutdown, among other things)
git-svn-id: https://svn.eduke32.com/eduke32@4923 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-16 06:30:42 +00:00
terminx b3358a90b2 Fix wildmatch(), resolves errors matching things like "*.zip" with "duke3d.hrp.zip" for example.
git-svn-id: https://svn.eduke32.com/eduke32@4922 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-15 06:45:27 +00:00
terminx 4c883f81b6 MSVC build fix... guess it was upset about the macro expansion
git-svn-id: https://svn.eduke32.com/eduke32@4921 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-15 06:45:24 +00:00
terminx 0b1582185e Fix off-by-one error in setview()
git-svn-id: https://svn.eduke32.com/eduke32@4920 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-15 06:45:21 +00:00
terminx cdaa25ef07 Implement better fade-out for quotes and for the mouse cursor in the menu.
git-svn-id: https://svn.eduke32.com/eduke32@4919 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-15 06:45:14 +00:00
hendricks266 2d161b1bf7 Menus: Implement better back button.
git-svn-id: https://svn.eduke32.com/eduke32@4918 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-13 12:57:29 +00:00
hendricks266 c42faee32e Menus: Make black background boxes translucent again.
git-svn-id: https://svn.eduke32.com/eduke32@4917 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-13 12:57:11 +00:00
hendricks266 c1c672032b Menus: Add proper edging for the tops and bottoms of scrolling lists.
git-svn-id: https://svn.eduke32.com/eduke32@4916 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-13 12:56:54 +00:00
hendricks266 53306244f0 Improve weapon switching:
1. If you switch away from a weapon and switch to a third when the gun is still going down, continue lowering the first weapon instead of immediately raising the third.
2. If you switch away from a weapon and switch back to it before it lowers completely, raise it from its current position instead of going all the way to the bottom.

git-svn-id: https://svn.eduke32.com/eduke32@4915 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-13 12:56:36 +00:00
hendricks266 49ba033faa Convert some multi-line UI messages to single G_ScreenText calls with line breaks.
git-svn-id: https://svn.eduke32.com/eduke32@4914 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-13 12:56:19 +00:00
hendricks266 7bcb05f7f0 Fix aligned screentext with newlines.
git-svn-id: https://svn.eduke32.com/eduke32@4913 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-13 12:55:56 +00:00
terminx f67c8fd44b Forgot this file in r4911
git-svn-id: https://svn.eduke32.com/eduke32@4912 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-12 09:55:12 +00:00
terminx 7daf4fdcd3 Fix tdupsprite in m32script.
git-svn-id: https://svn.eduke32.com/eduke32@4911 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-12 09:28:46 +00:00
terminx d70ac064b7 Make dist() and ldist() take void pointers so we can compare spritetype with tspritetype without inserting casts everywhere.
git-svn-id: https://svn.eduke32.com/eduke32@4910 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-12 09:28:41 +00:00
terminx 19729fc766 Fix Mapster32 sector copying
git-svn-id: https://svn.eduke32.com/eduke32@4909 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-12 08:44:46 +00:00
terminx 35d72c80c1 Fix compiler warnings
git-svn-id: https://svn.eduke32.com/eduke32@4908 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-12 01:54:50 +00:00
terminx 41a62ba96b Fix undefined behavior in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@4907 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-12 01:54:33 +00:00
terminx 0b1433b07c Disable mouse input affecting the menu when the console is down. This code is awful, because I am an awful man.
git-svn-id: https://svn.eduke32.com/eduke32@4906 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-12 01:54:18 +00:00
terminx 130244a302 Crash fix
git-svn-id: https://svn.eduke32.com/eduke32@4905 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-12 01:53:55 +00:00
terminx 419ea3ed40 Polymost: fix wall and floor sprites clipping into or z-fighting with surfaces (replaces glDepthRange() hacks for sprites), add r_nofog cvar for debugging, reduce the total number of OpenGL calls by only calling glFogi() to set the fog mode when initializing the renderer or changing r_usenewshading.
git-svn-id: https://svn.eduke32.com/eduke32@4904 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:56:58 +00:00
terminx 107bb7a3fa Introduce "twalltype" for temporary uses of walltype where using wall_tracker_hook() would be invalid. This is similar to "tspritetype" and fixes a bunch of problems in the editor that cropped up when changing the tracker sanity checks to an assert that only exists in debug builds (branching upon any write to a sprite, sector or wall had an unacceptable impact on performance).
git-svn-id: https://svn.eduke32.com/eduke32@4903 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:56:38 +00:00
terminx 364cf15c4f Questionable CON changes and optimizations. <3
git-svn-id: https://svn.eduke32.com/eduke32@4902 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:56:10 +00:00
terminx 2928a9dfa9 Fix Mapster32 bug where pressing "O" on a sprite twice would corrupt your map due to unchecked use of hitscan results.
git-svn-id: https://svn.eduke32.com/eduke32@4901 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:55:50 +00:00
terminx 64943543a4 Place the current loading percentage into RETURN for EVENT_DISPLAYLOADINGSCREEN.
git-svn-id: https://svn.eduke32.com/eduke32@4900 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:55:36 +00:00
terminx 43161e1fd8 Fix distrecip calculation
git-svn-id: https://svn.eduke32.com/eduke32@4899 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:55:23 +00:00
terminx 4911b9a949 Revise C++ structure trackers for performance and introduce "tspritetype", for temporary sprites or other usages where using the trackers would be invalid or undesired. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4898 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:55:07 +00:00
terminx 655bbed3b1 Faster/better optimized access to game structures from C-CON.
git-svn-id: https://svn.eduke32.com/eduke32@4897 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:54:11 +00:00
terminx 04527ad08e Support r_windowpositioning in 8-bit.
git-svn-id: https://svn.eduke32.com/eduke32@4896 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:53:59 +00:00
terminx 1f2705c4bc Clean up/refactor a few gamevar related functions based on building as C++/C99 and some interesting articles I read about how GCC and Clang optimize switches. Worth a few FPS here.
git-svn-id: https://svn.eduke32.com/eduke32@4895 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:53:44 +00:00
terminx 67d30a18da Minor cleanup and formatting changes. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4894 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:53:30 +00:00
terminx 4bc18d631e Make FORCE_INLINE aware of DISABLE_INLINING. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4893 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:53:16 +00:00
terminx 70cd0d2425 Detect running under Wine. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4892 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:53:01 +00:00
terminx 16b9b19e53 Identify Windows 10 in the startup window/log. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4891 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:52:45 +00:00
terminx c591711fe8 MSVC C++ build fixes. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4890 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:52:15 +00:00
terminx 16b617114c Replace hightile grayscale method (usually combined with tints to produce
replacements for the first handful of palette lookups) w8th superior
"luma" method. DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4889 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:51:41 +00:00
terminx 9ab6ab7139 Fix up weapon switching deficiencies
git-svn-id: https://svn.eduke32.com/eduke32@4888 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-11 04:51:17 +00:00
hendricks266 0699a44e4e When using search paths detected from a Megaton installation, also use the SC-55 oggs included with it.
git-svn-id: https://svn.eduke32.com/eduke32@4887 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-08 15:15:10 +00:00
hendricks266 e3de98e2ae Clean up autodetected game install search paths on all platforms that use them.
This should prevent Lunar Apocalypse from becoming Nuclear Winter with Megaton on Linux and Mac.

git-svn-id: https://svn.eduke32.com/eduke32@4886 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-08 15:14:47 +00:00
hendricks266 1f3ce84585 Menus: Disable the spinning nuke icon back button on Android.
git-svn-id: https://svn.eduke32.com/eduke32@4885 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-08 15:14:18 +00:00
hendricks266 589c993c39 Implement UserMapHacks.
git-svn-id: https://svn.eduke32.com/eduke32@4884 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-08 15:14:00 +00:00
hendricks266 3f846bdde3 Reinstate MD4.
git-svn-id: https://svn.eduke32.com/eduke32@4883 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-08 15:13:28 +00:00
helixhorned 26683d5bfe engine.c: fix clipmove() against upper part of wall-aligned sprites.
git-svn-id: https://svn.eduke32.com/eduke32@4882 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-06 20:54:49 +00:00
helixhorned 5c4f9b1f14 engine.c: on non-touch devices, roughly double maximum voxel drawing distance.
By setting DISTRECIPSIZ to 131072, as far as I can see the absolute maximum
that's possible with the integer scaling convention of the voxel drawing code.

BUILD_LUNATIC.

git-svn-id: https://svn.eduke32.com/eduke32@4881 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-06 19:56:44 +00:00
helixhorned b5bb86b8e2 Mapster32: make sprite duplication examples in m32script_ex.map work again.
- Work around a sequencing issue (assignment of searchstat) in
  M32_DrawRoomsAndMasks()
- When having sprites highlighted and changing shade, since r1943 change
  every highlighted sprite's shade if one of them is aimed at. With this
  revision, if SHIFT is pressed while doing that, only change the aimed at
  sprite's shade
- a.m32: Use 'break' from a state instead of 'return'. The former may be
  "sticky" in a way that is not intended. Needs to be debugged later.
- Update instructions in m32script_ex.map

DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4880 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-06 19:56:41 +00:00
helixhorned a9cb38dbcf game.c: revert changes of r4861 ("consult g_mirrorCount instead of gotpic[]").
git-svn-id: https://svn.eduke32.com/eduke32@4879 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-05 21:54:31 +00:00
helixhorned 8f1df579e1 Lunatic: in control/lua, sync ALLOWED_VIEWTYPE with change from r4814 (allow 2).
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4878 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-05 21:54:28 +00:00
helixhorned 431941771d engine.c: prevent multiple collection of same sector in scansector().
Also for polymost_scansector(). These were likely of little consequence
because collection in scansector() is the exception than the rule (see
added comments), and because the redundant drawwalls() would find the
x range done the second and following times.

Also, add a bound check for sectorborder[] (the limit was probably rarely
hit in practice, but the check is mandatory nontheless) and add functions
printscans() and printbunches() in the DEBUGGINGAIDS=2 build.

git-svn-id: https://svn.eduke32.com/eduke32@4877 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-04 18:45:03 +00:00
helixhorned bc35a5c8d2 engine.c: in drawmasks(), remove sorting sprites by statnum.
There were various issues with that code.
 - It does not seem to be very meaningful to do so.
 - It was carried out on the same range as the sprites sorted by z coordinate
   (those with equal x/y) just a few lines away, effectively overriding it.
   The former is very meaningful, though.
 - It led to inconsistencies between editor and game, see
   http://forums.duke4.net/topic/775-eduke32-20-and-polymer/page__view__findpost__p__214873

git-svn-id: https://svn.eduke32.com/eduke32@4876 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-04 18:45:01 +00:00
helixhorned 17fab4d8ac Cleanup of various engine functions.
- factor out calculation of player-relative and screen+clipped-player-relative
  coordinates into get_rel_coords() and get_screen_coords(), respectively
- the usual beautification stuff, especially since we're now on C99

git-svn-id: https://svn.eduke32.com/eduke32@4875 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-04 18:45:00 +00:00
helixhorned b0c48eec25 CON: always return non-negative values from 'clipmove' and related.
Previously, the C function clipmove() returned negative values when hit a
wall (32768+wallnum) or sprite (49152+spritenum) because internally,
these values were encoded into a *signed* 16-bit integer. This made no
difference to C code using it, since it always proceeded by bit checks,
but was inconsistent with documentation on CON 'clipmove' on the wiki.

The following commands are affected too, since they use the value returned
by clipmove(): 'clipmovenoslide', 'movesprite'. Also, the value of
actor[].movflag ('htmovflag' from CON).

Also, fix 'clipmove*' in LunaCON and add lunatic/test/checknearwall.con
as an example of how to implement a being-close-to-a-wall checker as
requested in
http://forums.duke4.net/topic/7869-determining-closeness-to-a-wall/

git-svn-id: https://svn.eduke32.com/eduke32@4874 1a8010ca-5511-0410-912e-c29ae57300e0
2015-01-04 18:44:58 +00:00
helixhorned 2daa44ca6a engine.c: fix clipmove() against floor-aligned sprites.
Introduced in r3207. Oops.

git-svn-id: https://svn.eduke32.com/eduke32@4873 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-30 20:05:22 +00:00
helixhorned 5f263f1358 engine.c: prevent an oob read of spriteext[] in drawsprite_classic().
git-svn-id: https://svn.eduke32.com/eduke32@4872 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-30 20:05:20 +00:00
helixhorned 61f7c9e30f sounds.c: don't crash S_PlayMusic() if passed null pointer for 'fn'.
This may happen if no title/end music is defined from CON.
Thanks to Zaxtor for the bug report.

git-svn-id: https://svn.eduke32.com/eduke32@4871 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 22:12:40 +00:00
hendricks266 d73c7f1afe Menus: Amend r4862 so that touch devices, which do not display the crosshair as a cursor, are not completely prevented from using touch input by the lack of a crosshair tile.
git-svn-id: https://svn.eduke32.com/eduke32@4870 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 21:36:09 +00:00
hendricks266 fcbd0737bb Menus: Fix the Screen Size slider so that it works properly after the screen size has been modified in-game with [-]/[+].
git-svn-id: https://svn.eduke32.com/eduke32@4869 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 21:35:56 +00:00
hendricks266 aa9f767052 Menus: Fix selecting "None" for Anisotropy.
git-svn-id: https://svn.eduke32.com/eduke32@4868 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 21:35:44 +00:00
hendricks266 3bc47565a3 Menus: Fix opening a MenuEntryOptionList when the option's value is "Custom".
git-svn-id: https://svn.eduke32.com/eduke32@4867 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 21:35:32 +00:00
hendricks266 6797e8a3d5 Menus: Convert MenuRange*_t's "displaytype" field to "flags", add a flag to enforce clamping to the defined intervals, and apply this flag to the Screen Size slider.
git-svn-id: https://svn.eduke32.com/eduke32@4866 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 21:35:20 +00:00
hendricks266 a74317a104 Menus: When pressing left or right on a slider that has moved by the mouse to a position between the defined intervals, do not round to the nearest interval and then increment or decrement. Instead, check if rounding will satisfy the movement before moving further.
git-svn-id: https://svn.eduke32.com/eduke32@4865 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 21:35:07 +00:00
hendricks266 571a44cd8d Menus: Mouse controls now respect MenuEntry_t's disabled flag.
git-svn-id: https://svn.eduke32.com/eduke32@4864 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 21:34:54 +00:00
helixhorned d7b88df6af actors.c: replace hard-coded list with missing check for SFLAG_NODAMAGEPUSH.
In A_RadiusDamage(). The code snippet that is disabled for such actors
increases the damaged actor's .xvel by (4 times the) damage amount and
is responsible for the strange effect of enemies becoming faster TOWARDS
the player on being hit with an RPG frontally.

Thanks to Fox for a keen eye.

git-svn-id: https://svn.eduke32.com/eduke32@4863 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 20:57:13 +00:00
helixhorned 7033205fcf Menus: disable mouse pointer if CROSSHAIR is void. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4862 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 19:48:20 +00:00
helixhorned 1734e0db53 In G_HandleMirror(), consult g_mirrorCount instead of gotpic[] w/ MIRROR.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4861 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 15:40:06 +00:00
helixhorned c320dba4d0 Lunatic translator: add stand-alone option -fnames, generating names.h file.
git-svn-id: https://svn.eduke32.com/eduke32@4860 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-28 15:40:04 +00:00
hendricks266 ec3a73efd2 Fix playing end-of-episode ANMs.
git-svn-id: https://svn.eduke32.com/eduke32@4859 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 20:39:43 +00:00
hendricks266 4bc4735480 If you save over an autonamed savegame and change the name, don't overwrite your edit with another autofill.
git-svn-id: https://svn.eduke32.com/eduke32@4858 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 20:39:30 +00:00
hendricks266 8a68f2d5a9 Menus: Enumify the "status" parameter of M_MenuText into MenuTextFlags_t.
git-svn-id: https://svn.eduke32.com/eduke32@4857 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 18:37:39 +00:00
hendricks266 7a1e94440a Menus: Implement mouse/touch/pointer controls for all widgets.
git-svn-id: https://svn.eduke32.com/eduke32@4856 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 18:37:27 +00:00
hendricks266 6ac1850482 Menus: Replace the "disabled" member of MenuEntry_t with "flags" so that the other 31 bits can be utilized.
git-svn-id: https://svn.eduke32.com/eduke32@4855 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 18:37:12 +00:00
hendricks266 4f9831d45c Menus: Disable normal left-click/touch menu functionality when the mouse is active.
git-svn-id: https://svn.eduke32.com/eduke32@4854 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 18:36:58 +00:00
hendricks266 598e33319c Add the necessary plumbing to sdlayer to detect mousedown, mouseup, and dragging.
git-svn-id: https://svn.eduke32.com/eduke32@4853 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 18:36:43 +00:00
hendricks266 bfb3614b92 Introduce preprocessor token EDUKE32_TOUCH_DEVICES that covers both Android and iOS, and replace selected instances of __ANDROID__ with it.
git-svn-id: https://svn.eduke32.com/eduke32@4852 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 18:36:14 +00:00
hendricks266 b010dfd2ee Menus: Add scrollbars to the FileSelect menu type.
git-svn-id: https://svn.eduke32.com/eduke32@4851 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 18:35:48 +00:00
hendricks266 1c3043bf50 Tabs to spaces in menus.c.
git-svn-id: https://svn.eduke32.com/eduke32@4850 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 18:35:34 +00:00
hendricks266 399c062326 Refactor menus in preparation for touch functionality.
git-svn-id: https://svn.eduke32.com/eduke32@4849 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 18:35:21 +00:00
helixhorned cb45393b3a Mapster32: disable all loop checks as they spam the log too much. DONT_BUILD.
The one introduced with r4569.

git-svn-id: https://svn.eduke32.com/eduke32@4848 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 17:17:53 +00:00
helixhorned 2494c56768 Propagate 'smoothratio' to scenes drawn from the position of a camera.
That is, make interpolation work properly there -- both when 'using' a
VIEWSCREEN and when rendering the scene onto a TILE_VIEWSCR. This makes
a difference only if the camera is in a moving sector.

git-svn-id: https://svn.eduke32.com/eduke32@4847 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 17:17:52 +00:00
helixhorned 33addad941 Minor cleanup, mostly in engine.c:drawalls().
git-svn-id: https://svn.eduke32.com/eduke32@4846 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-27 17:17:50 +00:00
helixhorned 8024273aca Prettify viewscreen turned to STATIC in breakable cameras mode. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4845 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 18:05:41 +00:00
helixhorned f3532f8a34 C-CON: fix 'writearraytofile' for 64-bit platforms.
git-svn-id: https://svn.eduke32.com/eduke32@4844 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 17:30:01 +00:00
helixhorned 51fe706907 Tweak the behavior of viewscreens to what is more logical IMO.
- At a given time, at most one viewscreen may display TILE_VIEWSCR, namely
  that one which is g_curViewscreen
- sync kinds of distance to compare against VIEWSCREEN_ACTIVE_DISTANCE (was
  Manhattan vs. dist(), now both the latter)
- fix resetting to VIEWSCREEN tile when player is greater from it than that
  distance. When the player is closer to it again, it is *not* reset to
  TILE_VIEWSCR.
- more sync'd g_curViewscreen and sprite[i].yvel (for 'i' being the viewscreen
  sprite)

Note: in a multiplayer context, this needs to be thought about once more.

git-svn-id: https://svn.eduke32.com/eduke32@4843 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 17:30:00 +00:00
helixhorned 843894dd57 engine.c: clamp all indices for distrecip[] access, as more OOBs were observed.
git-svn-id: https://svn.eduke32.com/eduke32@4842 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 17:29:59 +00:00
helixhorned a1091233d2 CON: allow passing more than one flag to the 'spriteflags' directive.
These will be bitwise-OR'd.

git-svn-id: https://svn.eduke32.com/eduke32@4841 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 17:29:58 +00:00
helixhorned 2eff7bf6ce gamedef.c: factor out some dup'd code into C_BitOrNextValue(), C_FinishBitOr().
git-svn-id: https://svn.eduke32.com/eduke32@4840 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 17:29:57 +00:00
helixhorned b2e09b5a18 In C-CON build, prevent leak of gamevar/gamearray labels on savegame loading.
Also, rewrite the loops in Gv_Free() and Gv_Clear() in the plain fashion so
that they are correct even if the number of gamearrays exceeds the number of
gamevars.

git-svn-id: https://svn.eduke32.com/eduke32@4839 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 17:29:56 +00:00
helixhorned 7da543e4f0 cache1d.c: Revert changes in r4665 unrelated to unrolling, fixing oob write.
Specifically, we must make sure that dasizeof <= LZWSIZE (or so) in
c1d_{read,write}_compressed() (what the assertion in the last commit was about,
and is now redundant). This fixes saving of e.g. large gamearrays with the C-CON
build. Bump BYTEVERSION.

An alternative for setting dasizeof to 1 would be to factor it and keep dividing
as long as it's > LZWSIZE.

git-svn-id: https://svn.eduke32.com/eduke32@4838 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 17:29:55 +00:00
helixhorned b7805868f7 cache1d.c: in (de)compr. funcs, add an bound-checking assert that fails w/ AMC TC.
Also, formatting.

git-svn-id: https://svn.eduke32.com/eduke32@4837 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 17:29:54 +00:00
helixhorned 584ed7982a Convert voxels to models only when starting or changing to Polymost.
Analogously to the way models are processed in a deferred manner for Polymer.

git-svn-id: https://svn.eduke32.com/eduke32@4836 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 17:29:53 +00:00
helixhorned bd93fd2aab A couple of miscellaneous cleanups.
defs.c: sync some dup'd code for 'definevoxel' and 'voxel' DEF tokens.
engine.c: factor out PolymerProcessModels().

git-svn-id: https://svn.eduke32.com/eduke32@4835 1a8010ca-5511-0410-912e-c29ae57300e0
2014-12-26 17:29:52 +00:00