Commit Graph

453 Commits

Author SHA1 Message Date
plagman 2751ea0c5d Works around a bug with newer NVIDIA GL drivers where creating a GL context
would remove write access to our code sections.

bugs 3086185 and 3104646



git-svn-id: https://svn.eduke32.com/eduke32@1724 1a8010ca-5511-0410-912e-c29ae57300e0
2010-11-08 04:56:10 +00:00
helixhorned a38307a54f Fixes quite a few nasty bugs with the new clipping code, including the crash. Clip shapes are now loaded from _clipshape0.map through _clipshape9.map (no break like when loading tiles, just see if each is present). Mapster32: insert some safety code for sprites with sectnum<0. Because this is still a bad thing, have the m32script corruption checker catch this and run it periodically from EVENT_DRAW2DSCREEN. Also draw such sprites in 2D mode with a blood-red color, and make them draggable. Remove set[sector,wall,sprite] commands.
git-svn-id: https://svn.eduke32.com/eduke32@1722 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-31 19:54:03 +00:00
helixhorned 4fa07ed4af New sprite clipping for hitscan; crude debugging code for tracing down the crash that Commander is getting and I can reproduce only in real Windows with the synthesis build.
git-svn-id: https://svn.eduke32.com/eduke32@1721 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-30 20:32:06 +00:00
helixhorned 998bdb3a8b Fix crash. Reason was obsolete code.
git-svn-id: https://svn.eduke32.com/eduke32@1720 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-29 12:51:10 +00:00
helixhorned f1caa980d0 Sector-like sprite clipping. Check samples/spriteclip.txt.
git-svn-id: https://svn.eduke32.com/eduke32@1719 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-28 20:17:22 +00:00
helixhorned 47be9ff8ce Temporarily replace drawpixels by a bounds-checked version in engine.c.
git-svn-id: https://svn.eduke32.com/eduke32@1718 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-24 21:52:21 +00:00
helixhorned b126f6f6c8 Don't reset extra tags before loading map in Mapster32.
git-svn-id: https://svn.eduke32.com/eduke32@1717 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-22 23:12:59 +00:00
plagman a925d39273 SDL and menu joystick fixes by NY00123 (thanks!).
git-svn-id: https://svn.eduke32.com/eduke32@1716 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-21 02:20:40 +00:00
Plagman e0588e4a70 Pull in backtrace.c (pre-compiled as backtrace.dll and MinGW dependencies) from http://code.google.com/p/backtrace-mingw. When running debugging snapshots, this will print out a helpful backtrace in eduke32.crashlog. I had to disable stack protectors for debug builds as this was pulling in a dependency that I assume most people won't have. If anyone feels like merging that code into EDuke32 itself and find a way to remove the ugly libintl dependencies, be my guest. In the meantime, sorry for the awful commit.
git-svn-id: https://svn.eduke32.com/eduke32@1715 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-19 05:42:21 +00:00
plagman ee6548e6a9 Link debug builds with -rdynamic in order to get symbol names when printing backtraces from the signal handler.
git-svn-id: https://svn.eduke32.com/eduke32@1713 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-19 03:41:32 +00:00
helixhorned e0874390ff New aspect determination code for classic/Polymost, controlled with r_usenewaspect and r_screenaspect cvars; print stack traces with SDL/GCC; change signature of app_main in game.c to match declarations found in other places and return different positive values on init error.
git-svn-id: https://svn.eduke32.com/eduke32@1712 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-17 14:49:39 +00:00
helixhorned cb321a9d76 New CON command 'clipmovenoslide', doing the same as clipmove but stopping at collisions before sliding calculations. Fixes a problem with Mapster32 where names.h was tried to be read before setting up the search path.
git-svn-id: https://svn.eduke32.com/eduke32@1711 1a8010ca-5511-0410-912e-c29ae57300e0
2010-10-09 22:59:17 +00:00
helixhorned 036a88736c Mapster32: make sector keep old firstwall when adding inner loop, rewrite setfirstwall to use malloc'ed memory for temp storage instead of end of sector[], reintroduce correct searchwall determination in Polymer mouse picker (intersection of xy projection of aiming ray with wall); added commands to m32script: shiftvarvar[lr], ifhighlighted, ifin3dmode, updatehighlight, sethighlight; coded prototype terrain helper based on isolines and triangle strips.
git-svn-id: https://svn.eduke32.com/eduke32@1710 1a8010ca-5511-0410-912e-c29ae57300e0
2010-09-30 23:05:40 +00:00
helixhorned 91250f081c New CON commands:
* sectsetinterpolation <sector>
 * sectclearinterpolation <sector>
 * clipmove <<ret>> <<x>> <<y>> <z> <<sectnum>> <xvect> <yvect> <walldist> <floordist> <ceildist> <clipmask>
 * lineintersect  <x1> <y1> <z1>  <x2> <y2> <z2>  <x3> <y3>  <x4> <y4>  <<intx>> <<inty>> <<intz>> <<ret>>
 * rayintersect <x1> <y1> <z1>  <xv> <yv> <zv>  <x3> <y3>  <x4> <y4>  <<intx>> <<inty>> <<intz>> <<ret>>
 * calchypotenuse <<ret>> <x> <y>
(all except *interpolation also in m32script). Also fixes Sect_ClearInterpolation to be symmetrical to its Set counterpart (shouldnt change anything since it was unused). Added "-conversion YYYYMMDD" switch for keyword-compatibility with old mods.
Mapster32: invisible sprite preview with Quote-i.

git-svn-id: https://svn.eduke32.com/eduke32@1708 1a8010ca-5511-0410-912e-c29ae57300e0
2010-09-27 21:52:04 +00:00
helixhorned fec84e6dbb mapster32 fixes: aiming crash in polymer, more accurate aiming in polymost + calibration/replacement crosshair via "r_preview_mouseaim", 2 other crashes; fix "S" in tile selector, make read-only variable overridable with "script_expertmode", misc. beautifying.
git-svn-id: https://svn.eduke32.com/eduke32@1706 1a8010ca-5511-0410-912e-c29ae57300e0
2010-09-06 23:08:35 +00:00
terminx a7c95286c2 msvc compile fix
git-svn-id: https://svn.eduke32.com/eduke32@1705 1a8010ca-5511-0410-912e-c29ae57300e0
2010-09-01 02:35:36 +00:00
plagman ed17c7af80 Re-tie initial SDL mouse grabbing to DEBUGGINGAIDS.
git-svn-id: https://svn.eduke32.com/eduke32@1704 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-26 15:27:57 +00:00
plagman 1d28272c4a Correctly (I hope) handle the zoom argument of rotatesprite when drawing HUD models in Polymer.
git-svn-id: https://svn.eduke32.com/eduke32@1703 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-26 15:27:16 +00:00
plagman 3d31f645fb Add a few debug cvars for development purposes.
git-svn-id: https://svn.eduke32.com/eduke32@1702 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-26 15:24:12 +00:00
helixhorned 399a822fd7 Fixes various issues with selecting: sectors and duplicating them many times in a row, sprites and then deleting some of them (also adds set union ['] and difference [;] to RSHIFT); adds the ability to move all selected sprites in the XY plane in 3d mode with SHIFT-LMB and align to the grid in an absolute fashion with CTRL.
git-svn-id: https://svn.eduke32.com/eduke32@1701 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-26 13:50:09 +00:00
plagman f5bd9e4ac5 Fix wrong interpretation of SPREXT_NOTMD that would cause it to assume the flag was set whenever any flag was set, causing the models to switch on and off in Duke Plus with Polymer.
git-svn-id: https://svn.eduke32.com/eduke32@1700 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-21 19:04:37 +00:00
plagman 99415a625f Polymost-style HUD model support for Polymer. It properly displays all HRP HUD models as far as I can tell.
git-svn-id: https://svn.eduke32.com/eduke32@1699 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-21 07:39:12 +00:00
helixhorned 917b924a0d Fixes crash in 2d map drawing where sector[-1] was accessed; added commands a2xy and ah2xyz to m32script, coded 2d preview of swinging and sliding doors; added "samprate" setting to configuration, useful if the default one gives jittering/echoey audio
git-svn-id: https://svn.eduke32.com/eduke32@1697 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-17 20:00:44 +00:00
helixhorned b2988abb54 Search for named tile in tile selector ('S'); various bugfixes (among other things with PR-override vars)
git-svn-id: https://svn.eduke32.com/eduke32@1696 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-16 13:56:49 +00:00
helixhorned c354695d60 bugfixes; mark tiles in tile selector for later grouping (press SPACE on a tile); a.m32: convert to CRLF and add [xyz]vel query in 3d mode (Alt-KP1), also different keys for Polymer override var tweaking; some CRLF->LF in LF-only files.
git-svn-id: https://svn.eduke32.com/eduke32@1695 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-14 21:32:28 +00:00
terminx 9ca26d9736 don't link build utils to all the libs needed for the actual engine itself
git-svn-id: https://svn.eduke32.com/eduke32@1694 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-13 06:45:38 +00:00
helixhorned 5e3d6ca527 Makefile cleanups: fixed building with GCC 3, made tabs into spaces where outside command context; Windows: make startup window stay 3 seconds if there was an error -- this way you won't mistake yourself forgetting to copy game data for a crash *d'oh*
git-svn-id: https://svn.eduke32.com/eduke32@1693 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-12 21:06:51 +00:00
helixhorned 6185aedded Fixes compilation for now. Now if my executable would start...
git-svn-id: https://svn.eduke32.com/eduke32@1692 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-12 13:38:37 +00:00
helixhorned 71e59a5502 A bunch of m32script additions, fixes and general stuff, among them: local vars/arrays, inline quotes and prettier error messages.
git-svn-id: https://svn.eduke32.com/eduke32@1691 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-11 22:37:45 +00:00
terminx ca382a894a Remove detection of sprites outside of sectors at map load and fix green sprites in Mapster32 with Polymer
git-svn-id: https://svn.eduke32.com/eduke32@1689 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-07 23:15:35 +00:00
helixhorned fff9bbadd9 added m32_autoexec.cfg execution on startup of mapster32 (like autoexec.cfg for the game); in 3d mode: shift-pgup/pgdn -> alt-pgup/pgdn for 2-sided walls
git-svn-id: https://svn.eduke32.com/eduke32@1682 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-03 17:45:44 +00:00
plagman d9092fcd2b Implement 'away1' and 'away2' maphacks in Polymer.
git-svn-id: https://svn.eduke32.com/eduke32@1681 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-03 15:19:01 +00:00
plagman 10830a7f3f Respect the 'notmd' maphack when deciding to draw models in Polymer.
git-svn-id: https://svn.eduke32.com/eduke32@1680 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-03 15:06:24 +00:00
helixhorned a1a5f9cb5a Partially fixes bug #3034382 and a few other ones.
git-svn-id: https://svn.eduke32.com/eduke32@1679 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-02 18:59:59 +00:00
terminx a7eb0418d1 Global thermonuclear code rape
git-svn-id: https://svn.eduke32.com/eduke32@1677 1a8010ca-5511-0410-912e-c29ae57300e0
2010-08-02 08:13:51 +00:00
terminx e1649ec722 Polymer performance improvement and some game related bug fixes. Improves Polymer framerate by about 25% in most cases and fixes problems causing Duke Caribbean doors to malfunction.
git-svn-id: https://svn.eduke32.com/eduke32@1676 1a8010ca-5511-0410-912e-c29ae57300e0
2010-07-26 22:36:45 +00:00
plagman abbe41e97d Reorganize a little code so that lightmaps can be used when a spotlight isn't currently casting a shadow. This fixes the problem where the window lights in the E1L1 apartment secret would jump between square and circle-shaped depending on the shadowcount and the view angle.
git-svn-id: https://svn.eduke32.com/eduke32@1674 1a8010ca-5511-0410-912e-c29ae57300e0
2010-07-25 02:16:22 +00:00
terminx 1102b74a35 mostly multiplayer fixes among other things
git-svn-id: https://svn.eduke32.com/eduke32@1672 1a8010ca-5511-0410-912e-c29ae57300e0
2010-07-19 15:14:00 +00:00
terminx 7be36ebcd4 fix some crap
git-svn-id: https://svn.eduke32.com/eduke32@1666 1a8010ca-5511-0410-912e-c29ae57300e0
2010-07-05 01:45:29 +00:00
terminx 013ac85e2d Emit RPG_EXPLODE, PIPEBOMB_EXPODE and LASERTRIP_EXPLODE from the actual EXPLOSION2 sprite instead of whatever spawned EXPLOSION2, to prevent the sound from being owned by whatever sprite happens to spawn with the ID the RPG/pipebomb/whatever had before it was removed
Add brightness/gamma/contrast cvars to Mapster32

Fix bug with WEAPON_SEMIAUTO flag for custom weapons

Fix VM error with starttrack when specifying an invalid music track

Fix detection of 0x1a EOF characters in CON files

Fix a couple of additional sound issues

Fix crash in pushmove()

Fix Mapster32 textured 2D mode display being a few pixels off from the actual lines drawn

Fix crash when clicking "cancel" in Mapster32 startup window

Add Makefile detection to build with -march=pentium3 -mtune=generic on i686


git-svn-id: https://svn.eduke32.com/eduke32@1665 1a8010ca-5511-0410-912e-c29ae57300e0
2010-07-03 08:53:57 +00:00
plagman a346acfccb Make the "Start" button of the GTK start-up window the default button of the window, which means pressing Enter now works at you'd expect.
git-svn-id: https://svn.eduke32.com/eduke32@1664 1a8010ca-5511-0410-912e-c29ae57300e0
2010-07-02 01:26:56 +00:00
helixhorned 386c50d41c SDL/non-Windows: external midi playing with fork/exec and signals; double initprintf internal buffers since they got too long for the --help text; warn on replacing empty tile with a hightile; fix a keypad issue in Mapster32
git-svn-id: https://svn.eduke32.com/eduke32@1663 1a8010ca-5511-0410-912e-c29ae57300e0
2010-06-27 10:08:58 +00:00
terminx 0b5de0800a Final round (I hope!) of sound fixes. Should also fix the crash on exit on Windows and the REACTOR sprite size bug.
git-svn-id: https://svn.eduke32.com/eduke32@1662 1a8010ca-5511-0410-912e-c29ae57300e0
2010-06-26 08:51:42 +00:00
helixhorned 1905a1cf02 m32script: infinite loop safety halt (send a SIGINT), saved input history, states can be invoked without "state" keyword when in OSD
git-svn-id: https://svn.eduke32.com/eduke32@1661 1a8010ca-5511-0410-912e-c29ae57300e0
2010-06-25 23:01:54 +00:00
terminx 068d3c0e52 This is mostly just build fixes for USE_OPENGL=0, POLYMOST=0 and POLYMER=0. Also updated the precompiled libogg/libvorbis/libvorbisfile that are supplied for MinGW.
git-svn-id: https://svn.eduke32.com/eduke32@1660 1a8010ca-5511-0410-912e-c29ae57300e0
2010-06-23 04:20:46 +00:00
terminx 9143833fc8 rotatesprite and multivoc have a rape baby
No, seriously.  Adds widescreen aware rotatesprite and works out half a dozen huge problems in the sound system, among other things.


git-svn-id: https://svn.eduke32.com/eduke32@1658 1a8010ca-5511-0410-912e-c29ae57300e0
2010-06-22 21:50:01 +00:00
terminx 4c3c64286a shading changes and fixes for a few crashes
git-svn-id: https://svn.eduke32.com/eduke32@1657 1a8010ca-5511-0410-912e-c29ae57300e0
2010-06-07 09:03:16 +00:00
terminx d76817a361 Fix a couple of stupid typos and remove some dead code from Mapster32
git-svn-id: https://svn.eduke32.com/eduke32@1656 1a8010ca-5511-0410-912e-c29ae57300e0
2010-05-29 05:03:02 +00:00
helixhorned ad0284b00c check limits in more places when drawing walls in 2d mode.
git-svn-id: https://svn.eduke32.com/eduke32@1655 1a8010ca-5511-0410-912e-c29ae57300e0
2010-05-28 23:08:32 +00:00
terminx ac7767986a Updated synthesis script, moved some non-essential files around, updated license headers on all non-BUILDLIC files, added memory cache on top of texcache to improve load times, moved some duplicated keyboard handling stuff from winlayer/sdlayer to baselayer, fixed keypad / in Mapster32 tile selector, fixed bug where p->rotscrnang and p->look_ang never reset to 0, added support for reloading maphack based polymer lights after mode changes/savegame loads, other minor changes
git-svn-id: https://svn.eduke32.com/eduke32@1652 1a8010ca-5511-0410-912e-c29ae57300e0
2010-05-25 10:56:00 +00:00