Subversion Repositories eduke32

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
8781 307d 1h ny00123 /source/sw/ SW: Revert the automapping changes from r5207. Using engine-side code
brought back in r7873, this should restore the behaviors of DOS v1.2.
 
8779 307d 1h ny00123 /source/sw/ Revert the change of call to FAF_DrawRooms into a conditional one,
as done in r8766, since this breaks status bar output in tiled
overhead map with Polymost. Do add comment about this for now.
 
8767 310d 3h ny00123 /source/sw/ Remove unused FAF_DebugView variable from sw/src/brooms.cpp. The
corresponding variable in rooms.cpp is used if DEBUG is defined
to nonzero.
 
8766 310d 3h ny00123 /source/sw/ sw/src/draw.cpp: Don't draw rooms if textured overhead map is drawn
later. This also turns out to fix a Polymost-specific bug revealed
in SVN r8711. Further remove a call to PicInView which does nothing.
 
8751 315d 7h ny00123 /source/sw/ SW: Make quitting by closing the window, now done via CON_Quit,
a bit more usable in multiplayer, hiding the engine's console.
 
8750 315d 7h ny00123 /source/sw/ SW: Modify MenuLevel and RunLevel by using CON_Quit,
toggling MultiPlayQuitFlag on instead of QuitFlag in
multiplayer games if a player tries to close the window.
Further update MNU_QuitCustom to use CON_Quit.
- In RunLevel, this fixes quit of game for all players.
- In MenuLevel, this leads to transmit of PACKET_TYPE_MENU_LEVEL_QUIT.
However, the work isn't complete, since the game isn't shut down
on the peers' sides, leading to possibly undesired side-effects.

Currently known issue:
- If the master closes the window, the scores won't be shown for
the master. Reason is that waitforeverybody will terminate the app.
 
8749 315d 7h ny00123 /source/sw/ sw/src/game.cpp:StatScreen crash bug fix: For a given player p,
use p->TeamColor instead of User[p->PlayerSprite]->spal, since
it's possible the player left before the map was loaded.
 
8748 315d 7h ny00123 /source/sw/ SW: Add a few calls to handleevents around key press loops. Also check
quitevent in the game, and further call getpackets within StatScreen.
 
8747 315d 7h ny00123 /source/sw/ SW: Make sure StatScreen is called around the same time for
all players after level change. This is done by adding calls
to getpackets within the BonusScreen and StatScreen while loops.

It is related to a change from the DOS versions of 1997. Basically,
dosendpackets immediately sends all packets via the commit driver under
DOS, while in the mmulti port in use here, sending might be postponed.

This was leading to a problem with the game entering waitforeverybody
before showing the stats. In particular, it initially attempted to send
a PACKET_TYPE_PLAYER_READY message, which could get postponed in the
manner described above. In case it received PACKET_TYPE_PLAYER_READY
messages from all other peers before the time arrived for sending
pending packets, though, waitforeverybody would return, eventually
leading to a call to StatScreen/BonusScreen, without sending the
pending message until the user in question continued. Other peers
would have to wait for the given player to confirm level change
before they could see their own stat screens.
 
8746 315d 7h ny00123 /source/sw/ sw/src/game.cpp:NewLevel: Wait for all peers when master player quits.  
8745 315d 7h ny00123 /source/sw/ sw/src/network.cpp:MyCommPlayerQuit: When master player decides to quit,
make sure all players quit the game. Don't internally change the list
of players, just prepare to quit.
 
8744 315d 7h ny00123 /source/sw/ sw/src/game.cpp:getinput: Make sure slave actually quits the game  
8743 315d 7h ny00123 /source/sw/ SW: Fix a bug in getpackets, making SW's Master-Slave code usable,
including 3+ players sessions.
 
8708 316d 22h terminx /source/sw/ Tweaks to engine compatibility stuff  
8704 318d 23h ny00123 /source/sw/ sw/src/game.cpp: Fix crash following an abort of InitGame while
processing multiplayer params or waiting for players. It's been
decided that Control won't call TerminateGame in this case,
one implication being that voidsw.cfg is not updated.
 
8703 318d 23h ny00123 /source/sw/ SW: Do limit Master/Slave support to 2-players sessions.
Thanks to LittleTijn for testing and inspecting.
 
8701 318d 23h ny00123 /source/sw/ sw/src/game.cpp: Update processing of multiplayer-related arguments,
mostly from JFSW commits 7a95dee807c735de6588372e268af7a5c7cdc533
and 6137b48d6d432c34d94d08fea527b89539cc3adb. In particular,
this makes Master/Slave usable for 2-player sessions, with SW's
networking code behaving as if these were actually Peer-2-Peer sessions.

Thanks to JonoF for his work on the support.
 
8700 321d 0h ny00123 /source/sw/ sw/src/draw.cpp:ResizeView: Make map zooming less dependent
on the frame rate
 
8699 321d 9h ny00123 /source/sw/ sw/src/menus.cpp: Remove nonexisting MNU_ClearDialog function prototype  
8698 321d 9h ny00123 /source/sw/ sw/src/weapon.cpp: Comment out unused MissileSeek and ComboMissileSeek
params, but leave them for documentation. Note that currently, the
only use of ComboMissileSeek is in the saveable_weapon_code array.
 
8697 321d 9h ny00123 /source/sw/ SW: Comment out function parameters accessed only in commented out code  
8696 321d 9h ny00123 /source/sw/ SW: Mark function parameters as unused in cases we can't easily change
the functions' signatures (often due to being used as callbacks/hooks)
 
8695 321d 9h ny00123 /source/sw/ Take care of unused parameters in sw/src/menus.cpp:MNU_DoMenu.
Note that the passed type is always ct_mainmenu.
 
8694 321d 9h ny00123 /source/sw/ SW: Remove a bunch of unused function parameters  
8693 321d 9h ny00123 /source/sw/ sw/src/weapon.cpp: Remove conditional set of unused variable hsp
in InitMineShrap, as well as unused variable sp in TestDontStick
 
8692 321d 9h ny00123 /source/sw/ sw/src/weapon.cpp: Insert unused SHRAP structs into #if 0 blocks  
8691 321d 9h ny00123 /source/sw/ startgtk (Duke3D, SW, Build Editor): Use nullptr instead
of NULL for ending arguments list in gtk function calls. Fixes
"missing sentinel in function call" warning with a specific GCC version.
 
8690 322d 7h ny00123 /source/sw/ sw/src/player.cpp: Remove unused globals related to mouse status  
8689 322d 7h ny00123 /source/sw/ sw/src/player.cpp: A bit more complicated cases of unused vars  
8688 322d 7h ny00123 /source/sw/ SW: Handle cases in which the result of an expression
with (possible) side-effects is written to an unused var.
 
8687 322d 7h ny00123 /source/sw/ sw/src/inv.cpp: Move unused global pal arrays to #if 0 block  
8686 322d 7h ny00123 /source/sw/ SW: Comment out unused vars, which would become
used if previously commented out code was uncommented
(including a few instances of uninitialized var reads).
 
8685 322d 7h ny00123 /source/sw/ SW: Remove a ton of unused vars  
8678 323d 23h ny00123 /source/sw/ sw/src/network.cpp:getpackets: Fix trimming of message in
packet of type PACKET_TYPE_MESSAGE. This reverts a tiny portion
of JFShadowWarrior commit 6b01a4703d55ae3e131d8c11903ff2dcd78c15d8.
 
8677 323d 23h ny00123 /source/sw/ sw/src/network.*: Sync the player's MouseAimingOn field. This is required for the slope tilting check in player.cpp:PlayerAutoLook, introduced in JFBuild commit 1915f408962b4d9c814f64affda634d28582e25e and updated in commit ef9aea53aced8fd90c701d0c8a9a927a23dd0a40.  
8667 325d 0h ny00123 /source/sw/ sw/src/game.cpp: Use initsingleplayers instead of initmultiplayers  
8647 328d 15h hendricks266 /source/sw/ Update credits  
8629 346d 16h hendricks266 /source/sw/ SW: Activate engine compatibility  
8627 346d 16h hendricks266 /source/sw/ SW: Don't restart the music when loading a save playing the same track  
8626 346d 16h hendricks266 /source/sw/ SW: Add handleevents to end credits

From JFSW commit 0c651743f8371fade0231e9c3206ca25e6ae5269