r95 - trunk/basezym/progsqc
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Mon Dec 31 14:53:53 EST 2007
Author: KadaverJack
Date: 2007-12-31 14:53:53 -0500 (Mon, 31 Dec 2007)
New Revision: 95
Modified:
trunk/basezym/progsqc/actor.qc
trunk/basezym/progsqc/defs.qc
trunk/basezym/progsqc/mapentities.qc
trunk/basezym/progsqc/player.qc
Log:
fixed disappearing legs after player is teleported
Modified: trunk/basezym/progsqc/actor.qc
===================================================================
--- trunk/basezym/progsqc/actor.qc 2007-12-31 19:49:12 UTC (rev 94)
+++ trunk/basezym/progsqc/actor.qc 2007-12-31 19:53:53 UTC (rev 95)
@@ -54,30 +54,38 @@
void() actor_part_torso_think =
{
+ self.nextthink = time;
+ self.effects = self.owner.effects;
if (self.owner.actorpart_torso != self)
remove(self);
};
void() actor_part_head_think =
{
+ self.nextthink = time;
+ self.effects = self.owner.effects;
if (self.owner.actorpart_head != self)
remove(self);
};
void() actor_part_weapon_think =
{
+ self.nextthink = time;
if (self.owner.actorpart_weapon != self)
remove(self);
};
void() actor_part_viewweapon_think =
{
+ self.nextthink = time;
if (self.owner.actorpart_viewweapon != self)
remove(self);
};
void() actor_part_hand_think =
{
+ self.nextthink = time;
+ self.effects = self.owner.effects;
if (self.owner.actorpart_hand != self)
remove(self);
};
Modified: trunk/basezym/progsqc/defs.qc
===================================================================
--- trunk/basezym/progsqc/defs.qc 2007-12-31 19:49:12 UTC (rev 94)
+++ trunk/basezym/progsqc/defs.qc 2007-12-31 19:53:53 UTC (rev 95)
@@ -240,6 +240,7 @@
float FL_PARTIALGROUND = 1024; // not all corners are valid
float FL_WATERJUMP = 2048; // player jumping out of water
float FL_JUMPRELEASED = 4096; // for jump debouncing
+float FL_TELEPORT = 8192; // player has just been teleported
// edict.movetype values
float MOVETYPE_NONE = 0; // never moves
Modified: trunk/basezym/progsqc/mapentities.qc
===================================================================
--- trunk/basezym/progsqc/mapentities.qc 2007-12-31 19:49:12 UTC (rev 94)
+++ trunk/basezym/progsqc/mapentities.qc 2007-12-31 19:53:53 UTC (rev 95)
@@ -97,7 +97,9 @@
*/
// hide myself a tic
+ other.flags = other.flags | FL_TELEPORT;
other.effects = other.effects | EF_NODRAW;
+ other.actorpart_jetpacktrail.effects = other.actorpart_jetpacktrail.effects | EF_NODRAW;
other.teleport_time = time + cvar("sys_ticrate");
other.flags = other.flags - (other.flags & FL_ONGROUND);
Modified: trunk/basezym/progsqc/player.qc
===================================================================
--- trunk/basezym/progsqc/player.qc 2007-12-31 19:49:12 UTC (rev 94)
+++ trunk/basezym/progsqc/player.qc 2007-12-31 19:53:53 UTC (rev 95)
@@ -559,7 +559,7 @@
if (self.button7 & self.jetpackactive)
{
if ((self.jetpack_fuel > 10) && (self.actorpart_jetpacktrail.effects & EF_NODRAW))
- self.actorpart_jetpacktrail.effects = self.actorpart_jetpacktrail.effects - EF_NODRAW;
+ self.actorpart_jetpacktrail.effects -= self.actorpart_jetpacktrail.effects & EF_NODRAW;
else if (self.jetpack_fuel < 10)
self.actorpart_jetpacktrail.effects = self.actorpart_jetpacktrail.effects | EF_NODRAW;
}
@@ -669,6 +669,14 @@
self.movement = self.movement * self.speedratio;
+ if (time >= self.teleport_time)
+ if (self.flags & FL_TELEPORT)
+ {
+ self.flags -= self.flags & FL_TELEPORT;
+ self.effects -= self.effects & EF_NODRAW;
+ self.actorpart_jetpacktrail.effects -= self.actorpart_jetpacktrail.effects & EF_NODRAW;
+ }
+
if (self.movetype == MOVETYPE_NONE)
return;
More information about the zymotic-commits
mailing list