diff options
author | Stijn Buys <ingar@osirion.org> | 2010-09-17 18:58:46 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2010-09-17 18:58:46 +0000 |
commit | 66ce015e5927c30801110acd289310fdff181792 (patch) | |
tree | 7beaa6b533eefdd26f0705bd65dfb5c3c9b5996a /src/game/base/game.cc | |
parent | c62fe609a69058e2e30f757e9a06f72a98464232 (diff) |
Initial support for players docking other players' ships.
Diffstat (limited to 'src/game/base/game.cc')
-rw-r--r-- | src/game/base/game.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/game/base/game.cc b/src/game/base/game.cc index 1d4536a..128ae7c 100644 --- a/src/game/base/game.cc +++ b/src/game/base/game.cc @@ -168,6 +168,9 @@ void Game::func_dock(core::Player *player, core::Entity *entity) if (player->control()->zone() != entity->zone()) return; + + if (player->control() == entity) + return; if ((entity->flags() & core::Entity::Dockable) == 0) return; @@ -202,6 +205,8 @@ void Game::func_buy(core::Player *player, const std::string &args) if (typestr.compare("ship") == 0) { ShipDealer::func_buy(player, labelstr); + } else if (typestr.compare("cargo") == 0) { + player->send("Buying cargo is not supported"); } else { player->send("unkown item type '" + typestr + "'"); } @@ -915,6 +920,9 @@ bool Game::load_ships() } else if (shipsini.got_key_bool("jumpdrive", b)) { shipmodel->set_jumpdrive(b); continue; + } else if (shipsini.got_key_bool("dock", b)) { + shipmodel->set_dock(b); + continue; } else if (shipsini.got_key_float("acceleration", f)) { shipmodel->set_acceleration(f); continue; |