blob: 8ae6f7924c2a2839a09fe42e8d9f06fc4e58a258 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
/* (c) Magnus Auvinen. See licence.txt in the root of the distribution for more information. */
/* If you are missing that file, acquire a complete release at teeworlds.com. */
#ifndef GAME_SERVER_ENTITIES_LASER_H
#define GAME_SERVER_ENTITIES_LASER_H
#include <game/server/entity.h>
class CLaser : public CEntity
{
public:
CLaser(CGameWorld *pGameWorld, vec2 Pos, vec2 Direction, float StartEnergy, int Owner);
virtual void Reset();
virtual void Tick();
virtual void TickPaused();
virtual void Snap(int SnappingClient);
protected:
bool HitCharacter(vec2 From, vec2 To);
void DoBounce();
private:
vec2 m_From;
vec2 m_Dir;
float m_Energy;
int m_Bounces;
int m_EvalTick;
int m_Owner;
};
#endif
|