- Each entity is of a specific
entity type
(see below for common entity types)- Example: Player Hanack is a player
- Each
entity
inherits and overwritesattributes
of theentity type
- Example: Player Hanack is a player, therefore there is an attribute frags because all _player_s have an attribute named frags
- An
entity type
can have a parententity type
- Example:
projectile
s are specializedparticle
s - See the type hierarchy below
- Example:
- Each
entity type
has anentity renderer
- Example:
Quad Damage Renderer
renders entities of typequad damage
- Entity renderers are implemented in C++
- Example:
- players
- mapmodels
- positional trigger (often mode specific)
- flag
- base
- teleporter
- teleport destination
- ...
- pickups (modifies player state or game state)
- ammo
- armor
- health
- health boost
- quad damage
- extra bomb
- increase bomb damage
- ...
- weapons
- chainsaw
- pistol
- chaingun
- rocket launcher
- grenade launcher (= projectile emitter + geometry collision particle modifier)
- rifle
- bomb launcher
- ...
- particles
- visual effects
- steam
- fire
- flare
- explosion
- volumetric expansion of explosions (also using the densitiy attributes)
- projectiles
- grenade
- rocket
- fog grenade
- shot line
- decals
- visual effects
- particle emitter
- particle modifier