Commit graph

4805 commits

Author SHA1 Message Date
terminx
ecb11010ef Fix warnings in texcache
git-svn-id: https://svn.eduke32.com/eduke32@4669 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:32:57 +00:00
terminx
088808eb3e Mapster32 build fix
git-svn-id: https://svn.eduke32.com/eduke32@4668 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:32:42 +00:00
terminx
c8ea7baf72 set_globalpos(), updates both integer (globalposx/y/z) and float (fglobalposx/y/z) representations of the current camera view position. Storing the float representation pre-converted saves us from the delay incurred on ARM when converting an integer and transferring it to the FPU, though this delay is mostly negated already by using the hardfp ABI.
git-svn-id: https://svn.eduke32.com/eduke32@4667 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:32:26 +00:00
terminx
5897c844d2 Minor texcache cleanup. Nukes the hilarious MAXTILES<<1 sized array of pointers in the global texcache struct.
git-svn-id: https://svn.eduke32.com/eduke32@4666 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:32:01 +00:00
terminx
0cf527914f Minor optimizations (loop unrolling) to LZW functions in cache1d, improves throughput ~20% on my i7
git-svn-id: https://svn.eduke32.com/eduke32@4665 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:31:41 +00:00
terminx
d74a6a7e5d Fix some dumbass warnings I caused
git-svn-id: https://svn.eduke32.com/eduke32@4664 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:31:27 +00:00
terminx
683a4fb728 Nuke unused lzwnew.c/h
git-svn-id: https://svn.eduke32.com/eduke32@4663 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:31:12 +00:00
terminx
36e2aa01cd if 0 the input check at the beginning of animation playback as it seems to cause some cutscenes to be skipped.
git-svn-id: https://svn.eduke32.com/eduke32@4662 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:30:51 +00:00
terminx
cbe91be9ff Additional engine cleanups and optimizations. About as generic as it sounds. Also changes internal dummytile/tilefromtexture behavior so that the LZ4 compressed version of a texture is kept and the cache1d entries associated with the tiles can expire, like any other tile.
git-svn-id: https://svn.eduke32.com/eduke32@4661 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:30:38 +00:00
terminx
019315dd59 Rewrite OSD_Exec() to allow executing a .cfg that lives in a .grp or .zip. Use _IOLBF instead of _IONBF for the log in release builds.
git-svn-id: https://svn.eduke32.com/eduke32@4660 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:29:53 +00:00
terminx
508595cac8 Fix a couple of botched FindDistance3D calls
git-svn-id: https://svn.eduke32.com/eduke32@4659 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:29:38 +00:00
terminx
6c6b68d534 Various additional optimizations: add CLASSIC_SLICE_BY_4 mode to unroll some of the loops in a-c, replace integer divisions by a divisor unknown at compile time with usage of libdivide, clean up pragmas further by removing more old stuff that wasn't used anywhere. This is another one of those nasty commits that make people cry. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4658 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:29:21 +00:00
terminx
6f332e645d Fix r4643, NUM_HARDCODED_ANIMS was increased for a reason. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4657 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:27:50 +00:00
terminx
020dc85fd0 Additional Polymost cleanup, attempt to fix enemy shadows (they are still not right)
git-svn-id: https://svn.eduke32.com/eduke32@4656 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:27:35 +00:00
terminx
06a0350af0 Fix a bug where if you had a savegame with an active viewscreen, the tile in the world wouldn't update until totalclock > what totalclock was when the game was saved.
git-svn-id: https://svn.eduke32.com/eduke32@4655 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:27:13 +00:00
terminx
b7b0b2c7ba Fix up some incorrect PWEAPON macro usage
git-svn-id: https://svn.eduke32.com/eduke32@4654 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:27:01 +00:00
terminx
3a60abfb94 Nuke MFLAGS_NOCONV, hoist a few conditions out of loops in Polymost model drawing
git-svn-id: https://svn.eduke32.com/eduke32@4653 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:26:46 +00:00
terminx
73ecabaff9 Fix z fighting issues with wall and floor sprites. This isn't perfect, and somebody like Plgman or Helixhorned who better understands how the depth buffer positions are calculated will be able to do a much better determination of how much to offset the glDepthRange values based on distance to the sprite.
git-svn-id: https://svn.eduke32.com/eduke32@4652 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:26:31 +00:00
terminx
dedadcb76e That's one hell of a typo
git-svn-id: https://svn.eduke32.com/eduke32@4651 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:26:13 +00:00
terminx
3eaf78da8b Tie a few random things previously hardcoded to p->curr_weapon == KNEE_WEAPON to curr_weapon being a weapon with a workslike of KNEE_WEAPON instead, and do the same with stuff hard coded for HANDREMOTE_WEAPON
git-svn-id: https://svn.eduke32.com/eduke32@4650 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:25:57 +00:00
terminx
57cc3fe82a Clean up GL background tinting a little bit. Remove access to glRectd in favor of glRecti.
git-svn-id: https://svn.eduke32.com/eduke32@4649 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-25 03:25:35 +00:00
hendricks266
62b37ddb68 Further work on the Xcode project.
git-svn-id: https://svn.eduke32.com/eduke32@4648 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-20 07:37:29 +00:00
hendricks266
8771614f87 Fix the Wii build and clean up remaining warnings. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4647 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-19 00:44:23 +00:00
hendricks266
6ff363a049 OS X: Add a preliminary Xcode project. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4646 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-18 04:50:47 +00:00
hendricks266
f46d901fe2 Fix warnings in menus.c. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4645 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-16 22:21:00 +00:00
hendricks266
295cf82323 Clean up warnings and build issues when building under OS X 10.9. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4644 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-16 21:03:24 +00:00
helixhorned
ff7d664d1e Fix an oob access in parsedefinitions_game(). DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4643 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-05 18:32:59 +00:00
terminx
706aec5527 Rename crc32() to Bcrc32() to avoid conflicts with the crc32() function in libpng/libz. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4642 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-01 17:09:54 +00:00
terminx
81e9761e50 Set SDL_GL_ACCELERATED_VISUAL to 1
git-svn-id: https://svn.eduke32.com/eduke32@4641 1a8010ca-5511-0410-912e-c29ae57300e0
2014-10-01 17:09:24 +00:00
terminx
9a04065b5e I'm retarded. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4640 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 18:18:15 +00:00
terminx
4263626f97 Misc additional optimizations, mostly to polymost/mdsprite. Also separate voxmodel into its own source file and object. This commit is pretty large because I was hitting the limit of what could realistically be carved up into smaller patches. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4639 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:18:43 +00:00
terminx
2631da8822 Fix usage of uninitialized value
git-svn-id: https://svn.eduke32.com/eduke32@4638 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:18:07 +00:00
terminx
cb02cdc571 Re-use temporary buffer for tilefromtexture true color -> paletted conversion and free when finished with the .def instead of freeing and re-allocating for every tile
git-svn-id: https://svn.eduke32.com/eduke32@4637 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:17:53 +00:00
terminx
ff74aa613e polymost_invsqrt(), reorganize pthtyp for better member alignment
git-svn-id: https://svn.eduke32.com/eduke32@4636 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:17:37 +00:00
terminx
0f5be25a68 Faster C versions of ksgn() and klabs()
git-svn-id: https://svn.eduke32.com/eduke32@4635 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:17:22 +00:00
terminx
2d0c76e1a9 kplib optimizations and cleanup; faster versions of some functions, #ifdef out support for a couple of useless formats
git-svn-id: https://svn.eduke32.com/eduke32@4634 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:17:06 +00:00
terminx
a46994a668 I thought I was clever, MinGW thought I should eat shit.
git-svn-id: https://svn.eduke32.com/eduke32@4633 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:16:47 +00:00
terminx
7c79d2ce80 Blrintf
git-svn-id: https://svn.eduke32.com/eduke32@4632 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:16:35 +00:00
terminx
71bb5e5c8e Gamevar cleanup: drop "register" qualifiers, shuffle a few things around.
git-svn-id: https://svn.eduke32.com/eduke32@4631 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:16:21 +00:00
terminx
c2517d0d99 Suppress tile and sound remapping debug output in debug builds when not using -condebug
git-svn-id: https://svn.eduke32.com/eduke32@4630 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:16:06 +00:00
terminx
f553d6ad10 Add assertion for memory error handler in debug builds, add .def load time information to log, call Gv_ResetSystemDefaults() at startup to populate fake tilesizx/tilesizy arrays for CON
git-svn-id: https://svn.eduke32.com/eduke32@4629 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:15:53 +00:00
terminx
8e98cbe083 Free h_labels table when done compiling CONs
git-svn-id: https://svn.eduke32.com/eduke32@4628 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:15:41 +00:00
terminx
10474ad635 CON VM: get rid of extra VM_Execute() calls on CON_LEFTBRACE and get rid of returns on CON_RIGHTBRACE
git-svn-id: https://svn.eduke32.com/eduke32@4627 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:15:29 +00:00
terminx
9839802457 Optimize .anm playback; update frames on screen at the .anm's framerate instead of blindly looping as fast as possible
git-svn-id: https://svn.eduke32.com/eduke32@4626 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:15:17 +00:00
terminx
423b87a707 Faster CRC32 implementation (slicing-by-4 for 32-bit platforms and slicing-by-8 for 64-bit)
git-svn-id: https://svn.eduke32.com/eduke32@4625 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:15:04 +00:00
terminx
31d2f15b24 Use option name for menubar title for options that display as a separate menu page with a scrolling list
git-svn-id: https://svn.eduke32.com/eduke32@4624 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:14:35 +00:00
terminx
144a4798ce More Polymost cleanup, also consolidate tilesizx and tilesizy into a single tilesiz vec2_t to ensure both x and y are always in the same cache line. I may add a new vec2_16t later. Still need to take care of emulating the old flat array for the sake of CON access.
git-svn-id: https://svn.eduke32.com/eduke32@4623 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:14:21 +00:00
terminx
e20f297774 r_showfps 2, displaying min and max fps
git-svn-id: https://svn.eduke32.com/eduke32@4622 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:13:14 +00:00
terminx
5d1475b26c Remove some #if 0'd functions from audiolib
git-svn-id: https://svn.eduke32.com/eduke32@4621 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:12:57 +00:00
terminx
deb196f8a6 Fix build error
git-svn-id: https://svn.eduke32.com/eduke32@4620 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:12:41 +00:00
terminx
3623645815 Clean up the "X" variants of malloc and friends to avoid unncessary function calls and parameter passing
git-svn-id: https://svn.eduke32.com/eduke32@4619 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:12:27 +00:00
terminx
53ed4c619c Make glColor3f() available as bglColor3f()
git-svn-id: https://svn.eduke32.com/eduke32@4618 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:12:09 +00:00
terminx
c5835ef741 Remove "volatile" qualifier from mouse related variables, no longer required after the long ago removal of the hack that polled mouse input in a separate thread
git-svn-id: https://svn.eduke32.com/eduke32@4617 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:11:50 +00:00
terminx
f8b340de02 Next time I'll test with sound enabled when attempting to fix a warning in audiolib ;)
git-svn-id: https://svn.eduke32.com/eduke32@4616 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:09:03 +00:00
terminx
ed703142af Add new headers to VS project
git-svn-id: https://svn.eduke32.com/eduke32@4615 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:08:47 +00:00
terminx
3681d5e553 Respect ud.bgstretch when displaying the title screen during netplay
git-svn-id: https://svn.eduke32.com/eduke32@4614 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:08:35 +00:00
terminx
0a62ba1a21 On Android, remove the counter that automatically proceeds from the startup screen to the main menu and require a button press instead.
git-svn-id: https://svn.eduke32.com/eduke32@4613 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:08:23 +00:00
terminx
f4a8cdfa28 Don't display QUOTE_F1HELP on Android when starting a new game with the shareware version.
git-svn-id: https://svn.eduke32.com/eduke32@4612 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:08:10 +00:00
terminx
c97d01111a Change vid_brightness/contrast/gamma cvars to float vs double and do the same for OSD text scaling
git-svn-id: https://svn.eduke32.com/eduke32@4611 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:07:57 +00:00
terminx
ee82c62afc Allow loading the header from savegames with a different version. This is needed to allow starting a new game on the episode/level/skill saved in an incompatible savegame.
git-svn-id: https://svn.eduke32.com/eduke32@4610 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:07:41 +00:00
terminx
b8c8f153ac WIP menu restructuring and updates. Revolt is in the air...
git-svn-id: https://svn.eduke32.com/eduke32@4609 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:07:29 +00:00
terminx
bd26dd5612 Fix a compile warning
git-svn-id: https://svn.eduke32.com/eduke32@4608 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:07:14 +00:00
terminx
598876e411 Extra files for previous commits
git-svn-id: https://svn.eduke32.com/eduke32@4607 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:06:57 +00:00
terminx
d279344697 Extra files to support previous commits. Change hashing stuff to intptr_t so it can be used as a dictionary of pointers, change brightness/gamma/contrast to float instead of double, other misc changes. None of these commits build on their own so don't even bother.
git-svn-id: https://svn.eduke32.com/eduke32@4606 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:06:32 +00:00
terminx
105bc3f413 First commit for "Polymost.f", the single precision floating point conversion and optimization of Polymost. This work was primarily done for ARM but it also doubled the framerate on "Clear the Coast" on my i7.
git-svn-id: https://svn.eduke32.com/eduke32@4605 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:06:05 +00:00
terminx
8148ccf3c3 Remove a few unused things (tmulscale, etc) from the pragmas.h family of headers
git-svn-id: https://svn.eduke32.com/eduke32@4604 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:05:40 +00:00
terminx
1a286d1e52 Default r_osdhightile to 1
git-svn-id: https://svn.eduke32.com/eduke32@4603 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:05:19 +00:00
terminx
599ff50ca0 Misc Android changes and fixes, add alternate HUD mode that displays at the top of the screen, add support for replacing the DREALMS tile during startup with a 3dr.anm/3dr.ivf, fix usage of widescreen menu background or status bar tiles, limit - key from actually sizing down the screen (which has decreased performance instead of increasing it for a long, long time). The size can still be set manually from the console for special cases.
git-svn-id: https://svn.eduke32.com/eduke32@4602 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:05:07 +00:00
terminx
361300d3c4 pragmas.h cleanup part 1: separate into pragmas.h, pragmas_arm.h, pragmas_ppc.h, pragmas_x86_gcc.h and pragmas_x86_msvc.h.
Remove "boundmulscale" as it was unused.

git-svn-id: https://svn.eduke32.com/eduke32@4601 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:04:53 +00:00
terminx
683a5eb11f Minor polymer changes... reuse allocated _prplanelist structs to avoid potentially thousands of malloc calls per frame rendered, clean up "searchit == 2" functionality, move sector light invalidation to sector updates instead of wall updates (avoids a ton of unnecessary function calls), other minor changes
git-svn-id: https://svn.eduke32.com/eduke32@4600 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:04:30 +00:00
terminx
514f556a32 Update xxhash to r36
git-svn-id: https://svn.eduke32.com/eduke32@4599 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:04:12 +00:00
terminx
76ad1ce07e Move USE_LIBVPX definition to correct location in Makefile.msvc
git-svn-id: https://svn.eduke32.com/eduke32@4598 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:03:54 +00:00
terminx
7afd4c9226 JPG overrun fix from 6/10/14 kplib.c found in poly2vox.zip
git-svn-id: https://svn.eduke32.com/eduke32@4597 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:03:44 +00:00
terminx
0d68e1d4a9 Allow old version savegames to "load" by just starting a new game on the volume, level and skill written in the savegame header.
git-svn-id: https://svn.eduke32.com/eduke32@4596 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:03:30 +00:00
terminx
cd713abf1e HUD on the top of the screen and extra wide autoaim mode for Android
git-svn-id: https://svn.eduke32.com/eduke32@4595 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 04:03:17 +00:00
hendricks266
45641db803 Update the known locations of the addons in a Megaton installation. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4594 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-30 03:53:14 +00:00
helixhorned
c3102f2c89 astub.c: fix warnings with CPLUSPLUS=1 related to forgotten TrackerCast().
git-svn-id: https://svn.eduke32.com/eduke32@4593 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-07 18:10:18 +00:00
helixhorned
ef8c2f14c4 Fix taking over floor pal in the unlikely event that no fog pals are defined.
This DOES NOT fix the more complex issue discussed at the forums.

git-svn-id: https://svn.eduke32.com/eduke32@4592 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-07 18:10:18 +00:00
helixhorned
43fd10a7ac Makefile: on 'clean' target, unconditionally rm -f game Lunatic objects.
The 'clean' and 'veryclean' targets are usually run without environment options.
It is preferable if they clean out all object files that are possible with any.

git-svn-id: https://svn.eduke32.com/eduke32@4591 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-07 18:10:17 +00:00
helixhorned
40c2fc7d07 Lunatic: add actor.move() static function and documentation stub.
git-svn-id: https://svn.eduke32.com/eduke32@4590 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-07 18:10:16 +00:00
helixhorned
32e1e362c9 For usermaps, save and restore currently playing music index with savegames.
The volume and level number for the music are stored in the last two bytes
of the board file name array. No version bump is required.

git-svn-id: https://svn.eduke32.com/eduke32@4589 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-07 18:10:15 +00:00
helixhorned
2713bc3d75 Get rid of EnvMusicFilename[] and use MapInfo[].musicfn for that.
The additional space was there all the time, so it's not understandable why
another array was necessary.
CON: for 'music', error if volume number is outside [0 .. MAXVOLUMES+1], and
in LunaCON, additionally warn if it's MAXVOLUMES+1 (0 is preferred for that).

git-svn-id: https://svn.eduke32.com/eduke32@4588 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-07 18:10:14 +00:00
helixhorned
3dc5c9e144 Allow DEFining music for which there is no CON music; Add 'music' OSD command.
The OSD command is invoked like "music E5L3" (case insensitively).

git-svn-id: https://svn.eduke32.com/eduke32@4587 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-07 18:10:13 +00:00
helixhorned
73a252a73e More music-related cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@4586 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-07 18:10:12 +00:00
helixhorned
5597f3faab Some cleanup around S_PlayMusic() and related functionality.
git-svn-id: https://svn.eduke32.com/eduke32@4585 1a8010ca-5511-0410-912e-c29ae57300e0
2014-09-07 18:10:09 +00:00
helixhorned
e8f67a9271 Fix USE_OPENGL=0 build.
git-svn-id: https://svn.eduke32.com/eduke32@4584 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-31 11:15:23 +00:00
helixhorned
3493302e6c LunaCON: implement 'qsubstr' command. Add source/lunatic/test/qsubstr.con.
In C-CON's qsubstr, error if <start> is not in [0 .. MAXQUOTELEN-1]
or <length> is negative.

git-svn-id: https://svn.eduke32.com/eduke32@4583 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-31 11:15:22 +00:00
helixhorned
7254bf7ac4 Fix crash using INTERNAL DEFAULTS after CON error when CON modules were given.
git-svn-id: https://svn.eduke32.com/eduke32@4582 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-31 11:15:21 +00:00
helixhorned
fea848c486 LunaCON: ignore internal flag in gamevar redef check; allow "Pals" member.
git-svn-id: https://svn.eduke32.com/eduke32@4581 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-31 11:15:20 +00:00
helixhorned
96b3408dbd Mapster32: demote wall check "corruptions" introduced in r4569 to level 2.
The winding of a loop -- with clockdir() -- is determined by examining the
two line segments spanned between the points following a leftmost point of
the loop. If the loop contains a leftmost point that belongs to the "right"
side (as can happen with sliding door constructions), there's a chance that
an outer loop is misclassified.

git-svn-id: https://svn.eduke32.com/eduke32@4580 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-31 11:15:19 +00:00
helixhorned
77dc743f09 Factor out [l]dist() implementations into static inline functions in common.h.
And use these in jmact/mathutil.c's FindDistance2D()/FindDistance3D().
The main use is to allow passing dx/dy instead of sprite positions; the code
that actually uses this is not committed.

git-svn-id: https://svn.eduke32.com/eduke32@4579 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-31 11:15:17 +00:00
helixhorned
1eaf60b222 Classic: introduce two signed integer types, use in engine.c and a-c.c.
They classify former uses of int64_t into two classes:
 - coord_t: those that represent coordinates and need 64-bit precision for
   proper functioning with large values
 - inthi_t: those that were added for e.g. casts merely to prevent undefined
   behavior on overflow

DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4578 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-23 10:28:18 +00:00
helixhorned
81d3e4db73 pragmas.h: introduce preprocessor switch USE_ASM_DIVSCALE, for testing only.
git-svn-id: https://svn.eduke32.com/eduke32@4577 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-23 10:28:17 +00:00
helixhorned
fb7fb403e0 engine.c: prevent a 64-bit multiply in dosetaspect(). DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@4576 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-23 09:00:36 +00:00
helixhorned
21b630d294 Amend r4378 to hopefully make "stuck in water" fix work properly.
NOTE: lizmen may walk on water. I don't yet know why.

git-svn-id: https://svn.eduke32.com/eduke32@4575 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-20 17:58:21 +00:00
helixhorned
ceaa661304 Properly consider sprites with a clipshape as bridge (p->spritebridge).
git-svn-id: https://svn.eduke32.com/eduke32@4574 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-17 19:42:01 +00:00
helixhorned
9969efd8d1 Mapster32: fix a crash when m32_settings.cfg contains video setting.
Such as "vid_gamma". In that case, setbrightness() would have been
called without basepaltableptr having been initialized.
The fix is by moving the preparational setbasepaltable() call from
ExtPostStartupWindow() to ExtInit(), just before the OSD command
dispatching.

git-svn-id: https://svn.eduke32.com/eduke32@4573 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-16 18:32:49 +00:00
helixhorned
63916ee8d1 Mapster32: fix possible integer overflow in loopinside().
This could happen when building outside the "classic" grid limits and would
then lead to e.g. incorrect loop assignment on sector splitting. Bug reported
by MetHy.

git-svn-id: https://svn.eduke32.com/eduke32@4572 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-16 18:32:47 +00:00
helixhorned
3aaf167d6b game.c: fix -game_dir and -j by moving G_ExtInit() after G_CheckCommandLine().
git-svn-id: https://svn.eduke32.com/eduke32@4571 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-08 20:02:56 +00:00
helixhorned
757dbe9d6b LunaCON: properly initialize values of session (NODEFAULT) gamevars.
git-svn-id: https://svn.eduke32.com/eduke32@4570 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-08 20:02:55 +00:00
helixhorned
363f0b3af6 Mapster32: prototypical checker for wall loops, enabled partially.
Inspired by
 http://forums.duke4.net/topic/7506-tror-question/page__view__findpost__p__199151
the corruption checker now checks for certain conditions of the loops of each
sector. Recall that CW loops are outer and CCW loops are inner.

- If a sector has no or more than one outer loop, count that as corruption
  (level 4 and 3, respectively).
- (Disabled) For sectors with exactly one outer loop, check that all inner
  ones are inside it. This is currently not compiled due to an asymmetry of
  loopinside() for degenerate cases, similar to pre-r3898 inside().

git-svn-id: https://svn.eduke32.com/eduke32@4569 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-08 20:02:54 +00:00
helixhorned
21b852cd0d Clean up astub.c:CheckMapCorruption() and some build.c code a little.
There are no intended changes of functionality, it's readability tweaks only.

git-svn-id: https://svn.eduke32.com/eduke32@4568 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-08 20:02:53 +00:00
helixhorned
1486a2937b A couple of Lunatic updates. DONT_BUILD.
- LunaCON: support for setting userdef[].m_volume_number, getting .last_level
- bump con_lang.MAXEVENTS
- fix compilation of astub.c

git-svn-id: https://svn.eduke32.com/eduke32@4567 1a8010ca-5511-0410-912e-c29ae57300e0
2014-08-02 17:24:39 +00:00
hendricks266
b310eaef2c Fix MSVC build.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4566 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 09:00:28 +00:00
hendricks266
9a4a4a627b Nuke rev.h.
Note to MSVC users: You can get the revision number if you run `make rev o=obj` with MinGW before you build.

DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4565 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 08:59:58 +00:00
hendricks266
b0e82d4264 Split parts of loadlookups() into generatefogpals() and fillemptylookups(), and move Duke-specific LOOKUP.DAT behavior to G_LoadLookups() in source/common.c, which contains the call to loadlookups() as factored out from astub.c and game.c.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4564 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 06:45:53 +00:00
hendricks266
cf4473c4d7 Move implementation details of Mapster32's sound system from m32exec.c into sounds_mapster32.c, and set up a sound system stub in KenBuild Editor.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4563 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 06:45:18 +00:00
hendricks266
61b956cd41 Progress towards KenBuild Editor, part 3.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4562 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 06:44:58 +00:00
hendricks266
a7fb2721e4 Move code non-specific to Duke Nukem 3D from astub.c to a new m32common.c.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4561 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 06:44:37 +00:00
hendricks266
16cd8b8aaa Progress towards KenBuild Editor, part 2.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4560 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 06:44:14 +00:00
hendricks266
5237346f5b Move code non-specific to Duke Nukem 3D from source/common.c to a new build/src/common.c.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4559 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 06:43:46 +00:00
hendricks266
b48f3b44e3 Progress towards KenBuild Editor, part 1.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4558 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 06:43:16 +00:00
hendricks266
e8949e1c31 Elimininate some codedup between game.c and astub.c.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4557 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 06:42:28 +00:00
hendricks266
97a53be977 Fix C++ -Woverflow warnings in KenBuild.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4556 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-28 06:41:54 +00:00
hendricks266
4f67f8f969 KenBuild.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4555 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-24 14:01:44 +00:00
hendricks266
4e5788a32d Delete empty folders and update ignore properties.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4554 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-23 07:58:03 +00:00
hendricks266
e79a2fe828 MSVC build system consolidation.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4553 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-23 07:21:29 +00:00
hendricks266
1e7002b280 Fix Synthesis (at least partially).
git-svn-id: https://svn.eduke32.com/eduke32@4552 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-23 06:04:44 +00:00
hendricks266
3403670ada Re-add $(abspath ...) wrapping to libdirs to try and fix Synthesis.
git-svn-id: https://svn.eduke32.com/eduke32@4551 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-23 01:48:00 +00:00
hendricks266
a187bbd8f3 Normalize all rotatesprite calls to fullscreen panels so that they are centered at (160, 100) instead of top-lefted at (0, 0).
git-svn-id: https://svn.eduke32.com/eduke32@4550 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-22 11:20:13 +00:00
hendricks266
34f3e59c39 Menus: Rearrange drawing so that MENUBAR (#2457) is always the first thing drawn after a menu's background, and its caption is always drawn last.
git-svn-id: https://svn.eduke32.com/eduke32@4549 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-22 11:19:58 +00:00
hendricks266
61f31c36ad Three Mac patches from rhoenie:
-sdlayer: Apple and GTK are not mutually exclusive.
-Makefile.common: Specify WITHOUT_GTK?=1 by default.
-Makefile: Limit linking with the QuickTime framework to OS X 10.6 and below.
One fix from me:
-osxbuild.sh: Fix building tools.

git-svn-id: https://svn.eduke32.com/eduke32@4548 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-22 11:19:45 +00:00
hendricks266
68b56adbe2 Deal with a few common themes in downstream patches applied by OpenBSD, FreeBSD, Gentoo Linux, and possibly others.
-Respect CC and CXX if already set in the environment.
-Respect CFLAGS, CXXFLAGS, and LDFLAGS if set or specified.
-Give packagers the setting "PACKAGE_REPOSITORY=1" to prevent us from adding our own optimization parameters.

git-svn-id: https://svn.eduke32.com/eduke32@4547 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-22 11:19:25 +00:00
hendricks266
a5fb5f6795 Handle a concern kludged by SlackBuilds (used by Slackware Linux and NetBSD) where a warning in texcache.c spams the log.
git-svn-id: https://svn.eduke32.com/eduke32@4546 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-22 11:19:13 +00:00
hendricks266
1f68d2beb6 Apply/replicate patches from OpenBSD to dlopen .so names.
git-svn-id: https://svn.eduke32.com/eduke32@4545 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-22 11:18:59 +00:00
hendricks266
c1701f9299 Apply unpackssi_64bit_fix.patch from Gentoo Linux, with modifications.
https://bugs.gentoo.org/attachment.cgi?id=342598&action=edit

git-svn-id: https://svn.eduke32.com/eduke32@4544 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-22 11:18:41 +00:00
hendricks266
b332189ae5 Ball-busting Makefile restructure.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4543 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-22 07:25:54 +00:00
hendricks266
6ef05fe07c Delete a bunch of crusty old outdated unused files.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4542 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-22 07:25:09 +00:00
hendricks266
c1c01f0e0b Replace the funkily-formatted GNU.TXT with the FSF's official gpl-2.0.txt. Also, update the FSF's address in all source files that contain it.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4541 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-20 08:55:56 +00:00
hendricks266
af28013f39 Lunatic fixes:
1 compiler error.
2 compiler warnings.
1 runtime warning.

Note that at this time, CPLUSPLUS=1 LUNATIC=1 fails to build due to C++ function mangling, and Win64 Lunatic crashes.

DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4540 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-10 09:01:48 +00:00
hendricks266
0352b4ad11 Windows: Update libraries.
- libpng to 1.6.12
- LuaJIT to Git HEAD >= 2.0.3
- instructions.txt

DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4539 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-10 09:01:15 +00:00
hendricks266
43eb98fdec Extend ebacktrace in two ways.
1. The application must specify its proper name and technical name. Instead of eduke32_or_mapster32.crash.log, we now have eduke32.crash.log and mapster32.crash.log.
2. The exception handler will display a message box informing the user of a crash and requesting they send in the crash log. The box has three options: "Quit", the DLL's current behavior, "Continue", which passes the exception to the next handler, and "Ignore", which resumes execution immediately. These should allow the user to skip bogus exceptions picked up by ebacktrace, such as one I get with my laptop that causes EDuke32 no issues.

git-svn-id: https://svn.eduke32.com/eduke32@4538 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 22:38:02 +00:00
hendricks266
bc0614dd22 Miscellaneous get/set(this)projectile cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@4537 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 22:36:34 +00:00
terminx
06072db493 WIP OSD refactor, committing now before it stops applying cleanly to current svn. This shouldn't break anything in an obvious or major way.
git-svn-id: https://svn.eduke32.com/eduke32@4536 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:12:25 +00:00
terminx
d7a3f8e78a Looks like another MSVC build fix
git-svn-id: https://svn.eduke32.com/eduke32@4535 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:11:58 +00:00
terminx
a28bd4ec49 Add sdl_inc.h to VS project
git-svn-id: https://svn.eduke32.com/eduke32@4534 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:11:44 +00:00
terminx
690c0abb16 I don't even remember which platform this fixes building on... probably MSVC. Cleaning out my tree.
git-svn-id: https://svn.eduke32.com/eduke32@4533 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:11:32 +00:00
terminx
330119f482 MSVC build fix
git-svn-id: https://svn.eduke32.com/eduke32@4532 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:11:11 +00:00
terminx
e4733449fd Add support for pressing backspace to go up one dir in the file selector in Mapster32
git-svn-id: https://svn.eduke32.com/eduke32@4531 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:11:01 +00:00
terminx
7dae4a8e96 MSVC build fix
git-svn-id: https://svn.eduke32.com/eduke32@4530 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:10:46 +00:00
terminx
9eb8efa442 Android updates from Emile
git-svn-id: https://svn.eduke32.com/eduke32@4529 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:10:33 +00:00
terminx
b81a28b334 Fix MSVC warning caused by r4488
git-svn-id: https://svn.eduke32.com/eduke32@4528 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:10:14 +00:00
terminx
9378066660 lround for MSVC
git-svn-id: https://svn.eduke32.com/eduke32@4527 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:09:59 +00:00
terminx
398d20fc5f Enable -usecwd for Mapster32 on Windows (same functionality as EDuke32)
git-svn-id: https://svn.eduke32.com/eduke32@4526 1a8010ca-5511-0410-912e-c29ae57300e0
2014-07-06 00:09:41 +00:00
hendricks266
ca03f7af44 Hotfix to allow display of E1L8's par time and 3DR time if no usermap has been played yet.
Note that the user map function still overwrites everything in slot E1L8 for the time being, which is a deeper problem I need to address.

git-svn-id: https://svn.eduke32.com/eduke32@4525 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-23 02:25:20 +00:00
hendricks266
beec5ec512 Keep track of allocated cache space for ANM files so they aren't allocated multiple times. Also, unlock the handles after playback is done so they can be freed if necessary.
git-svn-id: https://svn.eduke32.com/eduke32@4524 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-23 02:25:07 +00:00
hendricks266
1497a75ef0 Disable the diagnostic log message upon successfully using the "animsounds" def command.
git-svn-id: https://svn.eduke32.com/eduke32@4523 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-23 02:24:53 +00:00
hendricks266
83490ade50 Fix building ivfrate.
git-svn-id: https://svn.eduke32.com/eduke32@4522 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-23 02:24:39 +00:00
hendricks266
879b3e406b Fix a warning in menus.c, introduced in r4519.
git-svn-id: https://svn.eduke32.com/eduke32@4521 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-23 02:24:28 +00:00
hendricks266
24728ba291 Allow EVENT_SOUND to return -1 to cancel a sound without printing a warning to the console and log.
NOTE: Other negative values are reserved!

git-svn-id: https://svn.eduke32.com/eduke32@4520 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-23 02:24:10 +00:00
hendricks266
fc43cc666c Fix saving a savegame's name.
git-svn-id: https://svn.eduke32.com/eduke32@4519 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-21 15:31:01 +00:00
hendricks266
41fb46b1bc Fix a display error with the bonus screen when a map's 3DR time was zero.
git-svn-id: https://svn.eduke32.com/eduke32@4518 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-21 15:30:48 +00:00
hendricks266
27c9651fde Fix a problem with r4514.
git-svn-id: https://svn.eduke32.com/eduke32@4517 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-21 15:30:33 +00:00
hendricks266
f4becd06d5 Instead of displaying "Unknown GRP - EDuke32", simply display "EDuke32".
Much classier this way.

git-svn-id: https://svn.eduke32.com/eduke32@4516 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-16 23:17:11 +00:00
hendricks266
fd78e9f954 By request, implement EVENT_ACTIVATECHEAT.
git-svn-id: https://svn.eduke32.com/eduke32@4515 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-16 23:16:55 +00:00
hendricks266
45deabc782 Add the following LOGO_FLAGS:
LOGO_NOE1ENDSCREEN
LOGO_NOE2ENDSCREEN
LOGO_NOE3RADLOGO
LOGO_NODUKETEAMTEXT
LOGO_NODUKETEAMPIC

As part of this, the LOGO_NOE*BONUSSCENE flags no longer remove the entire end sequence in one go. They now only remove the primary cinematic. If you want their previous effect, you'll have to add these additional bits.

git-svn-id: https://svn.eduke32.com/eduke32@4514 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-16 23:16:37 +00:00
hendricks266
304a13e259 Fix build with GCC 4.9.
git-svn-id: https://svn.eduke32.com/eduke32@4513 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-16 23:16:23 +00:00
hendricks266
015acc9fb9 Fix Wii build.
git-svn-id: https://svn.eduke32.com/eduke32@4512 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-16 23:16:08 +00:00
hendricks266
71cf9af5f5 Clean up the menu input layer.
git-svn-id: https://svn.eduke32.com/eduke32@4511 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-16 23:15:49 +00:00
hendricks266
ec3717167e Menus: Fix a bug that crept in with r4508 that prevented any editing of savegame names.
git-svn-id: https://svn.eduke32.com/eduke32@4510 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-16 23:15:31 +00:00
hendricks266
a7714f2c74 Menus: Bring MenuFileSelect_t up to speed with MenuMenu_t.
>They see me scrollin'
>They hatin'

git-svn-id: https://svn.eduke32.com/eduke32@4509 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-13 09:04:31 +00:00
hendricks266
2281e287dd Menus: Fix the recently introduced bug where blank savegames would have their autogenerated names clobbered by the new menu code.
git-svn-id: https://svn.eduke32.com/eduke32@4508 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-13 09:04:17 +00:00
hendricks266
7f3708b55d Menus: Fix the recently introduced bug that would take the keypress given at "PRESS OPEN TO RESTART LEVEL" as a yes at the following prompt to load your most recent savegame, seemingly without asking.
git-svn-id: https://svn.eduke32.com/eduke32@4507 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-13 09:04:05 +00:00
hendricks266
4424648917 Menus: Revise the MenuFileSelect_t structure to remove the unnecessary dir pointer and rename currentlist to currentList.
git-svn-id: https://svn.eduke32.com/eduke32@4506 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-13 09:03:52 +00:00
hendricks266
de35d4ee8c Menus: When at the top or bottom of a scrolling section, show the up/down indicator darkened instead of not at all.
git-svn-id: https://svn.eduke32.com/eduke32@4505 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-13 09:03:38 +00:00
hendricks266
3d37dc86ae [Cosmetic] backtrace.c: tab --> space x 4
git-svn-id: https://svn.eduke32.com/eduke32@4504 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-13 09:03:25 +00:00
hendricks266
e647b6a42f Update ebacktrace to avoid crashes and improve the quality of the diagnostic output.
git-svn-id: https://svn.eduke32.com/eduke32@4503 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-13 09:03:06 +00:00
hendricks266
a03f9bce40 Wrap most calls to exit() with a macro that will print the exit status, file name, line number, and function name to the log when using a debug build.
git-svn-id: https://svn.eduke32.com/eduke32@4502 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-13 09:02:37 +00:00
hendricks266
94ccdb076d Fix a recently-introduced C++ error.
git-svn-id: https://svn.eduke32.com/eduke32@4501 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-13 09:01:58 +00:00
Plagman
f6dd12ffe5 Test commit to make sure synthesis works.
git-svn-id: https://svn.eduke32.com/eduke32@4500 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-02 02:23:08 +00:00
helixhorned
4780912b40 lunatic/util/build.lua: in readdefs(), add option of requesting picnum->name mapping.
That is, the reverse of what is returned with the first outarg. Use that in
lunatic/util/foreachmap.lua. DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4499 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-01 20:50:14 +00:00
helixhorned
1e5549dc2f Polymost: r_npotwallmode, emulating 8-bit for walls w/ nonpow2 height textures.
When that mode is enabled (see below for caveats), wall textures that have a
non-power-of-two height (call it 'h') will be modified to look like in classic:
Let 'H' be the next power of two greater than 'h'. The texture will be uploaded
with height 'H', made up from 'h' hlines of the original texture, followed by
'H'-'h' first hlines of the same.
No panning "corrections" will take place. The mode is disabled by default.

Caveats/notes:
 * the mode requires that r_hightile is disabled
 * it is not implemented in Polymer
 * in the Lunatic build, it is ineffective when a VX map is loaded, as those
   display walls with NPOT height textures correctly

git-svn-id: https://svn.eduke32.com/eduke32@4498 1a8010ca-5511-0410-912e-c29ae57300e0
2014-06-01 11:55:19 +00:00
hendricks266
d4cfdb7da0 Fix non-Windows building.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@4497 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-31 15:36:41 +00:00
hendricks266
11e9b8f4ce Ball-busting new menus. Still WIP.
Mouse/touch/pointer support is yet to come. #SOON.

Exposure to scripting is a LONG way off. Months. The spec and data structure needs time for comment and revision. The eventual scripting access will be Lua-only.

git-svn-id: https://svn.eduke32.com/eduke32@4496 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-31 12:26:41 +00:00
hendricks266
c24c08599f Better compile timestamp handling.
git-svn-id: https://svn.eduke32.com/eduke32@4495 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-31 12:26:13 +00:00
hendricks266
26db62d77d Re-fix the C++ warnings in ENet.
git-svn-id: https://svn.eduke32.com/eduke32@4494 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-31 12:25:44 +00:00
helixhorned
2153c81afb Mapster32: when pasting onto the bottom part of a [2]-wall, take over y-flipping.
Note that x-flipping is determined by the cstat of the upper part of the wall
(that is, the wall facing the player, not the nextwall, from which the picnum
for the bottom part is taken.)

git-svn-id: https://svn.eduke32.com/eduke32@4493 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-30 19:39:08 +00:00
helixhorned
66f5b547cf Replace two missed literal numbers with SE_* enum labels.
git-svn-id: https://svn.eduke32.com/eduke32@4492 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-30 19:39:06 +00:00
helixhorned
0900f4066c Bye, bye, B*alloc(), all hail X*alloc()! Replace large portion of the calls...
... and cull code that is dead with the X*alloc() versions since they never
return NULL on requesting memory.

Use something like
 git grep '[^Xx]\(m\|c\|re\)alloc *('
and
 git grep '[^Xx]strdup *('
to see places where I left the B*alloc() calls intact.

BUILD_LUNATIC.

git-svn-id: https://svn.eduke32.com/eduke32@4491 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-30 00:02:19 +00:00
helixhorned
1d26121514 Add X{m,c,re}alloc and Xstrdup macros that call an out-of-memory handler on failure.
These wrap the x*alloc or xstrdup functions in compat.c. The handler gets passed
__FILE__, __LINE__ and __func__ (if available) in debugging builds.

Terminating the application process immediately in case of allocation failure
will let us prune many error handling paths and simplify a good portion of code.

git-svn-id: https://svn.eduke32.com/eduke32@4490 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-30 00:02:16 +00:00
helixhorned
95a6c01045 A couple of stylistic cleanups and missed DAMETH_* flags substitutions.
git-svn-id: https://svn.eduke32.com/eduke32@4489 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-30 00:02:14 +00:00
helixhorned
89bbfcbdea Miscellaneous cleanup, still with the same suspects...
- in mdloadskin() and gloadtile_hi(), use new function check_nonpow2()
  (bit-twiddling) instead of loop
- Replace a couple of missed literals with CACHEAD_* enum labels

git-svn-id: https://svn.eduke32.com/eduke32@4488 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-28 22:40:19 +00:00
helixhorned
6fb9929f44 Factor out commonly occuring hictinting[]-accessing code into three functions.
Note: in polymer.c, this was buggy (but harmless) because .r is a char:
  if ((uint32_t)hictinting[MAXPALOOKUPS-1].r & 0xFFFFFF00) != 0xFFFFFF00)

git-svn-id: https://svn.eduke32.com/eduke32@4487 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-28 22:40:17 +00:00
helixhorned
69c867b8e3 Replace various GL rendering related literal flags with enum labels.
- pthtyp pth->flags bits
- Flags of the <dameth> argument of various functions
- hictinting[].f / gloadtile_hi() and daskinloader() <effect> arg bits
- hicreplctyp hicr->flags bits
- texcacheheader cachead.flags bits

git-svn-id: https://svn.eduke32.com/eduke32@4486 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-28 22:40:16 +00:00
helixhorned
2c84d175ed polymost.c: stylistic cleanup in gloadtile_hi, uploadtexture, fixtransparency.
git-svn-id: https://svn.eduke32.com/eduke32@4485 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-28 22:40:15 +00:00
helixhorned
dfa9daa5d3 Polymost: in NPOT wall ypanning "correction", behave like Polymer in one corner case.
Specifically, the handling of one-way walls ([1] in Mapster32) was slightly
different.

git-svn-id: https://svn.eduke32.com/eduke32@4484 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-28 22:40:14 +00:00
helixhorned
1fab90da10 lunatic/util/mapypan.lua: omit MIRROR, don't print maps w/o problematic tiles.
git-svn-id: https://svn.eduke32.com/eduke32@4483 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-28 22:40:12 +00:00
helixhorned
4ea4bf2ea9 sdlayer.c: for Windows, switch keyboard layout to/from US on init/uninit.
Taking over the code from winlayer.c.

git-svn-id: https://svn.eduke32.com/eduke32@4482 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-24 15:27:53 +00:00
helixhorned
e61afe6d88 Rip out S_FindMusicSFX() from A_CallSound() and use in SE6/14 on-spawn init.
This makes the subway sound not played once on map initialization.

git-svn-id: https://svn.eduke32.com/eduke32@4481 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-23 20:25:29 +00:00
helixhorned
123906a9d7 shadexfog.lua: in menu, move creation of debugging shade tables below DEBUG line.
BUILD_LUNATIC.

git-svn-id: https://svn.eduke32.com/eduke32@4480 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-22 11:17:52 +00:00
helixhorned
b9b0b3f79b lunatic/test/shadexfog.lua: add function create_brightpass_trans().
Also hook it up in the [;]+[F] menu.

git-svn-id: https://svn.eduke32.com/eduke32@4479 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-22 11:17:51 +00:00
helixhorned
0c2776e7fc game.c: in A_Spawn(), protect CSTAT_SPRITE_NOSHADE of spawned MASKWALL* sprites.
git-svn-id: https://svn.eduke32.com/eduke32@4478 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-22 11:17:50 +00:00
helixhorned
3ecf4ca4e5 actors.c: fix a A_CheckSpriteFlags() call for zombie actor to STANDABLE change.
This only affects zombie actors in a sector with a parallaxed ceiling. If they
have SFLAG_NOSHADE clear, their shade is taken from the ceiling upon
changing the statnum. Previously, A_CheckSpriteFlags() received a value that
could only be 0 or 1 for the sprite index (typo).

git-svn-id: https://svn.eduke32.com/eduke32@4477 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-22 08:56:56 +00:00
helixhorned
2f6652e59a sdlayer.c: fix compiling wm_ynbox() for Linux/WITHOUT_GTK=1.
git-svn-id: https://svn.eduke32.com/eduke32@4476 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-18 09:55:43 +00:00
helixhorned
e810071cfc LunaCON: add read-only variable 'Numsprites', r/w userdef member .mouseaiming.
git-svn-id: https://svn.eduke32.com/eduke32@4475 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-18 09:55:42 +00:00
helixhorned
8974228a20 C-CON: scan label names according to stricter LunaCON rules instead of char blacklist.
These ones: http://lunatic.eduke32.com/lunacon.html#_ambiguous_lexical_elements
Seriously, defining a token kind by excluding certain characters (instead of
allowing a given set) is really, really broken.

git-svn-id: https://svn.eduke32.com/eduke32@4474 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-18 09:55:41 +00:00
helixhorned
4b3bfc6424 LunaCON: allow '.' as non-first identifer character.
git-svn-id: https://svn.eduke32.com/eduke32@4473 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-18 09:55:39 +00:00
hendricks266
a755e95c2c Replace some constants with preprocessor macros.
git-svn-id: https://svn.eduke32.com/eduke32@4472 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-17 12:36:40 +00:00
hendricks266
20bf310cba Fix two Polymer crashes related to corrupted maps.
git-svn-id: https://svn.eduke32.com/eduke32@4471 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-17 12:36:03 +00:00
hendricks266
5f3921fa93 Fix ebacktrace on 64-bit. New DLLs all around.
git-svn-id: https://svn.eduke32.com/eduke32@4470 1a8010ca-5511-0410-912e-c29ae57300e0
2014-05-17 12:35:46 +00:00