code refactor and optimization
This commit is contained in:
@@ -47,37 +47,40 @@ namespace DevourClient.Hacks
|
||||
|
||||
public static void WalkInLobby(bool walk)
|
||||
{
|
||||
try {
|
||||
if (Helpers.Entities.LocalPlayer_.p_GameObject.GetComponent<UltimateCharacterLocomotionHandler>() == null)
|
||||
GameObject LocalPlayer = Helpers.Entities.LocalPlayer_.p_GameObject;
|
||||
if (LocalPlayer == null)
|
||||
{
|
||||
Helpers.Entities.LocalPlayer_.p_GameObject.AddComponent<UltimateCharacterLocomotionHandler>();
|
||||
Helpers.Entities.LocalPlayer_.p_GameObject.GetComponent<UltimateCharacterLocomotionHandler>().enabled = false;
|
||||
return;
|
||||
}
|
||||
|
||||
Helpers.Entities.LocalPlayer_.p_GameObject.GetComponent<UltimateCharacterLocomotionHandler>().enabled = walk;
|
||||
//GetComponent called only once as AddComponent returns a component
|
||||
UltimateCharacterLocomotionHandler cmp = Helpers.Entities.LocalPlayer_.p_GameObject.GetComponent<UltimateCharacterLocomotionHandler>();
|
||||
|
||||
if (cmp == null)
|
||||
{
|
||||
cmp = LocalPlayer.AddComponent<UltimateCharacterLocomotionHandler>();
|
||||
cmp.enabled = false;
|
||||
}
|
||||
catch { return; }
|
||||
|
||||
cmp.enabled = walk;
|
||||
}
|
||||
|
||||
public static void BurnRitualObj(string map, bool burnAll)
|
||||
{
|
||||
Il2Cpp.SurvivalObjectBurnController _altar = UnityEngine.Object.FindObjectOfType<Il2Cpp.SurvivalObjectBurnController>();
|
||||
//map controllers SHOULDN'T be null but we never know, if smth break, add a nullptr check
|
||||
switch (map)
|
||||
{
|
||||
case "Inn":
|
||||
Il2Cpp.InnMapController _innMapController = UnityEngine.Object.FindObjectOfType<Il2Cpp.InnMapController>();
|
||||
if (burnAll){
|
||||
_innMapController.SetProgressTo(10);
|
||||
}
|
||||
else{
|
||||
_innMapController.IncreaseProgress();
|
||||
}
|
||||
break;
|
||||
|
||||
if (map != "Inn")
|
||||
{
|
||||
if (burnAll)
|
||||
{
|
||||
_altar.SkipToGoat(10);
|
||||
}
|
||||
else
|
||||
{
|
||||
_altar.BurnGoat();
|
||||
}
|
||||
}
|
||||
|
||||
if(map == "Slaughterhouse")
|
||||
{
|
||||
case "Slaughterhouse":
|
||||
Il2Cpp.SlaughterhouseAltarController _slaughterhouseAltarController = UnityEngine.Object.FindObjectOfType<Il2Cpp.SlaughterhouseAltarController>();
|
||||
|
||||
if (burnAll)
|
||||
@@ -88,16 +91,19 @@ namespace DevourClient.Hacks
|
||||
{
|
||||
_slaughterhouseAltarController.SkipToGoat(10);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
Il2Cpp.SurvivalObjectBurnController _altar = UnityEngine.Object.FindObjectOfType<Il2Cpp.SurvivalObjectBurnController>();
|
||||
if (burnAll)
|
||||
{
|
||||
_altar.SkipToGoat(10);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (burnAll){
|
||||
_innMapController.SetProgressTo(10);
|
||||
}
|
||||
else{
|
||||
_innMapController.IncreaseProgress();
|
||||
_altar.BurnGoat();
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -118,41 +124,31 @@ namespace DevourClient.Hacks
|
||||
}
|
||||
|
||||
public static void CarryObject(string name)
|
||||
{
|
||||
try
|
||||
{
|
||||
Il2Cpp.NolanBehaviour nb = Helpers.Entities.LocalPlayer_.p_GameObject.GetComponent<Il2Cpp.NolanBehaviour>();
|
||||
|
||||
nb.StartCarry(name);
|
||||
}
|
||||
catch { return; }
|
||||
}
|
||||
|
||||
public static void CleanFountain()
|
||||
{
|
||||
try
|
||||
{
|
||||
GameObject[] fountains = GameObject.FindGameObjectsWithTag("InnFountain");
|
||||
|
||||
for (int i = 0; i < fountains.Length; i++)
|
||||
foreach (GameObject fountain in fountains)
|
||||
{
|
||||
fountains[i].GetComponent<Il2Cpp.InnFountainController>().Clean();
|
||||
fountain.GetComponent<Il2Cpp.InnFountainController>().Clean();
|
||||
}
|
||||
}
|
||||
catch { return; }
|
||||
}
|
||||
|
||||
public static void AutoRespawn()
|
||||
{
|
||||
Il2Cpp.NolanBehaviour nb = Player.GetPlayer();
|
||||
|
||||
Il2Cpp.SurvivalReviveInteractable _reviveInteractable = UnityEngine.Object.FindObjectOfType<Il2Cpp.SurvivalReviveInteractable>();
|
||||
Il2Cpp.SurvivalReviveInteractable _reviveInteractable = UnityEngine.Object.FindObjectOfType<Il2Cpp.SurvivalReviveInteractable>(); //probably can't be null
|
||||
|
||||
_reviveInteractable.Interact(nb.gameObject);
|
||||
}
|
||||
public static void TPItems()
|
||||
{
|
||||
try
|
||||
{
|
||||
Il2Cpp.NolanBehaviour Nolan = Player.GetPlayer();
|
||||
|
||||
@@ -161,16 +157,12 @@ namespace DevourClient.Hacks
|
||||
item.transform.position = Nolan.transform.position + Nolan.transform.forward * UnityEngine.Random.RandomRange(1f, 3f);
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
public static void CreateCustomizedLobby(int lobbySize = 4, bool isPrivate = false, Il2CppUdpKit.Platform.Photon.PhotonRegion.Regions __region = Il2CppUdpKit.Platform.Photon.PhotonRegion.Regions.BEST_REGION)
|
||||
{
|
||||
Il2CppHorror.Menu _menu = UnityEngine.Object.FindObjectOfType<Il2CppHorror.Menu>();
|
||||
//TODO : make it so we can specify a password for a private lobby
|
||||
|
||||
CanvasGroup _loadingCanvasGroup = _menu.loadingCanvasGroup;
|
||||
CanvasGroup _hostCanvasGroup = _menu.hostCanvasGroup;
|
||||
CanvasGroup _mainMenuCanvasGroup = _menu.mainMenuCanvasGroup;
|
||||
Il2CppHorror.Menu _menu = UnityEngine.Object.FindObjectOfType<Il2CppHorror.Menu>();
|
||||
|
||||
Il2CppUdpKit.Platform.PhotonPlatformConfig __photonPlatformConfig = new Il2CppUdpKit.Platform.PhotonPlatformConfig();
|
||||
__photonPlatformConfig.Region = Il2CppUdpKit.Platform.Photon.PhotonRegion.regions[__region];
|
||||
@@ -185,9 +177,9 @@ namespace DevourClient.Hacks
|
||||
|
||||
BoltLauncher.StartServer(__config, null);
|
||||
|
||||
Il2CppHorror.Menu.ShowCanvasGroup(_loadingCanvasGroup, true);
|
||||
Il2CppHorror.Menu.ShowCanvasGroup(_hostCanvasGroup, false);
|
||||
Il2CppHorror.Menu.ShowCanvasGroup(_mainMenuCanvasGroup, false);
|
||||
Il2CppHorror.Menu.ShowCanvasGroup(_menu.loadingCanvasGroup, true);
|
||||
Il2CppHorror.Menu.ShowCanvasGroup(_menu.hostCanvasGroup, false);
|
||||
Il2CppHorror.Menu.ShowCanvasGroup(_menu.mainMenuCanvasGroup, false);
|
||||
}
|
||||
|
||||
public static void SetSteamName(string name)
|
||||
@@ -213,7 +205,7 @@ namespace DevourClient.Hacks
|
||||
|
||||
public static void BigFlashlight(bool reset)
|
||||
{
|
||||
Il2Cpp.NolanBehaviour Nolan = Player.GetPlayer();//UnityEngine.Object.FindObjectOfType<NolanBehaviour>();
|
||||
Il2Cpp.NolanBehaviour Nolan = Player.GetPlayer();
|
||||
if (Nolan == null)
|
||||
{
|
||||
return;
|
||||
@@ -273,7 +265,7 @@ namespace DevourClient.Hacks
|
||||
|
||||
public static void Fullbright(bool reset)
|
||||
{
|
||||
Il2Cpp.NolanBehaviour Nolan = Player.GetPlayer();//UnityEngine.Object.FindObjectOfType<NolanBehaviour>();
|
||||
Il2Cpp.NolanBehaviour Nolan = Player.GetPlayer();
|
||||
if (Nolan == null)
|
||||
{
|
||||
return;
|
||||
@@ -305,7 +297,7 @@ namespace DevourClient.Hacks
|
||||
}
|
||||
public static void FlashlightColor(Color color)
|
||||
{
|
||||
Il2Cpp.NolanBehaviour Nolan = Player.GetPlayer(); //UnityEngine.Object.FindObjectOfType<NolanBehaviour>();
|
||||
Il2Cpp.NolanBehaviour Nolan = Player.GetPlayer();
|
||||
Light flashlightSpot = Nolan.flashlightSpot;
|
||||
|
||||
flashlightSpot.color = color;
|
||||
@@ -313,7 +305,8 @@ namespace DevourClient.Hacks
|
||||
|
||||
public static void TPKeys()
|
||||
{
|
||||
Il2Cpp.NolanBehaviour Nolan = Player.GetPlayer(); //UnityEngine.Object.FindObjectOfType<NolanBehaviour>();
|
||||
//TOFIX: spawn manually the missing key in slaughterhouse
|
||||
Il2Cpp.NolanBehaviour Nolan = Player.GetPlayer();
|
||||
|
||||
foreach (Il2Cpp.KeyBehaviour keyBehaviour in Helpers.Entities.Keys)
|
||||
{
|
||||
@@ -337,6 +330,7 @@ namespace DevourClient.Hacks
|
||||
|
||||
public static void MessageSpam(string message)
|
||||
{
|
||||
//TOFIX : not spamming anymore :/
|
||||
if (Helpers.Player.IsInGame())
|
||||
{
|
||||
Il2Cpp.GameUI game_ui_class = UnityEngine.Object.FindObjectOfType<Il2Cpp.GameUI>();
|
||||
@@ -409,23 +403,13 @@ namespace DevourClient.Hacks
|
||||
|
||||
public static void ShowMessageBox(string message)
|
||||
{
|
||||
//not used, might be useful, some day
|
||||
Il2CppHorror.Menu menu = UnityEngine.Object.FindObjectOfType<Il2CppHorror.Menu>();
|
||||
menu.ShowMessageModal(message);
|
||||
}
|
||||
|
||||
public static void PlaySound()
|
||||
{
|
||||
/*
|
||||
public PlayRandomAudioClip yesClips;
|
||||
public PlayRandomAudioClip noClips;
|
||||
public PlayRandomAudioClip beckonClips;
|
||||
public PlayRandomAudioClip showOffClips;
|
||||
public PlayRandomAudioClip screamClips;
|
||||
public PlayRandomAudioClip pickupClips;
|
||||
public PlayRandomAudioClip burnGoatClips;
|
||||
public PlayRandomAudioClip laughClips;
|
||||
*/
|
||||
|
||||
Il2Cpp.PlayRandomAudioClip playRandomAudioClip = UnityEngine.Object.FindObjectOfType<Il2Cpp.PlayRandomAudioClip>();
|
||||
Il2Cpp.NolanVoiceOvers nolanVoiceOvers = UnityEngine.Object.FindObjectOfType<Il2Cpp.NolanVoiceOvers>();
|
||||
playRandomAudioClip.delay = 0f;
|
||||
@@ -475,8 +459,6 @@ namespace DevourClient.Hacks
|
||||
return;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
if (Helpers.Map.GetAzazel() == null) {
|
||||
return;
|
||||
}
|
||||
@@ -488,17 +470,15 @@ namespace DevourClient.Hacks
|
||||
return;
|
||||
}
|
||||
|
||||
if (_azazelLocomotion.TimeScale > 0.0f) //seems like _azazelLocomotion.TimeScale is never == 1.0f for Sam
|
||||
if (_azazelLocomotion.TimeScale > 0.0f)
|
||||
{
|
||||
_azazelLocomotion.TimeScale = 0f;
|
||||
_azazelLocomotion.TimeScale = 0f; //host only (?)
|
||||
}
|
||||
else
|
||||
{
|
||||
_azazelLocomotion.TimeScale = 1.0f;
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
public static void InstantWin()
|
||||
{
|
||||
|
||||
@@ -83,27 +83,27 @@ namespace DevourClient.Render
|
||||
|
||||
public static void DrawAllBones(List<Transform> b, Color c)
|
||||
{
|
||||
DrawBones(b[0], b[1], c);
|
||||
DrawBones(b[1], b[2], c);
|
||||
DrawBones(b[2], b[3], c);
|
||||
DrawBones(b[0], b[1], c); //head, neck
|
||||
DrawBones(b[1], b[2], c); //neck, spine
|
||||
DrawBones(b[2], b[3], c); //spine, hips
|
||||
|
||||
DrawBones(b[1], b[4], c);
|
||||
DrawBones(b[4], b[5], c);
|
||||
DrawBones(b[5], b[6], c);
|
||||
DrawBones(b[6], b[7], c);
|
||||
DrawBones(b[1], b[4], c); //neck, left shoulder
|
||||
DrawBones(b[4], b[5], c); //left shoulder, left upper arm
|
||||
DrawBones(b[5], b[6], c); //left upper arm, left lower arm
|
||||
DrawBones(b[6], b[7], c); //left lower arm, left hand
|
||||
|
||||
DrawBones(b[1], b[8], c);
|
||||
DrawBones(b[8], b[9], c);
|
||||
DrawBones(b[9], b[10], c);
|
||||
DrawBones(b[10], b[11], c);
|
||||
DrawBones(b[1], b[8], c); //neck, right shoulder
|
||||
DrawBones(b[8], b[9], c); //right shoulder, right upper arm
|
||||
DrawBones(b[9], b[10], c); //right upper arm, right lower arm
|
||||
DrawBones(b[10], b[11], c); //right lower arm, right hand
|
||||
|
||||
DrawBones(b[3], b[12], c);
|
||||
DrawBones(b[12], b[13], c);
|
||||
DrawBones(b[13], b[14], c);
|
||||
DrawBones(b[3], b[12], c); //hips, left upper leg
|
||||
DrawBones(b[12], b[13], c); //left upper leg, left lower leg
|
||||
DrawBones(b[13], b[14], c); //left lower leg, left foot
|
||||
|
||||
DrawBones(b[3], b[15], c);
|
||||
DrawBones(b[15], b[16], c);
|
||||
DrawBones(b[16], b[17], c);
|
||||
DrawBones(b[3], b[15], c); //hips, right upper leg
|
||||
DrawBones(b[15], b[16], c); //right upper leg, right lower leg
|
||||
DrawBones(b[16], b[17], c); //right lower leg, right foot
|
||||
}
|
||||
|
||||
static void DrawBox(float x, float y, float w, float h, Color color, float thickness)
|
||||
|
||||
@@ -547,43 +547,27 @@ namespace DevourClient
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 10, Settings.Settings.y + 260, 60, 25), "Rat"))
|
||||
{
|
||||
if (BoltNetwork.IsServer && !Player.IsInGame())
|
||||
{
|
||||
try
|
||||
{
|
||||
BoltNetwork.Instantiate(BoltPrefabs.SurvivalRat, Player.GetPlayer().transform.position, Quaternion.identity);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
if (Player.IsInGame() && !Player.IsPlayerCrawling())
|
||||
{
|
||||
try
|
||||
{
|
||||
Hacks.Misc.CarryObject("SurvivalRat");
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
}
|
||||
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 80, Settings.Settings.y + 260, 60, 25), "Goat"))
|
||||
{
|
||||
if (BoltNetwork.IsServer && !Player.IsInGame())
|
||||
{
|
||||
try
|
||||
{
|
||||
BoltNetwork.Instantiate(BoltPrefabs.SurvivalGoat, Player.GetPlayer().transform.position, Quaternion.identity);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
if (Player.IsInGame() && !Player.IsPlayerCrawling())
|
||||
{
|
||||
try
|
||||
{
|
||||
Hacks.Misc.CarryObject("SurvivalGoat");
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
}
|
||||
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 150, Settings.Settings.y + 260, 60, 25), "Spider") && BoltNetwork.IsServer && Player.IsInGameOrLobby())
|
||||
@@ -594,22 +578,14 @@ namespace DevourClient
|
||||
if (GUI.Button(new Rect(Settings.Settings.x + 220, Settings.Settings.y + 260, 60, 25), "Pig"))
|
||||
{
|
||||
if (BoltNetwork.IsServer && !Player.IsInGame())
|
||||
{
|
||||
try
|
||||
{
|
||||
BoltNetwork.Instantiate(BoltPrefabs.SurvivalPig, Player.GetPlayer().transform.position, Quaternion.identity);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
if (Player.IsInGame() && !Player.IsPlayerCrawling())
|
||||
{
|
||||
try
|
||||
{
|
||||
Hacks.Misc.CarryObject("SurvivalPig");
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user