Skip to content

Commit a9ca787

Browse files
committed
Dont teleport if the player is dead
Closes: #3
1 parent 994cc2e commit a9ca787

File tree

5 files changed

+34
-5
lines changed

5 files changed

+34
-5
lines changed

Feli.OpenMod.Teleporting/Services/TeleportsManager.cs

+11
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,17 @@ private async Task<bool> ValidateRequest(Tuple<UnturnedUser, UnturnedUser> reque
228228
return false;
229229
}
230230

231+
if (!sender.Player.IsAlive || !target.Player.IsAlive)
232+
{
233+
var dead = !sender.Player.IsAlive ? sender : target;
234+
var alive = sender.Player.IsAlive ? sender : target;
235+
236+
await Say(dead, _stringLocalizer["tpaValidation:dead:dead"]);
237+
await Say(alive, _stringLocalizer["tpaValidation:dead:alive", dead.DisplayName]);
238+
239+
return false;
240+
}
241+
231242
if (_configuration.GetSection("teleportCost:enabled").Get<bool>())
232243
{
233244
var balance = await _economyProvider.GetBalanceAsync(sender.Id, KnownActorTypes.Player);

Feli.OpenMod.Teleporting/translations.yaml

+5-1
Original file line numberDiff line numberDiff line change
@@ -46,4 +46,8 @@ tpaValidation:
4646

4747
balance:
4848
sender: "You dont have enough balance to teleport. Teleport cost: {0}"
49-
target: "The teleport was cancelled because {0} does not have enough balance"
49+
target: "The teleport was cancelled because {0} does not have enough balance"
50+
51+
dead:
52+
alive: "The teleport was cancelled because {0} is dead"
53+
dead: "The teleport was cancelled because you died"

Feli.RocketMod.Teleporting/Plugin.cs

+4-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ protected override void Load()
2323
? new ExperienceEconomyProvider() as IEconomyProvider
2424
: new UconomyEconomyProvider();
2525

26-
Logger.Log($"Teleporting plugin v1.6.1 loaded !");
26+
Logger.Log($"Teleporting plugin v1.6.2 loaded !");
2727
Logger.Log("Do you want more cool plugins? Join now: https://discord.gg/4FF2548 !");
2828
Logger.Log($"Economy Provider: {EconomyProvider.GetType().Name}");
2929
}
@@ -65,7 +65,9 @@ protected override void Unload()
6565
{"TpaValidation:Combat:Sender", "The teleport was cancelled because you are in combat. The combat mode expires in {0} seconds"},
6666
{"TpaValidation:Combat:Target", "The teleport was cancelled because {0} is in combat"},
6767
{"TpaValidation:Balance:Sender", "You dont have enough balance to teleport. Teleport cost: {0}"},
68-
{"TpaValidation:Balance:Target", "The teleport was cancelled because {0} does not have enough balance"}
68+
{"TpaValidation:Balance:Target", "The teleport was cancelled because {0} does not have enough balance"},
69+
{"TpaValidation:Dead:Alive", "The teleport was cancelled because {0} is dead" },
70+
{"TpaValidation:Dead:Dead", "The teleport was cancelled because you died" }
6971
};
7072
}
7173
}

Feli.RocketMod.Teleporting/Properties/AssemblyInfo.cs

+3-2
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,6 @@
1414
[assembly: AssemblyCulture("")]
1515
[assembly: ComVisible(false)]
1616
[assembly: Guid("795C0322-F7CE-4896-B0E7-09B37D0F8440")]
17-
[assembly: AssemblyVersion("1.5.*")]
18-
[assembly: AssemblyFileVersion("1.5.0.0")]
17+
[assembly: AssemblyInformationalVersion("1.6.2")]
18+
[assembly: AssemblyVersion("1.6.2")]
19+
[assembly: AssemblyFileVersion("1.6.2")]

Feli.RocketMod.Teleporting/TeleportsManager.cs

+11
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,17 @@ private bool ValidateRequest(Tuple<UnturnedPlayer, UnturnedPlayer> request)
202202
return false;
203203
}
204204

205+
if(sender.Dead || target.Dead)
206+
{
207+
var dead = sender.Dead ? sender : target;
208+
var alive = !sender.Dead ? sender : target;
209+
210+
Say(dead, _plugin.Translate("TpaValidation:Dead:Dead"), _messageColor, _messageIcon);
211+
Say(alive, _plugin.Translate("TpaValidation:Dead:Alive", dead.DisplayName), _messageColor, _messageIcon);
212+
213+
return false;
214+
}
215+
205216
if (_configuration.TeleportCost.Enabled && _plugin.EconomyProvider.GetBalance(sender.Id) < _configuration.TeleportCost.TpaCost)
206217
{
207218
Say(sender, _plugin.Translate("TpaValidation:Balance:Sender", _configuration.TeleportCost.TpaCost), _messageColor, _messageIcon);

0 commit comments

Comments
 (0)