diff options
| author | Stijn Buys <ingar@osirion.org> | 2008-08-01 22:06:11 +0000 | 
|---|---|---|
| committer | Stijn Buys <ingar@osirion.org> | 2008-08-01 22:06:11 +0000 | 
| commit | f831477c2502b7a2b32cd1fe1b6678a9c87d3fda (patch) | |
| tree | cae0d1c20354ee9df4eccce2b3763c95c18bf525 /src/game/game.cc | |
| parent | d2f36485dd3fbda7c9eb212ac9ffde919af5f8e1 (diff) | |
jumpdrive countdown
Diffstat (limited to 'src/game/game.cc')
| -rw-r--r-- | src/game/game.cc | 37 | 
1 files changed, 1 insertions, 36 deletions
| diff --git a/src/game/game.cc b/src/game/game.cc index 2f5490f..f95a8ff 100644 --- a/src/game/game.cc +++ b/src/game/game.cc @@ -142,45 +142,10 @@ void func_jump(core::Player *player, std::string const &args)  {  	if (!player->control())  		return; -  	if (!player->control()->moduletype() == ship_enttype)  		return; -  	Ship * ship = static_cast<Ship *>(player->control()); - -	if (!ship->jumpdrive()) { -		core::server()->send(player, "Your ship is not equiped with a jumpdrive"); -		return; -	} -	std::string target; -	std::istringstream is(args); -	if (!(is >> target)) { -		std::string helpstr; -		for (core::Zone::Registry::iterator it = core::Zone::registry().begin(); it != core::Zone::registry().end(); it++) { -			core::Zone *zone = (*it).second; -			if (helpstr.size()) -				helpstr.append("^N|^B"); -			helpstr.append(zone->label()); -		} - -		core::server()->send(player, "Usage: jump [^B" + helpstr + "^N]"); -		return; -	} - -	aux::to_lowercase(target); -	core::Zone *zone = core::Zone::find_zone(target); -	if (!zone) { -		core::server()->send(player, "Unknown system '" + target + '\''); -		return; -	} - -	if (zone == player->control()->zone()) -		return; - -	core::server()->send(player, "Jumping to '" + zone->name() + '\''); - -	player->control()->set_zone(zone); -	player->set_zone(zone); +	ship->jump(args);  }  /* ---- The Game class --------------------------------------------- */ | 
