Holiday gift: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
 
Line 24: Line 24:


{{expand|title={{css|2}}|
{{expand|title={{css|2}}|
<pre>
<syntaxhighlight lang=js>
@PointClass base(Targetname) size(-32 -32 -32, 32 32 32) studio("models/items/cs_gift.mdl") = holiday_gift : "A holiday present. Disappears after 30 seconds; spawn with point_template or vscript." []
@PointClass base(Targetname) size(-32 -32 -32, 32 32 32) studio("models/items/cs_gift.mdl") = holiday_gift : "A holiday present. Disappears after 30 seconds; spawn with point_template or vscript." []
</pre>}}
</syntaxhighlight>}}
{{expand|title={{dods|2}}|
{{expand|title={{dods|2}}|
<pre>
<syntaxhighlight lang=js>
@PointClass base(Targetname) size(-32 -32 -32, 32 32 32) studio("models/items/dod_gift.mdl") = holiday_gift : "A holiday present. Disappears after 30 seconds; spawn with point_template or vscript." []
@PointClass base(Targetname) size(-32 -32 -32, 32 32 32) studio("models/items/dod_gift.mdl") = holiday_gift : "A holiday present. Disappears after 30 seconds; spawn with point_template or vscript." []
</pre>}}
</syntaxhighlight>}}
{{expand|title={{l4d2|2}}|
{{expand|title={{l4d2|2}}|
<pre>
<syntaxhighlight lang=js>
@PointClass base(Targetname) size(-32 -32 -32, 32 32 32) studio("models/items/l4d_gift.mdl") = holiday_gift : "A holiday present. Disappears after 30 seconds; spawn with point_template or vscript." []
@PointClass base(Targetname) size(-32 -32 -32, 32 32 32) studio("models/items/l4d_gift.mdl") = holiday_gift : "A holiday present. Disappears after 30 seconds; spawn with point_template or vscript." []
</pre>}}
</syntaxhighlight>}}

Latest revision as of 18:19, 16 November 2025

English (en)Translate (Translate)
Icon-NotInFGD.png
This entity is not in the FGD by default.
See below for instructions on making it available.
C++ Class hierarchy
CHolidayGift
CItem
CBaseAnimating
CBaseEntity

holiday_gift is a model entity available in Left 4 Dead 2 Left 4 Dead 2, Day of Defeat: Source Day of Defeat: Source, and Counter-Strike: Source Counter-Strike: Source.

Overview

The mentioned entity was introduced in December 15, 2011 update for CS:S, DOD:S, aswell as Left 4 Dead 2, in conjunction with the achievement "Valve Gift Grab 2011 – L4D2", "Valve Gift Grab 2011 – CS:S" and "Valve Gift Grab 2011 – DoD:S" (the latter two were later renamed to just "Gift Grab").

In Left 4 Dead 2, the purpose is to collect three gifts dropped by Special Infected in Versus Mode, while in CS:S and DOD:S, collect three gifts dropped by opponents.

Features

The gifts spawn for killed special infected and tanks, not for common/uncommon infected or the witch. Only players on the survivor team are able to collect the gifts. Both survivors and Special Infected/Tank can be the killer to obtain a gift drop. Even if the Special Infected/Tank is killed by the world (e.g. Any trigger_hurt or drowning), it can still trigger a gift drop.

Factors affecting gift spawning

Several factors determine whether a gift will spawn:

  1. The Convar: z_holiday_gift_drop_chance (default value: 0.3), indicating a 30% chance, with a minimum value of 0 and a maximum value of 1
  2. The date: Gifts spawn between December 1st and January 2nd (inclusive).
  3. Time interval: A new gift will only spawn after approximately 16 seconds have passed since the last one was dropped.

Gift lifespan

When a gift is not collected by any player, it will automatically despawn after 30 seconds.

FGD Code

Since this entity automatically disappears after 30 seconds if not picked up, it's best used in conjunction with point_template or vscript.

Counter-Strike: Source Counter-Strike: Source
@PointClass base(Targetname) size(-32 -32 -32, 32 32 32) studio("models/items/cs_gift.mdl") = holiday_gift : "A holiday present. Disappears after 30 seconds; spawn with point_template or vscript." []
Day of Defeat: Source Day of Defeat: Source
@PointClass base(Targetname) size(-32 -32 -32, 32 32 32) studio("models/items/dod_gift.mdl") = holiday_gift : "A holiday present. Disappears after 30 seconds; spawn with point_template or vscript." []
Left 4 Dead 2 Left 4 Dead 2
@PointClass base(Targetname) size(-32 -32 -32, 32 32 32) studio("models/items/l4d_gift.mdl") = holiday_gift : "A holiday present. Disappears after 30 seconds; spawn with point_template or vscript." []