]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Merge branch 'master' of ssh://git.xonotic.org/xonotic-data.pk3dir
authorRudolf Polzer <divverent@alientrap.org>
Thu, 1 Sep 2011 11:22:40 +0000 (13:22 +0200)
committerRudolf Polzer <divverent@alientrap.org>
Thu, 1 Sep 2011 11:22:40 +0000 (13:22 +0200)
12 files changed:
defaultXonotic.cfg
hud_luminos.cfg
hud_luminos_minimal.cfg
hud_luminos_old.cfg
hud_luminos_xhair_minimal.cfg
hud_nexuiz.cfg
qcsrc/client/autocvars.qh
qcsrc/client/shownames.qc
qcsrc/client/shownames.qh
qcsrc/server/cl_client.qc
qcsrc/server/ent_cs.qc
qcsrc/server/t_items.qc

index 631731f78f7ce8987850924b19c3f1f5c4df8831..865f6a2096c8197e188c75ec1c09c4e6d94b90cc 100644 (file)
@@ -1526,6 +1526,7 @@ seta hud_contents_water_color "0.4 0.3 0.3"
 
 seta hud_shownames 1 "draw names and health/armor of nearby players"
 seta hud_shownames_enemies 2 "1 = draw names of enemies you point at (TODO), 2 = draw names of all enemies in view"
+seta hud_shownames_self 0 "also include your own name to be shown when third person camera mode is on (chase_active/cl_eventchase)"
 seta hud_shownames_status 1 "1 = draw health/armor status of teammates"
 seta hud_shownames_statusbar_height 4 "height of status bar"
 seta hud_shownames_aspect 8 "aspect ratio of total drawing area per name"
index de4dd05a852441dcd8c85a74b8a8d7697262c38d..0e4e4495b50bfe0a6433806b45f0e303655a38d8 100644 (file)
@@ -232,7 +232,7 @@ seta hud_panel_physics_progressbar "1"
 seta hud_panel_physics_text "1"
 
 seta hud_panel_centerprint 1
-seta hud_panel_centerprint_pos "0.180000 0.260000"
+seta hud_panel_centerprint_pos "0.175000 0.260000"
 seta hud_panel_centerprint_size "0.650000 0.210000"
 seta hud_panel_centerprint_bg "0"
 seta hud_panel_centerprint_bg_color ""
index 52d2aef67e98ba520abef50fa35ff2252d0746f8..9d255bb4acba033271d12e8b6de8371f11149bee 100644 (file)
@@ -232,7 +232,7 @@ seta hud_panel_physics_progressbar "3"
 seta hud_panel_physics_text "2"
 
 seta hud_panel_centerprint 1
-seta hud_panel_centerprint_pos "0.180000 0.260000"
+seta hud_panel_centerprint_pos "0.175000 0.260000"
 seta hud_panel_centerprint_size "0.650000 0.210000"
 seta hud_panel_centerprint_bg "0"
 seta hud_panel_centerprint_bg_color ""
index 8ff2dd2a82aab3de02637ca12822368413cba0ed..4308c0b4feb4646b99d23bb8aeff667849e949fd 100644 (file)
@@ -232,7 +232,7 @@ seta hud_panel_physics_progressbar "1"
 seta hud_panel_physics_text "1"
 
 seta hud_panel_centerprint 1
-seta hud_panel_centerprint_pos "0.180000 0.260000"
+seta hud_panel_centerprint_pos "0.175000 0.260000"
 seta hud_panel_centerprint_size "0.650000 0.210000"
 seta hud_panel_centerprint_bg "0"
 seta hud_panel_centerprint_bg_color ""
index 1d70bc03e9fe140e9f59163dd8106186de0e16f6..2aca597f6ede5adac177fb42198977e504546f93 100644 (file)
@@ -232,7 +232,7 @@ seta hud_panel_physics_progressbar "3"
 seta hud_panel_physics_text "2"
 
 seta hud_panel_centerprint 1
-seta hud_panel_centerprint_pos "0.180000 0.260000"
+seta hud_panel_centerprint_pos "0.175000 0.260000"
 seta hud_panel_centerprint_size "0.650000 0.210000"
 seta hud_panel_centerprint_bg "0"
 seta hud_panel_centerprint_bg_color ""
index 3b17d6cc446bfe9d9fd66231501e0b82fbba2e45..705af40a12ff230625c1ac3762524954050943aa 100644 (file)
@@ -232,7 +232,7 @@ seta hud_panel_physics_progressbar "3"
 seta hud_panel_physics_text "2"
 
 seta hud_panel_centerprint 1
-seta hud_panel_centerprint_pos "0.180000 0.260000"
+seta hud_panel_centerprint_pos "0.175000 0.260000"
 seta hud_panel_centerprint_size "0.650000 0.210000"
 seta hud_panel_centerprint_bg "0"
 seta hud_panel_centerprint_bg_color ""
index 2f2b80cc5971eb4ab07dc93f33e2edbf8515fdb7..bf425fc477921897eefd7cb7bfeaabb02d7feed8 100644 (file)
@@ -310,6 +310,7 @@ float autocvar_hud_showbinds;
 float autocvar_hud_showbinds_limit;
 float autocvar_hud_shownames;
 float autocvar_hud_shownames_enemies;
+float autocvar_hud_shownames_self;
 float autocvar_hud_shownames_status;
 float autocvar_hud_shownames_statusbar_height;
 float autocvar_hud_shownames_aspect;
index e3c6f3d4bda4575b2ee531d8e251c8d3953039fc..b13f6122c268cdaaa1b4cd18a0783ff70387d82d 100644 (file)
@@ -3,15 +3,18 @@
 // self.healthvalue
 // self.armorvalue
 // self.sameteam = player is on same team as local client
+// self.fadedelay = time to wait before name tag starts fading in for enemies
 //
 const float SHOWNAMES_FADESPEED = 4;
+const float SHOWNAMES_FADEDELAY = 0.5;
 void Draw_ShowNames(entity ent)
 {
        if(!autocvar_hud_shownames)
                return;
-
-       if(ent.sv_entnum == player_localentnum && !autocvar_chase_active)
-               return;
+       
+       if((ent.sv_entnum == player_localentnum) || (ent.sv_entnum == spectatee_status)) // ent is me or person i'm spectating
+               if not (autocvar_hud_shownames_self && autocvar_chase_active) 
+                       return;
 
        makevectors(view_angles);
 
@@ -59,19 +62,27 @@ void Draw_ShowNames(entity ent)
                }
 
                onscreen = (o_z >= 0 && o_x >= 0 && o_y >= 0 && o_x <= vid_conwidth && o_y <= vid_conheight);
+               
+               if(!ent.fadedelay)
+                       ent.fadedelay = time + SHOWNAMES_FADEDELAY;
 
                if(!ent.sameteam && (!onscreen || !hit)) // out of view, fade out
-                       ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * frametime);
+               { 
+                       ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * frametime); 
+                       ent.fadedelay = 0; // reset fade in delay, enemy has left the view
+               }
                else if(ent.healthvalue < 1) // dead player, fade out slowly
-                       ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * 0.25 * frametime);
+                       ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * 0.25 * frametime); 
                else if(overlap) // tag overlap detected, fade out
-                       ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * frametime);
-               else // fade in
+                       ent.alpha = max(0, ent.alpha - SHOWNAMES_FADESPEED * frametime); 
+               else if(ent.sameteam) // fade in for team mates
+                       ent.alpha = min(1, ent.alpha + SHOWNAMES_FADESPEED * frametime);
+               else if(time > ent.fadedelay) // fade in for enemies
                        ent.alpha = min(1, ent.alpha + SHOWNAMES_FADESPEED * frametime);
 
                if(!ent.alpha)
                        return;
-
+               
                float dist;
                dist = vlen(ent.origin - view_origin);
 
index 50380e8209531ce2552bd974dbff5e43ac4d8916..d30f1acce3801f0d4b948465fcb518286ac317a7 100644 (file)
@@ -1,4 +1,5 @@
 .float healthvalue;
 .float armorvalue;
 .float sameteam;
+.float fadedelay;
 
index 26d37400fd6449a9935c51b0b579d2fada848dbf..6ebee9fa1de67cfcdbd00e7d58ea429521593dc0 100644 (file)
@@ -2537,6 +2537,42 @@ void checkSpectatorBlock() {
        }
 }
 
+.float motd_actived_time; // used for both motd and campaign_message
+void PrintWelcomeMessage()
+{
+       if (self.motd_actived_time == 0) { // is there already a message showing?
+               if (autocvar_g_campaign) {
+                       if ((self.classname == "player" && self.BUTTON_INFO) || (self.classname != "player")) {
+                               self.motd_actived_time = time;
+                               Send_CSQC_Centerprint_Generic(self, CPID_MOTD, campaign_message, -1, 0);
+                       }
+               } else {
+                       if ((time - self.jointime > autocvar_welcome_message_time) && self.BUTTON_INFO) {
+                               self.motd_actived_time = time;
+                               Send_CSQC_Centerprint_Generic(self, CPID_MOTD, getwelcomemessage(), -1, 0);
+                       }
+               }
+       } else { // showing MOTD or campaign message
+               if (autocvar_g_campaign) {
+                       if (self.BUTTON_INFO)
+                               self.motd_actived_time = time;
+                       else if ((time - self.motd_actived_time > 2) && self.classname == "player") { // hide it some seconds after BUTTON_INFO has been released
+                               self.motd_actived_time = 0;
+                               Send_CSQC_Centerprint_Generic_Expire(self, CPID_MOTD);
+                       }
+               } else {
+                       if ((time - self.jointime) > autocvar_welcome_message_time) {
+                               if (self.BUTTON_INFO)
+                                       self.motd_actived_time = time;
+                               else if (time - self.motd_actived_time > 2) { // hide it some seconds after BUTTON_INFO has been released
+                                       self.motd_actived_time = 0;
+                                       Send_CSQC_Centerprint_Generic_Expire(self, CPID_MOTD);
+                               }
+                       }
+               }
+       }
+}
+
 void ObserverThink()
 {
        float prefered_movetype;
@@ -2565,6 +2601,8 @@ void ObserverThink()
                        }
                }
        }
+       
+       PrintWelcomeMessage();
 }
 
 void SpectatorThink()
@@ -2603,6 +2641,7 @@ void SpectatorThink()
                        PutObserverInServer();
        }
 
+       PrintWelcomeMessage();
        self.flags |= FL_CLIENT | FL_NOTARGET;
 }
 
@@ -2638,7 +2677,6 @@ Called every frame for each client before the physics are run
 void() ctf_setstatus;
 void() nexball_setstatus;
 .float items_added;
-.float motd_actived_time; // used for both motd and campaign_message
 void PlayerPreThink (void)
 {
        WarpZone_PlayerPhysics_FixVAngle();
@@ -2717,40 +2755,8 @@ void PlayerPreThink (void)
                PlayerUseKey();
        self.usekeypressed = self.BUTTON_USE;
 
-       if (self.motd_actived_time == 0) {
-               if (autocvar_g_campaign) {
-                       if (self.classname == "player" && self.BUTTON_INFO) {
-                               self.motd_actived_time = time;
-                               Send_CSQC_Centerprint_Generic(self, CPID_MOTD, campaign_message, -1, 0);
-                       }
-               } else {
-                       if ((self.classname == "player" || time - self.jointime > autocvar_welcome_message_time) && self.BUTTON_INFO) {
-                               self.motd_actived_time = time;
-                               Send_CSQC_Centerprint_Generic(self, CPID_MOTD, getwelcomemessage(), -1, 0);
-                       }
-               }
-       } else { // showing MOTD or campaign message
-               if (autocvar_g_campaign) {
-                       if (self.classname == "player") {
-                               if (self.BUTTON_INFO)
-                                       self.motd_actived_time = time;
-                               else if (time - self.motd_actived_time > 2) { // hide it some seconds after BUTTON_INFO has been released
-                                       self.motd_actived_time = 0;
-                                       Send_CSQC_Centerprint_Generic_Expire(self, CPID_MOTD);
-                               }
-                       }
-               } else {
-                       if (self.classname == "player" || (time - self.jointime) > autocvar_welcome_message_time) {
-                               if (self.BUTTON_INFO)
-                                       self.motd_actived_time = time;
-                               else if (time - self.motd_actived_time > 2) { // hide it some seconds after BUTTON_INFO has been released
-                                       self.motd_actived_time = 0;
-                                       Send_CSQC_Centerprint_Generic_Expire(self, CPID_MOTD);
-                               }
-                       }
-               }
-       }
-
+       PrintWelcomeMessage();
+       
        if(self.classname == "player") {
 //             if(self.netname == "Wazat")
 //                     bprint(self.classname, "\n");
index 9c4bf59758770d4fc6f90f6abcf3560a21e27081..f127fb26e83e7a4471b7f6dfe09faaacf648becd 100644 (file)
@@ -30,7 +30,7 @@ float entcs_customize()
                return FALSE;
        if(other == o)
                return FALSE;
-       if(other.classname == "player")
+       if((other.classname == "player") || other.caplayer)
                if(!teamplay || o.team != other.team)
                        if not (radar_showennemies)
                                return FALSE;
index f543d4d08a9767b3bf230766e38b6ea1977e5f4f..0c0801eaa7d0e4a6b62e5906a1e89db7716b49b2 100644 (file)
@@ -390,7 +390,7 @@ float Item_GiveTo(entity item, entity player)
                }
 
                if (item.flags & FL_WEAPON)
-               if ((it = item.weapons - (item.weapons & player.weapons)) || (g_pickup_weapons_anyway && !(g_weapon_stay == 3 && !e.spawnshieldtime)))
+                       if ((it = item.weapons - (item.weapons & player.weapons)) || (g_pickup_weapons_anyway && g_weapon_stay == 0))
                {
                        pickedup = TRUE;
                        for(i = WEP_FIRST; i <= WEP_LAST; ++i)