void Ice_Think(entity this)
{
- if(!STAT(FROZEN, self.owner) || self.owner.iceblock != self)
+ if(!STAT(FROZEN, this.owner) || this.owner.iceblock != this)
{
- remove(self);
+ remove(this);
return;
}
- setorigin(self, self.owner.origin - '0 0 16');
- self.nextthink = time;
+ setorigin(this, this.owner.origin - '0 0 16');
+ this.nextthink = time;
}
void Freeze (entity targ, float freeze_time, float frozen_type, float show_waypoint)
-{SELFPARAM();
+{
if(!IS_PLAYER(targ) && !IS_MONSTER(targ)) // only specified entities can be freezed
return;
targ.revive_progress = ((frozen_type == 3) ? 1 : 0);
targ.health = ((frozen_type == 3) ? targ_maxhealth : 1);
targ.revive_speed = freeze_time;
- self.bot_attack = false;
+ targ.bot_attack = false;
entity ice = new(ice);
ice.owner = targ;
void Unfreeze (entity targ)
{
- SELFPARAM();
if(!STAT(FROZEN, targ))
return;
STAT(FROZEN, targ) = 0;
targ.revive_progress = 0;
targ.revival_time = time;
- self.bot_attack = true;
+ targ.bot_attack = true;
WaypointSprite_Kill(targ.waypointsprite_attached);