static string TranslateLimb(ELimb limb) { switch (limb) { case ELimb.SKULL: return(EssLang.Translate("LIMB_HEAD")); case ELimb.LEFT_HAND: case ELimb.RIGHT_HAND: case ELimb.LEFT_ARM: case ELimb.RIGHT_ARM: return(EssLang.Translate("LIMB_ARM")); case ELimb.LEFT_FOOT: case ELimb.RIGHT_FOOT: case ELimb.LEFT_LEG: case ELimb.RIGHT_LEG: return(EssLang.Translate("LIMB_LEG")); case ELimb.SPINE: return(EssLang.Translate("LIMB_TORSO")); //TODO: Add case ELimb.LEFT_BACK: case ELimb.RIGHT_BACK: case ELimb.LEFT_FRONT: case ELimb.RIGHT_FRONT: return("?"); default: return("?"); } }
public override CommandResult OnExecute(ICommandSource src, ICommandArgs args) { var message = args[1].ToString(); var url = args[2].ToString(); if (args[0].Equals("*")) { UServer.Players.ForEach(p => { p.UnturnedPlayer.sendBrowserRequest(message, url); }); EssLang.Send(src, "REQUEST_URL_SUCCESS", EssLang.Translate("EVERYONE"), url); } else if (args[0].IsValidPlayerIdentifier) { var target = args[0].ToPlayer; target.UnturnedPlayer.sendBrowserRequest(message, url); EssLang.Send(src, "REQUEST_URL_SUCCESS", target.DisplayName, url); } else { return(CommandResult.Lang("PLAYER_NOT_FOUND", args[0])); } return(CommandResult.Success()); }
public override CommandResult OnExecute(ICommandSource src, ICommandArgs args) { if (args.IsEmpty || args.Length > 1) { return(CommandResult.ShowUsage()); } try { var steamId = new CSteamID(ulong.Parse(args[0].ToString())); if (!steamId.IsValid()) { return(CommandResult.LangError("INVALID_STEAMID", steamId.m_SteamID)); } ResetPlayer(steamId.m_SteamID); EssLang.Send(src, "PLAYER_RESET"); } catch (FormatException) { var target = args[0].ToPlayer; if (target == null) { return(CommandResult.LangError("PLAYER_NOT_FOUND", args[0])); } target.Kick(EssLang.Translate("PLAYER_RESET_KICK")); ResetPlayer(target.CSteamId.m_SteamID); EssLang.Send(src, "PLAYER_RESET"); } return(CommandResult.Success()); }
public KitItem(ushort id, byte durability, byte amount) { Preconditions.CheckState( Assets.find(EAssetType.ITEM, id) != null, EssLang.Translate("INVALID_ITEM_ID", id)); Id = id; Durability = durability; Amount = amount; ItemUtil.GetItem(id).IfPresent(ass => Metadata = ass.getState()); }
private void DeathMessages(UnturnedPlayer player, EDeathCause cause, ELimb limb, CSteamID killer) { if (!(EssLang.GetEntry($"DEATH_{cause}") is string message)) { return; } var hasKiller = killer != CSteamID.Nil; var arguments = new object[hasKiller ? 3 : 2]; var color = ColorUtil.GetColorFromString(ref message); arguments[0] = player.CharacterName; arguments[1] = EssLang.Translate($"LIMB_{limb}") ?? "?"; if (hasKiller) { arguments[2] = UPlayer.From(killer)?.CharacterName ?? "?"; } UServer.Broadcast(string.Format(message, arguments), color); }
public override CommandResult OnExecute(ICommandSource src, ICommandArgs args) { var players = new List <UPlayer>(UServer.Players); if (players.Count == 0) { return(CommandResult.Lang("NO_PLAYERS_FOR_KICK")); } var reason = args.IsEmpty ? EssLang.Translate("KICK_NO_SPECIFIED_REASON") : args.Join(0); players.ForEach(player => { player.Kick(reason); }); EssLang.Send(src, "KICKED_ALL", players.Count); return(CommandResult.Success()); }
public static string FormatSeconds(uint seconds) { var msgSecond = EssLang.Translate("SECOND"); var msgSeconds = EssLang.Translate("SECONDS"); if (seconds < 60) { return($"{seconds} {(seconds == 1 ? msgSecond : msgSeconds )}"); } const uint MIN = 60; const uint HOUR = MIN * MIN; const uint DAY = HOUR * 24; var days = seconds / DAY; seconds -= days * DAY; var hours = seconds / HOUR; seconds -= hours * HOUR; var minutes = seconds / MIN; seconds -= minutes * MIN; var sb = new StringBuilder(); if (days > 0) { var msgDay = EssLang.Translate("DAY"); var msgDays = EssLang.Translate("DAYS"); sb.Append(days) .Append(" ") .Append(days == 1 ? msgDay : msgDays) .Append(", "); } if (hours > 0) { var msgHour = EssLang.Translate("HOUR"); var msgHours = EssLang.Translate("HOURS"); sb.Append(hours) .Append(" ") .Append(hours == 1 ? msgHour : msgHours) .Append(", "); } if (minutes > 0) { var msgMinute = EssLang.Translate("MINUTE"); var msgMinutes = EssLang.Translate("MINUTES"); sb.Append(minutes) .Append(" ") .Append(minutes == 1 ? msgMinute : msgMinutes) .Append(", "); } sb.Append(seconds) .Append(" ") .Append(seconds == 1 ? msgSecond : msgSeconds) .Append(", "); return(sb.ToString().Substring(0, sb.Length - 2)); }
public override CommandResult OnExecute(ICommandSource src, ICommandArgs args) { if (args.Length == 0 || (args.Length == 1 && src.IsConsole)) { return(CommandResult.ShowUsage()); } if (!args[0].IsInt) { return(CommandResult.Lang("INVALID_NUMBER", args[0])); } var amount = args[0].ToInt; if (amount > MAX_INPUT_VALUE || amount < -MAX_INPUT_VALUE) { return(CommandResult.Lang("NUMBER_BETWEEN", -MAX_INPUT_VALUE, MAX_INPUT_VALUE)); } if (args.Length == 2) { if (args[1].Equals("*")) { UServer.Players.ForEach(p => GiveExp(p, amount)); if (amount >= 0) { EssLang.Send(src, "EXPERIENCE_GIVEN", amount, EssLang.Translate("EVERYONE")); } else { EssLang.Send(src, "EXPERIENCE_TAKE", -amount, EssLang.Translate("EVERYONE")); } } else if (!args[1].IsValidPlayerIdentifier) { return(CommandResult.Lang("PLAYER_NOT_FOUND", args[1])); } else { var player = args[1].ToPlayer; if (amount >= 0) { EssLang.Send(src, "EXPERIENCE_GIVEN", amount, player.DisplayName); } else { EssLang.Send(src, "EXPERIENCE_TAKE", -amount, player.DisplayName); } GiveExp(player, amount); } } else { GiveExp(src.ToPlayer(), amount); } return(CommandResult.Success()); }
/// <summary> /// Commonly indicate that an given argument is invalid, and send the /// give <paramref name="key"/> to sender. /// </summary> /// <param name="key">Translation entry</param> /// <param name="args">Arguments of translation entry</param> /// <returns></returns> public static CommandResult Lang(string key, params object[] args) { return(new CommandResult(EssLang.Translate(key, args), ResultType.LANG)); }