diff options
| author | Magnus Auvinen <magnus.auvinen@gmail.com> | 2008-10-20 23:00:46 +0000 |
|---|---|---|
| committer | Magnus Auvinen <magnus.auvinen@gmail.com> | 2008-10-20 23:00:46 +0000 |
| commit | ac1aeab149f704ab1b297be9c7662c5705e5e40d (patch) | |
| tree | 2c5fe9dcfe06c648ea2e1d8e87b638a76aeb1813 /src/game/server/entities/laser.cpp | |
| parent | 9f7a6a04b0862737ca4566fb443140025505a522 (diff) | |
| download | zcatch-ac1aeab149f704ab1b297be9c7662c5705e5e40d.tar.gz zcatch-ac1aeab149f704ab1b297be9c7662c5705e5e40d.zip | |
fixed incorrect handling of projectiel and laser owner
Diffstat (limited to 'src/game/server/entities/laser.cpp')
| -rw-r--r-- | src/game/server/entities/laser.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/game/server/entities/laser.cpp b/src/game/server/entities/laser.cpp index 8b512d82..20054ed4 100644 --- a/src/game/server/entities/laser.cpp +++ b/src/game/server/entities/laser.cpp @@ -7,7 +7,7 @@ ////////////////////////////////////////////////// // laser ////////////////////////////////////////////////// -LASER::LASER(vec2 pos, vec2 direction, float start_energy, CHARACTER *owner) +LASER::LASER(vec2 pos, vec2 direction, float start_energy, int owner) : ENTITY(NETOBJTYPE_LASER) { this->pos = pos; @@ -24,14 +24,15 @@ LASER::LASER(vec2 pos, vec2 direction, float start_energy, CHARACTER *owner) bool LASER::hit_character(vec2 from, vec2 to) { vec2 at; - CHARACTER *hit = game.world.intersect_character(pos, to, 0.0f, at, owner); + CHARACTER *owner_char = game.get_player_char(owner); + CHARACTER *hit = game.world.intersect_character(pos, to, 0.0f, at, owner_char); if(!hit) return false; this->from = from; pos = at; energy = -1; - hit->take_damage(vec2(0,0), tuning.laser_damage, owner->player->client_id, WEAPON_RIFLE); + hit->take_damage(vec2(0,0), tuning.laser_damage, owner, WEAPON_RIFLE); return true; } |