Refactor for fail fast approach

This commit is contained in:
stacey 2021-08-02 11:15:21 -04:00 committed by GitHub
parent f4c2ab80c9
commit aa4b735163
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -5666,6 +5666,11 @@ namespace TShockAPI
private static void Respawn(CommandArgs args) private static void Respawn(CommandArgs args)
{ {
if (!args.Player.RealPlayer)
{
args.Player.SendErrorMessage("You can't respawn the server console!");
return;
}
TSPlayer playerToRespawn; TSPlayer playerToRespawn;
if (args.Parameters.Count > 0) if (args.Parameters.Count > 0)
{ {
@ -5681,19 +5686,13 @@ namespace TShockAPI
args.Player.SendErrorMessage($"Could not find any player named \"{plStr}\""); args.Player.SendErrorMessage($"Could not find any player named \"{plStr}\"");
return; return;
} }
else if (players.Count > 1) if (players.Count > 1)
{ {
args.Player.SendMultipleMatchError(players.Select(p => p.Name)); args.Player.SendMultipleMatchError(players.Select(p => p.Name));
return; return;
} }
else
playerToRespawn = players[0]; playerToRespawn = players[0];
} }
else if (!args.Player.RealPlayer)
{
args.Player.SendErrorMessage("You can't respawn the server console!");
return;
}
else else
playerToRespawn = args.Player; playerToRespawn = args.Player;
@ -5702,7 +5701,6 @@ namespace TShockAPI
args.Player.SendErrorMessage($"{(playerToRespawn == args.Player ? "You" : playerToRespawn.Name)} {(playerToRespawn == args.Player ? "are" : "is")} not dead."); args.Player.SendErrorMessage($"{(playerToRespawn == args.Player ? "You" : playerToRespawn.Name)} {(playerToRespawn == args.Player ? "are" : "is")} not dead.");
return; return;
} }
else
playerToRespawn.Spawn(PlayerSpawnContext.ReviveFromDeath); playerToRespawn.Spawn(PlayerSpawnContext.ReviveFromDeath);
if (playerToRespawn != args.Player) if (playerToRespawn != args.Player)