void Item_RespawnCountdown (entity this)
{
- if(this.count >= ITEM_RESPAWN_TICKS)
+ if(this.item_respawncounter >= ITEM_RESPAWN_TICKS)
{
if(this.waypointsprite_attached)
WaypointSprite_Kill(this.waypointsprite_attached);
else
{
this.nextthink = time + 1;
- this.count += 1;
- if(this.count == 1)
+ this.item_respawncounter += 1;
+ if(this.item_respawncounter == 1)
{
do {
{
});
WaypointSprite_Ping(this.waypointsprite_attached);
- //WaypointSprite_UpdateHealth(this.waypointsprite_attached, this.count);
+ //WaypointSprite_UpdateHealth(this.waypointsprite_attached, this.item_respawncounter);
}
}
}
setthink(e, Item_RespawnCountdown);
e.nextthink = time + max(0, t - ITEM_RESPAWN_TICKS);
e.scheduledrespawntime = e.nextthink + ITEM_RESPAWN_TICKS;
- e.count = 0;
+ e.item_respawncounter = 0;
if(Item_ItemsTime_Allow(e.itemdef) || (e.weapons & WEPSET_SUPERWEAPONS))
{
t = Item_ItemsTime_UpdateTime(e, e.scheduledrespawntime);
player.superweapons_finished = max(player.superweapons_finished, time) + item.superweapons_finished;
}
-LABEL(skip)
-
// always eat teamed entities
if(item.team)
pickedup = true;
toucher = M_ARGV(1, entity);
- // TODO: Proper way to handle expiring and not expiring loot.
- // Expiring loot will have strength "ticking" will it's dropped.
- // Not expiring will not tick.
- // OTOH, do we really need expiring loot?
- if (this.classname == "droppedweapon")
+ if (Item_IsExpiring(this))
{
this.strength_finished = max(0, this.strength_finished - time);
this.invincible_finished = max(0, this.invincible_finished - time);
bool gave = ITEM_HANDLE(Pickup, this.itemdef, this, toucher);
if (!gave)
{
- if (Item_IsLoot(this))
+ if (Item_IsExpiring(this))
{
// undo what we did above
this.strength_finished += time;
return rating;
}
-.int item_group;
-.int item_group_count;
float healtharmor_pickupevalfunc(entity player, entity item)
{
float c = 0;
this.takedamage = DAMAGE_YES;
this.event_damage = Item_Damage;
- // TODO: Proper way to handle expiring and not expiring loot.
- // Expiring loot will have strength "ticking" will it's dropped.
- // Not expiring will not tick.
- // OTOH, do we really need expiring loot?
- if (this.strength_finished || this.invincible_finished || this.superweapons_finished)
+ if (Item_IsExpiring(this))
{
// if item is worthless after a timer, have it expire then
this.nextthink = max(this.strength_finished, this.invincible_finished, this.superweapons_finished);
if(def.instanceOfWeaponPickup)
{
- if (this.classname != "droppedweapon") // if dropped, colormap is already set up nicely
+ if (!Item_IsLoot(this)) // if dropped, colormap is already set up nicely
this.colormap = 1024; // color shirt=0 pants=0 grey
else
this.gravity = 1;
void target_items_use(entity this, entity actor, entity trigger)
{
- if(actor.classname == "droppedweapon")
+ if(Item_IsLoot(actor))
{
EXACTTRIGGER_TOUCH(this, trigger);
delete(actor);
EXACTTRIGGER_TOUCH(this, trigger);
}
- IL_EACH(g_items, it.enemy == actor && it.classname == "droppedweapon",
+ IL_EACH(g_items, it.enemy == actor && Item_IsLoot(it),
{
delete(it);
});