|
| CDragger (CGameWorld *pGameWorld, int Id, const CLaserData *pData) |
|
bool | Match (CDragger *pDragger) |
|
void | Read (const CLaserData *pData) |
|
float | GetStrength () |
|
void | Tick () override |
|
| CDragger (CGameWorld *pGameWorld, vec2 Pos, float Strength, bool IgnoreWalls, int Layer=0, int Number=0) |
|
void | RemoveDraggerBeam (int ClientId) |
|
bool | WillDraggerBeamUseDraggerId (int TargetClientId, int SnappingClientId) |
|
void | Reset () override |
|
void | Tick () override |
|
void | Snap (int SnappingClient) override |
|
void | SwapClients (int Client1, int Client2) override |
|
int | GetId () const |
|
| CEntity (CGameWorld *pGameWorld, int Objtype, vec2 Pos=vec2(0, 0), int ProximityRadius=0) |
|
virtual | ~CEntity () |
|
std::vector< SSwitchers > & | Switchers () |
|
CGameWorld * | GameWorld () |
|
CTuningParams * | Tuning () |
|
CTuningParams * | TuningList () |
|
CTuningParams * | GetTuning (int i) |
|
class CCollision * | Collision () |
|
CEntity * | TypeNext () |
|
CEntity * | TypePrev () |
|
const vec2 & | GetPos () const |
|
float | GetProximityRadius () const |
|
void | Destroy () |
|
virtual void | PreTick () |
|
virtual void | Tick () |
|
virtual void | TickDeferred () |
|
bool | GameLayerClipped (vec2 CheckPos) |
|
CEntity * | NextEntity () |
|
void | Keep () |
|
| CEntity () |
|
int | GetId () const |
|
| CEntity (CGameWorld *pGameWorld, int Objtype, vec2 Pos=vec2(0, 0), int ProximityRadius=0) |
|
virtual | ~CEntity () |
|
std::vector< SSwitchers > & | Switchers () |
|
CGameWorld * | GameWorld () |
|
CTuningParams * | Tuning () |
|
CTuningParams * | TuningList () |
|
CTuningParams * | GetTuning (int i) |
|
class CConfig * | Config () |
|
class CGameContext * | GameServer () |
|
class IServer * | Server () |
|
CCollision * | Collision () |
|
CEntity * | TypeNext () |
|
CEntity * | TypePrev () |
|
const vec2 & | GetPos () const |
|
float | GetProximityRadius () const |
|
virtual void | Destroy () |
|
virtual void | Reset () |
|
virtual void | Tick () |
|
virtual void | TickDeferred () |
|
virtual void | TickPaused () |
|
virtual void | Snap (int SnappingClient) |
|
virtual void | PostSnap () |
|
virtual void | SwapClients (int Client1, int Client2) |
|
virtual ESaveResult | BlocksSave (int ClientId) |
|
virtual int | GetOwnerId () const |
|
bool | NetworkClipped (int SnappingClient) const |
|
bool | NetworkClipped (int SnappingClient, vec2 CheckPos) const |
|
bool | NetworkClippedLine (int SnappingClient, vec2 StartPos, vec2 EndPos) const |
|
bool | GameLayerClipped (vec2 CheckPos) |
|
bool | GetNearestAirPos (vec2 Pos, vec2 PrevPos, vec2 *pOutPos) |
|
bool | GetNearestAirPosPlayer (vec2 PlayerPos, vec2 *pOutPos) |
|
Draggers generate dragger beams which pull players towards their center similar to a tractor beam
A dragger will only generate one dragger beam per team for the closest player for whom the following criteria are met:
- The player is within the dragger range (sv_dragger_range).
- The player is not a super player
- The dragger is activated
- The dragger beam to be generated is not blocked by laser stoppers (or solid blocks if IgnoreWalls is set to false) With the exception of solo players, for whom a dragger beam is always generated, regardless of the rest of the team, if the above criteria are met. Solo players have no influence on the generation of the dragger beam for the rest of the team. A created dragger beam remains for the selected player until one of the criteria is no longer fulfilled. Only then can a new dragger beam be created for that team, which may drag another team partner.