recall function & show coordinates
This commit is contained in:
@@ -65,6 +65,8 @@ namespace DevourClient
|
||||
static bool need_fly_reset = false;
|
||||
static bool crosshair = false;
|
||||
static bool in_game_cache = false;
|
||||
static bool showCoordinates = false;
|
||||
static bool recallEnabled = false;
|
||||
private const int ITEM_FARM_REPEAT_COUNT = 5;
|
||||
private const float ITEM_FARM_DELAY = 0.15f;
|
||||
private static bool autoItemFarm = false;
|
||||
@@ -186,6 +188,12 @@ namespace DevourClient
|
||||
fly = !fly;
|
||||
}
|
||||
|
||||
// Recall to base position (B key, only if enabled)
|
||||
if (recallEnabled && Input.GetKeyDown(KeyCode.B) && Player.IsInGameOrLobby())
|
||||
{
|
||||
Helpers.RecallHelper.RecallToBase();
|
||||
}
|
||||
|
||||
if (Player.IsInGameOrLobby())
|
||||
{
|
||||
if (fly && !need_fly_reset)
|
||||
@@ -613,6 +621,7 @@ namespace DevourClient
|
||||
|
||||
GUI.DrawTexture(new Rect(xMin, yMin, crosshairSize, crosshairSize), crosshairTexture);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (Settings.Settings.menu_enable)
|
||||
@@ -1956,6 +1965,7 @@ namespace DevourClient
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private static void MiscTab()
|
||||
{
|
||||
GUI.Label(new Rect(Settings.Settings.x + 320, Settings.Settings.y + 70, 150, 20), "Language :");
|
||||
@@ -2042,6 +2052,31 @@ namespace DevourClient
|
||||
_PlayerSpeedMultiplier = GUI.HorizontalSlider(new Rect(Settings.Settings.x + 130, Settings.Settings.y + 400, 120, 10), _PlayerSpeedMultiplier, (int)1f, (int)10f);
|
||||
GUI.Label(new Rect(Settings.Settings.x + 260, Settings.Settings.y + 395, 50, 20), ((int)_PlayerSpeedMultiplier).ToString());
|
||||
|
||||
showCoordinates = GUI.Toggle(new Rect(Settings.Settings.x + 10, Settings.Settings.y + 430, 200, 20), showCoordinates, MultiLanguageSystem.Translate("Show Coordinates"));
|
||||
|
||||
recallEnabled = GUI.Toggle(new Rect(Settings.Settings.x + 10, Settings.Settings.y + 455, 200, 20), recallEnabled, MultiLanguageSystem.Translate("Recall (B)"));
|
||||
|
||||
// Display player coordinates at the bottom of Misc tab
|
||||
if (showCoordinates && Player.IsInGameOrLobby())
|
||||
{
|
||||
try
|
||||
{
|
||||
Il2Cpp.NolanBehaviour nb = Player.GetPlayer();
|
||||
if (nb != null && nb.transform != null)
|
||||
{
|
||||
Vector3 pos = nb.transform.position;
|
||||
string coordText = $"Position: X:{pos.x:F2} Y:{pos.y:F2} Z:{pos.z:F2}";
|
||||
|
||||
// Display at the bottom of Misc tab
|
||||
GUI.Label(new Rect(Settings.Settings.x + 10, Settings.Settings.y + 485, 400, 30), coordText);
|
||||
}
|
||||
}
|
||||
catch (System.Exception ex)
|
||||
{
|
||||
// Silently handle errors to avoid spam
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private static void PlayersTab()
|
||||
@@ -2060,12 +2095,17 @@ namespace DevourClient
|
||||
|
||||
GUI.Label(new Rect(Settings.Settings.x + 10, Settings.Settings.y + 110 + i, 150, 30), bp.Name);
|
||||
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 70, Settings.Settings.y + 105 + i, 60, 30), MultiLanguageSystem.Translate("Kill")))
|
||||
// All buttons in one row
|
||||
int buttonX = (int)Settings.Settings.x + 70;
|
||||
int buttonY = (int)Settings.Settings.y + 105 + i;
|
||||
|
||||
if (GUI.Button(new Rect(buttonX, buttonY, 70, 30), MultiLanguageSystem.Translate("Kill")))
|
||||
{
|
||||
bp.Kill();
|
||||
}
|
||||
buttonX += 80;
|
||||
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 140, Settings.Settings.y + 105 + i, 60, 30), MultiLanguageSystem.Translate("Revive")))
|
||||
if (GUI.Button(new Rect(buttonX, buttonY, 70, 30), MultiLanguageSystem.Translate("Revive")))
|
||||
{
|
||||
if (bp.p_GameObject != null)
|
||||
{
|
||||
@@ -2076,36 +2116,41 @@ namespace DevourClient
|
||||
}
|
||||
}
|
||||
}
|
||||
buttonX += 80;
|
||||
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 210, Settings.Settings.y + 105 + i, 90, 30), MultiLanguageSystem.Translate("Jumpscare")))
|
||||
if (GUI.Button(new Rect(buttonX, buttonY, 90, 30), MultiLanguageSystem.Translate("Jumpscare")))
|
||||
{
|
||||
bp.Jumpscare();
|
||||
}
|
||||
buttonX += 100;
|
||||
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 310, Settings.Settings.y + 105 + i, 60, 30), MultiLanguageSystem.Translate("Teleport to")))
|
||||
if (GUI.Button(new Rect(buttonX, buttonY, 80, 30), MultiLanguageSystem.Translate("Teleport to")))
|
||||
{
|
||||
bp.TP();
|
||||
}
|
||||
buttonX += 90;
|
||||
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 380, Settings.Settings.y + 105 + i, 100, 30), MultiLanguageSystem.Translate("Lock in cage")))
|
||||
if (GUI.Button(new Rect(buttonX, buttonY, 100, 30), MultiLanguageSystem.Translate("Lock in cage")))
|
||||
{
|
||||
bp.LockInCage();
|
||||
}
|
||||
buttonX += 110;
|
||||
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 490, Settings.Settings.y + 105 + i, 90, 30), MultiLanguageSystem.Translate("TP Azazel")))
|
||||
if (GUI.Button(new Rect(buttonX, buttonY, 90, 30), MultiLanguageSystem.Translate("TP Azazel")))
|
||||
{
|
||||
bp.TPAzazel();
|
||||
}
|
||||
buttonX += 100;
|
||||
|
||||
if (Helpers.Map.GetActiveScene() == "Town")
|
||||
{
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 590, Settings.Settings.y + 105 + i, 90, 30), MultiLanguageSystem.Translate("Shoot Player")))
|
||||
if (GUI.Button(new Rect(buttonX, buttonY, 90, 30), MultiLanguageSystem.Translate("Shoot Player")))
|
||||
{
|
||||
bp.ShootPlayer();
|
||||
}
|
||||
}
|
||||
|
||||
i += 30;
|
||||
i += 45;
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
{
|
||||
switch (sceneName)
|
||||
{
|
||||
case "Devour":
|
||||
case "Anna":
|
||||
return "Farmhouse";
|
||||
case "Molly":
|
||||
|
||||
74
DevourClient/Helpers/RecallHelper.cs
Normal file
74
DevourClient/Helpers/RecallHelper.cs
Normal file
@@ -0,0 +1,74 @@
|
||||
using UnityEngine;
|
||||
using MelonLoader;
|
||||
|
||||
namespace DevourClient.Helpers
|
||||
{
|
||||
public static class RecallHelper
|
||||
{
|
||||
/// <summary>
|
||||
/// Teleports the local player to the base coordinates of the current map
|
||||
/// </summary>
|
||||
public static void RecallToBase()
|
||||
{
|
||||
try
|
||||
{
|
||||
Il2Cpp.NolanBehaviour nb = Player.GetPlayer();
|
||||
if (nb == null)
|
||||
{
|
||||
MelonLogger.Warning("Player not found!");
|
||||
return;
|
||||
}
|
||||
|
||||
string sceneName = Map.GetActiveScene();
|
||||
Vector3 targetPos = Vector3.zero;
|
||||
string mapName = "";
|
||||
|
||||
// Map coordinates based on scene name
|
||||
switch (sceneName)
|
||||
{
|
||||
case "Devour":
|
||||
case "Anna": // Farmhouse
|
||||
targetPos = new Vector3(5.03f, 4.20f, -50.02f);
|
||||
mapName = "Farm";
|
||||
break;
|
||||
case "Molly": // Asylum
|
||||
targetPos = new Vector3(17.52f, 1.38f, 7.04f);
|
||||
mapName = "Asylum";
|
||||
break;
|
||||
case "Inn":
|
||||
targetPos = new Vector3(3.53f, 0.84f, 2.47f);
|
||||
mapName = "Inn";
|
||||
break;
|
||||
case "Town":
|
||||
targetPos = new Vector3(-63.51f, 10.88f, -12.32f);
|
||||
mapName = "Town";
|
||||
break;
|
||||
case "Slaughterhouse":
|
||||
targetPos = new Vector3(6.09f, 0.70f, -17.58f);
|
||||
mapName = "Slaughterhouse";
|
||||
break;
|
||||
case "Manor":
|
||||
targetPos = new Vector3(3.67f, 1.32f, -23.34f);
|
||||
mapName = "Manor";
|
||||
break;
|
||||
case "Carnival":
|
||||
targetPos = new Vector3(-91.46f, 8.13f, -24.51f);
|
||||
mapName = "Carnival";
|
||||
break;
|
||||
default:
|
||||
MelonLogger.Warning($"Teleport not available for scene: {sceneName}");
|
||||
return;
|
||||
}
|
||||
|
||||
// Teleport player to target position
|
||||
nb.locomotion.SetPosition(targetPos, false);
|
||||
MelonLogger.Msg($"Teleported to {mapName} coordinates: X:{targetPos.x:F2} Y:{targetPos.y:F2} Z:{targetPos.z:F2}");
|
||||
}
|
||||
catch (System.Exception ex)
|
||||
{
|
||||
MelonLogger.Error($"Failed to teleport: {ex.Message}");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -121,6 +121,7 @@ namespace DevourClient.Helpers
|
||||
_azazelSam.OnShootPlayer(p_GameObject, true);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
public class Player
|
||||
{
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "腐烂食物透视" },
|
||||
{ "Sam", "萨姆" },
|
||||
{ "Shoot Player", "射击玩家" },
|
||||
{ "Show Coordinates", "显示坐标" },
|
||||
{ "Skeleton ESP", "骨骼透视" },
|
||||
{ "Slaughterhouse", "屠宰场" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "屠宰场消防门" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "传送到 Azazel" },
|
||||
{ "TV", "电视" },
|
||||
{ "Teleport Keys", "传送钥匙" },
|
||||
{ "Recall (B)", "回城 (B)" },
|
||||
{ "Teleport to", "传送至" },
|
||||
{ "Ticket", "票券" },
|
||||
{ "Town", "小镇" },
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "Rotton Food ESP" },
|
||||
{ "Sam", "Sam" },
|
||||
{ "Shoot Player", "Shoot Player" },
|
||||
{ "Show Coordinates", "Show Coordinates" },
|
||||
{ "Skeleton ESP", "Skeleton ESP" },
|
||||
{ "Slaughterhouse", "Slaughterhouse" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "SlaughterhouseFireEscapeDoor" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "TP to Azazel" },
|
||||
{ "TV", "TV" },
|
||||
{ "Teleport Keys", "Teleport Keys" },
|
||||
{ "Recall (B)", "Recall (B)" },
|
||||
{ "Teleport to", "Teleport to" },
|
||||
{ "Ticket", "Ticket" },
|
||||
{ "Town", "Town" },
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "ESP nourriture pourrie" },
|
||||
{ "Sam", "Sam" },
|
||||
{ "Shoot Player", "Tirer sur le joueur" },
|
||||
{ "Show Coordinates", "Afficher coordonnées" },
|
||||
{ "Skeleton ESP", "ESP squelette" },
|
||||
{ "Slaughterhouse", "Abattoir" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "Porte de secours d'abattoir" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "TP vers Azazel" },
|
||||
{ "TV", "Télévision" },
|
||||
{ "Teleport Keys", "Téléporter clés" },
|
||||
{ "Recall (B)", "Retour (B)" },
|
||||
{ "Teleport to", "Téléporter" },
|
||||
{ "Ticket", "Billet" },
|
||||
{ "Town", "Ville" },
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "Verdorbenes-Essen-ESP" },
|
||||
{ "Sam", "Sam" },
|
||||
{ "Shoot Player", "Spieler erschießen" },
|
||||
{ "Show Coordinates", "Koordinaten anzeigen" },
|
||||
{ "Skeleton ESP", "Skelett ESP" },
|
||||
{ "Slaughterhouse", "Schlachthaus" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "Schlachthof-Feuerschutztür" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "TP zu Azazel" },
|
||||
{ "TV", "Fernseher" },
|
||||
{ "Teleport Keys", "Schlüssel teleportieren" },
|
||||
{ "Recall (B)", "Zurückrufen (B)" },
|
||||
{ "Teleport to", "Teleportieren" },
|
||||
{ "Ticket", "Ticket" },
|
||||
{ "Town", "Stadt" },
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "ESP cibo marcio" },
|
||||
{ "Sam", "Sam" },
|
||||
{ "Shoot Player", "Spara al giocatore" },
|
||||
{ "Show Coordinates", "Mostra coordinate" },
|
||||
{ "Skeleton ESP", "ESP scheletro" },
|
||||
{ "Slaughterhouse", "Macello" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "Porta antincendio del mattatoio" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "TP ad Azazel" },
|
||||
{ "TV", "Televisione" },
|
||||
{ "Teleport Keys", "Teletrasporta chiavi" },
|
||||
{ "Recall (B)", "Richiama (B)" },
|
||||
{ "Teleport to", "Teletrasporta" },
|
||||
{ "Ticket", "Biglietto" },
|
||||
{ "Town", "Città" },
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "腐った食べ物ESP" },
|
||||
{ "Sam", "サム" },
|
||||
{ "Shoot Player", "プレイヤーを撃つ" },
|
||||
{ "Show Coordinates", "座標を表示" },
|
||||
{ "Skeleton ESP", "スケルトンESP" },
|
||||
{ "Slaughterhouse", "屠殺場" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "屠殺場の非常口" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "Azazelへテレポート" },
|
||||
{ "TV", "テレビ" },
|
||||
{ "Teleport Keys", "鍵をテレポート" },
|
||||
{ "Recall (B)", "リコール (B)" },
|
||||
{ "Teleport to", "テレポート" },
|
||||
{ "Ticket", "チケット" },
|
||||
{ "Town", "町" },
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "썩은 음식 ESP" },
|
||||
{ "Sam", "샘" },
|
||||
{ "Shoot Player", "플레이어 쏘기" },
|
||||
{ "Show Coordinates", "좌표 표시" },
|
||||
{ "Skeleton ESP", "스켈레톤 ESP" },
|
||||
{ "Slaughterhouse", "도살장" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "도축장 비상구" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "Azazel로 텔레포트" },
|
||||
{ "TV", "TV" },
|
||||
{ "Teleport Keys", "열쇠 텔레포트" },
|
||||
{ "Recall (B)", "리콜 (B)" },
|
||||
{ "Teleport to", "텔레포트" },
|
||||
{ "Ticket", "티켓" },
|
||||
{ "Town", "마을" },
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "ESP comida podre" },
|
||||
{ "Sam", "Sam" },
|
||||
{ "Shoot Player", "Atirar no jogador" },
|
||||
{ "Show Coordinates", "Mostrar coordenadas" },
|
||||
{ "Skeleton ESP", "ESP esqueleto" },
|
||||
{ "Slaughterhouse", "Matadouro" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "Porta de incêndio do matadouro" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "TP para Azazel" },
|
||||
{ "TV", "Televisão" },
|
||||
{ "Teleport Keys", "Teletransportar chaves" },
|
||||
{ "Recall (B)", "Recuar (B)" },
|
||||
{ "Teleport to", "Teletransportar" },
|
||||
{ "Ticket", "Bilhete" },
|
||||
{ "Town", "Cidade" },
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "ESP гнилой еды" },
|
||||
{ "Sam", "Сэм" },
|
||||
{ "Shoot Player", "Стрелять в игрока" },
|
||||
{ "Show Coordinates", "Показать координаты" },
|
||||
{ "Skeleton ESP", "ESP скелета" },
|
||||
{ "Slaughterhouse", "Бойня" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "Пожарная дверь бойни" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "ТП к Azazel" },
|
||||
{ "TV", "Телевизор" },
|
||||
{ "Teleport Keys", "Телепорт ключей" },
|
||||
{ "Recall (B)", "Возврат (B)" },
|
||||
{ "Teleport to", "Телепорт" },
|
||||
{ "Ticket", "Билет" },
|
||||
{ "Town", "Город" },
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "ESP comida podrida" },
|
||||
{ "Sam", "Sam" },
|
||||
{ "Shoot Player", "Disparar al jugador" },
|
||||
{ "Show Coordinates", "Mostrar coordenadas" },
|
||||
{ "Skeleton ESP", "ESP esqueleto" },
|
||||
{ "Slaughterhouse", "Matadero" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "Puerta de escape de matadero" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "TP a Azazel" },
|
||||
{ "TV", "Televisión" },
|
||||
{ "Teleport Keys", "Teletransportar llaves" },
|
||||
{ "Recall (B)", "Regresar (B)" },
|
||||
{ "Teleport to", "Teletransportar" },
|
||||
{ "Ticket", "Boleto" },
|
||||
{ "Town", "Pueblo" },
|
||||
|
||||
@@ -219,6 +219,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "Rotton Food ESP", "Thức ăn thối ESP" },
|
||||
{ "Sam", "Sam" },
|
||||
{ "Shoot Player", "Bắn người chơi" },
|
||||
{ "Show Coordinates", "Hiển thị tọa độ" },
|
||||
{ "Skeleton ESP", "Bộ xương ESP" },
|
||||
{ "Slaughterhouse", "Slaughterhouse" },
|
||||
{ "SlaughterhouseFireEscapeDoor", "SlaughterhouseFireEscapeDoor" },
|
||||
@@ -252,6 +253,7 @@ namespace DevourClient.Localization.Translations
|
||||
{ "TP to Azazel", "TP đến Azazel" },
|
||||
{ "TV", "TV" },
|
||||
{ "Teleport Keys", "Phím dịch chuyển" },
|
||||
{ "Recall (B)", "Triệu hồi (B)" },
|
||||
{ "Teleport to", "Dịch chuyển đến" },
|
||||
{ "Ticket", "Vé" },
|
||||
{ "Town", "Town" },
|
||||
|
||||
@@ -15,6 +15,7 @@ namespace DevourClient.Settings
|
||||
public static Color azazel_esp_color = new Color(1.00f, 0.00f, 0.00f, 1);
|
||||
public static float speed = 1f;
|
||||
public static KeyCode flyKey = KeyCode.None;
|
||||
public static KeyCode teleportKey = KeyCode.B;
|
||||
public static Vector2 itemsScrollPosition = Vector2.zero;
|
||||
public static Vector2 rituelObjectsScrollPosition = Vector2.zero;
|
||||
public static Vector2 stuffsScrollPosition = Vector2.zero;
|
||||
|
||||
Reference in New Issue
Block a user