------------------------------------------------------------------------ r5454 | hendricks266 | 2015-11-25 04:08:37 -0800 (Wed, 25 Nov 2015) | 1 line Duke3D/Startup: Autodetect the installation path of the World War II GI release on Steam. Windows and Linux only for now, as there appears to be no OS X support. ------------------------------------------------------------------------ r5453 | hendricks266 | 2015-11-25 04:08:34 -0800 (Wed, 25 Nov 2015) | 7 lines Implement WWII GI weapon display code. Remaining issues with the weapons (both functionality and display): - The "pistol", "shotgun", and "chaingun" fire too slowly. - The flamethrower fires too quickly. - The bazooka drop for reload is late. - Upon starting a level, the "pistol" should show a reload frame, but it does not. ------------------------------------------------------------------------ r5452 | hendricks266 | 2015-11-25 04:08:31 -0800 (Wed, 25 Nov 2015) | 4 lines Miscellaneous NAM and WWII GI tweaks/fixes. Remaining issues: - Inventory item gamefuncs still use their Duke 3D names. The buggy way custom gamefunc binds are saved and loaded needs to be addressed first. ------------------------------------------------------------------------ r5451 | hendricks266 | 2015-11-25 04:08:28 -0800 (Wed, 25 Nov 2015) | 5 lines Implement NAM and WWII GI's replacement cheats. Whereas Duke starts cheats with DN, NAM starts with NVA and WWII GI starts with WW2. (Hackily: CheatKeys[] is still size 2, and the third character is at the start of every CheatString.) The cheats hyper (NAM-only), coords, view, skill, weapons, and inventory were not originally present but since they work properly and this is EDuke32, I have re-added them. Non-working cheats are now disabled. ------------------------------------------------------------------------ r5450 | hendricks266 | 2015-11-25 04:08:24 -0800 (Wed, 25 Nov 2015) | 1 line Don't implicitly define GAMEFLAG_NAM for WWII GI. Instead, implement a new macro NAM_WW2GI synonymous with (NAM || WW2GI). ------------------------------------------------------------------------ r5449 | hendricks266 | 2015-11-25 04:08:20 -0800 (Wed, 25 Nov 2015) | 1 line Restrict the right-edge widescreen clamping of the Pistol reload and Freezer to Duke Nukem 3D only: NAM and WWII GI don't need it. ------------------------------------------------------------------------ r5448 | hendricks266 | 2015-11-25 04:08:17 -0800 (Wed, 25 Nov 2015) | 1 line Duke3D/Startup: Instead of adding Megaton's music paths, don't remove the gameroot path and let my new S_OpenAudio take care of the SC-55 soundtrack. ------------------------------------------------------------------------ r5447 | hendricks266 | 2015-11-25 04:08:14 -0800 (Wed, 25 Nov 2015) | 3 lines Duke3D/Startup: Clean up the Windows registry reading code. There is no need to cache the result of a function called only once for each input. ------------------------------------------------------------------------ r5446 | hendricks266 | 2015-11-25 04:08:10 -0800 (Wed, 25 Nov 2015) | 1 line Duke3D/Sound: Add a hack to the previous commit so that Megaton's grabbag.voc will still upgrade to music/grabbag_voc.ogg, but its subway.voc will no longer upgrade to music/subway.ogg. ------------------------------------------------------------------------ r5445 | hendricks266 | 2015-11-25 04:08:07 -0800 (Wed, 25 Nov 2015) | 7 lines Duke3D/Sound: Restructure S_OpenAudio to check in more paths. For each path, it performs the filename transformations and checks it does currently. First, it will try the local path (as previously). Second, it will check to see if the filename originally requested exists inside a GRP or SSI file (its parent), and if it does, it will check in "music//". Third, it will check in "music/". Do not rely on this when distributing mods: These checks are hacks and may potentially be removed. ------------------------------------------------------------------------ r5444 | hendricks266 | 2015-11-25 04:08:04 -0800 (Wed, 25 Nov 2015) | 1 line Duke3D/Sound: Make kopen4loadfrommod a tail-call from S_UpgradeFormat, rename the function to S_OpenAudio, and replace 4x calls to one and then the other. No functional changes. ------------------------------------------------------------------------ r5443 | hendricks266 | 2015-11-25 04:08:00 -0800 (Wed, 25 Nov 2015) | 1 line cache1d: Add kfileparent(). ------------------------------------------------------------------------ r5442 | hendricks266 | 2015-11-25 04:07:57 -0800 (Wed, 25 Nov 2015) | 1 line cache1d: Bikeshed some formatting in kopen_internal(). ------------------------------------------------------------------------ r5441 | hendricks266 | 2015-11-25 04:07:54 -0800 (Wed, 25 Nov 2015) | 1 line cache1d: Save the filenames of GRP and SSI files that are opened. ------------------------------------------------------------------------ r5440 | hendricks266 | 2015-11-25 04:07:51 -0800 (Wed, 25 Nov 2015) | 1 line Polymodes: Don't test (!usemodels || md_tilehasmodel(picnum, pal) < 0) in eligible_for_tileshades (called only from getshadefactor) because getshadefactor is only called when a model is *not* being drawn, and therefore results in incorrect shading when drawing a tile with a model defined and models enabled to the screen or as a skybox. ------------------------------------------------------------------------ r5439 | hendricks266 | 2015-11-25 04:07:47 -0800 (Wed, 25 Nov 2015) | 1 line Polymodes: Slight optimizations in getshadefactor. ------------------------------------------------------------------------ r5438 | hendricks266 | 2015-11-25 04:07:44 -0800 (Wed, 25 Nov 2015) | 1 line Polymost: Bookend the recursive call to polymost_drawpoly as part of the fullbright pass with bglDepthFunc(GL_EQUAL) and bglDepthFunc(GL_LEQUAL) to ensure that the fullbright overlay is always visible and never fights with the sprite itself. ------------------------------------------------------------------------ r5437 | hendricks266 | 2015-11-25 04:07:41 -0800 (Wed, 25 Nov 2015) | 1 line Polymost: Remove "indrawroomsandmasks" variable and its only use in polymost_drawpoly as a condition for the fullbright pass. ------------------------------------------------------------------------ r5436 | hendricks266 | 2015-11-25 04:07:36 -0800 (Wed, 25 Nov 2015) | 1 line Polymost: Connect spriteext[].x/ypanning to model UVs (range 0-255). ------------------------------------------------------------------------ r5435 | helixhorned | 2015-11-21 04:42:47 -0800 (Sat, 21 Nov 2015) | 10 lines player.c: factor out large A_ShootWithZvel() block into A_ShootHardcoded() The block is taken over verbatim; 'vec3_t srcvect' is passed by value. The primary purpose of this is that it's easier to compare custom projectile behavior in A_ShootCustom() with the hardcoded one by reading the code of these two functions. For example, this may be of use to modders wishing to emulate a hardcoded projectile. DONT_BUILD. ------------------------------------------------------------------------ See http://svn.eduke32.com/listing.php?repname=eduke32 for more details.