]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/ctf.qc
remove g_ctf_win_mode
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / ctf.qc
index 93446ed5ba811bd430c8d0eb30b8dfe0f7b3e3ee..f5835377d982ea2ded4998baf629d3711883b787 100644 (file)
@@ -66,12 +66,12 @@ void ctf_captureshield_update(entity p, float dir)
                {
                        if(should)
                        {
-                               centerprint_atprio(p, CENTERPRIO_SHIELDING, "^3You are now ^4shielded^3 from the flag\n^3for ^1too many unsuccessful attempts^3 to capture.\n\n^3Make some defensive scores before trying again.");
+                               Send_CSQC_Centerprint_Generic(other, CPID_CTF_CAPTURESHIELD, "^3You are ^4shielded^3 from the flag\n^3for ^1too many unsuccessful attempts^3 to capture.\n\n^3Get some defensive scores before trying again.", 5, 0);
                                // TODO csqc notifier for this
                        }
                        else
                        {
-                               centerprint_atprio(p, CENTERPRIO_SHIELDING, "^3You are now free.\n\n^3Feel free to ^1try to capture^3 the flag again\n^3if you think you will succeed.");
+                               Send_CSQC_Centerprint_Generic(p, CPID_CTF_CAPTURESHIELD, "^3You are now free.\n\n^3Feel free to ^1try to capture^3 the flag again\n^3if you think you will succeed.", 5, 0);
                                // TODO csqc notifier for this
                        }
                        p.ctf_captureshielded = should;
@@ -88,6 +88,7 @@ float ctf_captureshield_customize()
        return TRUE;
 }
 
+.float ctf_captureshield_touch_msgtime;
 void ctf_captureshield_touch()
 {
        if not(other.ctf_captureshielded)
@@ -99,7 +100,9 @@ void ctf_captureshield_touch()
        mymid = (self.absmin + self.absmax) * 0.5;
        othermid = (other.absmin + other.absmax) * 0.5;
        Damage(other, self, self, 0, DEATH_HURTTRIGGER, mymid, normalize(othermid - mymid) * captureshield_force);
-       centerprint_atprio(other, CENTERPRIO_SHIELDING, "^3You are ^4shielded^3 from the flag\n^3for ^1too many unsuccessful attempts^3 to capture.\n\n^3Get some defensive scores before trying again.");
+       if (time - other.ctf_captureshield_touch_msgtime > 2)
+               Send_CSQC_Centerprint_Generic(other, CPID_CTF_CAPTURESHIELD, "^3You are ^4shielded^3 from the flag\n^3for ^1too many unsuccessful attempts^3 to capture.\n\n^3Get some defensive scores before trying again.", 5, 0);
+       other.ctf_captureshield_touch_msgtime = time;
 }
 
 void ctf_flag_spawnstuff()
@@ -132,10 +135,7 @@ void ctf_flag_spawnstuff()
 
 float ctf_score_value(string parameter)
 {
-       if(g_ctf_win_mode != 2)
-               return cvar(strcat("g_ctf_personal", parameter));
-       else
-               return cvar(strcat("g_ctf_flag", parameter));
+       return cvar(strcat("g_ctf_personal", parameter));
 }
 
 void FakeTimeLimit(entity e, float t)
@@ -190,7 +190,7 @@ void place_flag()
        }
 
        InitializeEntity(self, ctf_flag_spawnstuff, INITPRIO_SETLOCATION);
-};
+}
 
 void LogCTF(string mode, float flagteam, entity actor)
 {
@@ -229,7 +229,7 @@ void RegenFlag(entity e)
        e.cnt = FLAG_BASE;
        e.owner = world;
        e.flags = FL_ITEM | FL_NOTARGET; // clear FL_ONGROUND and any other junk
-};
+}
 
 void ReturnFlag(entity e)
 {
@@ -250,11 +250,11 @@ void ReturnFlag(entity e)
        }
        e.owner = world;
        RegenFlag(e);
-};
+}
 
 void DropFlag(entity e, entity penalty_receiver, entity attacker)
 {
-       local entity p;
+       entity p;
 
        if(e.classname != "item_flag_team")
        {
@@ -326,11 +326,11 @@ void DropFlag(entity e, entity penalty_receiver, entity attacker)
        tracebox(e.origin, e.mins, e.maxs, e.origin, TRUE, e);
        if(trace_startsolid)
                dprint("FLAG FALLTHROUGH will happen SOON\n");
-};
+}
 
 void FlagThink()
 {
-       local entity e;
+       entity e;
 
        self.nextthink = time + 0.1;
 
@@ -399,7 +399,7 @@ void FlagThink()
                DropFlag(self, world, world);
                return;
        }
-};
+}
 
 float ctf_usekey()
 {
@@ -414,15 +414,15 @@ float ctf_usekey()
 void flag_cap_ring_spawn(vector org)
 {
        shockwave_spawn("models/ctf/shockwavetransring.md3", org - '0 0 15', -0.8, 0, 1);
-};
+}
 
 void FlagTouch()
 {
        if(gameover) return;
 
-       local float t;
-       local entity player;
-       local string s, s0, h0, h1;
+       float t;
+       entity player;
+       string s, s0, h0, h1;
        if (other.classname != "player")
                return;
        if (other.health < 1) // ignore dead players
@@ -632,7 +632,7 @@ void FlagTouch()
                        WaypointSprite_AttachCarrier("flagcarrier", other, RADARICON_FLAGCARRIER, '1 1 0');
                }
        }
-};
+}
 
 /*QUAKED spawnfunc_info_player_team1 (1 0 0) (-16 -16 -24) (16 16 24)
 CTF Starting point for a player
@@ -651,8 +651,8 @@ void spawnfunc_info_player_team1()
        }
        self.team = COLOR_TEAM1; // red
        spawnfunc_info_player_deathmatch();
-};
-//self.team = 4;self.classname = "info_player_start";spawnfunc_info_player_start();};
+}
+//self.team = 4;self.classname = "info_player_start";spawnfunc_info_player_start();}
 
 /*QUAKED spawnfunc_info_player_team2 (1 0 0) (-16 -16 -24) (16 16 24)
 CTF Starting point for a player in
@@ -671,8 +671,8 @@ void spawnfunc_info_player_team2()
        }
        self.team = COLOR_TEAM2; // blue
        spawnfunc_info_player_deathmatch();
-};
-//self.team = 13;self.classname = "info_player_start";spawnfunc_info_player_start();};
+}
+//self.team = 13;self.classname = "info_player_start";spawnfunc_info_player_start();}
 
 /*QUAKED spawnfunc_info_player_team3 (1 0 0) (-16 -16 -24) (16 16 24)
 CTF Starting point for a player in
@@ -691,7 +691,7 @@ void spawnfunc_info_player_team3()
        }
        self.team = COLOR_TEAM3; // yellow
        spawnfunc_info_player_deathmatch();
-};
+}
 
 
 /*QUAKED spawnfunc_info_player_team4 (1 0 0) (-16 -16 -24) (16 16 24)
@@ -711,7 +711,7 @@ void spawnfunc_info_player_team4()
        }
        self.team = COLOR_TEAM4; // purple
        spawnfunc_info_player_deathmatch();
-};
+}
 
 void item_flag_reset()
 {
@@ -738,7 +738,7 @@ void item_flag_postspawn()
                self.glow_size = 25;
                self.glow_trail = 1;
        }
-};
+}
 
 /*QUAKED spawnfunc_item_flag_team1 (0 0.5 0.8) (-48 -48 -37) (48 48 37)
 CTF flag for team one (Red).
@@ -838,7 +838,7 @@ void spawnfunc_item_flag_team1()
        precache_model("models/ctf/shockwavetransring.md3");
 
        self.reset = item_flag_reset;
-};
+}
 
 /*QUAKED spawnfunc_item_flag_team2 (0 0.5 0.8) (-48 -48 -24) (48 48 64)
 CTF flag for team two (Blue).
@@ -937,7 +937,7 @@ void spawnfunc_item_flag_team2()
        precache_model("models/ctf/shockwavetransring.md3");
 
        self.reset = item_flag_reset;
-};
+}
 
 
 /*QUAKED spawnfunc_ctf_team (0 .5 .8) (-16 -16 -24) (16 16 32)
@@ -964,12 +964,12 @@ void spawnfunc_ctf_team()
        }
        self.classname = "ctf_team";
        self.team = self.cnt + 1;
-};
+}
 
 // code from here on is just to support maps that don't have control point and team entities
 void ctf_spawnteam (string teamname, float teamcolor)
 {
-       local entity oldself;
+       entity oldself;
        oldself = self;
        self = spawn();
        self.classname = "ctf_team";
@@ -979,7 +979,7 @@ void ctf_spawnteam (string teamname, float teamcolor)
        spawnfunc_ctf_team();
 
        self = oldself;
-};
+}
 
 // spawn some default teams if the map is not set up for ctf
 void ctf_spawnteams()
@@ -990,7 +990,7 @@ void ctf_spawnteams()
 
        ctf_spawnteam("Red", COLOR_TEAM1 - 1);
        ctf_spawnteam("Blue", COLOR_TEAM2 - 1);
-};
+}
 
 void ctf_delayedinit()
 {
@@ -999,7 +999,7 @@ void ctf_delayedinit()
                ctf_spawnteams();
 
        ScoreRules_ctf();
-};
+}
 
 void ctf_init()
 {
@@ -1009,12 +1009,7 @@ void ctf_init()
        captureshield_min_negscore = autocvar_g_ctf_shield_min_negscore;
        captureshield_max_ratio = autocvar_g_ctf_shield_max_ratio;
        captureshield_force = autocvar_g_ctf_shield_force;
-
-
-//#NO AUTOCVARS START
-       g_ctf_win_mode = cvar("g_ctf_win_mode");
-//#NO AUTOCVARS END
-};
+}
 
 void ctf_setstatus2(entity flag, float shift)
 {
@@ -1029,7 +1024,7 @@ void ctf_setstatus2(entity flag, float shift)
        {
                // no status bits
        }
-};
+}
 
 void ctf_setstatus()
 {
@@ -1039,7 +1034,7 @@ void ctf_setstatus()
        self.items &~= IT_BLUE_FLAG_LOST;
        self.items &~= IT_CTF_SHIELDED;
 
-       local entity flag;
+       entity flag;
        float redflags, blueflags;
 
        if(self.ctf_captureshielded)
@@ -1075,9 +1070,9 @@ void ctf_setstatus()
                                ctf_setstatus2(flag, IT_BLUE_FLAG_TAKEN);
                }
        }
-};
+}
 /*
-entity(float cteam) ctf_team_has_commander =
+entity ctf_team_has_commander(float cteam)
 {
        entity pl;
        if(cteam != COLOR_TEAM1 || cteam != COLOR_TEAM2)
@@ -1089,15 +1084,15 @@ entity(float cteam) ctf_team_has_commander =
                }
        }
        return world;
-};
+}
 
-void(entity e, float st) ctf_setstate =
+void ctf_setstate(entity e, float st)
 {
        e.ctf_state = st;
        ++e.version;
-};
+}
 
-void(float cteam) ctf_new_commander =
+void ctf_new_commander(float cteam)
 {
        entity pl, plmax;
 
@@ -1120,9 +1115,9 @@ void(float cteam) ctf_new_commander =
        ctf_setstate(plmax, 3);
        sprint(plmax, "^3You're the commander now!\n");
        centerprint(plmax, "^3You're the commander now!\n");
-};
+}
 
-void() ctf_clientconnect =
+void ctf_clientconnect()
 {
        self.iscommander = FALSE;
 
@@ -1136,9 +1131,9 @@ void() ctf_clientconnect =
        if(self.team != 0 && self.classname == "player" && !ctf_team_has_commander(self.team)) {
                ctf_new_commander(self.team);
        }
-};
+}
 
-void() ctf_playerchanged =
+void ctf_playerchanged()
 {
        if(!self.team || self.classname != "player") {
                ctf_setstate(self, -1);
@@ -1161,18 +1156,18 @@ void() ctf_playerchanged =
        self.team_saved = self.team;
 
        ctf_new_commander(self.team);
-};
+}
 
-void() ctf_clientdisconnect =
+void ctf_clientdisconnect()
 {
        if(self.iscommander)
        {
                ctf_new_commander(self.team);
        }
-};
+}
 
 entity GetPlayer(string);
-float() ctf_clientcommand =
+float ctf_clientcommand()
 {
        entity e;
        if(argv(0) == "order") {
@@ -1213,5 +1208,5 @@ float() ctf_clientcommand =
                return TRUE;
        }
        return FALSE;
-};
+}
 */