Temp Entity Events (Half-Life 1)
Add Main Description Here.
Contents
Message Types
Sets the type of message the temp entity is transmitted in.
MSG_ types that can be used for dest field in message_begin are as follows:
#define MSG_BROADCAST 0 // unreliable to all #define MSG_ONE 1 // reliable to one (msg_entity) #define MSG_ALL 2 // reliable to all #define MSG_INIT 3 // write to the init string #define MSG_PVS 4 // Ents in PVS of org #define MSG_PAS 5 // Ents in PAS of org #define MSG_PVS_R 6 // Reliable to PVS #define MSG_PAS_R 7 // Reliable to PAS #define MSG_ONE_UNRELIABLE 8 // Send to one client, but don't put in reliable stream, put in unreliable datagram (could be dropped) #define MSG_SPEC 9 // Sends to all spectator proxies
TempEnt Events
Add Description Here.
0: TE_BEAMPOINTS
Creates a beam between two points.
Options
Option | Range | Default | Description |
---|---|---|---|
Start | X Y Z (coords) | Origin of primary entity, or 0 0 0 | Starting point of the beam |
End | X Y Z (coords) | Origin of secondary entity, or 0 0 0 | Ending point of the beam |
Sprite | sprite path | "sprites/laserbeam.spr" | The sprite to use in the beam |
FrameStart | 0-255 | 0 | The frame to start with in the sprite |
FrameRate | 0-255 | 0 | The frame rate to show the sprite at, in 0.1s (10 = 1 fps) |
Life | 0-255 | 50 | The length of time the beam shall remain, in 0.1s (50 = 5 seconds) |
Width | 0-255 | 10 | The width of the beam in 0.1s |
Noise | 0-255 | 10 | The noise amplitude of the beam, this controls how much the beam distorts, again in 0.1s |
Color | R G B | 255 255 255 | The color of the beam in the RGB triplet value |
Brightness | 0-255 | 127 | The brightness of the beam |
Scroll | 0-255 | 0 | The scroll speed of the beam, in 0.1s (??) |
Format
#define TE_BEAMPOINTS 0 // beam effect between two points message_begin(MSG_ ,SVC_TEMPENTITY) // message begin write_byte(TE_BEAMPOINTS) write_coord() // start position write_coord() write_coord() write_coord() // end position write_coord() write_coord() write_short() // sprite index write_byte() // starting frame write_byte() // frame rate in 0.1's write_byte() // life in 0.1's write_byte() // line width in 0.1's write_byte() // noise amplitude in 0.01's write_byte() // Red write_byte() // Green write_byte() // Blue write_byte() // brightness write_byte() // scroll speed in 0.1's message_end()
1: TE_BEAMENTPOINT
Creates a beam between the primary entity and a point.
Options
Option | Range | Default | Description |
---|---|---|---|
Start Entity | ID of Entity | Primary entity id | Starting point of the beam from the id's origin |
End | X Y Z (coords) | Origin of secondary entity, or 0 0 0 | Ending point of the beam |
Sprite | sprite path | "sprites/laserbeam.spr" | The sprite to use in the beam |
FrameStart | 0-255 | 0 | The frame to start with in the sprite |
FrameRate | 0-255 | 0 | The frame rate to show the sprite at, in 0.1s (10 = 1 fps) |
Life | 0-255 | 50 | The length of time the beam shall remain, in 0.1s (50 = 5 seconds) |
Width | 0-255 | 10 | The width of the beam in 0.1s |
Noise | 0-255 | 10 | The noise amplitude of the beam, this controls how much the beam distorts, again in 0.1s |
Color | R G B | 255 255 255 | The color of the beam in the RGB triplet value |
Brightness | 0-255 | 127 | The brightness of the beam |
Scroll | 0-255 | 0 | The scroll speed of the beam, in 0.1s (??) |
Format
#define TE_BEAMENTPOINT 1 // beam effect between point and entity message_begin(MSG_ ,SVC_TEMPENTITY) // message begin write_byte(TE_BEAMENTPOINT) write_short() // start entity write_coord() // end position write_coord() write_coord() write_short() // sprite index write_byte() // starting frame write_byte() // frame rate in 0.1's write_byte() // life in 0.1's write_byte() // line width in 0.1's write_byte() // noise amplitude in 0.01's write_byte() // Red write_byte() // Green write_byte() // Blue write_byte() // brightness write_byte() // scroll speed in 0.1's message_end()
2: TE_GUNSHOT
Creates a particle effect plus a ricochet sound.
Options
Option | Range | Default | Description |
---|---|---|---|
Pos | X Y Z (coords) | Origin of primary entity, or 0 0 0 | Position of the gunshot effect |
Format
#define TE_GUNSHOT 2 // particle effect plus ricochet sound message_begin(MSG_ ,SVC_TEMPENTITY) // message begin write_byte(TE_GUNSHOT) write_coord() // start position write_coord() write_coord() message_end()
3: TE_EXPLOSION
Creates an additive sprite, 2 dynamic lights, flickering particles, explosion sound, and moves the sprite vertically.
Options
Option | Range | Default | Description |
---|---|---|---|
Pos | X Y Z (coords) | Origin of primary entity, or 0 0 0 | Position of the explosion effect |
Sprite | sprite path | "sprites/zerogxplode.spr" | The additive sprite to use in the explosion |
Scale | 0-255 | 1 | The scale of the sprite in the explosion, in 0.1s |
FrameRate | 0-255 | 0 | The frame rate to show the sprite at, in 0.1s (10 = 1 fps) |
Flags | 0-15 | 0 | Sets flags for the explosion, you may also add these together:
|
Format
#define TE_EXPLOSION 3 // additive sprite, 2 dynamic lights, flickering particles, explosion sound, move vertically 8 pps message_begin(MSG_ ,SVC_TEMPENTITY) // message begin write_byte(TE_EXPLOSION) write_coord() // start position write_coord() write_coord() write_short() // sprite index write_byte() // scale in 0.1's write_byte() // framerate write_byte() // flags message_end()
4: TE_TAREXPLOSION
Creates the Quake 'tar' explosion.
Options
Option | Range | Default | Description |
---|---|---|---|
Pos | X Y Z (coords) | Origin of primary entity, or 0 0 0 | Position of the effect |
Format
#define TE_TAREXPLOSION 4 // Quake1 "tarbaby" explosion with sound message_begin(MSG_ ,SVC_TEMPENTITY) // message begin write_byte(TE_TAREXPLOSION) write_coord() // start position write_coord() write_coord() message_end()
5: TE_SMOKE
Creates a rising alphablend sprite at 30 pps.
Options
Option | Range | Default | Description |
---|---|---|---|
Pos | X Y Z (coords) | Origin of primary entity, or 0 0 0 | Position of the smoke effect |
Sprite | sprite path | "sprites/steam1.spr" | The alphablend sprite to use for smoke |
Scale | 0-255 | 1 | The scale of the smoke, in 0.1s |
FrameRate | 0-255 | 0 | The frame rate to show the sprite at |
Format
#define TE_SMOKE 5 // alphablend sprite, move vertically 30 pps message_begin(MSG_ ,SVC_TEMPENTITY) // message begin write_byte(TE_SMOKE) write_coord() // start position write_coord() write_coord() write_short() // sprite index write_byte() // scale in 0.1's write_byte() // framerate message_end()
TO DO: Add rest of TempEnts