From 2cd1f55f26f2236641fa2f3b36d9d23b99ca072f Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Sun, 18 Nov 2012 17:09:20 +0000 Subject: Improved death messages, shoot colored projectiles. --- src/game/base/ship.cc | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'src/game/base') diff --git a/src/game/base/ship.cc b/src/game/base/ship.cc index a927e73..676ba65 100644 --- a/src/game/base/ship.cc +++ b/src/game/base/ship.cc @@ -522,7 +522,24 @@ void Ship::collision(core::Entity *other) ship_armor = 0; std::string message("^B"); message.append(owner()->name()); - message.append(" ^Bwas blown to bits."); + + core::Player *assassin = 0; + + if (projectile->ownerid()) { + assassin = core::server()->find_player(projectile->ownerid()); + } + + if (assassin) { + if (assassin == owner()) { + message.append(" ^Bate his own bullet."); + } else { + message.append(" ^Bwas blown to bits by "); + message.append(assassin->name()); + } + } else { + message.append(" ^Bwas blown to bits."); + } + core::server()->broadcast(message); } else { die(); } @@ -842,6 +859,7 @@ void Ship::frame(const unsigned long elapsed) (*it)->set_last_fired(core::server()->timestamp()); Projectile * projectile = new Projectile((*it)->lifespan()); projectile->set_damage(10.0f); + projectile->set_color(color()); projectile->set_zone(zone()); projectile->set_axis(axis() * (*it)->axis()); projectile->set_location(location() + (axis() * (*it)->location() * modelscale) + projectile->axis().forward() * projectile->radius()); -- cgit v1.2.3