Skip to content
Snippets Groups Projects
Select Git revision
  • fe7d19cc57ab40ad130f9941efcfef72c3e82daa
  • next default protected
  • 2214-pre3
  • just-in-case
  • fix-opengl-parameter-crash
  • 2214-pre2
  • 2214-pre1
  • delfile2
  • cleanupmusic
  • gametype-refactor-1
  • custom-map-names
  • extra-textures
  • clipmidtex
  • optimize-storewallrange
  • increase-maxconditionsets
  • acs
  • softcode-info
  • lua-gfx-2
  • better-player-states
  • lua-debug-library
  • any-resolution
  • SRB2_release_2.2.13
  • SRB2_release_2.2.12
  • SRB2_release_2.2.11
  • SRB2_release_2.2.10
  • SRB2_release_2.2.9
  • SRB2_release_2.2.8
  • SRB2_release_2.2.7
  • SRB2_release_2.2.6
  • SRB2_release_2.2.5
  • SRB2_release_2.2.4
  • SRB2_release_2.2.3
  • SRB2_release_2.2.2
  • SRB2_release_2.2.1
  • SRB2_release_2.2.0
  • SRB2_release_2.1.25
  • SRB2_release_2.1.24
  • SRB2_release_2.1.23
  • SRB2_release_2.1.22
  • SRB2_release_2.1.21
  • SRB2_release_2.1.20
41 results

filesrch.c

Blame
  • Forked from STJr / SRB2
    Source project has a limited visibility.
    d_netcmd.h 6.05 KiB
    // SONIC ROBO BLAST 2
    //-----------------------------------------------------------------------------
    // Copyright (C) 1998-2000 by DooM Legacy Team.
    // Copyright (C) 1999-2022 by Sonic Team Junior.
    //
    // This program is free software distributed under the
    // terms of the GNU General Public License, version 2.
    // See the 'LICENSE' file for more details.
    //-----------------------------------------------------------------------------
    /// \file  d_netcmd.h
    /// \brief host/client network commands
    ///        commands are executed through the command buffer
    ///        like console commands
    
    #ifndef __D_NETCMD__
    #define __D_NETCMD__
    
    #include "command.h"
    
    // console vars
    extern consvar_t cv_playername;
    extern consvar_t cv_playercolor;
    extern consvar_t cv_skin;
    // secondary splitscreen player
    extern consvar_t cv_playername2;
    extern consvar_t cv_playercolor2;
    extern consvar_t cv_skin2;
    // saved versions of the above six
    extern consvar_t cv_defaultplayercolor;
    extern consvar_t cv_defaultskin;
    extern consvar_t cv_defaultplayercolor2;
    extern consvar_t cv_defaultskin2;
    
    extern consvar_t cv_seenames, cv_allowseenames;
    extern consvar_t cv_usemouse;
    extern consvar_t cv_usejoystick;
    extern consvar_t cv_usejoystick2;
    #ifdef LJOYSTICK
    extern consvar_t cv_joyport;
    extern consvar_t cv_joyport2;
    #endif
    extern consvar_t cv_joyscale;
    extern consvar_t cv_joyscale2;
    
    // splitscreen with second mouse
    extern consvar_t cv_mouse2port;
    extern consvar_t cv_usemouse2;
    #if defined (__unix__) || defined (__APPLE__) || defined (UNIXCOMMON)
    extern consvar_t cv_mouse2opt;
    #endif
    
    // normally in p_mobj but the .h is not read
    extern consvar_t cv_itemrespawntime;
    extern consvar_t cv_itemrespawn;
    
    extern consvar_t cv_flagtime;
    
    extern consvar_t cv_touchtag;
    extern consvar_t cv_hidetime;
    
    extern consvar_t cv_friendlyfire;
    extern consvar_t cv_pointlimit;
    extern consvar_t cv_timelimit;
    extern consvar_t cv_numlaps;
    extern consvar_t cv_basenumlaps;
    extern UINT32 timelimitintics;
    extern consvar_t cv_allowexitlevel;
    
    extern consvar_t cv_hazardlog;
    
    extern consvar_t cv_autobalance;
    extern consvar_t cv_teamscramble;
    extern consvar_t cv_scrambleonchange;
    
    extern consvar_t cv_netstat;
    extern consvar_t cv_nettimeout;
    
    extern consvar_t cv_countdowntime;
    extern consvar_t cv_runscripts;
    extern consvar_t cv_mute;
    extern consvar_t cv_killingdead;
    extern consvar_t cv_pause;
    
    extern consvar_t cv_restrictskinchange, cv_allowteamchange, cv_respawntime;
    
    extern consvar_t cv_teleporters, cv_superring, cv_supersneakers, cv_invincibility;
    extern consvar_t cv_jumpshield, cv_watershield, cv_ringshield, cv_forceshield, cv_bombshield;
    extern consvar_t cv_1up, cv_eggmanbox;
    extern consvar_t cv_recycler;
    
    extern consvar_t cv_itemfinder;
    
    extern consvar_t cv_inttime, cv_coopstarposts, cv_cooplives, cv_advancemap, cv_playersforexit, cv_exitmove;
    extern consvar_t cv_overtime;
    extern consvar_t cv_startinglives;
    
    // for F_finale.c
    extern consvar_t cv_rollingdemos;
    
    extern consvar_t cv_ringslinger, cv_soundtest;
    
    extern consvar_t cv_specialrings, cv_powerstones, cv_matchboxes, cv_competitionboxes;
    
    extern consvar_t cv_maxping;
    extern consvar_t cv_pingtimeout;
    extern consvar_t cv_showping;
    
    
    extern consvar_t cv_skipmapcheck;
    
    extern consvar_t cv_sleep;
    
    extern consvar_t cv_perfstats;
    extern consvar_t cv_ps_samplesize;
    extern consvar_t cv_ps_descriptor;
    
    extern char timedemo_name[256];
    extern boolean timedemo_csv;
    extern char timedemo_csv_id[256];
    extern boolean timedemo_quit;
    
    extern consvar_t cv_freedemocamera;
    
    typedef enum
    {
    	XD_NAMEANDCOLOR = 1,
    	XD_WEAPONPREF,  // 2
    	XD_KICK,        // 3
    	XD_NETVAR,      // 4
    	XD_SAY,         // 5
    	XD_MAP,         // 6
    	XD_EXITLEVEL,   // 7
    	XD_ADDFILE,     // 8
    	XD_ADDFOLDER,   // 9
    	XD_PAUSE,       // 10
    	XD_ADDPLAYER,   // 11
    	XD_TEAMCHANGE,  // 12
    	XD_CLEARSCORES, // 13
    	XD_VERIFIED,    // 14
    	XD_RANDOMSEED,  // 15
    	XD_RUNSOC,      // 16
    	XD_REQADDFILE,  // 17
    	XD_REQADDFOLDER,// 18
    	XD_SETMOTD,     // 19
    	XD_SUICIDE,     // 20
    	XD_DEMOTED,     // 21
    	XD_LUACMD,      // 22
    	XD_LUAVAR,      // 23
    	XD_LUAFILE,     // 24
    	MAXNETXCMD
    } netxcmd_t;
    
    extern const char *netxcmdnames[MAXNETXCMD - 1];
    
    #if defined(_MSC_VER)
    #pragma pack(1)
    #endif
    
    #ifdef _MSC_VER
    #pragma warning(disable :  4214)
    #endif
    
    //Packet composition for Command_TeamChange_f() ServerTeamChange, etc.
    //bitwise structs make packing bits a little easier, but byte alignment harder?
    //todo: decide whether to make the other netcommands conform, or just get rid of this experiment.
    typedef struct {
    	UINT32 playernum    : 5;  // value 0 to 31
    	UINT32 newteam      : 5;  // value 0 to 31
    	UINT32 verification : 1;  // value 0 to 1
    	UINT32 autobalance  : 1;  // value 0 to 1
    	UINT32 scrambled    : 1;  // value 0 to 1
    } ATTRPACK changeteam_packet_t;
    
    #ifdef _MSC_VER
    #pragma warning(default : 4214)
    #endif
    
    typedef struct {
    	UINT16 l; // liitle endian
    	UINT16 b; // big enian
    } ATTRPACK changeteam_value_t;
    
    //Since we do not want other files/modules to know about this data buffer we union it here with a Short Int.
    //Other files/modules will hand the INT16 back to us and we will decode it here.
    //We don't have to use a union, but we would then send four bytes instead of two.
    typedef union {
    	changeteam_packet_t packet;
    	changeteam_value_t value;
    } ATTRPACK changeteam_union;
    
    #if defined(_MSC_VER)
    #pragma pack()
    #endif
    
    // add game commands, needs cleanup
    void D_RegisterServerCommands(void);
    void D_RegisterClientCommands(void);
    void CleanupPlayerName(INT32 playernum, const char *newname);
    boolean EnsurePlayerNameIsGood(char *name, INT32 playernum);
    void D_SendPlayerConfig(void);
    void Command_ExitGame_f(void);
    void Command_Retry_f(void);
    void D_GameTypeChanged(INT32 lastgametype); // not a real _OnChange function anymore
    void D_MapChange(INT32 pmapnum, INT32 pgametype, boolean pultmode, boolean presetplayers, INT32 pdelay, boolean pskipprecutscene, boolean pfromlevelselect);
    boolean IsPlayerAdmin(INT32 playernum);
    void SetAdminPlayer(INT32 playernum);
    void ClearAdminPlayers(void);
    void RemoveAdminPlayer(INT32 playernum);
    void ItemFinder_OnChange(void);
    void D_SetPassword(const char *pw);
    
    // used for the player setup menu
    UINT8 CanChangeSkin(INT32 playernum);
    
    #endif