exception fix

This commit is contained in:
kremsy 2014-04-19 23:47:46 +02:00 committed by Steffen Schröder
parent 9dc1d6c91e
commit fc60444a02
2 changed files with 9 additions and 11 deletions

View File

@ -25,6 +25,8 @@ class FaultException extends Exception
return new ChangeInProgressException($faultString, $faultCode);
case 'The player is not a spectator':
return new PlayerIsNotSpectatorException($faultString, $faultCode);
case 'Not in Team mode.':
return new NotInTeamModeException($faultString, $faultCode);
}
return new self($faultString, $faultCode);
@ -37,4 +39,5 @@ class StartIndexOutOfBoundException extends FaultException {}
class NotInScriptModeException extends FaultException {}
class ChangeInProgressException extends FaultException {}
class PlayerIsNotSpectatorException extends FaultException {}
class NotInTeamModeException extends FaultException {}
?>

View File

@ -12,6 +12,8 @@ use ManiaControl\Formatter;
use ManiaControl\ManiaControl;
use ManiaControl\Manialinks\ManialinkManager;
use Maniaplanet\DedicatedServer\Xmlrpc\Exception;
use Maniaplanet\DedicatedServer\Xmlrpc\NotInTeamModeException;
use Maniaplanet\DedicatedServer\Xmlrpc\PlayerIsNotSpectatorException;
/**
* Player Actions Class
@ -132,13 +134,9 @@ class PlayerActions {
try {
$this->maniaControl->client->forcePlayerTeam($target->login, $teamId);
} catch(Exception $e) {
if ($e->getMessage() == "Not in Team mode.") {
$this->forcePlayerToPlay($adminLogin, $targetLogin);
return;
} else {
throw $e;
}
} catch(NotInTeamModeException $e) {
$this->forcePlayerToPlay($adminLogin, $targetLogin);
return;
}
$chatMessage = false;
@ -191,10 +189,7 @@ class PlayerActions {
// Free player slot
try {
$this->maniaControl->client->spectatorReleasePlayerSlot($target->login);
} catch(Exception $e) {
if($e->getMessage() != "The player is not a spectator"){
throw $e;
}
} catch(PlayerIsNotSpectatorException $e) {
}
}
}