the initial commit to the repo.

This commit is contained in:
NukedBart 2025-10-25 01:27:14 +08:00
parent 025c032b8c
commit 1b757591b9
264 changed files with 21882 additions and 0 deletions

View file

@ -0,0 +1,155 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using EFT.Interactive;
using EscapeFromTarkovCheat.Utils;
using UnityEngine;
namespace EscapeFromTarkovCheat.Data
{
class GameExfiltrationPoint
{
public ExfiltrationPoint ExfiltrationPoint { get; }
public Vector3 ScreenPosition => screenPosition;
public bool IsOnScreen { get; private set; }
public float Distance { get; private set; }
public string Name { get; set; }
public bool Eligible { get; private set; }
public string FormattedDistance => $"{Math.Round(Distance)}m";
private Vector3 screenPosition;
public GameExfiltrationPoint(ExfiltrationPoint exfiltrationPoint, bool eligible)
{
if (exfiltrationPoint == null)
throw new ArgumentNullException(nameof(exfiltrationPoint));
ExfiltrationPoint = exfiltrationPoint;
screenPosition = default;
Distance = 0f;
Name = exfiltrationPoint.Settings.Name.Localized();
Eligible = eligible;
}
public void RecalculateDynamics()
{
if (!GameUtils.IsExfiltrationPointValid(ExfiltrationPoint))
return;
screenPosition = GameUtils.WorldPointToScreenPoint(ExfiltrationPoint.transform.position);
IsOnScreen = GameUtils.IsScreenPointVisible(screenPosition);
Distance = Vector3.Distance(Main.MainCamera.transform.position, ExfiltrationPoint.transform.position);
}
private string ExtractionNameToSimpleName(string extractionName)
{
// Factory
if (extractionName.Contains("exit (3)"))
return "Cellars";
if (extractionName.Contains("exit (1)"))
return "Gate 3";
if (extractionName.Contains("exit (2)"))
return "Gate 0";
if (extractionName.Contains("exit_scav_gate3"))
return "Gate 3";
if (extractionName.Contains("exit_scav_camer"))
return "Blinking Light";
if (extractionName.Contains("exit_scav_office"))
return "Office";
// Woods
if (extractionName.Contains("eastg"))
return "East Gate";
if (extractionName.Contains("scavh"))
return "House";
if (extractionName.Contains("deads"))
return "Dead Mans Place";
if (extractionName.Contains("var1_1_constant"))
return "Outskirts";
if (extractionName.Contains("scav_outskirts"))
return "Outskirts";
if (extractionName.Contains("water"))
return "Outskirts Water";
if (extractionName.Contains("boat"))
return "The Boat";
if (extractionName.Contains("mountain"))
return "Mountain Stash";
if (extractionName.Contains("oldstation"))
return "Old Station";
if (extractionName.Contains("UNroad"))
return "UN Road Block";
if (extractionName.Contains("var2_1_const"))
return "UN Road Block";
if (extractionName.Contains("gatetofactory"))
return "Gate to Factory";
if (extractionName.Contains("RUAF"))
return "RUAF Gate";
// Shoreline
if (extractionName.Contains("roadtoc"))
return "Road to Customs";
if (extractionName.Contains("lighthouse"))
return "Lighthouse";
if (extractionName.Contains("tunnel"))
return "Tunnel";
if (extractionName.Contains("wreckedr"))
return "Wrecked Road";
if (extractionName.Contains("deadend"))
return "Dead End";
if (extractionName.Contains("housefence"))
return "Ruined House Fence";
if (extractionName.Contains("gyment"))
return "Gym Entrance";
if (extractionName.Contains("southfence"))
return "South Fence Passage";
if (extractionName.Contains("adm_base"))
return "Admin Basement";
// Customs
if (extractionName.Contains("administrationg"))
return "Administration Gate";
if (extractionName.Contains("factoryfar"))
return "Factory Far Corner";
if (extractionName.Contains("oldazs"))
return "Old Gate";
if (extractionName.Contains("milkp_sh"))
return "Shack";
if (extractionName.Contains("beyondfuel"))
return "Beyond Fuel Tank";
if (extractionName.Contains("railroadtom"))
return "Railroad to Mil Base";
if (extractionName.Contains("_pay_car"))
return "V-Exit";
if (extractionName.Contains("oldroadgate"))
return "Old Road Gate";
if (extractionName.Contains("sniperroad"))
return "Sniper Road Block";
if (extractionName.Contains("warehouse17"))
return "Warehouse 17";
if (extractionName.Contains("factoryshacks"))
return "Factory Shacks";
if (extractionName.Contains("railroadtotarkov"))
return "Railroad to Tarkov";
if (extractionName.Contains("trailerpark"))
return "Trailer Park";
if (extractionName.Contains("crossroads"))
return "Crossroads";
if (extractionName.Contains("railroadtoport"))
return "Railroad to Port";
// Interchange
if (extractionName.Contains("NW_Exfil"))
return "North West Extract";
if (extractionName.Contains("SE_Exfil"))
return "Emmercom";
return extractionName;
}
}
}

View file

@ -0,0 +1,45 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using EFT.Interactive;
using EscapeFromTarkovCheat.Utils;
using UnityEngine;
namespace EscapeFromTarkovCheat.Data
{
class GameLootContainer
{
public LootableContainer LootableContainer { get;}
public Vector3 ScreenPosition => screenPosition;
public bool IsOnScreen { get; private set; }
public float Distance { get; private set; }
public string FormattedDistance => $"{Math.Round(Distance)}m";
private Vector3 screenPosition;
public GameLootContainer(LootableContainer lootableContainer)
{
if (lootableContainer == null)
throw new ArgumentNullException(nameof(lootableContainer));
LootableContainer = lootableContainer;
screenPosition = default;
Distance = 0f;
}
public void RecalculateDynamics()
{
if (!GameUtils.IsLootableContainerValid(LootableContainer))
return;
screenPosition = GameUtils.WorldPointToScreenPoint(LootableContainer.transform.position);
IsOnScreen = GameUtils.IsScreenPointVisible(screenPosition);
Distance = Vector3.Distance(Main.MainCamera.transform.position, LootableContainer.transform.position);
}
}
}

View file

@ -0,0 +1,43 @@
using System;
using EFT.Interactive;
using EscapeFromTarkovCheat.Utils;
using UnityEngine;
namespace EscapeFromTarkovCheat.Data
{
public class GameLootItem
{
public LootItem LootItem { get; }
public Vector3 ScreenPosition => screenPosition;
public bool IsOnScreen { get; private set; }
public float Distance { get; private set; }
public string FormattedDistance => $"{Math.Round(Distance)}m";
private Vector3 screenPosition;
public GameLootItem(LootItem lootItem)
{
if (lootItem == null)
throw new ArgumentNullException(nameof(lootItem));
LootItem = lootItem;
screenPosition = default;
Distance = 0f;
}
public void RecalculateDynamics()
{
if (!GameUtils.IsLootItemValid(LootItem))
return;
screenPosition = GameUtils.WorldPointToScreenPoint(LootItem.transform.position);
IsOnScreen = GameUtils.IsScreenPointVisible(screenPosition);
Distance = Vector3.Distance(Main.MainCamera.transform.position, LootItem.transform.position);
}
}
}

View file

@ -0,0 +1,75 @@
using System;
using System.Linq;
using EFT;
using EscapeFromTarkovCheat.Utils;
using UnityEngine;
namespace EscapeFromTarkovCheat.Data
{
public class GamePlayer
{
public Player Player { get; }
public Vector3 ScreenPosition => screenPosition;
public Vector3 HeadScreenPosition => headScreenPosition;
public bool IsOnScreen { get; private set; }
public bool IsVisible { get; private set; }
public float Distance { get; private set; }
public bool IsAI { get; private set; }
public string FormattedDistance => $"{(int)Math.Round(Distance)}m";
private Vector3 screenPosition;
private Vector3 headScreenPosition;
public GamePlayer(Player player)
{
if (player == null)
throw new ArgumentNullException(nameof(player));
this.Player = player;
screenPosition = default;
headScreenPosition = default;
IsOnScreen = false;
Distance = 0f;
IsAI = true;
}
public Vector3 GetBonePosition(BoneType boneType)
{
if (Player.PlayerBody?.SkeletonRootJoint?.Bones == null)
return Vector3.zero;
Transform boneTransform = Player.PlayerBody.SkeletonRootJoint.Bones.ElementAtOrDefault((int)boneType).Value;
if (boneTransform == null)
return Vector3.zero;
return GameUtils.WorldPointToScreenPoint(boneTransform.position);
}
public void RecalculateDynamics()
{
if (!GameUtils.IsPlayerValid(Player))
return;
screenPosition = GameUtils.WorldPointToScreenPoint(Player.Transform.position);
if (Player.PlayerBones != null)
headScreenPosition = GameUtils.WorldPointToScreenPoint(Player.PlayerBones.Head.position);
IsOnScreen = GameUtils.IsScreenPointVisible(screenPosition);
Distance = Vector3.Distance(Main.MainCamera.transform.position, Player.Transform.position);
if ((Player.Profile != null) && (Player.Profile.Info != null))
IsAI = (Player.Profile.Info.RegistrationDate <= 0);
}
}
}

View file

@ -0,0 +1,8 @@
namespace EscapeFromTarkovCheat.Data
{
public enum Locale
{
ENGLISH,
CHINESE
}
}

View file

@ -0,0 +1,266 @@
using EscapeFromTarkovCheat.Utils;
using System.Collections.Generic;
namespace EscapeFromTarkovCheat.Data
{
internal class LocalisationData
{
public Locale locale;
public Dictionary<StringKey, string> data = new Dictionary<StringKey, string>();
private void zh_CN() {
data.Add(StringKey.MAIN_TITLE, "Stoopid Cheat V1");
data.Add(StringKey.MENU_PLAYER_VISUAL_TITLE, "玩家视觉菜单");
data.Add(StringKey.MENU_MISC_VISUAL_TITLE, "杂项视觉菜单");
data.Add(StringKey.MENU_AIMBOT_TITLE, "自瞄视觉菜单");
data.Add(StringKey.MENU_MISCELLANEOUS_TITLE, "杂项菜单");
data.Add(StringKey.MENU_SKILLS_TITLE, "技能编辑器");
data.Add(StringKey.MENU_ITEMS_TITLE, "物品菜单");
data.Add(StringKey.MENU_MAIN_DESC_TOGGLE, "按 Insert 键开关菜单");
data.Add(StringKey.MENU_MAIN_HINT_UNLOCK, "按 数字键盘 4 解锁所有门");
data.Add(StringKey.MENU_MAIN_HINT_HEAL, "按 数字键盘 1 治疗");
data.Add(StringKey.MENU_MAIN_BUTTON_PLAYER_VISUAL, GetByKey(StringKey.MENU_PLAYER_VISUAL_TITLE));
data.Add(StringKey.MENU_MAIN_BUTTON_MISC_VISUAL, GetByKey(StringKey.MENU_MISC_VISUAL_TITLE));
data.Add(StringKey.MENU_MAIN_BUTTON_AIMBOT, GetByKey(StringKey.MENU_AIMBOT_TITLE));
data.Add(StringKey.MENU_MAIN_BUTTON_MISCELLANEOUS, GetByKey(StringKey.MENU_MISCELLANEOUS_TITLE));
data.Add(StringKey.MENU_MAIN_BUTTON_SKILLS, GetByKey(StringKey.MENU_SKILLS_TITLE));
data.Add(StringKey.MENU_MAIN_BUTTON_ITEMS, GetByKey(StringKey.MENU_ITEMS_TITLE));
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYERS, "绘制玩家");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_BOX, "绘制玩家方框");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_NAME, "绘制玩家名");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_LINE, "绘制玩家射线");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_HEALTH, "绘制玩家血量");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_SKELETON, "绘制玩家骨骼");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_RANGE, "玩家距离范围");
data.Add(StringKey.MENU_MISC_VISUAL_DRAWLOOTITEMS, "绘制杂散物资");
data.Add(StringKey.MENU_MISC_VISUAL_LOOTITEMRANGE, "杂散物资距离范围");
data.Add(StringKey.MENU_MISC_VISUAL_DRAWCONTAINERS, "绘制容器");
data.Add(StringKey.MENU_MISC_VISUAL_CONTAINERRANGE, "容器距离范围");
data.Add(StringKey.MENU_MISC_VISUAL_DRAWEP, "绘制撤离点");
data.Add(StringKey.MENU_AIMBOT_TOGGLE, "自瞄");
data.Add(StringKey.MENU_AIMBOT_SMOOTH, "自瞄平滑");
data.Add(StringKey.MENU_AIMBOT_DRAWFOV, "绘制自瞄范围");
data.Add(StringKey.MENU_AIMBOT_FOVRANGE, "自瞄视野范围");
data.Add(StringKey.MENU_AIMBOT_AIMINGRANGE, "瞄准上限距离");
data.Add(StringKey.MENU_AIMBOT_VISIBLEONLY, "仅瞄准可见目标");
data.Add(StringKey.MENU_AIMBOT_SILENT, "静默瞄准");
data.Add(StringKey.MENU_AIMBOT_NORECOIL, "无后座");
data.Add(StringKey.MENU_MISCELLANEOUS_GODMODE, "锁血");
data.Add(StringKey.MENU_MISCELLANEOUS_STAMINA, "无限耐");
data.Add(StringKey.MENU_MISCELLANEOUS_SPEEDHACK, "角色加速");
data.Add(StringKey.MENU_MISCELLANEOUS_SPEEDHACK_ADDITION, "速度加成量");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_HEAL, $"回满血 [{Settings.InstaHeal}]");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_UNLOCK, $"解锁 20米 内所有门 [{Settings.UnlockDoors}]");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_KILL, $"全场活光光 [{Settings.KillSwitch}]");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_TPENEMIES, $"吸星大法 [{Settings.TpEnemies}]");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_TRADERSTANDING, $"全部商人好感增加 0.1 [{Settings.IncreaseTraderStandingKey}]");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_ADDXP, "添加经验");
data.Add(StringKey.MENU_MISCELLANEOUS_XPINRAID, "本局经验:");
data.Add(StringKey.MENU_MISCELLANEOUS_XPADDITION, "经验添加量:");
data.Add(StringKey.MENU_SKILLS_BUTTON_MAXALL, "技能全满");
data.Add(StringKey.MENU_SKILLS_HINT_INRAID, "请在战局中使用!");
data.Add(StringKey.MENU_SKILLS_STRENGTH, "力量");
data.Add(StringKey.MENU_SKILLS_STRESSRESIST, "抗压");
data.Add(StringKey.MENU_SKILLS_MAGDRILLS, "弹匣训练");
data.Add(StringKey.MENU_SKILLS_MELEE, "近战");
data.Add(StringKey.MENU_SKILLS_HIDEOUT, "藏身处管理");
data.Add(StringKey.MENU_SKILLS_CRAFTING, "工艺");
data.Add(StringKey.MENU_SKILLS_HEAVYVESTS, "重型护甲");
data.Add(StringKey.MENU_SKILLS_LIGHTVESTS, "轻型护甲");
data.Add(StringKey.MENU_SKILLS_LMG, "轻机枪");
data.Add(StringKey.MENU_SKILLS_ASSAULT, "突击步枪");
data.Add(StringKey.MENU_SKILLS_PISTOL, "手枪");
data.Add(StringKey.MENU_SKILLS_PERCEPTION, "感知");
data.Add(StringKey.MENU_SKILLS_SNIPER, "狙击步枪");
data.Add(StringKey.MENU_SKILLS_SNIPING, "狙击");
data.Add(StringKey.MENU_SKILLS_ENDURANCE, "耐力");
data.Add(StringKey.MENU_SKILLS_THROWING, "投掷物");
data.Add(StringKey.MENU_SKILLS_CHARISMA, "魅力");
data.Add(StringKey.MENU_SKILLS_HEALTH, "健康");
data.Add(StringKey.MENU_SKILLS_VITALITY, "活力");
data.Add(StringKey.MENU_SKILLS_METABOLISM, "代谢");
data.Add(StringKey.MENU_SKILLS_IMMUNITY, "免疫");
data.Add(StringKey.MENU_SKILLS_SURGERY, "手术");
data.Add(StringKey.MENU_SKILLS_INTELLECT, "智力");
data.Add(StringKey.MENU_SKILLS_ATTENTION, "专注");
data.Add(StringKey.MENU_SKILLS_REVOLVER, "左轮手枪");
data.Add(StringKey.MENU_SKILLS_SHOTGUN, "霰弹枪");
data.Add(StringKey.MENU_SKILLS_HMG, "重机枪");
data.Add(StringKey.MENU_SKILLS_DMR, "精确射手步枪");
data.Add(StringKey.MENU_SKILLS_AIMDRILLS, "瞄准训练");
data.Add(StringKey.MENU_SKILLS_SEARCH, "搜索");
data.Add(StringKey.MENU_SKILLS_WEAPONTREATMENT, "武器维护");
data.Add(StringKey.MENU_SKILLS_TROUBLESHOOTING, "故障排除");
data.Add(StringKey.MENU_SKILLS_COVERTMOVEMENT, "隐蔽行动");
data.Add(StringKey.MENU_SKILLS_SMG, "冲锋枪");
data.Add(StringKey.MENU_ITEMS_BUTTON_TPLOOTS, $"吸物资 [{Settings.TpLoots}]");
data.Add(StringKey.MENU_ITEMS_BUTTON_AIRDROP, $"摇空投 [{Settings.CallAirdrop}]");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_TITLE, "物品栏编辑器");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_SEARCH, "搜索物品 ID");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_GET, "从背包中寻找");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_STRINGS, "搜索结果");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_CHANGES, "要提交的更改(按物品ID、宽和高的顺序)");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_BUTTON_COMMIT, "提交更改");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_BUTTON_SETFIR, "全部带勾");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_DUPE_TITLE, "物品复制器");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_DUPE_BUTTON_SETSTACK, "更改堆叠为 x");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_DUPE_BUTTON_RESETSTACK, "重置堆叠为 1");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_DUPE_BUTTON_SETSTACK_FASTRUBLE, "快速设置堆叠40万(卢布)");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_DUPE_BUTTON_SETSTACK_FASTEUROUSD, "快速设置堆叠5万(欧美元)");
// 撤离点
data.Add(StringKey.DATA_EP_ACTIVE, "激活");
data.Add(StringKey.DATA_EP_TIMER, "倒计时");
data.Add(StringKey.DATA_EP_CLOSED, "已关闭");
data.Add(StringKey.DATA_EP_PENDING, "等待中");
data.Add(StringKey.DATA_EP_OPEN, "开放");
data.Add(StringKey.DATA_EP_REQUIREMENT, "需要前置");
// 人机类型
data.Add(StringKey.DATA_PLAYERTYPE_BOT, "普通人机");
data.Add(StringKey.DATA_PLAYERTYPE_GUARD, "保镖");
data.Add(StringKey.DATA_PLAYERTYPE_BEAR, "玩家 俄军");
data.Add(StringKey.DATA_PLAYERTYPE_USEC, "玩家 美军");
data.Add(StringKey.DATA_PLAYERTYPE_PMC, "玩家");
data.Add(StringKey.DATA_PLAYERTYPE_BOSS, "BOSS");
}
private void en_US()
{
data.Add(StringKey.MAIN_TITLE, "Stoopid Cheat V1");
data.Add(StringKey.MENU_PLAYER_VISUAL_TITLE, "Player Visual");
data.Add(StringKey.MENU_MISC_VISUAL_TITLE, "Misc Visual");
data.Add(StringKey.MENU_AIMBOT_TITLE, "Aimbot");
data.Add(StringKey.MENU_MISCELLANEOUS_TITLE, "Miscellaneous");
data.Add(StringKey.MENU_SKILLS_TITLE, "Skill Editor");
data.Add(StringKey.MENU_ITEMS_TITLE, "Items");
data.Add(StringKey.MENU_MAIN_DESC_TOGGLE, "Insert For Menu");
data.Add(StringKey.MENU_MAIN_HINT_UNLOCK, "Num 4 to Open Doors");
data.Add(StringKey.MENU_MAIN_HINT_HEAL, "Num 1 to Heal");
data.Add(StringKey.MENU_MAIN_BUTTON_PLAYER_VISUAL, GetByKey(StringKey.MENU_PLAYER_VISUAL_TITLE));
data.Add(StringKey.MENU_MAIN_BUTTON_MISC_VISUAL, GetByKey(StringKey.MENU_MISC_VISUAL_TITLE));
data.Add(StringKey.MENU_MAIN_BUTTON_AIMBOT, GetByKey(StringKey.MENU_AIMBOT_TITLE));
data.Add(StringKey.MENU_MAIN_BUTTON_MISCELLANEOUS, GetByKey(StringKey.MENU_MISCELLANEOUS_TITLE));
data.Add(StringKey.MENU_MAIN_BUTTON_SKILLS, GetByKey(StringKey.MENU_SKILLS_TITLE));
data.Add(StringKey.MENU_MAIN_BUTTON_ITEMS, GetByKey(StringKey.MENU_ITEMS_TITLE));
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYERS, "Draw Players");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_BOX, "Draw Player Box");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_NAME, "Draw Player Name");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_LINE, "Draw Player Line");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_HEALTH, "Draw Player Health");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_SKELETON, "Draw Player Skeleton");
data.Add(StringKey.MENU_PLAYER_VISUAL_DRAWPLAYER_RANGE, "Player Distance");
data.Add(StringKey.MENU_MISC_VISUAL_DRAWLOOTITEMS, "Draw Loot Items");
data.Add(StringKey.MENU_MISC_VISUAL_LOOTITEMRANGE, "Loot Item Distance");
data.Add(StringKey.MENU_MISC_VISUAL_DRAWCONTAINERS, "Draw Containers");
data.Add(StringKey.MENU_MISC_VISUAL_CONTAINERRANGE, "Container Distance");
data.Add(StringKey.MENU_MISC_VISUAL_DRAWEP, "Draw Extraction");
data.Add(StringKey.MENU_AIMBOT_TOGGLE, "Aimbot");
data.Add(StringKey.MENU_AIMBOT_SMOOTH, "Aimbot Smooth");
data.Add(StringKey.MENU_AIMBOT_DRAWFOV, "Draw FOV");
data.Add(StringKey.MENU_AIMBOT_FOVRANGE, "Aimbot FOV");
data.Add(StringKey.MENU_AIMBOT_AIMINGRANGE, "Aim Targets In: ");
data.Add(StringKey.MENU_AIMBOT_VISIBLEONLY, "Aim Visible Targets Only");
data.Add(StringKey.MENU_AIMBOT_SILENT, "Silent Aim");
data.Add(StringKey.MENU_AIMBOT_NORECOIL, "No Recoil");
data.Add(StringKey.MENU_MISCELLANEOUS_GODMODE, "God Mode");
data.Add(StringKey.MENU_MISCELLANEOUS_STAMINA, "Infinite Stamina");
data.Add(StringKey.MENU_MISCELLANEOUS_SPEEDHACK, "Speed Hack");
data.Add(StringKey.MENU_MISCELLANEOUS_SPEEDHACK_ADDITION, "Speed Boost");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_HEAL, $"Heal Yourself [{Settings.InstaHeal}]");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_UNLOCK, $"Unlock All Doors In 20m [{Settings.UnlockDoors}]");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_KILL, $"Kill Every Living Thing [{Settings.KillSwitch}]");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_TPENEMIES, $"Teleport All Enemies To You [{Settings.TpEnemies}]");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_TRADERSTANDING, $"Increase Standings For All Traders By 0.1 [{Settings.IncreaseTraderStandingKey}]");
data.Add(StringKey.MENU_MISCELLANEOUS_BUTTON_ADDXP, "Add Exp To Player");
data.Add(StringKey.MENU_MISCELLANEOUS_XPINRAID, "Current Exp In Raid: ");
data.Add(StringKey.MENU_MISCELLANEOUS_XPADDITION, "Exp Addition: ");
data.Add(StringKey.MENU_SKILLS_BUTTON_MAXALL, "Max All Skills");
data.Add(StringKey.MENU_SKILLS_HINT_INRAID, "Use it only in raids!");
data.Add(StringKey.MENU_SKILLS_STRENGTH, "Strength");
data.Add(StringKey.MENU_SKILLS_STRESSRESIST, "Stress Resistance");
data.Add(StringKey.MENU_SKILLS_MAGDRILLS, "Mag Drills");
data.Add(StringKey.MENU_SKILLS_MELEE, "Melee");
data.Add(StringKey.MENU_SKILLS_HIDEOUT, "Hideout Management");
data.Add(StringKey.MENU_SKILLS_CRAFTING, "Crafting");
data.Add(StringKey.MENU_SKILLS_HEAVYVESTS, "Heavy Vests");
data.Add(StringKey.MENU_SKILLS_LIGHTVESTS, "Light Vests");
data.Add(StringKey.MENU_SKILLS_LMG, "Light Machine Guns");
data.Add(StringKey.MENU_SKILLS_ASSAULT, "Assult Rifles");
data.Add(StringKey.MENU_SKILLS_PISTOL, "Pistols");
data.Add(StringKey.MENU_SKILLS_PERCEPTION, "Perception");
data.Add(StringKey.MENU_SKILLS_SNIPER, "Bolt-action Rifles");
data.Add(StringKey.MENU_SKILLS_SNIPING, "Sniping");
data.Add(StringKey.MENU_SKILLS_ENDURANCE, "Endurance");
data.Add(StringKey.MENU_SKILLS_THROWING, "Throwables");
data.Add(StringKey.MENU_SKILLS_CHARISMA, "Charisma");
data.Add(StringKey.MENU_SKILLS_HEALTH, "Health");
data.Add(StringKey.MENU_SKILLS_VITALITY, "Vitality");
data.Add(StringKey.MENU_SKILLS_METABOLISM, "Metabolism");
data.Add(StringKey.MENU_SKILLS_IMMUNITY, "Immunity");
data.Add(StringKey.MENU_SKILLS_SURGERY, "Surgery");
data.Add(StringKey.MENU_SKILLS_INTELLECT, "Intellect");
data.Add(StringKey.MENU_SKILLS_ATTENTION, "Attention");
data.Add(StringKey.MENU_SKILLS_REVOLVER, "Revolvers");
data.Add(StringKey.MENU_SKILLS_SHOTGUN, "Shotguns");
data.Add(StringKey.MENU_SKILLS_HMG, "Heavy Machine Guns");
data.Add(StringKey.MENU_SKILLS_DMR, "DMRs");
data.Add(StringKey.MENU_SKILLS_AIMDRILLS, "Aim Drills");
data.Add(StringKey.MENU_SKILLS_SEARCH, "Search");
data.Add(StringKey.MENU_SKILLS_WEAPONTREATMENT, "Weapon Maintenance");
data.Add(StringKey.MENU_SKILLS_TROUBLESHOOTING, "Troubleshooting");
data.Add(StringKey.MENU_SKILLS_COVERTMOVEMENT, "Covert Movement");
data.Add(StringKey.MENU_SKILLS_SMG, "Submachine Guns");
data.Add(StringKey.MENU_ITEMS_BUTTON_TPLOOTS, $"Teleport All Loots To You [{Settings.TpLoots}]");
data.Add(StringKey.MENU_ITEMS_BUTTON_AIRDROP, $"Call Air Drop [{Settings.CallAirdrop}]");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_TITLE, "Inventory Editor");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_SEARCH, "Search ID");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_GET, "Get Items From Backpack");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_STRINGS, "Item Strings");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_CHANGES, "Changes To Be Made (In Order Of ID, Width And Height)");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_BUTTON_COMMIT, "Commit Changes");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_BUTTON_SETFIR, "Set Whole Inventory Found In Raid");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_DUPE_TITLE, "Item Dupe");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_DUPE_BUTTON_SETSTACK, "Dupe Stack x");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_DUPE_BUTTON_RESETSTACK, "Reset Stack To 1");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_DUPE_BUTTON_SETSTACK_FASTRUBLE, "Fast Stack 400k(RUB)");
data.Add(StringKey.MENU_ITEMS_INVEDITOR_DUPE_BUTTON_SETSTACK_FASTEUROUSD, "Fast Stack 50k(EUR,USD)");
// Exfiltration Points
data.Add(StringKey.DATA_EP_ACTIVE, "Active");
data.Add(StringKey.DATA_EP_TIMER, "Timer");
data.Add(StringKey.DATA_EP_CLOSED, "Closed");
data.Add(StringKey.DATA_EP_PENDING, "Pending");
data.Add(StringKey.DATA_EP_OPEN, "Open");
data.Add(StringKey.DATA_EP_REQUIREMENT, "Requirement");
// Bot Types
data.Add(StringKey.DATA_PLAYERTYPE_BOT, "BOT");
data.Add(StringKey.DATA_PLAYERTYPE_GUARD, "GUARD");
data.Add(StringKey.DATA_PLAYERTYPE_BEAR, "PMC BEAR");
data.Add(StringKey.DATA_PLAYERTYPE_USEC, "PMC USEC");
data.Add(StringKey.DATA_PLAYERTYPE_PMC, "PMC");
data.Add(StringKey.DATA_PLAYERTYPE_BOSS, "BOSS");
}
public LocalisationData(Locale locale) {
this.locale = locale;
switch (locale) {
case Locale.CHINESE:
zh_CN();
break;
case Locale.ENGLISH:
en_US();
break;
default:
en_US();
break;
}
}
public string GetByKey(StringKey key) {
string o;
if (data.TryGetValue(key, out o)) return o;
return $"{key}";
}
}
}

View file

@ -0,0 +1,125 @@
using EFT;
using EscapeFromTarkovCheat;
using EscapeFromTarkovCheat.Feauters.ESP;
using System;
using UnityEngine;
namespace EscapeFromTarkovCheat.Data
{
public enum StringKey
{
MAIN_TITLE,
MENU_PLAYER_VISUAL_TITLE,
MENU_MISC_VISUAL_TITLE,
MENU_AIMBOT_TITLE,
MENU_MISCELLANEOUS_TITLE,
MENU_SKILLS_TITLE,
MENU_ITEMS_TITLE,
MENU_MAIN_DESC_TOGGLE,
MENU_MAIN_HINT_UNLOCK,
MENU_MAIN_HINT_HEAL,
MENU_MAIN_BUTTON_PLAYER_VISUAL,
MENU_MAIN_BUTTON_MISC_VISUAL,
MENU_MAIN_BUTTON_AIMBOT,
MENU_MAIN_BUTTON_MISCELLANEOUS,
MENU_MAIN_BUTTON_SKILLS,
MENU_MAIN_BUTTON_ITEMS,
MENU_PLAYER_VISUAL_DRAWPLAYERS,
MENU_PLAYER_VISUAL_DRAWPLAYER_BOX,
MENU_PLAYER_VISUAL_DRAWPLAYER_NAME,
MENU_PLAYER_VISUAL_DRAWPLAYER_LINE,
MENU_PLAYER_VISUAL_DRAWPLAYER_HEALTH,
MENU_PLAYER_VISUAL_DRAWPLAYER_SKELETON,
MENU_PLAYER_VISUAL_DRAWPLAYER_RANGE,
MENU_MISC_VISUAL_DRAWLOOTITEMS,
MENU_MISC_VISUAL_LOOTITEMRANGE,
MENU_MISC_VISUAL_DRAWCONTAINERS,
MENU_MISC_VISUAL_CONTAINERRANGE,
MENU_MISC_VISUAL_DRAWEP,
MENU_AIMBOT_TOGGLE,
MENU_AIMBOT_SMOOTH,
MENU_AIMBOT_DRAWFOV,
MENU_AIMBOT_FOVRANGE,
MENU_AIMBOT_AIMINGRANGE,
MENU_AIMBOT_VISIBLEONLY,
MENU_AIMBOT_SILENT,
MENU_AIMBOT_NORECOIL,
MENU_MISCELLANEOUS_GODMODE,
MENU_MISCELLANEOUS_STAMINA,
MENU_MISCELLANEOUS_SPEEDHACK,
MENU_MISCELLANEOUS_SPEEDHACK_ADDITION,
MENU_MISCELLANEOUS_BUTTON_HEAL,
MENU_MISCELLANEOUS_BUTTON_UNLOCK,
MENU_MISCELLANEOUS_BUTTON_KILL,
MENU_MISCELLANEOUS_BUTTON_TRADERSTANDING,
MENU_MISCELLANEOUS_BUTTON_TPENEMIES,
MENU_MISCELLANEOUS_BUTTON_ADDXP,
MENU_MISCELLANEOUS_XPINRAID,
MENU_MISCELLANEOUS_XPADDITION,
MENU_ITEMS_BUTTON_TPLOOTS,
MENU_ITEMS_BUTTON_AIRDROP,
MENU_ITEMS_INVEDITOR_TITLE,
MENU_ITEMS_INVEDITOR_SEARCH,
MENU_ITEMS_INVEDITOR_GET,
MENU_ITEMS_INVEDITOR_STRINGS,
MENU_ITEMS_INVEDITOR_CHANGES,
MENU_ITEMS_INVEDITOR_BUTTON_COMMIT,
MENU_ITEMS_INVEDITOR_BUTTON_SETFIR,
MENU_ITEMS_INVEDITOR_DUPE_TITLE,
MENU_ITEMS_INVEDITOR_DUPE_BUTTON_SETSTACK,
MENU_ITEMS_INVEDITOR_DUPE_BUTTON_RESETSTACK,
MENU_ITEMS_INVEDITOR_DUPE_BUTTON_SETSTACK_FASTRUBLE,
MENU_ITEMS_INVEDITOR_DUPE_BUTTON_SETSTACK_FASTEUROUSD,
// Skills Menu
MENU_SKILLS_BUTTON_MAXALL,
MENU_SKILLS_HINT_INRAID,
MENU_SKILLS_STRENGTH,
MENU_SKILLS_STRESSRESIST,
MENU_SKILLS_MAGDRILLS,
MENU_SKILLS_MELEE,
MENU_SKILLS_HIDEOUT,
MENU_SKILLS_CRAFTING,
MENU_SKILLS_HEAVYVESTS,
MENU_SKILLS_LIGHTVESTS,
MENU_SKILLS_LMG,
MENU_SKILLS_ASSAULT,
MENU_SKILLS_PISTOL,
MENU_SKILLS_PERCEPTION,
MENU_SKILLS_SNIPER,
MENU_SKILLS_SNIPING,
MENU_SKILLS_ENDURANCE,
MENU_SKILLS_THROWING,
MENU_SKILLS_CHARISMA,
MENU_SKILLS_HEALTH,
MENU_SKILLS_VITALITY,
MENU_SKILLS_METABOLISM,
MENU_SKILLS_IMMUNITY,
MENU_SKILLS_SURGERY,
MENU_SKILLS_INTELLECT,
MENU_SKILLS_ATTENTION,
MENU_SKILLS_REVOLVER,
MENU_SKILLS_SHOTGUN,
MENU_SKILLS_HMG,
MENU_SKILLS_DMR,
MENU_SKILLS_AIMDRILLS,
MENU_SKILLS_SEARCH,
MENU_SKILLS_WEAPONTREATMENT,
MENU_SKILLS_TROUBLESHOOTING,
MENU_SKILLS_COVERTMOVEMENT,
MENU_SKILLS_SMG,
DATA_EP_ACTIVE,
DATA_EP_TIMER,
DATA_EP_CLOSED,
DATA_EP_PENDING,
DATA_EP_OPEN,
DATA_EP_REQUIREMENT,
DATA_PLAYERTYPE_BOT,
DATA_PLAYERTYPE_GUARD,
DATA_PLAYERTYPE_BEAR,
DATA_PLAYERTYPE_USEC,
DATA_PLAYERTYPE_PMC,
DATA_PLAYERTYPE_BOSS
}
}