Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --- src/callvote.cpp
- +++ src/callvote.cpp
- @@ -70,6 +70,7 @@ static ULONG g_ulVoteCompletedTicks
- static bool g_bVotePassed;
- static ULONG g_ulPlayersWhoVotedYes[(MAXPLAYERS / 2) + 1];
- static ULONG g_ulPlayersWhoVotedNo[(MAXPLAYERS / 2) + 1];
- +static ULONG g_ulKickVoteTargetPlayerIdx;
- //*****************************************************************************
- // PROTOTYPES
- @@ -126,9 +127,12 @@ void CALLVOTE_Tick( void )
- if ( --g_ulVoteCompletedTicks == 0 )
- {
- // If the vote passed, execute the command string.
- - if ( g_bVotePassed && ( NETWORK_GetState( ) != NETSTATE_CLIENT ))
- + if ( g_bVotePassed && ( NETWORK_GetState( ) != NETSTATE_CLIENT )){
- + // If the vote is a kick vote, we have to alter g_szVoteCommand to kick the cached player idx
- + if( strncmp ( g_szVoteCommand, "kick ", 5 ) == 0 )
- + sprintf( g_szVoteCommand, "kick_idx %d", g_ulKickVoteTargetPlayerIdx );
- AddCommandString( g_szVoteCommand );
- -
- + }
- // Reset the module.
- CALLVOTE_ClearVote( );
- }
- @@ -509,24 +513,34 @@ static bool callvote_CheckValidity( char
- // First, figure out what kind of command we're trying to vote on.
- if ( stricmp( "kick", pszCommand ) == 0 )
- ulVoteCmd = VOTECMD_KICK;
- - else if ( stricmp( "map", pszCommand ) == 0 )
- - ulVoteCmd = VOTECMD_MAP;
- - else if ( stricmp( "changemap", pszCommand ) == 0 )
- - ulVoteCmd = VOTECMD_CHANGEMAP;
- - else if ( stricmp( "fraglimit", pszCommand ) == 0 )
- - ulVoteCmd = VOTECMD_FRAGLIMIT;
- - else if ( stricmp( "timelimit", pszCommand ) == 0 )
- - ulVoteCmd = VOTECMD_TIMELIMIT;
- - else if ( stricmp( "winlimit", pszCommand ) == 0 )
- - ulVoteCmd = VOTECMD_WINLIMIT;
- - else if ( stricmp( "duellimit", pszCommand ) == 0 )
- - ulVoteCmd = VOTECMD_DUELLIMIT;
- - else if ( stricmp( "pointlimit", pszCommand ) == 0 )
- - ulVoteCmd = VOTECMD_POINTLIMIT;
- - else
- - return ( false );
- + else {
- + int i = 0;
- + while( pszParameters[i] != '\0' )
- + {
- + if( pszParameters[i] == ';' || pszParameters[i] == ' ' )
- + return ( false );
- + i++;
- + }
- + if ( stricmp( "map", pszCommand ) == 0 )
- + ulVoteCmd = VOTECMD_MAP;
- + else if ( stricmp( "changemap", pszCommand ) == 0 )
- + ulVoteCmd = VOTECMD_CHANGEMAP;
- + else if ( stricmp( "fraglimit", pszCommand ) == 0 )
- + ulVoteCmd = VOTECMD_FRAGLIMIT;
- + else if ( stricmp( "timelimit", pszCommand ) == 0 )
- + ulVoteCmd = VOTECMD_TIMELIMIT;
- + else if ( stricmp( "winlimit", pszCommand ) == 0 )
- + ulVoteCmd = VOTECMD_WINLIMIT;
- + else if ( stricmp( "duellimit", pszCommand ) == 0 )
- + ulVoteCmd = VOTECMD_DUELLIMIT;
- + else if ( stricmp( "pointlimit", pszCommand ) == 0 )
- + ulVoteCmd = VOTECMD_POINTLIMIT;
- + else
- + return ( false );
- + }
- // Then, make sure the parameter for each vote is valid.
- + int parameterInt = atoi( pszParameters );
- switch ( ulVoteCmd )
- {
- case VOTECMD_KICK:
- @@ -542,8 +556,11 @@ static bool callvote_CheckValidity( char
- // Compare the parameter to the version of the player's name without color codes.
- sprintf( szPlayerName, players[ulIdx].userinfo.netname );
- V_RemoveColorCodes( szPlayerName );
- - if ( stricmp( pszParameters, szPlayerName ) == 0 )
- + if ( stricmp( pszParameters, szPlayerName ) == 0 ){
- + // to prevent a player from escaping a kick vote by renaming, we store his ID at the beginning of the vote
- + g_ulKickVoteTargetPlayerIdx = ulIdx;
- break;
- + }
- }
- // If we didn't find the player, then don't allow the vote.
- @@ -565,57 +582,62 @@ static bool callvote_CheckValidity( char
- case VOTECMD_FRAGLIMIT:
- // Fraglimit must be from 0-255.
- - if (( atoi( pszParameters ) < 0 ) || ( atoi( pszParameters ) >= 256 ))
- + if (( parameterInt < 0 ) || ( parameterInt >= 256 ))
- return ( false );
- - else if ( atoi( pszParameters ) == 0 )
- + else if ( parameterInt == 0 )
- {
- if (( pszParameters[0] != '0' ) || ( strlen( pszParameters ) != 1 ))
- return ( false );
- }
- + sprintf( pszParameters, "%d", parameterInt );
- break;
- case VOTECMD_TIMELIMIT:
- - // Timelimit must be from 0-65536.
- - if (( atof( pszParameters ) < 0.0 ) || ( atoi( pszParameters ) >= 65536.0 ))
- + // Timelimit must be from 0-65535.
- + if (( parameterInt < 0 ) || ( parameterInt >= 65536 ))
- return ( false );
- - else if ( atoi( pszParameters ) == 0 )
- + else if ( parameterInt == 0 )
- {
- if (( pszParameters[0] != '0' ) || ( strlen( pszParameters ) != 1 ))
- return ( false );
- }
- + sprintf( pszParameters, "%d", parameterInt );
- break;
- case VOTECMD_WINLIMIT:
- // Winlimit must be from 0-255.
- - if (( atoi( pszParameters ) < 0 ) || ( atoi( pszParameters ) >= 256 ))
- + if (( parameterInt < 0 ) || ( parameterInt >= 256 ))
- return ( false );
- - else if ( atoi( pszParameters ) == 0 )
- + else if ( parameterInt == 0 )
- {
- if (( pszParameters[0] != '0' ) || ( strlen( pszParameters ) != 1 ))
- return ( false );
- }
- + sprintf( pszParameters, "%d", parameterInt );
- break;
- case VOTECMD_DUELLIMIT:
- // Duellimit must be from 0-255.
- - if (( atoi( pszParameters ) < 0 ) || ( atoi( pszParameters ) >= 256 ))
- + if (( parameterInt < 0 ) || ( parameterInt >= 256 ))
- return ( false );
- - else if ( atoi( pszParameters ) == 0 )
- + else if ( parameterInt == 0 )
- {
- if (( pszParameters[0] != '0' ) || ( strlen( pszParameters ) != 1 ))
- return ( false );
- }
- + sprintf( pszParameters, "%d", parameterInt );
- break;
- case VOTECMD_POINTLIMIT:
- - // Pointlimit must be from 0-65526.
- - if (( atoi( pszParameters ) < 0 ) || ( atoi( pszParameters ) >= 65536 ))
- + // Pointlimit must be from 0-65535.
- + if (( parameterInt < 0 ) || ( parameterInt >= 65536 ))
- return ( false );
- - else if ( atoi( pszParameters ) == 0 )
- + else if ( parameterInt == 0 )
- {
- if (( pszParameters[0] != '0' ) || ( strlen( pszParameters ) != 1 ))
- return ( false );
- }
- + sprintf( pszParameters, "%d", parameterInt );
- break;
- default:
- --- src/d_main.cpp
- +++ src/d_main.cpp
- @@ -928,8 +928,11 @@ void D_DoomLoop ()
- G_BuildTiccmd (&netcmds[consoleplayer][maketic%BACKUPTICS]);
- if (advancedemo)
- D_DoAdvanceDemo ();
- + // Console Ticker
- C_Ticker ();
- + // Menu Ticker
- M_Ticker ();
- + // Game Ticker
- G_Ticker ();
- gametic++;
- maketic++;
- @@ -2234,9 +2237,10 @@ void D_DoomMain (void)
- // voices. I never got around to writing the utility to do it, though.
- // And I probably never will now. But I know at least one person uses
- // it for something else, so this gets to stay here.
- - wad = BaseFileSearch ("zvox.wad", NULL);
- - if (wad)
- - D_AddFile (wad, false); // [BC]
- + // [BB] Loading zvox with Skulltag introduces a bag of problems and does't do any good.
- + //wad = BaseFileSearch ("zvox.wad", NULL);
- + //if (wad)
- + // D_AddFile (wad, false); // [BC]
- // [BC] Also load skulltag.wad.
- --- src/d_protocol.h
- +++ src/d_protocol.h
- @@ -69,14 +69,23 @@ struct zdemoheader_s {
- struct usercmd_s
- {
- - BYTE buttons;
- - BYTE pad;
- - short pitch; // up/down
- + // [BB] Added unused dummy variables to prevent sthook from working at all.
- + BYTE dummy1;
- + BYTE dummy2;
- + short dummy3;
- + short dummy4;
- + short dummy5;
- + short dummy6;
- + short dummy7;
- + short dummy8;
- short yaw; // left/right // If you haven't guessed, I just
- short roll; // tilt // ripped these from Quake2's usercmd.
- + short pitch; // up/down
- + BYTE buttons;
- + BYTE pad;
- + short upmove;
- short forwardmove;
- short sidemove;
- - short upmove;
- };
- typedef struct usercmd_s usercmd_t;
- --- src/g_level.cpp
- +++ src/g_level.cpp
- @@ -1928,9 +1928,9 @@ void G_DoCompleted (void)
- level.maptime = 0;
- }
- - if (!deathmatch &&
- - ((level.flags & LEVEL_NOINTERMISSION) ||
- - ((nextcluster == thiscluster) && (thiscluster->flags & CLUSTER_HUB))))
- + // [BB] LEVEL_NOINTERMISSION is also respected in deathmatch games
- + if ( ((level.flags & LEVEL_NOINTERMISSION) ||
- + ( !deathmatch && (nextcluster == thiscluster) && (thiscluster->flags & CLUSTER_HUB))))
- {
- G_WorldDone ();
- return;
- --- src/gi.cpp
- +++ src/gi.cpp
- @@ -293,7 +293,7 @@ gameinfo_t CommercialGameInfo =
- GI_MAPxx | GI_MENUHACK_COMMERCIAL,
- "TITLEPIC",
- "CREDIT",
- - "STCREDIT", // [BC] In Skulltag, show the ST credits screen, instead of the regular credits screen twice.
- + "CREDIT",
- "D_DM2TTL",
- 11,
- 0,
- --- src/r_data.cpp
- +++ src/r_data.cpp
- @@ -1011,7 +1011,6 @@ static void R_InitPatches ()
- "FINAL2",
- "E2END",
- // [BC] New Skulltag patches here.
- - "STCREDIT",
- "STFLA1",
- "STFLA2",
- "STFLA3",
- --- src/r_plane.cpp
- +++ src/r_plane.cpp
- @@ -68,7 +68,7 @@ planefunction_t ceilingfunc;
- #define MAXVISPLANES 128 /* must be a power of 2 */
- // Avoid infinite recursion with stacked sectors by limiting them.
- -#define MAX_SKYBOX_PLANES 100
- +#define MAX_SKYBOX_PLANES 1000
- // [RH] Allocate one extra for sky box planes.
- static visplane_t *visplanes[MAXVISPLANES+1]; // killough
- --- src/sv_commands.cpp
- +++ src/sv_commands.cpp
- @@ -170,6 +170,10 @@ void SERVERCOMMANDS_SpawnPlayer( ULONG u
- NETWORK_WriteLong( &clients[ulIdx].netbuf, players[ulPlayer].mo->z );
- NETWORK_WriteByte( &clients[ulIdx].netbuf, players[ulPlayer].userinfo.PlayerClass );
- }
- + NETWORK_CheckBuffer( ulPlayer, 3 );
- + NETWORK_WriteHeader( &clients[ulPlayer].netbuf, SVC_SETPLAYERHEALTH );
- + NETWORK_WriteByte( &clients[ulPlayer].netbuf, ulPlayer );
- + NETWORK_WriteShort( &clients[ulPlayer].netbuf, players[ulPlayer].health );
- }
- //*****************************************************************************
- --- src/sv_main.cpp
- +++ src/sv_main.cpp
- @@ -187,7 +187,7 @@ static ULONG g_ulMaxPacketSize = 0;
- //*****************************************************************************
- // CONSOLE VARIABLES
- -CVAR( String, sv_motd, "\\cgWelcome to this Skulltag v0.96d server!\n\n\\ccHope you enjoy your stay!\n\\ccIf you have any questions or requests,\n\\ccplease talk to the admin of this server. Thanks!", CVAR_ARCHIVE )
- +CVAR( String, sv_motd, "\\cgWelcome to this Skulltag v0.97c3 server!\n\n\\ccHope you enjoy your stay!\n\\ccIf you have any questions or requests,\n\\ccplease talk to the admin of this server. Thanks!", CVAR_ARCHIVE )
- CVAR( Bool, sv_defaultdmflags, true, 0 )
- CVAR( Bool, sv_forcepassword, false, CVAR_ARCHIVE )
- CVAR( Bool, sv_forcejoinpassword, false, CVAR_ARCHIVE )
- @@ -4386,6 +4386,34 @@ static bool server_VoteNo( void )
- //*****************************************************************************
- // CONSOLE COMMANDS
- +CCMD( kick_idx )
- +{
- + // Only the server can boot players!
- + if ( NETWORK_GetState( ) != NETSTATE_SERVER )
- + return;
- +
- + if ( argv.argc( ) < 2 )
- + {
- + Printf( "Usage: kick_idx <player Idx> [reason]\n" );
- + return;
- + }
- + ULONG ulIdx = atoi(argv[1]);
- + // check if the player idx is identifying an ingame player
- + if ( playeringame[ulIdx] == false )
- + return;
- +
- + // you can't kick admins
- + if ( SERVER_ADMIN_IsAdministrator( clients[ulIdx].address ))
- + return;
- +
- + // If we provided a reason, give it.
- + if ( argv.argc( ) >= 3 )
- + SERVER_KickPlayer( ulIdx, argv[2] );
- + else
- + SERVER_KickPlayer( ulIdx, "None given." );
- + return;
- +}
- +
- CCMD( kick )
- {
- ULONG ulIdx;
- --- src/version.h
- +++ src/version.h
- @@ -36,15 +36,14 @@
- // The svnrevision.h is automatically updated to grab the revision of
- // of the current source tree so that it can be included with version numbers.
- -// [BC] No need for SVN revision stuff.
- -//#include "svnrevision.h"
- +#include "svnrevision.h"
- /** Lots of different version numbers **/
- -#define DOTVERSIONSTR_NOREV "0.97c2"
- +#define DOTVERSIONSTR_NOREV "0.97c3"
- // The version string the user actually sees.
- -#define DOTVERSIONSTR DOTVERSIONSTR_NOREV
- +#define DOTVERSIONSTR DOTVERSIONSTR_NOREV "-r" SVN_REVISION_STRING
- // [BC] What version of ZDoom is this based off of?
- #define ZDOOMVERSIONSTR "2.1.7"
- @@ -53,13 +52,14 @@
- #define RC_FILEVERSION 0,0,0,SVN_REVISION_NUMBER
- #define RC_PRODUCTVERSION 0,0,0,97
- #define RC_FILEVERSION2 DOTVERSIONSTR
- -#define RC_PRODUCTVERSION2 "97c2"
- +#define RC_PRODUCTVERSION2 "97c3-alpha0"
- // Version identifier for network games.
- // Bump it every time you do a release unless you're certain you
- // didn't change anything that will affect network protocol.
- -// This has been updated for 97d.
- -#define NETGAMEVERSION 003
- +// NETGAMEVERSION 003 = 0.97c2
- +// NETGAMEVERSION 004 = 0.97c3
- +#define NETGAMEVERSION 004
- // Version stored in the ini's [LastRun] section.
- // Bump it if you made some configuration change that you want to
- @@ -76,7 +76,7 @@
- #define MINDEMOVERSION 0x205
- // [BC] This is what's displayed as the title for server windows.
- -#define SERVERCONSOLE_TITLESTRING "Skulltag v0.97c Server"
- +#define SERVERCONSOLE_TITLESTRING "Skulltag v0.97c3 Server"
- // SAVEVER is the version of the information stored in level snapshots.
- // Note that SAVEVER is not directly comparable to VERSION.
- --- src/win32/resource.h
- +++ src/win32/resource.h
- @@ -176,7 +176,7 @@
- #define IDCE_REFLECTIONSPANX 1103
- #define IDC_NO_FOV 1103
- #define IDCS_REFLECTIONSPANX 1104
- -#define IDC_NO_IMPALING 1104
- +#define IDC_NO_COOP_MP_WEAPON_SPAWN 1104
- #define IDCE_REFLECTIONSPANY 1105
- #define IDC_YES_WEAPONDROP 1105
- #define IDCS_REFLECTIONSPANY 1106
- @@ -184,23 +184,23 @@
- #define IDCE_REFLECTIONSPANZ 1107
- #define IDC_INSTANT_RETURN 1107
- #define IDCS_REFLECTIONSPANZ 1108
- -#define IDC_ALLOW_BASECOLORS 1108
- +#define IDC_DISALLOW_CROUCH 1108
- #define IDCE_REVERB 1109
- #define IDC_NO_TEAM_SWITCH 1109
- #define IDCS_REVERB 1110
- #define IDC_NO_TEAM_SELECT 1110
- #define IDCE_REVERBDELAY 1111
- -#define IDC_YES_RUNEDROP 1111
- +#define IDC_COOP_LOSE_INVENTORY 1111
- #define IDCS_REVERBDELAY 1112
- -#define IDC_YES_200MAX 1112
- +#define IDC_COOP_LOSE_ARMOR 1112
- #define IDCE_REVERBPANX 1113
- #define IDC_YES_DOUBLEAMMO 1113
- #define IDCS_REVERBPANX 1114
- -#define IDC_NO_CLEARFRAGS 1114
- +#define IDC_COOP_LOSE_POWERUPS 1114
- #define IDCE_REVERBPANY 1115
- #define IDC_YES_DEGENERATION 1115
- #define IDCS_REVERBPANY 1116
- -#define IDC_LOSEFRAG_ON_DEATH 1116
- +#define IDC_COOP_LOSE_AMMO 1116
- #define IDCE_REVERBPANZ 1117
- #define IDC_YES_FREEAIMBFG 1117
- #define IDCS_REVERBPANZ 1118
- @@ -245,7 +245,7 @@
- #define IDC_ORIGINALSOUNDCURVE 1138
- #define IDC_OLDINTERMISSION 1139
- #define IDC_DISABLESTEALTHMONSTERS 1140
- -#define IDC_DISABLECOOPERATIVEBACKPACKS 1141
- +#define IDC_COOP_HALVE_AMMO 1141
- #define IDC_TITLEBOX 1142
- #define IDC_SCOREBOARD1 1143
- #define IDC_SCOREBOARD2 1144
- --- src/win32/serverconsole.cpp
- +++ src/win32/serverconsole.cpp
- @@ -634,19 +634,19 @@ BOOL CALLBACK SERVERCONSOLE_DMFlagsCallb
- case IDC_NO_JUMP:
- case IDC_NO_FREELOOK:
- case IDC_NO_FOV:
- - case IDC_NO_IMPALING:
- + case IDC_NO_COOP_MP_WEAPON_SPAWN:
- case IDC_YES_WEAPONDROP:
- case IDC_NO_RUNES:
- case IDC_INSTANT_RETURN:
- - case IDC_ALLOW_BASECOLORS:
- + case IDC_DISALLOW_CROUCH:
- case IDC_NO_TEAM_SWITCH:
- case IDC_NO_TEAM_SELECT:
- - case IDC_YES_RUNEDROP:
- - case IDC_YES_200MAX:
- + case IDC_COOP_LOSE_INVENTORY:
- + case IDC_COOP_LOSE_ARMOR:
- case IDC_YES_DOUBLEAMMO:
- - case IDC_NO_CLEARFRAGS:
- + case IDC_COOP_LOSE_POWERUPS:
- case IDC_YES_DEGENERATION:
- - case IDC_LOSEFRAG_ON_DEATH:
- + case IDC_COOP_LOSE_AMMO:
- case IDC_YES_FREEAIMBFG:
- case IDC_BARRELS_RESPAWN:
- case IDC_NO_RESPAWN_INVUL:
- @@ -3292,6 +3292,51 @@ void SERVERCONSOLE_InitializeDMFlagsDisp
- else
- SendDlgItemMessage( hDlg, IDC_NO_FOV, BM_SETCHECK, BST_UNCHECKED, 0 );
- + if ( dmflags & DF_NO_COOP_WEAPON_SPAWN )
- + SendDlgItemMessage( hDlg, IDC_NO_COOP_MP_WEAPON_SPAWN, BM_SETCHECK, BST_CHECKED, 0 );
- + else
- + SendDlgItemMessage( hDlg, IDC_NO_COOP_MP_WEAPON_SPAWN, BM_SETCHECK, BST_UNCHECKED, 0 );
- +
- + if ( dmflags & DF_NO_CROUCH )
- + SendDlgItemMessage( hDlg, IDC_DISALLOW_CROUCH, BM_SETCHECK, BST_CHECKED, 0 );
- + else
- + SendDlgItemMessage( hDlg, IDC_DISALLOW_CROUCH, BM_SETCHECK, BST_UNCHECKED, 0 );
- +
- + if ( dmflags & DF_COOP_LOSE_INVENTORY )
- + SendDlgItemMessage( hDlg, IDC_COOP_LOSE_INVENTORY, BM_SETCHECK, BST_CHECKED, 0 );
- + else
- + SendDlgItemMessage( hDlg, IDC_COOP_LOSE_INVENTORY, BM_SETCHECK, BST_UNCHECKED, 0 );
- +
- + if ( dmflags & DF_COOP_LOSE_KEYS )
- + SendDlgItemMessage( hDlg, IDC_KEEP_KEYS, BM_SETCHECK, BST_CHECKED, 0 );
- + else
- + SendDlgItemMessage( hDlg, IDC_KEEP_KEYS, BM_SETCHECK, BST_UNCHECKED, 0 );
- +
- + if ( dmflags & DF_COOP_LOSE_WEAPONS )
- + SendDlgItemMessage( hDlg, IDC_KEEP_WEAPONS, BM_SETCHECK, BST_CHECKED, 0 );
- + else
- + SendDlgItemMessage( hDlg, IDC_KEEP_WEAPONS, BM_SETCHECK, BST_UNCHECKED, 0 );
- +
- + if ( dmflags & DF_COOP_LOSE_ARMOR )
- + SendDlgItemMessage( hDlg, IDC_COOP_LOSE_ARMOR, BM_SETCHECK, BST_CHECKED, 0 );
- + else
- + SendDlgItemMessage( hDlg, IDC_COOP_LOSE_ARMOR, BM_SETCHECK, BST_UNCHECKED, 0 );
- +
- + if ( dmflags & DF_COOP_LOSE_POWERUPS )
- + SendDlgItemMessage( hDlg, IDC_COOP_LOSE_POWERUPS, BM_SETCHECK, BST_CHECKED, 0 );
- + else
- + SendDlgItemMessage( hDlg, IDC_COOP_LOSE_POWERUPS, BM_SETCHECK, BST_UNCHECKED, 0 );
- +
- + if ( dmflags & DF_COOP_LOSE_AMMO )
- + SendDlgItemMessage( hDlg, IDC_COOP_LOSE_AMMO, BM_SETCHECK, BST_CHECKED, 0 );
- + else
- + SendDlgItemMessage( hDlg, IDC_COOP_LOSE_AMMO, BM_SETCHECK, BST_UNCHECKED, 0 );
- +
- + if ( dmflags & DF_COOP_HALVE_AMMO )
- + SendDlgItemMessage( hDlg, IDC_COOP_HALVE_AMMO, BM_SETCHECK, BST_CHECKED, 0 );
- + else
- + SendDlgItemMessage( hDlg, IDC_COOP_HALVE_AMMO, BM_SETCHECK, BST_UNCHECKED, 0 );
- +
- // DMFLAGS2
- if ( dmflags2 & DF2_YES_WEAPONDROP )
- SendDlgItemMessage( hDlg, IDC_YES_WEAPONDROP, BM_SETCHECK, BST_CHECKED, 0 );
- @@ -3343,6 +3388,7 @@ void SERVERCONSOLE_InitializeDMFlagsDisp
- else
- SendDlgItemMessage( hDlg, IDC_NO_RESPAWN_INVUL, BM_SETCHECK, BST_UNCHECKED, 0 );
- +
- if ( dmflags2 & DF2_COOP_SHOTGUNSTART )
- SendDlgItemMessage( hDlg, IDC_SHOTGUN_START, BM_SETCHECK, BST_CHECKED, 0 );
- else
- @@ -3364,10 +3410,10 @@ void SERVERCONSOLE_InitializeDMFlagsDisp
- else
- SendDlgItemMessage( hDlg, IDC_STAIRINDEX, BM_SETCHECK, BST_UNCHECKED, 0 );
- - if ( compatflags & COMPATF_LIMITPAIN )
- - SendDlgItemMessage( hDlg, IDC_LIMITPAIN, BM_SETCHECK, BST_CHECKED, 0 );
- + if ( compatflags & COMPATF_SILENTPICKUP )
- + SendDlgItemMessage( hDlg, IDC_SILENTPICKUP, BM_SETCHECK, BST_CHECKED, 0 );
- else
- - SendDlgItemMessage( hDlg, IDC_LIMITPAIN, BM_SETCHECK, BST_UNCHECKED, 0 );
- + SendDlgItemMessage( hDlg, IDC_SILENTPICKUP, BM_SETCHECK, BST_UNCHECKED, 0 );
- if ( compatflags & COMPATF_LIMITPAIN )
- SendDlgItemMessage( hDlg, IDC_LIMITPAIN, BM_SETCHECK, BST_CHECKED, 0 );
- @@ -3442,8 +3488,8 @@ void SERVERCONSOLE_InitializeDMFlagsDisp
- if ( compatflags & COMPATF_DISABLECOOPERATIVEBACKPACKS )
- SendDlgItemMessage( hDlg, IDC_DISABLECOOPERATIVEBACKPACKS, BM_SETCHECK, BST_CHECKED, 0 );
- else
- -*/
- SendDlgItemMessage( hDlg, IDC_DISABLECOOPERATIVEBACKPACKS, BM_SETCHECK, BST_UNCHECKED, 0 );
- +*/
- // Store current values for dmflags/dmflags2/compatflags.
- Val = dmflags.GetGenericRep( CVAR_Int );
- @@ -3502,6 +3548,24 @@ void SERVERCONSOLE_UpdateDMFlagsDisplay(
- ulDMFlags |= DF_NO_FREELOOK;
- if ( SendDlgItemMessage( hDlg, IDC_NO_FOV, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- ulDMFlags |= DF_NO_FOV;
- + if ( SendDlgItemMessage( hDlg, IDC_NO_COOP_MP_WEAPON_SPAWN, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_NO_COOP_WEAPON_SPAWN;
- + if ( SendDlgItemMessage( hDlg, IDC_DISALLOW_CROUCH, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_NO_CROUCH ;
- + if ( SendDlgItemMessage( hDlg, IDC_COOP_LOSE_INVENTORY, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_INVENTORY;
- + if ( SendDlgItemMessage( hDlg, IDC_KEEP_KEYS, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_KEYS;
- + if ( SendDlgItemMessage( hDlg, IDC_KEEP_WEAPONS, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_WEAPONS;
- + if ( SendDlgItemMessage( hDlg, IDC_COOP_LOSE_ARMOR, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_ARMOR;
- + if ( SendDlgItemMessage( hDlg, IDC_COOP_LOSE_POWERUPS, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_POWERUPS;
- + if ( SendDlgItemMessage( hDlg, IDC_COOP_LOSE_AMMO, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_AMMO;
- + if ( SendDlgItemMessage( hDlg, IDC_COOP_HALVE_AMMO, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_HALVE_AMMO;
- sprintf( szString, "dmflags: %d", ulDMFlags );
- SetDlgItemText( hDlg, IDC_DMFLAGS, szString );
- @@ -3625,6 +3689,24 @@ void SERVERCONSOLE_UpdateDMFlags( HWND h
- ulDMFlags |= DF_NO_FREELOOK;
- if ( SendDlgItemMessage( hDlg, IDC_NO_FOV, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- ulDMFlags |= DF_NO_FOV;
- + if ( SendDlgItemMessage( hDlg, IDC_NO_COOP_MP_WEAPON_SPAWN, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_NO_COOP_WEAPON_SPAWN;
- + if ( SendDlgItemMessage( hDlg, IDC_DISALLOW_CROUCH, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_NO_CROUCH;
- + if ( SendDlgItemMessage( hDlg, IDC_COOP_LOSE_INVENTORY, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_INVENTORY;
- + if ( SendDlgItemMessage( hDlg, IDC_KEEP_KEYS, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_KEYS;
- + if ( SendDlgItemMessage( hDlg, IDC_KEEP_WEAPONS, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_WEAPONS;
- + if ( SendDlgItemMessage( hDlg, IDC_COOP_LOSE_ARMOR, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_ARMOR;
- + if ( SendDlgItemMessage( hDlg, IDC_COOP_LOSE_POWERUPS, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_POWERUPS;
- + if ( SendDlgItemMessage( hDlg, IDC_COOP_LOSE_AMMO, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_LOSE_AMMO;
- + if ( SendDlgItemMessage( hDlg, IDC_COOP_HALVE_AMMO, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
- + ulDMFlags |= DF_COOP_HALVE_AMMO;
- // If the DMFlags have changed, send the update.
- if ( g_ulStoredDMFlags != ulDMFlags )
- --- src/win32/zdoom.rc
- +++ src/win32/zdoom.rc
- @@ -304,7 +304,7 @@ BEGIN
- VALUE "Comments", "Thanks to id Software for creating DOOM and then releasing the source code. Thanks also to TeamTNT for creating BOOM, which ZDoom (and thus Skulltag) is partially based on. Giant thanks to Randy Heit for his wonderful ZDoom.\0"
- VALUE "CompanyName", " \0"
- VALUE "FileDescription", "Skulltag\0"
- - VALUE "FileVersion", "v0.97c\0"
- + VALUE "FileVersion", "v0.97c3\0"
- VALUE "InternalName", "Skulltag\0"
- VALUE "LegalCopyright", "Copyright © 1993-1996, id Software & 1998-2006, Randy Heit\0"
- VALUE "LegalTrademarks", "Doom® is a Registered Trademark of id Software, Inc.\0"
- @@ -749,32 +749,32 @@ BEGIN
- BS_AUTOCHECKBOX | WS_TABSTOP,16,294,69,10
- CONTROL "Disallow fov",IDC_NO_FOV,"Button",BS_AUTOCHECKBOX |
- WS_TABSTOP,16,304,54,10
- - CONTROL "No impaling",IDC_NO_IMPALING,"Button",BS_AUTOCHECKBOX |
- - WS_TABSTOP,168,124,53,10
- + CONTROL "Don't spawn multi. weapons (CO-OP)",IDC_NO_COOP_MP_WEAPON_SPAWN,"Button",BS_AUTOCHECKBOX |
- + WS_TABSTOP,168,124,130,10
- CONTROL "Drop weapons (DM)",IDC_YES_WEAPONDROP,"Button",
- BS_AUTOCHECKBOX | WS_TABSTOP,168,134,79,10
- CONTROL "Don't spawn runes (DM)",IDC_NO_RUNES,"Button",
- BS_AUTOCHECKBOX | WS_TABSTOP,168,144,92,10
- CONTROL "Instant flag return (ST/CTF)",IDC_INSTANT_RETURN,"Button",
- BS_AUTOCHECKBOX | WS_TABSTOP,168,154,103,10
- - CONTROL "Allow base colors (ST/CTF)",IDC_ALLOW_BASECOLORS,"Button",
- + CONTROL "Disallow crouch",IDC_DISALLOW_CROUCH,"Button",
- BS_AUTOCHECKBOX | WS_TABSTOP,168,164,103,10
- CONTROL "No team switching (ST/CTF)",IDC_NO_TEAM_SWITCH,"Button",
- BS_AUTOCHECKBOX | WS_TABSTOP,168,174,106,10
- CONTROL "Server picks teams (ST/CTF)",IDC_NO_TEAM_SELECT,"Button",
- BS_AUTOCHECKBOX | WS_TABSTOP,168,184,108,10
- - CONTROL "Drop runes",IDC_YES_RUNEDROP,"Button",BS_AUTOCHECKBOX |
- - WS_TABSTOP,168,194,51,10
- - CONTROL "Force 200%/200% max (DM)",IDC_YES_200MAX,"Button",
- - BS_AUTOCHECKBOX | WS_TABSTOP,168,204,106,10
- + CONTROL "Lose inventory (CO-OP)",IDC_COOP_LOSE_INVENTORY,"Button",BS_AUTOCHECKBOX |
- + WS_TABSTOP,168,194,130,10
- + CONTROL "Lose armor (CO-OP)",IDC_COOP_LOSE_ARMOR,"Button",
- + BS_AUTOCHECKBOX | WS_TABSTOP,168,204,130,10
- CONTROL "Double ammo (DM)",IDC_YES_DOUBLEAMMO,"Button",
- BS_AUTOCHECKBOX | WS_TABSTOP,168,214,77,10
- - CONTROL "Don't clear frags (DM)",IDC_NO_CLEARFRAGS,"Button",
- - BS_AUTOCHECKBOX | WS_TABSTOP,168,224,85,10
- + CONTROL "Lose powerups (CO-OP)",IDC_COOP_LOSE_POWERUPS,"Button",
- + BS_AUTOCHECKBOX | WS_TABSTOP,168,224,130,10
- CONTROL "Degeneration",IDC_YES_DEGENERATION,"Button",
- BS_AUTOCHECKBOX | WS_TABSTOP,168,234,59,10
- - CONTROL "Lose frag on death (DM)",IDC_LOSEFRAG_ON_DEATH,"Button",
- - BS_AUTOCHECKBOX | WS_TABSTOP,168,244,93,10
- + CONTROL "Lose ammo (CO-OP)",IDC_COOP_LOSE_AMMO,"Button",
- + BS_AUTOCHECKBOX | WS_TABSTOP,168,244,130,10
- CONTROL "Allow BFG freeaiming",IDC_YES_FREEAIMBFG,"Button",
- BS_AUTOCHECKBOX | WS_TABSTOP,168,254,83,10
- CONTROL "Barrels respawn (DM)",IDC_BARRELS_RESPAWN,"Button",
- @@ -827,8 +827,8 @@ BEGIN
- "Button",BS_AUTOCHECKBOX | WS_TABSTOP,320,274,126,10
- CONTROL "Disable stealth monsters",IDC_DISABLESTEALTHMONSTERS,
- "Button",BS_AUTOCHECKBOX | WS_TABSTOP,320,284,92,10
- - CONTROL "Disable cooperative backpacks",
- - IDC_DISABLECOOPERATIVEBACKPACKS,"Button",BS_AUTOCHECKBOX |
- + CONTROL "Lose half ammo (CO-OP)",
- + IDC_COOP_HALVE_AMMO,"Button",BS_AUTOCHECKBOX |
- WS_TABSTOP,320,294,116,10
- END
- @@ -1042,7 +1042,7 @@ END
- IDD_SERVERDIALOG DIALOG DISCARDABLE 0, 0, 288, 322
- STYLE DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
- -CAPTION "Skulltag v0.96d Server"
- +CAPTION "Skulltag v0.97c3 Server"
- MENU IDR_MAINMENU
- FONT 8, "MS Sans Serif"
- BEGIN
- --- zdoom.vcproj
- +++ zdoom.vcproj
- @@ -201,6 +201,7 @@
- Name="VCLinkerTool"
- AdditionalOptions="/MACHINE:I386"
- AdditionalDependencies="gdi32.lib user32.lib comctl32.lib shell32.lib advapi32.lib comdlg32.lib ole32.lib dxguid.lib dsound.lib ddraw.lib dinput8.lib strmiids.lib wsock32.lib winmm.lib fmodex_vc.lib setupapi.lib ws2_32.lib opengl32.lib glu32.lib ilu.lib ilut.lib devil.lib fmodvc.lib $(NOINHERIT)"
- + OutputFile="..\$(ProjectName)-debug.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories=""
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement