Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 23 additions & 27 deletions Content/Commands/DedservAdmin.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
using DragonLens.Core.Systems;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System;
using DragonLens.Core.Systems;
using Microsoft.Xna.Framework;
using Terraria;
using Terraria.Chat;
using Terraria.Localization;

Expand All @@ -12,40 +10,38 @@ namespace DragonLens.Content.Commands
internal class DedservAdmin : ModCommand
{
public override string Command => "dladmin";

public override string Description => "Toggles the admin status of a given user";

public override string Usage => "dladmin <player>";

public override CommandType Type => CommandType.Console;

public override void Action(CommandCaller caller, string input, string[] args)
{
if (input.Length < Command.Length + 1)
{
throw new UsageException("You must provide a players name!");
}
if (args.Length < 1)
throw new UsageException("You must provide a player's name!");

string name = input[(Command.Length + 1)..];
string name = args[0];
Player player = Array.Find(Main.player, p =>
string.Equals(p.name, name, StringComparison.OrdinalIgnoreCase)
);

Player player = Main.player.FirstOrDefault(n => n.name.ToLower() == name);
if (player == null)
throw new UsageException($"A player by the name '{name}' was not found.");

if (player != null)
if (PermissionHandler.CanUseTools(player))
{
if (PermissionHandler.CanUseTools(player) || true)
{
ChatHelper.BroadcastChatMessage(NetworkText.FromLiteral($"The server made {name} not an admin!"), Color.Orange);
PermissionHandler.RemoveAdmin(player);
}
else
{
ChatHelper.BroadcastChatMessage(NetworkText.FromLiteral($"The server made {name} an admin!"), Color.Yellow);
PermissionHandler.AddAdmin(player);
}
PermissionHandler.RemoveAdmin(player);
ChatHelper.BroadcastChatMessage(
NetworkText.FromLiteral($"The server made {player.name} not an admin!"),
Color.Orange
);
}
else
{
throw new UsageException($"A player by the name {name} was not found.");
PermissionHandler.AddAdmin(player);
ChatHelper.BroadcastChatMessage(
NetworkText.FromLiteral($"The server made {player.name} an admin!"),
Color.Yellow
);
}
}
}
Expand Down