Fixed Group Menu

This commit is contained in:
VegaZ
2021-03-11 22:53:54 +01:00
parent f3ea73f5b2
commit 5fc252ef43
3 changed files with 31 additions and 23 deletions

View File

@@ -39,6 +39,8 @@ export default function (globalData: IGlobalData) {
var payName: string; var payName: string;
var groupRank = null;
mp.events.add("SERVER:InteractionMenu_OpenMenu", (accountDataJson: string, factionleader: string, faction: string, group: string, factionInvite: boolean, groupInvite: boolean, ticket_boolean: boolean, ticket_amount, house: boolean) => { mp.events.add("SERVER:InteractionMenu_OpenMenu", (accountDataJson: string, factionleader: string, faction: string, group: string, factionInvite: boolean, groupInvite: boolean, ticket_boolean: boolean, ticket_amount, house: boolean) => {
@@ -57,7 +59,7 @@ export default function (globalData: IGlobalData) {
menu.AddItem(licenseItem); menu.AddItem(licenseItem);
menu.BindMenuToItem(getLicenseMenu(accountData, accountData.licenses, menu), licenseItem); menu.BindMenuToItem(getLicenseMenu(accountData, accountData.licenses, menu), licenseItem);
groupRank = accountData.groupRank;
var vehicles = accountData.vehicles; var vehicles = accountData.vehicles;
if (vehicles.length > 0) { if (vehicles.length > 0) {
@@ -202,21 +204,24 @@ export default function (globalData: IGlobalData) {
menuItem.SetRightLabel(data.faction); menuItem.SetRightLabel(data.faction);
accountMenu.AddItem(menuItem); accountMenu.AddItem(menuItem);
menuItem = new UIMenuItem("Fraktionsrang"); if (data.faction != "Zivilist") {
menuItem.SetRightLabel(data.factionRank); menuItem = new UIMenuItem("Fraktionsrang");
accountMenu.AddItem(menuItem); menuItem.SetRightLabel(data.factionRank);
accountMenu.AddItem(menuItem);
}
menuItem = new UIMenuItem("Job"); menuItem = new UIMenuItem("Job");
menuItem.SetRightLabel(data.job); menuItem.SetRightLabel(data.job);
accountMenu.AddItem(menuItem); accountMenu.AddItem(menuItem);
menuItem = new UIMenuItem("Gruppe"); if (data.group != null) {
menuItem.SetRightLabel(data.group); menuItem = new UIMenuItem("Gruppe");
accountMenu.AddItem(menuItem); menuItem.SetRightLabel(data.group);
accountMenu.AddItem(menuItem);
menuItem = new UIMenuItem("Gruppenrang"); menuItem = new UIMenuItem("Gruppenrang");
menuItem.SetRightLabel(data.groupRank); menuItem.SetRightLabel(data.groupRank);
accountMenu.AddItem(menuItem); accountMenu.AddItem(menuItem);
}
menuItem = new UIMenuItem("Registrierungsdatum"); menuItem = new UIMenuItem("Registrierungsdatum");
menuItem.SetRightLabel(data.regDate); menuItem.SetRightLabel(data.regDate);
@@ -356,12 +361,12 @@ export default function (globalData: IGlobalData) {
function getGroupMenu(group: string, parentMenu: NativeUI.Menu): NativeUI.Menu { function getGroupMenu(group: string, parentMenu: NativeUI.Menu): NativeUI.Menu {
var groupMenu = new NativeUI.Menu("Gruppe", group, new Point(0, screenRes.y / 3), null, null); var groupMenu = new NativeUI.Menu("Gruppe", group, new Point(0, screenRes.y / 3), null, null);
groupMenu.AddItem(new UIMenuItem("Spieler einladen")); if (groupRank == "Manager" || groupRank == "Besitzer") groupMenu.AddItem(new UIMenuItem("Spieler einladen"));
groupMenu.AddItem(new UIMenuItem("Spieler rauswerfen")); if (groupRank == "Manager" || groupRank == "Besitzer") groupMenu.AddItem(new UIMenuItem("Spieler rauswerfen"));
groupMenu.AddItem(new UIMenuItem("Mitglieder anzeigen")); //groupMenu.AddItem(new UIMenuItem("Mitglieder anzeigen"));
groupMenu.AddItem(new UIMenuItem("Leiter bestimmen")); if (groupRank == "Besitzer") groupMenu.AddItem(new UIMenuItem("Leiter bestimmen"));
groupMenu.AddItem(new UIMenuItem("Gruppe verlassen")); groupMenu.AddItem(new UIMenuItem("Gruppe verlassen"));
groupMenu.AddItem(new UIMenuItem("~r~Gruppe löschen")); if (groupRank == "Besitzer") groupMenu.AddItem(new UIMenuItem("~r~Gruppe löschen"));
groupMenu.Visible = false; groupMenu.Visible = false;
mp.gui.chat.show(false); mp.gui.chat.show(false);
groupMenu.ItemSelect.on((item, index) => { groupMenu.ItemSelect.on((item, index) => {

View File

@@ -58,7 +58,6 @@ namespace ReallifeGamemode.Server.Events
GroundItem.PickUpGroundItem(player); GroundItem.PickUpGroundItem(player);
} }
/* /*
[RemoteEvent("keyPress:LEFT_ARROW")] [RemoteEvent("keyPress:LEFT_ARROW")]
public void KeyPressLeftArrow(Player player) public void KeyPressLeftArrow(Player player)
@@ -84,7 +83,6 @@ namespace ReallifeGamemode.Server.Events
} }
} }
*/ */
[RemoteEvent("keyPress:RIGHT_ARROW")] [RemoteEvent("keyPress:RIGHT_ARROW")]
public void KeyPressRightArrow(Player player) public void KeyPressRightArrow(Player player)
{ {
@@ -156,9 +154,9 @@ namespace ReallifeGamemode.Server.Events
nextPayday = u.PaydayTimer nextPayday = u.PaydayTimer
}; };
string faction = u.Faction?.Name; string faction = u.Faction?.Name ?? "Zivilist";
string factionleader = u.FactionLeader ? u.Faction.Name : null; string factionleader = u.FactionLeader ? u.Faction.Name : null;
string group = u.Group != null && u.GroupRank >= GroupRank.MANAGER ? u.Group.Name : null; string group = u.Group != null ? u.Group.Name : null;
bool factionInvite = player.HasData("accept_faction_invite"); bool factionInvite = player.HasData("accept_faction_invite");
bool groupInvite = player.HasData("accept_group_invite"); bool groupInvite = player.HasData("accept_group_invite");
bool ticket_boolean = player.HasData("ticket_boolean"); bool ticket_boolean = player.HasData("ticket_boolean");

View File

@@ -307,7 +307,7 @@ namespace ReallifeGamemode.Server.Managers
return; return;
} }
if (targetUser?.GroupRank >= GroupRank.MANAGER && playerUser?.GroupRank != GroupRank.OWNER) if (targetUser?.GroupRank >= GroupRank.MANAGER)
{ {
ChatService.ErrorMessage(player, "Du kannst keinen Leader uninviten"); ChatService.ErrorMessage(player, "Du kannst keinen Leader uninviten");
return; return;
@@ -343,6 +343,11 @@ namespace ReallifeGamemode.Server.Managers
{ {
using (var dbContext = new DatabaseContext()) using (var dbContext = new DatabaseContext())
{ {
if (playerUser.GroupRank != GroupRank.OWNER)
{
ChatService.ErrorMessage(player, "Nur Besitzer können Manager hinzufügen");
return;
}
if (targetUser?.Group.Id != playerUser?.Group.Id) if (targetUser?.Group.Id != playerUser?.Group.Id)
{ {
ChatService.ErrorMessage(player, "Dieser Spieler ist nicht in deiner Gruppe"); ChatService.ErrorMessage(player, "Dieser Spieler ist nicht in deiner Gruppe");
@@ -351,7 +356,7 @@ namespace ReallifeGamemode.Server.Managers
if (player.Name == name) if (player.Name == name)
{ {
ChatService.ErrorMessage(player, "Du bist schon Leader"); ChatService.ErrorMessage(player, "Du bist schon Besitzer");
return; return;
} }
@@ -394,7 +399,7 @@ namespace ReallifeGamemode.Server.Managers
var newOwner = memberList.OrderByDescending(c => c.GroupRank).First(); var newOwner = memberList.OrderByDescending(c => c.GroupRank).First();
newOwner.GroupRank = GroupRank.OWNER; newOwner.GroupRank = GroupRank.OWNER;
ChatService.BroadcastGroup("~y~" + newOwner.Name + "~s~ wurde zum neuen Owner ernannt", playerUser.Group); ChatService.BroadcastGroup("~y~" + newOwner.Name + "~s~ wurde zum neuen Besitzer ernannt", playerUser.Group);
} }
playerUser.GroupRank = GroupRank.NONE; playerUser.GroupRank = GroupRank.NONE;