Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStijn Buys <ingar@osirion.org>2012-11-18 16:34:29 +0000
committerStijn Buys <ingar@osirion.org>2012-11-18 16:34:29 +0000
commit4c45315c9f76bc32e1015a2a2bd9b3ae635023a7 (patch)
tree3fbfe947a46aabea04d724e29307d40f9292f7f1 /src/game/base/ship.cc
parentab61530779c73e7e145193efcb1e23a47c16e7f3 (diff)
ADded support for enitty information printing, print current armor values for ships, print death messages
Diffstat (limited to 'src/game/base/ship.cc')
-rw-r--r--src/game/base/ship.cc16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/game/base/ship.cc b/src/game/base/ship.cc
index ac4db15..a927e73 100644
--- a/src/game/base/ship.cc
+++ b/src/game/base/ship.cc
@@ -124,7 +124,14 @@ Ship::~Ship()
{
}
-void Ship::func_impulse() {
+void Ship::print() const
+{
+ core::EntityControlable::print();
+ con_print << " armor ^B" << armor() << "^N/^B" << maxarmor() << std::endl;
+}
+
+void Ship::func_impulse()
+{
switch (entity_state) {
case core::Entity::Impulse:
@@ -486,12 +493,14 @@ void Ship::collision(core::Entity *other)
// destroyed
if (ship_armor <= 0) {
+ explode();
+
if (owner()) {
ship_armor = 0;
std::string message("^B");
message.append(owner()->name());
message.append(" ^Bwent boom.");
- explode();
+ core::server()->broadcast(message);
} else {
die();
}
@@ -507,12 +516,13 @@ void Ship::collision(core::Entity *other)
// destroyed
if (ship_armor <= 0) {
+ explode();
+
if (owner()) {
ship_armor = 0;
std::string message("^B");
message.append(owner()->name());
message.append(" ^Bwas blown to bits.");
- explode();
} else {
die();
}