X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fdefs.qh;h=dabfa9803258da051ab66ef7722616b514477df2;hb=a8e4e2497120bb8b8b3600f3b48276148c83285a;hp=5e5c8c7ba6f089720458b5526292b18f0ed5c9b9;hpb=a2d236b2a1dbea22bb6eea20e8e1ac22ad919cd8;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/defs.qh b/qcsrc/server/defs.qh index 5e5c8c7ba..dabfa9803 100644 --- a/qcsrc/server/defs.qh +++ b/qcsrc/server/defs.qh @@ -1,6 +1,6 @@ #define INDEPENDENT_ATTACK_FINISHED -float require_spawnfunc_prefix; // if this float exists, only functions with spawnfunc_ name prefix qualify as spawn functions +noref float require_spawnfunc_prefix; // if this float exists, only functions with spawnfunc_ name prefix qualify as spawn functions #define BUTTON_ATCK button0 #define BUTTON_JUMP button2 @@ -18,23 +18,23 @@ float require_spawnfunc_prefix; // if this float exists, only functions with spa float ctf_score_value(string parameter); -float g_dm, g_domination, g_ctf, g_tdm, g_keyhunt, g_onslaught, g_assault, g_arena, g_ca, g_lms, g_runematch, g_race, g_nexball, g_cts, g_freezetag, g_keepaway; float g_cloaked, g_footsteps, g_jump_grunt, g_grappling_hook, g_midair, g_minstagib, g_pinata, g_norecoil, g_minstagib_invis_alpha, g_bloodloss; float g_warmup_limit; float g_warmup_allguns; float g_warmup_allow_timeout; -float g_ctf_win_mode; float g_ctf_ignore_frags; float g_ctf_reverse; float g_race_qualifying; float inWarmupStage; float g_pickup_respawntime_weapon; +float g_pickup_respawntime_superweapon; float g_pickup_respawntime_ammo; float g_pickup_respawntime_short; float g_pickup_respawntime_medium; float g_pickup_respawntime_long; float g_pickup_respawntime_powerup; float g_pickup_respawntimejitter_weapon; +float g_pickup_respawntimejitter_superweapon; float g_pickup_respawntimejitter_ammo; float g_pickup_respawntimejitter_short; float g_pickup_respawntimejitter_medium; @@ -91,9 +91,8 @@ float maxclients; .float crouch; // Crouching or not? .float strength_finished; -//.float speed_finished; .float invincible_finished; -//.float slowmo_finished; +.float superweapons_finished; .vector finaldest, finalangle; //plat.qc stuff .void() think1; @@ -106,8 +105,8 @@ float maxclients; //.float cnt2; .float play_time; +.float respawn_time; .float death_time; -.float dead_frame; .float fade_time; .float fade_rate; @@ -142,13 +141,21 @@ float maxclients; .vector anim_runbackwards; // player running backward .vector anim_strafeleft; // player shuffling left quickly .vector anim_straferight; // player shuffling right quickly -.vector anim_dead1; // player dead (must be identical to last frame of die1) -.vector anim_dead2; // player dead (must be identical to last frame of die2) +//.vector anim_dead1; // player dead (must be identical to last frame of die1) +//.vector anim_dead2; // player dead (must be identical to last frame of die2) .vector anim_forwardright; // player running forward and right .vector anim_forwardleft; // player running forward and left .vector anim_backright; // player running backward and right .vector anim_backleft; // player running back and left .vector anim_melee; // player doing the melee action +.vector anim_duck; // player doing the melee action +.vector anim_duckwalkbackwards; +.vector anim_duckwalkstrafeleft; +.vector anim_duckwalkstraferight; +.vector anim_duckwalkforwardright; +.vector anim_duckwalkforwardleft; +.vector anim_duckwalkbackright; +.vector anim_duckwalkbackleft; // weapon animation vectors: .vector anim_fire1; @@ -171,6 +178,9 @@ void setanim(entity e, vector anim, float looping, float override, float restart //.float chasecam; .float damageforcescale; +#define MIN_DAMAGEEXTRARADIUS 2 +#define MAX_DAMAGEEXTRARADIUS 16 +.float damageextraradius; //.float gravity; @@ -246,11 +256,14 @@ float alreadychangedlevel; .float runes; +// Keys player is holding +.float itemkeys; +// message delay for func_door locked by keys and key locks +// this field is used on player entities +.float key_door_messagetime; -.float version; -// minstagib vars -.float jump_interval; // laser refire +.float version; //swamp .float in_swamp; // bool @@ -259,11 +272,6 @@ float alreadychangedlevel; // footstep interval .float nextstep; -.float ready; -#define RESTART_COUNTDOWN 10 -float restart_mapalreadyrestarted; //bool, indicates whether reset_map() was already executed -entity restartTimer; -void restartTimer_Think(); float blockSpectators; //if set, new or existing spectators or observers will be removed unless they become a player within g_maxplayers_spectator_blocktime seconds .float spectatortime; //point in time since the client is spectating or observing void checkSpectatorBlock(); @@ -272,24 +280,9 @@ void checkSpectatorBlock(); .float jointime; // time of joining .float alivetime; // time of being alive -float nJoinAllowed(float includeMe); +float nJoinAllowed(entity ignore); #define PREVENT_JOIN_TEXT "^1You may not join the game at this time.\n\nThe player limit reached maximum capacity." -//sv_timeout: pauses the game by setting the gamespeed to a really low value (see TIMEOUT_SLOWMO_VALUE) -#define TIMEOUT_SLOWMO_VALUE 0.0001 -float sys_frametime; // gets initialised in worlspawn, saves the value from autocvar_sys_ticrate -float remainingTimeoutTime; // contains the time in seconds that the active timeout has left -float remainingLeadTime; // contains the number of seconds left of the leadtime (before the timeout starts) -float timeoutStatus; // (values: 0, 1, 2) contains whether a timeout is not active (0), was called but still at leadtime (1) or is active (2) -.float allowedTimeouts; // contains the number of allowed timeouts for each player -entity timeoutInitiator; // contains the entity of the player who started the last timeout -float orig_slowmo; // contains the value of autocvar_slowmo so that, after timeout finished, it isn't set to slowmo 1 necessarily -.vector lastV_angle; //used when pausing the game in order to force the player to keep his old view angle fixed -entity timeoutHandler; //responsible for centerprinting the timeout countdowns and playing sounds -void timeoutHandler_Think(); -void evaluateTimeout(); -void evaluateTimein(); - .float spawnshieldtime; .float lms_nextcheck; @@ -313,7 +306,6 @@ float default_weapon_alpha; .float() customizeentityforclient; .float cvar_cl_handicap; -.float cvar_cl_playerdetailreduction; .float cvar_cl_clippedspectating; .float cvar_cl_autoscreenshot; .float cvar_cl_movement_track_canjump; @@ -327,8 +319,6 @@ float default_weapon_alpha; .float cvar_cl_forceplayermodelsfromxonotic; float sv_clforceplayermodels; #endif -float sv_loddistance1; -float sv_loddistance2; .float cvar_cl_gunalign; .float cvar_cl_noantilag; @@ -343,12 +333,6 @@ void AnnounceTo(entity e, string snd); .float version_nagtime; -.float modelindex_lod0; -.float modelindex_lod0_from_xonotic; -.float skinindex; -.float modelindex_lod1; -.float modelindex_lod2; - #define NUM_JUMPPADSUSED 3 .float jumppadcount; .entity jumppadsused[NUM_JUMPPADSUSED]; @@ -358,7 +342,6 @@ string gamemode_name; float startitem_failed; void DropFlag(entity flag, entity penalty_receiver, entity attacker); -void DropBall(entity ball, vector org, vector vel); void DropAllRunes(entity pl); @@ -366,13 +349,12 @@ typedef .float floatfield; floatfield Item_CounterField(float it); float W_AmmoItemCode(float wpn); -float W_WeaponBit(float wpn); string W_Name(float weaponid); void FixIntermissionClient(entity e); void FixClientCvars(entity e); -float weaponsInMap; +WEPSET_DECLARE_A(weaponsInMap); .float respawn_countdown; // next number to count @@ -561,7 +543,7 @@ void SUB_UseTargets(); void ClientData_Touch(entity e); -vector debug_shotorg; // if non-zero, overrides the shot origin of all weapons +//vector debug_shotorg; // if non-zero, overrides the shot origin of all weapons .float wasplayer; @@ -611,6 +593,8 @@ float client_cefc_accumulatortime; .float clip_size; .float minelayer_mines; +.float grab; // 0 = can't grab, 1 = owner can grab, 2 = owner and team mates can grab, 3 = anyone can grab + #define PROJECTILE_MAKETRIGGER(e) (e).solid = SOLID_CORPSE; (e).dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_CORPSE // when doing this, hagar can go through clones // #define PROJECTILE_MAKETRIGGER(e) (e).solid = SOLID_BBOX @@ -656,6 +640,8 @@ float serverflags; .float team_forced; // can be a team number to force a team, or 0 for default action, or -1 for forced spectator +.float player_blocked; + .float freezetag_frozen; .float freezetag_revive_progress; @@ -663,3 +649,10 @@ float serverflags; .float misc_bulletcounter; // replaces uzi & hlac bullet counter. void PlayerUseKey(); + +typedef vector(entity player, entity spot, vector current) spawn_evalfunc_t; +.spawn_evalfunc_t spawn_evalfunc; + +.entity conveyor; + +string modname;