diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/game/base/cargo.cc | 9 | 
1 files changed, 8 insertions, 1 deletions
diff --git a/src/game/base/cargo.cc b/src/game/base/cargo.cc index 3571b22..1a933e8 100644 --- a/src/game/base/cargo.cc +++ b/src/game/base/cargo.cc @@ -306,6 +306,13 @@ void Cargo::eject(core::EntityControlable *ejector, const int amount)  		return;  	} +	if ((ejector->state() == core::Entity::Jump) || (ejector->state() == core::Entity::JumpInitiate)) { +		if (ejector->owner()) { +			ejector->owner()->send("^WCan not eject while hyperspace jump drive is active"); +		} +		return; +	} +	  	// find the cargo in the inventory  	core::Item *item = ejector->inventory()->find(this);	  	if (!item || !item->amount()) { @@ -332,7 +339,7 @@ void Cargo::eject(core::EntityControlable *ejector, const int amount)  	item->dec_amount(negotiated_amount);  	ejector->inventory()->set_dirty(); -	if (!ejector->state() == core::Entity::Docked) { +	if (ejector->state() == core::Entity::Docked) {  		std::stringstream msgstr;  		if (ejector->owner()) {  			msgstr << "^BDestroyed " << negotiated_amount << " " << aux::plural("unit", negotiated_amount) << " of " << name();  | 
