fix invite

This commit is contained in:
hydrant
2019-05-09 17:19:59 +02:00
parent c18b6b6fad
commit 539d899ac9
3 changed files with 51 additions and 5 deletions

View File

@@ -26,16 +26,19 @@ namespace ReallifeGamemode.Server.Managers
[RemoteEvent("CLIENT:InteractionMenu_AcceptInvite")]
public void InteractionMenuAcceptInvite(Client player, string type)
{
if (type != "Fraktion" || type != "Gruppe") return;
if (type != "Fraktion" && type != "Gruppe") return;
if (type == "Fraktion") // Fraktions Invite annehmen
{
NAPI.Chat.SendChatMessageToAll("faction invite 1");
if (!player.HasData("accept_faction_invite"))
{
ChatService.Error(player, "Du hast keine Einladung in eine Fraktion erhalten");
return;
}
NAPI.Chat.SendChatMessageToAll("faction invite 2");
Client leader = NAPI.Player.GetPlayerFromHandle((NetHandle)player.GetData("accept_faction_invite"));
player.ResetData("accept_faction_invite");
@@ -45,6 +48,8 @@ namespace ReallifeGamemode.Server.Managers
return;
}
NAPI.Chat.SendChatMessageToAll("faction invite 3");
using (var dbContext = new DatabaseContext())
{
User u = leader.GetUser(dbContext);
@@ -125,6 +130,35 @@ namespace ReallifeGamemode.Server.Managers
target.SendChatMessage("!{02FCFF}Du hast von " + player.Name + " eine Einladung in die Fraktion \"" + player.GetUser().Faction.Name + "\" erhalten.");
target.SendChatMessage("!{02FCFF}Benutze das Interaktionsmenü, um die Einladung anzunehmen");
}
[RemoteEvent("CLIENT:InteractionMenu_InviteGroup")]
public void InteractionMenuInviteGroup(Client player, string nameOrId)
{
if (player.GetUser()?.Group == null || player.GetUser().GroupRank < GroupRank.MANAGER)
{
ChatService.NotAuthorized(player);
return;
}
Client target = ClientService.GetClientByNameOrId(nameOrId);
if (target == null || !target.IsLoggedIn())
{
ChatService.PlayerNotFound(player);
return;
}
if (target.GetUser()?.Group != null)
{
ChatService.Error(player, "Dieser Spieler ist schon in einer Gruppe");
return;
}
target.SetData("accept_group_invite", player.Handle);
player.SendChatMessage("!{02FCFF}Du hast dem Spieler " + target.Name + " eine Einladung in deine Gruppe gesendet.");
target.SendChatMessage("!{02FCFF}Du hast von " + player.Name + " eine Einladung in die Gruppe \"" + player.GetUser().Group.Name + "\" erhalten.");
target.SendChatMessage("!{02FCFF}Benutze das Interaktionsmenü, um die Einladung anzunehmen");
}
#endregion
#region Spielerinteraktionen PFEILTASTE-LINKS
[RemoteEvent("openTradeInventory")]