Decompiled source of Interesting Units v1.1.0
IU.dll
Decompiled 2 weeks ago
The result has been truncated due to the large size, download it to view full contents!
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using BitCode.Debug.Commands; using BitCode.Extensions; using DM; using FhpSLib; using HarmonyLib; using IU; using Landfall.TABS; using Landfall.TABS.AI; using Landfall.TABS.AI.Components; using Landfall.TABS.AI.Systems; using Landfall.TABS.GameMode; using Landfall.TABS.GameState; using Landfall.TABS.UnitEditor; using Landfall.TABS.UnitPlacement; using Landfall.TABS.Workshop; using SLMA; using TFBGames; using TMPro; using Unity.Entities; using UnityEngine; using UnityEngine.Events; using UnityEngine.SceneManagement; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: AssemblyTitle("IU")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("made in SFT by mimimi")] [assembly: AssemblyCopyright("Copyright © 2025")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("3a45c3cf-230c-4310-952f-0887d4266a22")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] [HarmonyPatch(typeof(Unit), "SetHighlight")] internal class CustomOutlinePatch { [HarmonyPostfix] public static void Postfix(Unit __instance, ref Color highlightColor) { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0025: Expected O, but got Unknown //IL_0033: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)((Component)__instance).GetComponentInChildren<HighlightColor>() != (Object)null) { IHighlight val = (IHighlight)OtherLibrary.GetField<Unit>(__instance, "m_highlighter"); val.BeginHighlight(); val.SetHighlightColor(((Component)__instance).GetComponentInChildren<HighlightColor>().color); } } } public class Item : MonoBehaviour { public enum kind { Weapon, Cloth, Skill, Unit, Projectile, Other } public string name; public kind Kind; } namespace I_U { public class BundleProccesor : MonoBehaviour { public static void LoadBundleStuff(AssetBundle assetBundle) { //IL_0048: Unknown result type (might be due to invalid IL or missing references) GameObject[] array = assetBundle.LoadAllAssets<GameObject>(); GameObject[] array2 = array; foreach (GameObject val in array2) { UPool.MyPool.AddObject(val.GetComponent<CharacterItem>().Entity.Name, val, false, (HideFlags)61, val.GetComponent<CharacterItem>().Entity.GetSpriteIcon(), val.GetComponent<CharacterItem>().Entity.GUID.m_ID, true); } } } } namespace IU { public class AlwaysSethighlight : MonoBehaviour { public Color color; private void Update() { //IL_0008: Unknown result type (might be due to invalid IL or missing references) ((Component)this).GetComponent<Unit>().SetHighlight(color); } } public class ChangeFromDayToNight : MonoBehaviour { public bool flip; public Light SB; private void Awake() { SB = GameObject.Find("Directional light").GetComponent<Light>(); } private void Update() { //IL_0051: Unknown result type (might be due to invalid IL or missing references) //IL_0071: Unknown result type (might be due to invalid IL or missing references) //IL_0076: Unknown result type (might be due to invalid IL or missing references) //IL_0016: Unknown result type (might be due to invalid IL or missing references) //IL_0036: Unknown result type (might be due to invalid IL or missing references) //IL_003b: Unknown result type (might be due to invalid IL or missing references) //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_009c: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00d2: Unknown result type (might be due to invalid IL or missing references) if (!flip) { Light sB = SB; sB.color -= new Color(0.003921569f * Time.deltaTime, 0.003921569f * Time.deltaTime, 0f); } else { Light sB2 = SB; sB2.color += new Color(0.003921569f * Time.deltaTime, 0.003921569f * Time.deltaTime, 0f); } if (SB.color == new Color(0f, 0f, 0f)) { flip = true; } if (SB.color == new Color(1f, 1f, 1f, 1f)) { flip = false; } } } public class CurseofBinding : MonoBehaviour { private Unit unit; private Transform[] childern; public int iterations; public bool alreadydead = false; private void Awake() { alreadydead = false; unit = ((Component)this).gameObject.GetComponent<Unit>(); childern = ((Component)unit).gameObject.GetComponentsInChildren<Transform>(); ((MonoBehaviour)this).StartCoroutine(LaggyEvents()); } private void Update() { //IL_0025: Unknown result type (might be due to invalid IL or missing references) //IL_018b: Unknown result type (might be due to invalid IL or missing references) //IL_0191: Invalid comparison between Unknown and I4 //IL_029d: Unknown result type (might be due to invalid IL or missing references) //IL_02a3: Invalid comparison between Unknown and I4 //IL_01e1: Unknown result type (might be due to invalid IL or missing references) //IL_01e7: Invalid comparison between Unknown and I4 //IL_02f3: Unknown result type (might be due to invalid IL or missing references) //IL_02f9: Invalid comparison between Unknown and I4 ((Component)unit.data.torso).GetComponent<Rigidbody>().AddForce(new Vector3(0f, -20f, 0f), (ForceMode)2); unit.data.muscleControl = 0f; unit.data.ragdollControl = 0f; if (iterations >= 0) { if (unit.data.health == float.PositiveInfinity && !Object.op_Implicit((Object)(object)((Component)unit).gameObject.GetComponentInChildren<Immortality>())) { unit.data.health = 9999999f; } unit.data.health = unit.data.health - unit.data.maxHealth / 10f * unit.unitBlueprint.healthMultiplier; iterations--; } if (!(unit.data.health <= 0f) || alreadydead) { return; } GameModeService service = ServiceLocator.GetService<GameModeService>(); ((Component)((Component)this).GetComponent<Unit>()).GetComponentInChildren<DataHandler>().Dead = true; alreadydead = true; service.CurrentGameMode.WinConditionPropagator.OnUnitDied(unit); TeamSystem orCreateManager = World.Active.GetOrCreateManager<TeamSystem>(); if ((int)((Component)this).GetComponent<Unit>().Team == 0) { GooglyEye[] array = Object.FindObjectsOfType<GooglyEye>(); foreach (GooglyEye val in array) { if ((Object)(object)((Component)((Component)val).transform.root).GetComponent<Unit>() != (Object)null && (int)((Component)((Component)val).transform.root).GetComponent<Unit>().Team == 0) { val.Die(); } } int num = 0; foreach (Unit teamUnit in orCreateManager.GetTeamUnits((Team)0)) { if (!teamUnit.data.Dead) { num++; } } if (num <= 1) { service.CurrentGameMode.OnWinnerDecided((Team)1, "Not Even Close"); service.CurrentGameMode.DecideWinner((Team)1, "Not Even Close"); } } if ((int)((Component)this).GetComponent<Unit>().Team == 1) { GooglyEye[] array2 = Object.FindObjectsOfType<GooglyEye>(); foreach (GooglyEye val2 in array2) { if ((Object)(object)((Component)((Component)val2).transform.root).GetComponent<Unit>() != (Object)null && (int)((Component)((Component)val2).transform.root).GetComponent<Unit>().Team == 1) { val2.Die(); } } int num2 = 0; foreach (Unit teamUnit2 in orCreateManager.GetTeamUnits((Team)1)) { if (!teamUnit2.data.Dead) { num2++; } } if (num2 <= 1) { service.CurrentGameMode.OnWinnerDecided((Team)0, "Not Even Close"); service.CurrentGameMode.DecideWinner((Team)0, "Not Even Close"); } } alreadydead = true; } private IEnumerator LaggyEvents() { yield return (object)new WaitForSecondsRealtime(1f); SpecialAbility[] componentsInChildren = ((Component)unit).gameObject.GetComponentsInChildren<SpecialAbility>(); foreach (SpecialAbility s in componentsInChildren) { Object.Destroy((Object)(object)s); } ((MonoBehaviour)this).StartCoroutine(LaggyEvents()); } } public class Move_DemonRage : MonoBehaviour { public GameObject sliceeffect; public GaryListner GaryHub; public bool IsEnraged; private void Awake() { sliceeffect = Loader.SliceEffect; } private IEnumerator loop() { yield return (object)new WaitForSeconds(9f); IsEnraged = true; yield return (object)new WaitForSeconds(2f); IsEnraged = false; ((MonoBehaviour)this).StartCoroutine(loop()); } private IEnumerator slowloop() { if (IsEnraged) { Unit[] array = Object.FindObjectsOfType<Unit>(); foreach (Unit u in array) { if (u.Team != ((Component)this).gameObject.GetComponent<Unit>().Team) { PlayBlood(u.data.head, sliceeffect); PlayBlood(u.data.legRight, sliceeffect); PlayBlood(u.data.legLeft, sliceeffect); PlayBlood(u.data.leftHand, sliceeffect); PlayBlood(u.data.rightHand, sliceeffect); PlaySlice(u.data.head, sliceeffect); PlaySlice(u.data.legRight, sliceeffect); PlaySlice(u.data.legLeft, sliceeffect); PlaySlice(u.data.leftHand, sliceeffect); PlaySlice(u.data.rightHand, sliceeffect); Transform transform = ((Component)u.data.head).transform; transform.localScale *= 0f; Transform transform2 = ((Component)u.data.legRight).transform; transform2.localScale *= 0f; Transform transform3 = ((Component)u.data.legLeft).transform; transform3.localScale *= 0f; Transform transform4 = ((Component)u.data.leftHand).transform; transform4.localScale *= 0f; Transform transform5 = ((Component)u.data.rightHand).transform; transform5.localScale *= 0f; Transform transform6 = ((Component)u.data.footLeft).transform; transform6.localScale *= 0f; Transform transform7 = ((Component)u.data.footRight).transform; transform7.localScale *= 0f; Transform transform8 = ((Component)u.data.leftArm).transform; transform8.localScale *= 0f; Transform transform9 = ((Component)u.data.rightArm).transform; transform9.localScale *= 0f; if ((Object)(object)u.data.weaponHandler.rightWeapon != (Object)null) { Transform transform10 = ((Component)u.data.weaponHandler.rightWeapon).transform; transform10.localScale *= 0f; } if ((Object)(object)u.data.weaponHandler.leftWeapon != (Object)null) { Transform transform11 = ((Component)u.data.weaponHandler.leftWeapon).transform; transform11.localScale *= 0f; } u.holdingHandler.LetGoOfAll(); u.data.ragdollControl = -1f; u.data.muscleControl = -1f; SpecialAbility[] componentsInChildren = ((Component)u).gameObject.GetComponentsInChildren<SpecialAbility>(); foreach (SpecialAbility s in componentsInChildren) { Object.Destroy((Object)(object)((Component)s).gameObject); } } } } yield return (object)new WaitForSeconds(0.2f); ((MonoBehaviour)this).StartCoroutine(slowloop()); } public IEnumerator Startrage() { ((MonoBehaviour)this).StartCoroutine(loop()); ((MonoBehaviour)this).StartCoroutine(slowloop()); ShootParticle(); yield return null; } private void Update() { if (!IsEnraged) { } } private void ShootParticle() { //IL_0022: Unknown result type (might be due to invalid IL or missing references) //IL_0069: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_0099: Unknown result type (might be due to invalid IL or missing references) GameObject val = Object.Instantiate<GameObject>(Loader.InfiniteParticle); val.transform.position = ((Component)this).GetComponent<Unit>().data.head.position; val.AddComponent<Rigidbody>().AddForce(0f, 7f, 0f, (ForceMode)2); val.GetComponent<Rigidbody>().useGravity = false; val.GetComponent<Rigidbody>().freezeRotation = true; ((Renderer)val.GetComponent<MeshRenderer>()).material = GarySetups.Fastmat(Color.black); InfiniteParticle infiniteParticle = val.AddComponent<InfiniteParticle>(); infiniteParticle.me = ((Component)this).GetComponent<Unit>(); infiniteParticle.team = ((Component)this).GetComponent<Unit>().Team; val.AddComponent<DestroySelfWhenUnitDestroyed>(); GaryHub.Infinite_Particle = infiniteParticle; } private void PlaySlice(Transform tr, GameObject sliceEffect) { //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_003e: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Unknown result type (might be due to invalid IL or missing references) //IL_0054: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) GameObject val = Object.Instantiate<GameObject>(sliceEffect, (Transform)null); Transform transform = val.transform; transform.localScale *= 2f; val.transform.position = tr.position; val.transform.rotation = tr.rotation; Transform transform2 = val.transform; Vector3 one = Vector3.one; float num = Random.Range(0, 720); transform2.RotateAround(tr.position, one, num); CodeAnimation component = val.GetComponent<CodeAnimation>(); if (component != null) { component.PlayIn(); } val.AddComponent<RemoveAfterSeconds>().seconds = 0.5f; } private void PlayBlood(Transform tr, GameObject sliceEffect) { //IL_002a: Unknown result type (might be due to invalid IL or missing references) int num = Random.Range(0, 5); if (num == 2) { GameObject val = Object.Instantiate<GameObject>(Loader.Blood, (Transform)null); val.transform.position = ((Component)tr).transform.position; val.AddComponent<RemoveAfterSeconds>().seconds = 1f; } } } public class DestroySelfWhenUnitDestroyed : GameStateListener { public Unit unit; private bool dostuff; private void Start() { if ((Object)(object)unit == (Object)null) { dostuff = true; } } private void Update() { if (!dostuff && (Object)(object)unit == (Object)null) { Object.Destroy((Object)(object)((Component)this).gameObject); } } public override void OnEnterBattleState() { } public override void OnEnterPlacementState() { Object.Destroy((Object)(object)((Component)this).gameObject); } } public class FlameThrower : MonoBehaviour { public enum Modes { Active, Stop } public RangeWeapon rangeWeapon; public bool STOP; public float More = 0f; public Modes CurrentMode; private void Awake() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0029: Expected O, but got Unknown rangeWeapon = ((Component)this).GetComponent<RangeWeapon>(); rangeWeapon.shootEvent.AddListener((UnityAction)delegate { Increase(); }); ParticleSystem[] componentsInChildren = ((Component)this).gameObject.GetComponentsInChildren<ParticleSystem>(); foreach (ParticleSystem val in componentsInChildren) { if (((Object)((Component)val).gameObject).name == "Fire (1)") { val.emissionRate = 400f; } } } private void Increase() { More += 1f; if (More > 5f) { More = 5f; } } private void Update() { if (More >= 0f && CurrentMode == Modes.Stop) { SetActive(); More -= Time.deltaTime; ParticleSystem[] componentsInChildren = ((Component)this).gameObject.GetComponentsInChildren<ParticleSystem>(); foreach (ParticleSystem val in componentsInChildren) { if (((Object)((Component)val).gameObject).name == "Fire (1)") { val.Play(); } } } else { Stop(); } } private void SetActive() { CurrentMode = Modes.Active; ParticleSystem[] componentsInChildren = ((Component)this).gameObject.GetComponentsInChildren<ParticleSystem>(); foreach (ParticleSystem val in componentsInChildren) { if (((Object)((Component)val).gameObject).name == "Fire (1)") { val.Play(); } } DelayEvent[] componentsInChildren2 = ((Component)this).gameObject.GetComponentsInChildren<DelayEvent>(); foreach (DelayEvent val2 in componentsInChildren2) { if (((Object)((Component)val2).gameObject).name == "SetActive") { val2.Go(); } } } private void Stop() { CurrentMode = Modes.Stop; ParticleSystem[] componentsInChildren = ((Component)this).gameObject.GetComponentsInChildren<ParticleSystem>(); foreach (ParticleSystem val in componentsInChildren) { if (((Object)((Component)val).gameObject).name == "Fire (1)") { val.Stop(); } } DelayEvent[] componentsInChildren2 = ((Component)this).gameObject.GetComponentsInChildren<DelayEvent>(); foreach (DelayEvent val2 in componentsInChildren2) { if (((Object)((Component)val2).gameObject).name == "Disable") { val2.Go(); } } } } public class FollowPositionofOnlyPart : MonoBehaviour { public Transform follow; private void Awake() { //IL_0042: Unknown result type (might be due to invalid IL or missing references) //IL_004d: Unknown result type (might be due to invalid IL or missing references) //IL_0052: Unknown result type (might be due to invalid IL or missing references) follow = ((Component)((Component)((Component)this).transform.root).GetComponentInChildren<Head>()).transform; ((Component)this).gameObject.AddComponent<DestroySelfWhenUnitDestroyed>().unit = ((Component)((Component)this).transform.root).GetComponent<Unit>(); ((Component)this).transform.localScale = Help.devide(Vector3.one, ((Component)this).transform.lossyScale); } public void Update() { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_001e: Unknown result type (might be due to invalid IL or missing references) //IL_004e: Unknown result type (might be due to invalid IL or missing references) ((Component)this).transform.localPosition = Vector3.zero; ((Component)this).transform.position = follow.position; ((Component)this).transform.forward = ((Component)((Component)((Component)this).transform.root).GetComponent<Unit>().data.mainRig).transform.forward; } } public class GarySetups : MonoBehaviour { public static Material Fastmat(Color color, bool isParticle = false) { //IL_003e: Unknown result type (might be due to invalid IL or missing references) //IL_0044: Expected O, but got Unknown //IL_0014: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Expected O, but got Unknown //IL_0029: Unknown result type (might be due to invalid IL or missing references) //IL_002f: Expected O, but got Unknown //IL_0049: Unknown result type (might be due to invalid IL or missing references) Material val; if (!isParticle) { val = new Material(Shader.Find("Standard")); } else { try { val = new Material(Shader.Find("Particles/Standard Surface")); } catch (Exception) { val = new Material(Shader.Find("Particles/StandardSurface")); } } val.color = color; val.SetFloat("_Glossiness", 0f); return val; } public static void TurnParticleblack(ParticleSystemRenderer p) { //IL_001b: Unknown result type (might be due to invalid IL or missing references) int num = 0; Material[] materials = ((Renderer)p).materials; foreach (Material val in materials) { ((Renderer)p).materials[num] = Fastmat(Color.white); num++; } } public static IEnumerator GaryFlames(GameObject weaopon1) { yield return (object)new WaitForEndOfFrame(); yield return (object)new WaitForEndOfFrame(); yield return (object)new WaitForEndOfFrame(); Transform ObjectTransform = weaopon1.transform.Find("ObjectTransform"); Transform LongName = ObjectTransform.Find("p_Fireball_1 Prefabs_VB(Clone)"); Transform Mid = LongName.Find("Mid"); Transform Fire_Idle = Mid.Find("Fire_Idle"); Transform Fire_Trail = Mid.Find("Fire_Trail"); Transform Fire_Explo = Mid.Find("Fire_Explo"); ((Renderer)((Component)Fire_Idle).GetComponent<ParticleSystemRenderer>()).material = new Material(Shader.Find("Unlit/Color")); TurnParticleblack(((Component)Fire_Idle).GetComponent<ParticleSystemRenderer>()); ((Object)Fire_Idle).name = "Blck_fire_Idle"; ((Renderer)((Component)Fire_Trail).GetComponent<ParticleSystemRenderer>()).material = new Material(Shader.Find("Unlit/Color")); TurnParticleblack(((Component)Fire_Trail).GetComponent<ParticleSystemRenderer>()); ((Object)Fire_Trail).name = "Blck_fire_Trail"; ((Renderer)((Component)Fire_Explo).GetComponent<ParticleSystemRenderer>()).material = new Material(Shader.Find("Unlit/Color")); TurnParticleblack(((Component)Fire_Explo).GetComponent<ParticleSystemRenderer>()); ((Object)Fire_Explo).name = "Blck_fire_Explo"; } public static void MakeNotWeapon(GameObject temp) { Object.Destroy((Object)(object)temp.GetComponentInChildren<GOSLMA>()); Object.Destroy((Object)(object)temp.GetComponentInChildren<MeleeWeapon>()); Object.Destroy((Object)(object)temp.GetComponentInChildren<Weapon>()); Object.Destroy((Object)(object)temp.GetComponentInChildren<WeaponItem>()); Object.Destroy((Object)(object)temp.GetComponentInChildren<WeaponForceAnimation>()); Object.Destroy((Object)(object)temp.GetComponentInChildren<Cost>()); } } public class GarySpawnRing : MonoBehaviour { private Unit unit; private void Awake() { if (Object.op_Implicit((Object)(object)((Component)((Component)this).transform.root).GetComponent<Unit>())) { unit = ((Component)((Component)this).transform.root).GetComponent<Unit>(); ((MonoBehaviour)this).StartCoroutine(loop()); } } private IEnumerator loop() { yield return (object)new WaitUntil((Func<bool>)(() => (Object)(object)unit.data.targetData != (Object)null)); yield return (object)new WaitForSeconds(5f); GameObject ring = Object.Instantiate<GameObject>(UPool.MyPool.GetObject("GaryRing")); ring.transform.position = (((Component)unit.data.targetData.footRight).transform.position + ((Component)unit.data.targetData.footLeft).transform.position) / 2f; Collider[] collider = Physics.OverlapSphere(ring.transform.position, 6f); for (int i = 0; i < collider.Length; i++) { if (Object.op_Implicit((Object)(object)((Component)((Component)collider[i]).transform.root).GetComponent<Unit>()) && ((Component)((Component)collider[i]).transform.root).GetComponent<Unit>().Team != unit.Team) { Help.FlipUnitTeam(((Component)((Component)collider[i]).transform.root).GetComponent<Unit>(), Color.black); } } ((MonoBehaviour)this).StartCoroutine(loop()); } } public class Gaurdian_Angel : GameStateListener { public Team TargetTeam; private void Start() { Debug.Log((object)"Gaurding cuz im a guard, duh"); ((Component)this).transform.parent = null; SceneManager.sceneLoaded += SceneManager_sceneLoaded; } private void SceneManager_sceneLoaded(Scene arg0, LoadSceneMode arg1) { Stop(); } public void Stop() { Object.Destroy((Object)(object)((Component)this).gameObject); } public override void OnEnterPlacementState() { Stop(); } public override void OnEnterPlacementStateEarly() { Stop(); } public override void OnEnterBattleState() { } public override void OnEnterNewScene() { Stop(); } } public class GaryListner : GameStateListener { public InfiniteParticle Infinite_Particle; public Move_DemonRage Move_DemonRage; public override void OnEnterPlacementState() { } public override void OnEnterBattleState() { if ((Object)(object)Move_DemonRage != (Object)null) { Move_DemonRage.GaryHub = this; ((MonoBehaviour)this).StartCoroutine(Move_DemonRage.Startrage()); ((MonoBehaviour)this).StartCoroutine(Infinite_Particle.StartShoot()); } } } public static class Help { public static void SetField(object obj, string fieldName, object value) { obj.GetType().GetField(fieldName, BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic).SetValue(obj, value); } public static void Kill(Unit unit) { //IL_0062: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Invalid comparison between Unknown and I4 //IL_00d1: Unknown result type (might be due to invalid IL or missing references) //IL_00d7: Invalid comparison between Unknown and I4 GameModeService service = ServiceLocator.GetService<GameModeService>(); ((Component)unit).GetComponentInChildren<DataHandler>().Dead = true; string randomEnd = DontDie.GetRandomEnd(); service.CurrentGameMode.WinConditionPropagator.OnUnitDied(unit); TeamSystem orCreateManager = World.Active.GetOrCreateManager<TeamSystem>(); GooglyEye[] componentsInChildren = ((Component)unit).GetComponentsInChildren<GooglyEye>(); foreach (GooglyEye val in componentsInChildren) { val.Die(); } if ((int)unit.Team == 0) { int num = (from u in orCreateManager.GetTeamUnits((Team)0) where !u.data.Dead select u).Count(); if (num <= 1) { service.CurrentGameMode.OnWinnerDecided((Team)1, randomEnd); service.CurrentGameMode.DecideWinner((Team)1, randomEnd); } } if ((int)unit.Team == 1) { int num2 = (from u in orCreateManager.GetTeamUnits((Team)1) where !u.data.Dead select u).Count(); if (num2 <= 1) { service.CurrentGameMode.OnWinnerDecided((Team)0, randomEnd); service.CurrentGameMode.DecideWinner((Team)0, randomEnd); } } } public static Vector3 GetMeshSize(SkinnedMeshRenderer mesh) { //IL_0003: Unknown result type (might be due to invalid IL or missing references) //IL_0011: Unknown result type (might be due to invalid IL or missing references) //IL_0016: Unknown result type (might be due to invalid IL or missing references) //IL_0019: Unknown result type (might be due to invalid IL or missing references) //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_0029: Unknown result type (might be due to invalid IL or missing references) //IL_0040: Unknown result type (might be due to invalid IL or missing references) //IL_0045: Unknown result type (might be due to invalid IL or missing references) //IL_0048: Unknown result type (might be due to invalid IL or missing references) //IL_0053: Unknown result type (might be due to invalid IL or missing references) //IL_0058: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_0074: Unknown result type (might be due to invalid IL or missing references) //IL_0077: Unknown result type (might be due to invalid IL or missing references) //IL_0082: Unknown result type (might be due to invalid IL or missing references) //IL_0087: Unknown result type (might be due to invalid IL or missing references) //IL_0096: Unknown result type (might be due to invalid IL or missing references) //IL_0097: Unknown result type (might be due to invalid IL or missing references) //IL_009a: Unknown result type (might be due to invalid IL or missing references) Vector3 result = default(Vector3); Bounds bounds = mesh.sharedMesh.bounds; result.x = Vector3.Scale(((Bounds)(ref bounds)).size, ((Component)mesh).transform.lossyScale).Highest(); bounds = mesh.sharedMesh.bounds; result.y = Vector3.Scale(((Bounds)(ref bounds)).size, ((Component)mesh).transform.lossyScale).Highest(); bounds = mesh.sharedMesh.bounds; result.z = Vector3.Scale(((Bounds)(ref bounds)).size, ((Component)mesh).transform.lossyScale).Highest(); return result; } public static float Highest(this Vector3 vector3) { //IL_000f: Unknown result type (might be due to invalid IL or missing references) //IL_0018: Unknown result type (might be due to invalid IL or missing references) //IL_0021: Unknown result type (might be due to invalid IL or missing references) float num = 0f; float[] array = new float[3] { vector3.x, vector3.y, vector3.z }; float[] array2 = array; foreach (float num2 in array2) { if (num2 > num) { num = num2; } } return num; } public static Vector3 devide(Vector3 a, Vector3 b) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Unknown result type (might be due to invalid IL or missing references) //IL_0014: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Unknown result type (might be due to invalid IL or missing references) //IL_0021: Unknown result type (might be due to invalid IL or missing references) //IL_0028: Unknown result type (might be due to invalid IL or missing references) //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_0030: Unknown result type (might be due to invalid IL or missing references) return new Vector3(a.x / b.x, a.y / b.y, a.z / b.z); } public static Team reverse(this Team team) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0003: Invalid comparison between Unknown and I4 //IL_000e: Unknown result type (might be due to invalid IL or missing references) //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_0011: Unknown result type (might be due to invalid IL or missing references) if ((int)team == 0) { return (Team)1; } return (Team)0; } public static void FlipUnitTeam(Unit unit, Color color) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_0009: Unknown result type (might be due to invalid IL or missing references) //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_000f: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Unknown result type (might be due to invalid IL or missing references) //IL_0020: Unknown result type (might be due to invalid IL or missing references) //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Unknown result type (might be due to invalid IL or missing references) //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_005e: Unknown result type (might be due to invalid IL or missing references) //IL_005f: Unknown result type (might be due to invalid IL or missing references) //IL_0069: Expected I4, but got Unknown //IL_0069: Unknown result type (might be due to invalid IL or missing references) //IL_007b: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_0093: Unknown result type (might be due to invalid IL or missing references) //IL_00c4: Unknown result type (might be due to invalid IL or missing references) //IL_00c5: Unknown result type (might be due to invalid IL or missing references) //IL_011e: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Unknown result type (might be due to invalid IL or missing references) //IL_0128: Unknown result type (might be due to invalid IL or missing references) //IL_0183: Unknown result type (might be due to invalid IL or missing references) Team team = unit.Team; unit.Team = team.reverse(); unit.data.team = team.reverse(); GameObjectEntity component = ((Component)((Component)unit).transform.root).GetComponent<GameObjectEntity>(); component.EntityManager.RemoveComponent<Team>(component.Entity); component.EntityManager.AddSharedComponentData<Team>(component.Entity, new Team { Value = (int)team.reverse() }); World.Active.GetOrCreateManager<TeamSystem>().RemoveEntity(component.Entity, team, unit); World.Active.GetOrCreateManager<TeamSystem>().AddUnit(component.Entity, ((Component)((Component)unit).transform.root).gameObject, ((Component)unit).transform.root, unit.data.mainRig, unit.data, team.reverse(), unit, true); if (Object.op_Implicit((Object)(object)((Component)((Component)unit).transform.root).GetComponentInChildren<TeamHolder>())) { return; } for (int i = 0; i < ((Component)((Component)unit).transform.root).GetComponentsInChildren<TeamHolder>().Length; i++) { ((Component)((Component)unit).transform.root).GetComponentsInChildren<TeamHolder>()[i].team = ((Component)((Component)unit).transform.root).GetComponentsInChildren<TeamHolder>()[i].team.reverse(); } Renderer[] componentsInChildren = ((Component)((Component)unit).transform.root).GetComponentsInChildren<Renderer>(true); for (int j = 0; j < componentsInChildren.Length; j++) { for (int k = 0; k < componentsInChildren[j].materials.Length; k++) { Material val = Object.Instantiate<Material>(componentsInChildren[k].materials[k]); val.color = color; componentsInChildren[k].materials[k] = val; } } } } public class HighlightColor : MonoBehaviour { public Color color; private void Awake() { //IL_0008: Unknown result type (might be due to invalid IL or missing references) ((Component)this).GetComponent<Unit>().SetHighlight(color); } } public class Immortality : GameStateListener { public bool CanBeDestroyed = true; public GameObject GaurdianAngel; private void Start() { if (Object.op_Implicit((Object)(object)((Component)((Component)this).transform.root).GetComponent<Unit>())) { GameModeService service = ServiceLocator.GetService<GameModeService>(); ((Component)((Component)this).transform.root).GetComponentInChildren<Unit>().data.maxHealth = float.PositiveInfinity; ((Component)((Component)this).transform.root).GetComponentInChildren<Unit>().data.health = float.PositiveInfinity; } } public override void OnEnterBattleState() { //IL_0038: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_0066: Unknown result type (might be due to invalid IL or missing references) if (Object.op_Implicit((Object)(object)((Component)((Component)this).transform.root).GetComponent<Unit>())) { GameObject val = GameObject.CreatePrimitive((PrimitiveType)3); ((Object)val).name = "Gaurdian"; val.transform.localScale = Vector3.zero; Object.DontDestroyOnLoad((Object)(object)val); val.AddComponent<Gaurdian_Angel>().TargetTeam = ((Component)((Component)this).transform.root).GetComponentInChildren<Unit>(true).Team; } } public override void OnEnterPlacementState() { } public void OnDestroy() { if (((GameStateListener)this).GameStateManager != null) { ((GameStateListener)this).GameStateManager.UnregisterListener((GameStateListener)(object)this); } } } public class InfiniteParticle : MonoBehaviour { private bool ismad = false; public LineRenderer LineRenderer; public Unit me; public Team team; public bool alreadydead; public Unit Target => gettarget(); private Unit gettarget() { //IL_004b: Unknown result type (might be due to invalid IL or missing references) //IL_0051: Unknown result type (might be due to invalid IL or missing references) //IL_0086: Unknown result type (might be due to invalid IL or missing references) //IL_0091: Unknown result type (might be due to invalid IL or missing references) //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)me != (Object)null) { return me.data.targetData.unit; } Unit result = null; float num = 1E+11f; Unit[] array = Object.FindObjectsOfType<Unit>(); for (int i = 0; i < array.Length; i++) { if (array[i].Team != team && !array[i].data.Dead && Vector3.Distance(array[i].data.mainRig.position, ((Component)this).transform.position) < num) { num = Vector3.Distance(array[i].data.mainRig.position, ((Component)this).transform.position); result = array[i]; } } return result; } private void Awake() { //IL_0022: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Expected O, but got Unknown //IL_003e: Unknown result type (might be due to invalid IL or missing references) //IL_0069: Unknown result type (might be due to invalid IL or missing references) //IL_007a: Unknown result type (might be due to invalid IL or missing references) LineRenderer = ((Component)this).gameObject.AddComponent<LineRenderer>(); ((Renderer)LineRenderer).material = new Material(Shader.Find("Sprites/Default")); for (int i = 0; i < ((Renderer)LineRenderer).materials.Length; i++) { ((Renderer)LineRenderer).materials[i] = GarySetups.Fastmat(Color.black); } LineRenderer.startColor = Color.black; LineRenderer.endColor = Color.black; LineRenderer.startWidth = 0f; LineRenderer.endWidth = 0.3f; LineRenderer.positionCount = 2; } public IEnumerator StartShoot() { ((MonoBehaviour)this).StartCoroutine(loop()); yield return null; } private IEnumerator loop() { yield return (object)new WaitForSeconds(0.05f); Rigidbody component = ((Component)this).GetComponent<Rigidbody>(); component.velocity /= 25f; ((MonoBehaviour)this).StartCoroutine(loop()); } private void Update() { //IL_0036: Unknown result type (might be due to invalid IL or missing references) //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0062: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Unknown result type (might be due to invalid IL or missing references) //IL_0085: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)Target == (Object)null) { LineRenderer.SetPosition(1, ((Component)this).transform.position); return; } LineRenderer.GetPosition(0); if (true) { LineRenderer.SetPosition(0, ((Component)this).transform.position); } LineRenderer.GetPosition(1); if (true) { LineRenderer.SetPosition(1, Target.data.head.position); } if (Target.data.health == float.PositiveInfinity) { Target.data.health = 1000f; ismad = true; } DataHandler data = Target.data; data.health -= Target.data.maxHealth / 2f * 10f * Time.deltaTime; if (!(Target.data.health <= 0f)) { return; } GameModeService service = ServiceLocator.GetService<GameModeService>(); if (service != null) { BaseGameMode currentGameMode = service.CurrentGameMode; bool? obj; if (currentGameMode == null) { obj = null; } else { VerticalCurtainController curtainController = currentGameMode.CurtainController; obj = ((curtainController != null) ? new bool?(curtainController.AreCurtainsClosed) : null); } if (obj == false) { Help.Kill(Target); } } } } public class Jotaro : MonoBehaviour { public float Time = 7f; public float Time2 = 12f; public bool IstimeStoped = false; public List<Unit> DamageQue = new List<Unit>(); public Unit me; public void awake() { ((MonoBehaviour)this).StartCoroutine(SpawnStarPlatiunim()); ((MonoBehaviour)this).StartCoroutine(loop2()); } private IEnumerator loop2() { yield return (object)new WaitForSeconds(Time2); ((MonoBehaviour)this).StartCoroutine(StopTime()); ((MonoBehaviour)this).StartCoroutine(loop2()); } private IEnumerator SpawnStarPlatiunim() { GameObject Starplatinum = Object.Instantiate<GameObject>(Loader.StarPlatinum); yield return (object)new WaitUntil((Func<bool>)(() => WaitTellMainrig(me.data))); Starplatinum.transform.position = ((Component)me.data.mainRig).transform.position + ((Component)me.data.mainRig).transform.forward * 1.5f; Starplatinum.transform.rotation = Quaternion.identity; Transform transform = Starplatinum.transform; transform.localScale *= 0.5f; Starplatinum.transform.Find("Scaler").rotation = Loader.offest; Transform obj = Starplatinum.transform.Find("Scaler"); obj.localScale *= 1.3f; GoInfrontofUnitEnemy go = Starplatinum.AddComponent<GoInfrontofUnitEnemy>(); go.Jotaro = me; Starplatinum.AddComponent<ContinuesPunchs>(); Starplatinum.AddComponent<DestroySelfWhenUnitDestroyed>().unit = me; Object.Destroy((Object)(object)Starplatinum.GetComponent<RemoveAfterSeconds>()); Transform[] bones = Starplatinum.GetComponentInChildren<SkinnedMeshRenderer>().bones; foreach (Transform t in bones) { CopyPositionRelativeTo a = ((Component)t).gameObject.AddComponent<CopyPositionRelativeTo>(); Transform[] boneTransforms = ((Component)me).GetComponent<UnitRig>().boneTransforms; foreach (Transform t2 in boneTransforms) { if (((Object)t).name == ((Object)t2).name && ((Object)t).name != "M_Torso") { a.target = t2; } } a.relativeTarget = me.data.torso.Find("M_Torso"); a.relativeTo = Starplatinum.transform.Find("Scaler").Find("Armature").Find("M_Torso"); } } private bool WaitTellMainrig(DataHandler dataHandler) { //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Unknown result type (might be due to invalid IL or missing references) bool flag = false; try { Transform transform = ((Component)dataHandler.mainRig).transform; transform.position += Vector3.zero; return true; } catch (SystemException) { return false; } } private IEnumerator StopTime() { float oldfloat = 1f; float oldfloat2 = 1f; IstimeStoped = true; Unit[] array = Object.FindObjectsOfType<Unit>(); foreach (Unit u in array) { if ((Object)(object)u != (Object)(object)((Component)this).GetComponent<Unit>()) { u.FreezeBody(); try { oldfloat = ((Component)u).GetComponentInChildren<StepHandler>().multiplier; ((Component)u).GetComponentInChildren<StepHandler>().multiplier = 0f; oldfloat2 = ((Component)u).GetComponentInChildren<AnimationHandler>().multiplier; ((Component)u).GetComponentInChildren<AnimationHandler>().multiplier = 0f; } catch (Exception) { } } } yield return (object)new WaitForSeconds(6f); IstimeStoped = false; Unit[] array2 = Object.FindObjectsOfType<Unit>(); foreach (Unit u2 in array2) { if ((Object)(object)u2 != (Object)(object)((Component)this).GetComponent<Unit>()) { try { u2.UnfreezeBody(); ((Component)u2).GetComponentInChildren<AnimationHandler>().multiplier = oldfloat2; ((Component)u2).GetComponentInChildren<StepHandler>().multiplier = oldfloat; } catch (Exception) { } } } foreach (Unit u3 in DamageQue) { if ((Object)(object)u3 != (Object)null) { ((Damagable)u3.data.healthHandler).TakeDamage(5f, Vector3.zero, (Unit)null, (DamageType)0); u3.data.mainRig.AddForce(((Component)u3.data.mainRig).transform.forward * -30f, (ForceMode)1); } } } } public class GoInfrontofUnitEnemy : MonoBehaviour { public bool Attack = false; public Unit Jotaro; public Transform target; public float speed = 0.5f; public Vector3 posnoY = default(Vector3); public Quaternion offset = new Quaternion(0f, 0f, 0f, 0f); private void FixedUpdate() { //IL_021d: Unknown result type (might be due to invalid IL or missing references) //IL_0228: Unknown result type (might be due to invalid IL or missing references) //IL_0232: Unknown result type (might be due to invalid IL or missing references) //IL_0237: Unknown result type (might be due to invalid IL or missing references) //IL_023c: Unknown result type (might be due to invalid IL or missing references) //IL_024a: Unknown result type (might be due to invalid IL or missing references) //IL_024f: Unknown result type (might be due to invalid IL or missing references) //IL_0257: Unknown result type (might be due to invalid IL or missing references) //IL_0269: Unknown result type (might be due to invalid IL or missing references) //IL_0279: Unknown result type (might be due to invalid IL or missing references) //IL_0289: Unknown result type (might be due to invalid IL or missing references) //IL_0293: Unknown result type (might be due to invalid IL or missing references) //IL_0298: Unknown result type (might be due to invalid IL or missing references) //IL_02a4: Unknown result type (might be due to invalid IL or missing references) //IL_0034: Unknown result type (might be due to invalid IL or missing references) //IL_004e: Unknown result type (might be due to invalid IL or missing references) //IL_0158: Unknown result type (might be due to invalid IL or missing references) //IL_0163: Unknown result type (might be due to invalid IL or missing references) //IL_016d: Unknown result type (might be due to invalid IL or missing references) //IL_0172: Unknown result type (might be due to invalid IL or missing references) //IL_0177: Unknown result type (might be due to invalid IL or missing references) //IL_0184: Unknown result type (might be due to invalid IL or missing references) //IL_0189: Unknown result type (might be due to invalid IL or missing references) //IL_0190: Unknown result type (might be due to invalid IL or missing references) //IL_01a2: Unknown result type (might be due to invalid IL or missing references) //IL_01b2: Unknown result type (might be due to invalid IL or missing references) //IL_01c2: Unknown result type (might be due to invalid IL or missing references) //IL_01cc: Unknown result type (might be due to invalid IL or missing references) //IL_01d1: Unknown result type (might be due to invalid IL or missing references) //IL_01dd: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00a9: Unknown result type (might be due to invalid IL or missing references) //IL_00ae: Unknown result type (might be due to invalid IL or missing references) //IL_00b3: Unknown result type (might be due to invalid IL or missing references) //IL_00c0: Unknown result type (might be due to invalid IL or missing references) //IL_00c5: Unknown result type (might be due to invalid IL or missing references) //IL_00cc: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Unknown result type (might be due to invalid IL or missing references) //IL_00ee: Unknown result type (might be due to invalid IL or missing references) //IL_00fe: Unknown result type (might be due to invalid IL or missing references) //IL_0108: Unknown result type (might be due to invalid IL or missing references) //IL_010d: Unknown result type (might be due to invalid IL or missing references) //IL_0119: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)Jotaro.data.targetMainRig != (Object)null) { if (Vector3.Distance(((Component)Jotaro.data.targetMainRig).transform.position, ((Component)Jotaro.data.mainRig).transform.position) < 7f) { ((Component)this).GetComponent<ContinuesPunchs>().Stoppunchs = false; target = ((Component)Jotaro.data.targetMainRig).transform; Vector3 val = target.position + target.forward * 2.4f; ((Component)this).transform.position = Vector3.MoveTowards(((Component)this).transform.position, val, speed); posnoY = new Vector3(target.position.x, ((Component)this).transform.position.y, target.position.z); ((Component)this).transform.LookAt(posnoY); } else { ((Component)this).GetComponent<ContinuesPunchs>().Stoppunchs = true; target = ((Component)Jotaro.data.mainRig).transform; Vector3 val2 = target.position + target.forward * -2f; ((Component)this).transform.position = Vector3.MoveTowards(((Component)this).transform.position, val2, speed); posnoY = new Vector3(target.position.x, ((Component)this).transform.position.y, target.position.z); ((Component)this).transform.LookAt(posnoY); } } else { ((Component)this).GetComponent<ContinuesPunchs>().Stoppunchs = true; target = ((Component)Jotaro.data.mainRig).transform; Vector3 val3 = target.position + target.forward * -2f; ((Component)this).transform.position = Vector3.MoveTowards(((Component)this).transform.position, val3, speed); posnoY = new Vector3(target.position.x, ((Component)this).transform.position.y, target.position.z); ((Component)this).transform.LookAt(posnoY); } } } public class ContinuesPunchs : MonoBehaviour { public int Gridx = 5; public int Gridy = 5; public float Spacing = 6f; public bool Stoppunchs = true; public bool isplayingsound = false; private List<GameObject> allhands = new List<GameObject>(); public bool IsStand = true; private IEnumerator loop() { if (!IsStand && ((Component)((Component)this).transform.root).GetComponent<Unit>().data.Dead) { Object.Destroy((Object)(object)this); } if (!Stoppunchs) { GameObject punch; if (IsStand) { punch = Object.Instantiate<GameObject>(Loader.SPPunch); } else { punch = Object.Instantiate<GameObject>(Loader.HumanPunch); Renderer msh = punch.GetComponentInChildren<Renderer>(); for (int i = 0; i < ((Component)((Component)this).transform.root).GetComponentInChildren<Unit>().unitBlueprint.m_props.Length; i++) { GameObject item = ((Component)((Component)this).transform.root).GetComponentInChildren<Unit>().unitBlueprint.m_props[i]; if ((int)((CharacterItem)item.GetComponent<PropItem>()).GearT == 5) { PropItemData data = ((Component)((Component)this).transform.root).GetComponentInChildren<Unit>().unitBlueprint.m_propData[i]; GameObject obj = Object.Instantiate<GameObject>(item, punch.transform); ((CharacterItem)obj.GetComponent<PropItem>()).Equip(((Component)((Component)this).transform.root).gameObject, data, new TransformCatalog(((Component)this).transform.root, (RigType)1, ""), ((Component)((Component)this).transform.root).GetComponent<Unit>().Team, false); obj.transform.parent = ((Component)msh).transform; obj.transform.position = ((Component)msh).transform.localPosition - ((Component)msh).transform.right * -0.25f; obj.transform.localRotation = Quaternion.Euler(0f, 0f, 180f); obj.transform.rotation = ((Component)msh).transform.rotation; } } if ((int)((Component)((Component)this).transform.root).GetComponent<Unit>().Team == 0) { punch.GetComponentInChildren<Renderer>().material = ((Component)((Component)this).transform.root).GetComponentInChildren<TeamColor>().redMaterial; } else { punch.GetComponentInChildren<Renderer>().material = ((Component)((Component)this).transform.root).GetComponentInChildren<TeamColor>().blueMaterial; } } punch.transform.position = ((Component)this).transform.position + ((Component)this).transform.forward; punch.transform.parent = ((Component)this).transform; punch.AddComponent<RemoveAfterSeconds>().seconds = 0.025f; if (IsStand) { punch.AddComponent<HitOnTrigger>().jotaro = ((Component)((Component)this).GetComponent<GoInfrontofUnitEnemy>().Jotaro).GetComponent<Jotaro>(); } else { punch.AddComponent<HitOnTrigger>().IsStand = false; punch.GetComponent<HitOnTrigger>().unit = ((Component)((Component)this).transform.root).GetComponent<Unit>(); } for (int x = 1; x < Gridx; x++) { for (int y = 1; y < Gridy; y++) { if (Stoppunchs || Random.Range(0, 5) == 0) { continue; } GameObject a = Object.Instantiate<GameObject>(punch, ((Component)this).transform); a.transform.localPosition = punch.transform.localPosition; Quaternion rot; if (IsStand) { rot = Quaternion.Euler(((Component)this).transform.forward); } else { Vector3 vector3 = ((Component)((Component)((Component)this).transform.root).GetComponent<Unit>().data.mainRig).transform.right; rot = Quaternion.Euler(vector3); } if (IsStand) { Transform transform = a.transform; transform.localPosition -= rot * Vector3.forward * -2.5f + Vector3.one * 2.5f * Random.Range(0f, 120f) / 80f; } else { Transform transform2 = a.transform; transform2.localPosition -= rot * Vector3.forward * -2.5f + Vector3.one * 2f * Random.Range(0f, 80f) / 100f; } if (IsStand) { if (x <= 0) { Transform transform3 = a.transform; transform3.localPosition -= rot * Vector3.right * ((float)x - 2.5f) * (Random.Range(30f, 120f) / 60f); } if (x >= 0) { Transform transform4 = a.transform; transform4.localPosition += rot * Vector3.right * ((float)x - 2.5f) * (Random.Range(30f, 120f) / 60f); } if (y <= 0) { Transform transform5 = a.transform; transform5.localPosition -= rot * Vector3.up * ((float)y - 2.5f) * (Random.Range(30f, 120f) / 60f); } if (y >= 0) { Transform transform6 = a.transform; transform6.localPosition += rot * Vector3.up * ((float)y - 2.5f) * (Random.Range(30f, 120f) / 40f); } allhands.Add(a); } else { if (x <= 0) { Transform transform7 = a.transform; transform7.localPosition -= rot * Vector3.right * ((float)x - Spacing) * (Random.Range(30f, 120f) / 60f); } if (x >= 0) { Transform transform8 = a.transform; transform8.localPosition += rot * Vector3.right * ((float)x - Spacing) * (Random.Range(30f, 120f) / 80f); } if (y <= 0) { Transform transform9 = a.transform; transform9.localPosition -= rot * Vector3.up * ((float)y - 2.5f) * (Random.Range(30f, 120f) / 80f); } if (y >= 0) { Transform transform10 = a.transform; transform10.localPosition += rot * Vector3.up * ((float)y - 2.5f) * (Random.Range(30f, 120f) / 80f); } allhands.Add(a); } } } if (IsStand) { punch.transform.rotation = Quaternion.Euler(((Component)this).transform.forward); } else { Vector3 vector4 = ((Component)((Component)((Component)this).transform.root).GetComponent<Unit>().data.mainRig).transform.right; Quaternion rot2 = Quaternion.Euler(vector4); punch.transform.rotation = rot2; } foreach (GameObject g in allhands) { Quaternion rotation2 = punch.transform.rotation; Vector3 rotation = -((Quaternion)(ref rotation2)).eulerAngles; rotation.z += 180f; g.transform.localRotation = Quaternion.Euler(rotation); } Object.Destroy((Object)(object)punch); allhands.Clear(); } yield return (object)new WaitForSeconds(0.025f); ((MonoBehaviour)this).StartCoroutine(loop()); } private void Awake() { ((MonoBehaviour)this).StartCoroutine(weiredStart()); } private IEnumerator weiredStart() { yield return (object)new WaitForEndOfFrame(); yield return (object)new WaitForEndOfFrame(); yield return (object)new WaitForEndOfFrame(); ((MonoBehaviour)this).StartCoroutine(loop()); } private void PlaySound() { if (IsStand) { ((Component)this).gameObject.AddComponent<AudioSource>().clip = Loader.clip2; ((Component)this).gameObject.GetComponent<AudioSource>().playOnAwake = false; ((Component)this).gameObject.GetComponent<AudioSource>().loop = true; ((Component)this).gameObject.GetComponent<AudioSource>().volume = 0.6f; ((Component)this).gameObject.GetComponent<AudioSource>().Play(); } } private void StopSound() { try { Object.Destroy((Object)(object)((Component)this).gameObject.GetComponent<AudioClip>()); } catch (SystemException) { } } private void FixedUpdate() { //IL_00bf: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Unknown result type (might be due to invalid IL or missing references) if (IsStand) { if (Stoppunchs && isplayingsound) { StopSound(); isplayingsound = false; } if (!Stoppunchs && !isplayingsound) { PlaySound(); isplayingsound = true; } } if (!Object.op_Implicit((Object)(object)((Component)((Component)this).transform.root).GetComponent<Unit>()) || !Object.op_Implicit((Object)(object)((Component)((Component)this).transform.root).GetComponent<Unit>().data.targetData)) { return; } if (Vector3.Distance(((Component)((Component)this).transform.root).GetComponent<Unit>().data.mainRig.position, ((Component)((Component)this).transform.root).GetComponent<Unit>().data.targetMainRig.position) > 6f) { if (!Stoppunchs) { Stoppunchs = true; } } else if (Stoppunchs) { Stoppunchs = false; } } } public class HitOnTrigger : MonoBehaviour { public Jotaro jotaro; public Unit unit; public bool IsStand = true; private SoundPlayer soundPlayer; private void Awake() { soundPlayer = ServiceLocator.GetService<SoundPlayer>(); } public void OnCollisionEnter(Collision collision) { //IL_0176: Unknown result type (might be due to invalid IL or missing references) //IL_0180: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Unknown result type (might be due to invalid IL or missing references) //IL_01b4: Unknown result type (might be due to invalid IL or missing references) //IL_01d6: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_0079: Unknown result type (might be due to invalid IL or missing references) //IL_009c: Unknown result type (might be due to invalid IL or missing references) //IL_00e0: Unknown result type (might be due to invalid IL or missing references) //IL_00ea: Unknown result type (might be due to invalid IL or missing references) if (IsStand) { try { Unit component = ((Component)collision.transform.root).GetComponent<Unit>(); if (!((Object)(object)component == (Object)(object)((Component)jotaro).GetComponent<Unit>())) { if (!jotaro.IstimeStoped) { ((Damagable)component.data.healthHandler).TakeDamage(8f, ((Component)component.data.mainRig).transform.forward * -0.5f, (Unit)null, (DamageType)2); soundPlayer.PlaySoundEffect("Legacy Hits/Boxer", 0.6f, ((Component)this).transform.position, (MaterialType)0, (Transform)null, 1f); } else { jotaro.DamageQue.Add(component); } component.data.mainRig.AddForce(((Component)component.data.mainRig).transform.forward * -130f, (ForceMode)1); } return; } catch (Exception) { return; } } if (Object.op_Implicit((Object)(object)((Component)collision.transform.root).GetComponent<Unit>())) { Unit component2 = ((Component)collision.transform.root).GetComponent<Unit>(); if (!((Object)(object)component2 == (Object)(object)unit)) { ((Damagable)component2.data.healthHandler).TakeDamage(8f, ((Component)component2.data.mainRig).transform.forward * -0.5f, (Unit)null, (DamageType)2); component2.data.mainRig.AddForce(((Component)component2.data.mainRig).transform.forward * -130f, (ForceMode)1); soundPlayer.PlaySoundEffect("Legacy Hits/Boxer", 0.6f, ((Component)this).transform.position, (MaterialType)0, (Transform)null, 1f); } } } } public class StopStarPlatinuim : MonoBehaviour { private void Awake() { ((MonoBehaviour)this).StartCoroutine(StopStarplat()); } private IEnumerator StopStarplat() { yield return (object)new WaitForSeconds(3f); ((Component)this).GetComponent<ContinuesPunchs>().Stoppunchs = true; AudioSource[] componentsInChildren = ((Component)this).GetComponentsInChildren<AudioSource>(); foreach (AudioSource AS in componentsInChildren) { AS.volume /= 4f; } AudioSource a = ((Component)this).gameObject.AddComponent<AudioSource>(); a.clip = Loader.clip3; a.playOnAwake = false; a.Play(); yield return (object)new WaitForSeconds(Loader.clip3.length); Object.Destroy((Object)(object)GameObject.Find("LastOra")); Object.Destroy((Object)(object)((Component)this).gameObject); } } public class CopyPositionRelativeTo : MonoBehaviour { public Transform target; public Transform relativeTarget; public Transform relativeTo; private void Update() { //IL_0100: Unknown result type (might be due to invalid IL or missing references) //IL_0086: Unknown result type (might be due to invalid IL or missing references) //IL_0147: Unknown result type (might be due to invalid IL or missing references) //IL_0152: Unknown result type (might be due to invalid IL or missing references) //IL_0157: Unknown result type (might be due to invalid IL or missing references) //IL_015c: Unknown result type (might be due to invalid IL or missing references) //IL_0169: Unknown result type (might be due to invalid IL or missing references) //IL_016e: Unknown result type (might be due to invalid IL or missing references) //IL_016f: Unknown result type (might be due to invalid IL or missing references) //IL_0186: Unknown result type (might be due to invalid IL or missing references) if (!((Component)((Component)this).transform.root).GetComponent<ContinuesPunchs>().Stoppunchs) { if (((Object)((Component)this).transform).name == "M_Arm_Left" || ((Object)((Component)this).transform).name == "M_Elbow_Left" || ((Object)((Component)this).transform).name == "M_Elbow_Right" || ((Object)((Component)this).transform).name == "M_Arm_Right") { ((Component)this).transform.localScale = Vector3.zero; } return; } if (((Object)((Component)this).transform).name == "M_Arm_Left" || ((Object)((Component)this).transform).name == "M_Elbow_Left" || ((Object)((Component)this).transform).name == "M_Elbow_Right" || ((Object)((Component)this).transform).name == "M_Arm_Right") { ((Component)this).transform.localScale = Vector3.one; } if (!((Object)(object)target == (Object)null) && !((Object)(object)relativeTarget == (Object)null) && !((Object)(object)relativeTo == (Object)null)) { Vector3 val = relativeTarget.position - target.position; ((Component)this).transform.position = relativeTo.position - val; ((Component)this).transform.rotation = target.rotation; } } } [BepInPlugin("IntreastingUnits", "IntreastingUnits", "1.1.0")] internal class Loader : BaseUnityPlugin { public static AssetBundle Bundle; public static AssetBundle Bundle2; public static AssetBundle Bundle3; public static AssetBundle Bundle4; public static GameObject GooglyEye; public static GameObject NexusSpray; public static GameObject UnitImortal; public static GameObject LightingEffect; public static GameObject Sentry; public static GameObject Storm; public static GameObject SliceEffect; public static GameObject Tree; public static GameObject Flamethrower; public static GameObject CleaNBase; public static MyModItems modItems; public static GameObject NexusUnlock; public static GameObject Blood; public static GameObject InfiniteParticle; public static GameObject SignOftheVoid; public static GameObject JKHat; public static GameObject JKVest; public static GameObject SPPunch; public static GameObject HumanPunch; public static GameObject StarPlatinum; public static GameObject StormHeraldEffect; public static GameObject otulinecube; public static GameObject UnAttackableglobal; public static GameObject Unkillable; public static GameObject UnlockGary; public static GameObject UnlockJotaroKujo; public static GameObject UnlockDeforester; public static GameObject UnlockChestDude; public static GameObject ChestProjectilleExplosion; public static GameObject GaryBase; public static ISaveLoaderService service; public static Sprite garyicon; public static Sprite flamethrowericon; public static Sprite Stiormicon; public static Sprite TreeGuyicon; public static Sprite ChestGuyicon; public static Sprite GiantChestGuyIcon; public static Sprite JotaroKujoIcon; public static Material GARYmat; public static VoiceBundle Jotarosounds; public static VoiceBundle Garysounds; public static AudioClip clip2; public static AudioClip clip3; public static AudioClip Garyclip1; public static AudioClip Garyclip2; public static AudioClip Garyclip3; public static AudioClip ProjectileExplo; public static MapAsset taigaMap; public static Quaternion offest = new Quaternion(1f, 0f, 0f, 7f); private void Awake() { ((MonoBehaviour)this).StartCoroutine("call"); } public static AssetBundle LoadBundle(string assetBundleName) { string[] manifestResourceNames = Assembly.GetExecutingAssembly().GetManifestResourceNames(); foreach (string text in manifestResourceNames) { Debug.Log((object)text); } using Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(assetBundleName); AssetBundle val = AssetBundle.LoadFromStream(stream); string[] allAssetNames = val.GetAllAssetNames(); foreach (string text2 in allAssetNames) { } return val; } private IEnumerator call() { yield return (object)new WaitUntil((Func<bool>)(() => (Object)(object)Object.FindObjectOfType<ServiceLocator>() != (Object)null)); yield return (object)new WaitUntil((Func<bool>)(() => ServiceLocator.GetService<ISaveLoaderService>() != null)); yield return (object)new WaitForSecondsRealtime(0.3f); GameObject[] array2 = Resources.FindObjectsOfTypeAll<GameObject>(); foreach (GameObject g in array2) { if (((Object)g.gameObject).name == "GooglyEye") { GooglyEye = g.gameObject; } if (((Object)g.gameObject).name == "E_Storm_Thor") { Storm = g.gameObject; } if (((Object)g.gameObject).name == "Snake_1 Prefabs_VB") { g.AddComponent<RiderHolder>(); } } Bundle = LoadBundle("I_U.sds.s"); Bundle2 = LoadBundle("I_U.tree"); Bundle3 = LoadBundle("I_U.taiga"); taigaMap = Bundle2.LoadAsset<MapAsset>("Assets/TAIGA/Taiga.asset"); taigaMap.MapName = Bundle3.GetAllScenePaths()[0]; JKHat = Bundle2.LoadAsset<GameObject>("Assets/CP_MiscJKHAT.prefab"); JKVest = Bundle2.LoadAsset<GameObject>("Assets/Jotaro Kujo Vest.prefab"); NexusUnlock = Bundle2.LoadAsset<GameObject>("Assets/NexusUnlock.prefab"); UnitImortal = Bundle2.LoadAsset<GameObject>("Assets/GARY.prefab"); InfiniteParticle = Bundle2.LoadAsset<GameObject>("Assets/InfiniteParticle.prefab"); SignOftheVoid = Bundle2.LoadAsset<GameObject>("Assets/InfiniteParticle.prefab"); garyicon = Bundle2.LoadAsset<Sprite>("Assets/GARYicon.png"); flamethrowericon = Bundle2.LoadAsset<Sprite>("Assets/Flame Thrower.png"); Stiormicon = Bundle2.LoadAsset<Sprite>("Assets/Storm Herald.png"); TreeGuyicon = Bundle2.LoadAsset<Sprite>("Assets/tree.png"); ChestGuyicon = Bundle2.LoadAsset<Sprite>("Assets/chest guy.png"); GiantChestGuyIcon = Bundle2.LoadAsset<Sprite>("Assets/GiantChestDude.png"); JotaroKujoIcon = Bundle2.LoadAsset<Sprite>("Assets/Jotaro Kujo Unit.png"); GARYmat = Bundle2.LoadAsset<Material>("Assets/Void.mat"); SPPunch = Bundle2.LoadAsset<GameObject>("Assets/Glove SPfbx.prefab"); HumanPunch = Bundle2.LoadAsset<GameObject>("Assets/Hand.prefab"); StarPlatinum = Bundle2.LoadAsset<GameObject>("Assets/Star Platinum.prefab"); UnlockChestDude = Bundle2.LoadAsset<GameObject>("Assets/Chest Dude Unlock.prefab"); UnlockDeforester = Bundle2.LoadAsset<GameObject>("Assets/Deforster Unlock.prefab"); UnlockJotaroKujo = Bundle2.LoadAsset<GameObject>("Assets/Jotaro Unlock 4.prefab"); UnlockGary = Bundle2.LoadAsset<GameObject>("Assets/GaryUnlock.prefab"); StormHeraldEffect = Bundle2.LoadAsset<GameObject>("Assets/Storm herald Effects.prefab"); clip2 = Bundle2.LoadAsset<AudioClip>("Assets/oraora.mp3"); clip3 = Bundle2.LoadAsset<AudioClip>("Assets/finalora.mp3"); Garyclip1 = Bundle2.LoadAsset<AudioClip>("Assets/GarySound1.mp3"); ProjectileExplo = Bundle2.LoadAsset<AudioClip>("Assets/GoldCoin.mp3"); otulinecube = Bundle2.LoadAsset<GameObject>("Assets/Outlined.prefab"); ChestProjectilleExplosion = Bundle2.LoadAsset<GameObject>("Assets/Projectile Explosion.prefab"); Garyclip2 = Bundle2.LoadAsset<AudioClip>("Assets/GarySound2.mp3"); Garyclip3 = Bundle2.LoadAsset<AudioClip>("Assets/GarySound3.mp3"); SliceEffect = Bundle2.LoadAsset<GameObject>("Assets/E_Slice.prefab"); Blood = Bundle2.LoadAsset<GameObject>("Assets/Blood.prefab"); LightingEffect = Bundle2.LoadAsset<GameObject>("Assets/ShockEffect.prefab"); GaryBase = Bundle2.LoadAsset<GameObject>("Assets/GARY.prefab"); Sentry = Bundle2.LoadAsset<GameObject>("Assets/FixedSentry.prefab"); GameObject b = Bundle2.LoadAsset<GameObject>("Assets/ChestGuy.prefab"); b.AddComponent<GOSLMA>(); UPool.MyPool.AddObject("Chest Dude", b, false, (HideFlags)61, (Sprite)null, -94188721, true); GameObject c = Bundle2.LoadAsset<GameObject>("Assets/GiantChestGuy.prefab"); c.AddComponent<GOSLMA>(); UPool.MyPool.AddObject("Giant Chest Dude", c, false, (HideFlags)61, (Sprite)null, -94188720, true); SLMALoader.GetInstance(); LandfallContentDatabase landfallContentDatabase = ContentDatabase.Instance().LandfallContentDatabase; UManager.Init(landfallContentDatabase); modItems = MyModItems.GetInstance(); setupsettings(); GameObject SecretUnlockSpawner = new GameObject("SecretUnlockSpawner"); Object.DontDestroyOnLoad((Object)(object)SecretUnlockSpawner); SecretUnlockSpawner.AddComponent<SecretUnlockSpawnerComp>(); new Harmony(UManager.modname).PatchAll(); GOSLMA.EditWeapons = ((GOSLMA.EditWeapons == null) ? new Action<GameObject, Team, Unit, MeleeWeapon, RangeWeapon, LandfallContentDatabase>(UManager.EditWeapons) : ((Action<GameObject, Team, Unit, MeleeWeapon, RangeWeapon, LandfallContentDatabase>)Delegate.Combine(new Action<GameObject, Team, Unit, MeleeWeapon, RangeWeapon, LandfallContentDatabase>(UManager.EditWeapons), GOSLMA.EditWeapons))); GOSLMA.EditClothes = ((GOSLMA.EditClothes == null) ? new Action<GameObject, CharacterItem, PropItemData, Unit, int, LandfallContentDatabase>(UManager.EditClothes) : ((Action<GameObject, CharacterItem, PropItemData, Unit, int, LandfallContentDatabase>)Delegate.Combine(new Action<GameObject, CharacterItem, PropItemData, Unit, int, LandfallContentDatabase>(UManager.EditClothes), GOSLMA.EditClothes))); GOSLMA.EditCombatMoves = ((GOSLMA.EditCombatMoves == null) ? new Action<GameObject, int, Unit, LandfallContentDatabase>(UManager.EditCombatMoves) : ((Action<GameObject, int, Unit, LandfallContentDatabase>)Delegate.Combine(new Action<GameObject, int, Unit, LandfallContentDatabase>(UManager.EditCombatMoves), GOSLMA.EditCombatMoves))); GOSLMA.CodeAfterSpawn = ((GOSLMA.CodeAfterSpawn == null) ? new Action<Unit, LandfallContentDatabase>(UManager.CodeAfterSpawn) : ((Action<Unit, LandfallContentDatabase>)Delegate.Combine(new Action<Unit, LandfallContentDatabase>(UManager.CodeAfterSpawn), GOSLMA.CodeAfterSpawn))); GOSLMA.EditProjectiles = ((GOSLMA.EditProjectiles == null) ? new Action<GameObject, ProjectileHit, Unit, LandfallContentDatabase>(UManager.EditProjectiles) : ((Action<GameObject, ProjectileHit, Unit, LandfallContentDatabase>)Delegate.Combine(new Action<GameObject, ProjectileHit, Unit, LandfallContentDatabase>(UManager.EditProjectiles), GOSLMA.EditProjectiles))); UnitBlueprint[] array = Resources.FindObjectsOfTypeAll<UnitBlueprint>(); for (int i2 = 0; i2 < array.Length; i2++) { UManager.EditBlueprint(array[i2], landfallContentDatabase); } Dictionary<int, UnitBlueprint> fac = new Dictionary<int, UnitBlueprint>(); int i = 1; foreach (UnitBlueprint u in UManager.ls) { try { UnitBlueprint obj = fac[(int)u.GetUnitCost(true)]; obj.sizeMultiplier *= 1f; fac.Add((int)u.GetUnitCost(true) + i, u); i++; } catch (Exception) { fac.Add((int)u.GetUnitCost(true), u); } } MakeAbShowinUCAsProp(JKHat, ContentDatabase.Instance().LandfallContentDatabase); MakeAbShowinUCAsProp(JKVest, ContentDatabase.Instance().LandfallContentDatabase); MakeAbShowinUCAsProp(Bundle2.LoadAsset<GameObject>("Assets/FullArms.prefab"), ContentDatabase.Instance().LandfallContentDatabase); IOrderedEnumerable<KeyValuePair<int, UnitBlueprint>> sortedDict = fac.OrderBy(delegate(KeyValuePair<int, UnitBlueprint> entry) { KeyValuePair<int, UnitBlueprint> keyValuePair = entry; return keyValuePair.Key; }); List<UnitBlueprint> units = new List<UnitBlueprint>(); foreach (KeyValuePair<int, UnitBlueprint> item in sortedDict) { units.Add(item.Value); } ((Faction)SLMALoader.SDic["factions"]["Secret"]).Units = units.ToArray(); Debug.Log((object)("Loaded " + UManager.modname + " Successfully")); Debug.Log((object)(UManager.modname + "is made in SFT by FhpSlime")); Debug.Log((object)(UManager.modder + "wished you a pleasant trip")); } public static void SetupAbs() { } public static void setupsettings() { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_000d: Expected O, but got Unknown //IL_000f: Unknown result type (might be due to invalid IL or missing references) //IL_0116: Unknown result type (might be due to invalid IL or missing references) //IL_011d: Expected O, but got Unknown //IL_0169: Unknown result type (might be due to invalid IL or missing references) //IL_0170: Expected O, but got Unknown //IL_0172: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Unknown result type (might be due to invalid IL or missing references) //IL_01ac: Unknown result type (might be due to invalid IL or missing references) //IL_01c8: Unknown result type (might be due to invalid IL or missing references) //IL_01ee: Unknown result type (might be due to invalid IL or missing references) //IL_01f3: Unknown result type (might be due to invalid IL or missing references) //IL_0204: Unknown result type (might be due to invalid IL or missing references) //IL_0209: Unknown result type (might be due to invalid IL or missing references) //IL_0226: Unknown result type (might be due to invalid IL or missing references) //IL_022d: Expected O, but got Unknown //IL_0230: Unknown result type (might be due to invalid IL or missing references) //IL_0299: Unknown result type (might be due to invalid IL or missing references) //IL_02a3: Expected O, but got Unknown //IL_02c2: Unknown result type (might be due to invalid IL or missing references) //IL_02c9: Expected O, but got Unknown //IL_02eb: Unknown result type (might be due to invalid IL or missing references) //IL_02f2: Expected O, but got Unknown //IL_02f4: Unknown result type (might be due to invalid IL or missing references) //IL_032c: Unknown result type (might be due to invalid IL or missing references) //IL_032e: Unknown result type (might be due to invalid IL or missing references) //IL_034a: Unknown result type (might be due to invalid IL or missing references) //IL_0370: Unknown result type (might be due to invalid IL or missing references) //IL_0375: Unknown result type (might be due to invalid IL or missing references) //IL_0386: Unknown result type (might be due to invalid IL or missing references) //IL_038b: Unknown result type (might be due to invalid IL or missing references) //IL_03a8: Unknown result type (might be due to invalid IL or missing references) //IL_03af: Expected O, but got Unknown //IL_03b2: Unknown result type (might be due to invalid IL or missing references) //IL_0415: Unknown result type (might be due to invalid IL or missing references) //IL_041f: Expected O, but got Unknown //IL_043e: Unknown result type (might be due to invalid IL or missing references) //IL_0445: Expected O, but got Unknown GlobalSettingsHandler obj = ServiceLocator.GetService<GlobalSettingsHandler>(); SettingsInstance val = new SettingsInstance(); val.settingsType = (SettingsType)0; val.settingName = "Matches Dont End"; val.m_settingsKey = "Matches Dont End"; val.toolTip = ""; val.m_hideSetting = false; val.options = new string[2] { "Disabled", "Enabled" }; SettingsInstance[] source = (SettingsInstance[])typeof(GlobalSettingsHandler).GetField("m_bugsSettings", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(obj); List<SettingsInstance> list = source.ToList(); list.Add(val); typeof(GlobalSettingsHandler).GetField("m_bugsSettings", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(obj, list.ToArray()); Dictionary<string, SettingsInstance> dictionary = (Dictionary<string, SettingsInstance>)typeof(GlobalSettingsHandler).GetField("m_settingsDict", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(obj); dictionary.Add(val.m_settingsKey, val); typeof(GlobalSettingsHandler).GetField("m_settingsDict", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(obj, dictionary); SoundPlayer val2 = ServiceLocator.GetService<SoundPlayer>(); SoundBank soundBank = val2.soundBank; SoundBankCategory[] categories = soundBank.Categories; SoundBankCategory val3 = new SoundBankCategory(); val3.categoryName = "Intreasting Units"; val3.maxDistanceMultiplier = 1f; val3.minDistanceMultiplier = 1f; val3.volumeMultiplier = 0.4f; val3.pitchMultiplier = 1f; val3.categoryMixerGroup = categories[1].categoryMixerGroup; SoundEffectInstance val4 = new SoundEffectInstance(); SoundBackSettings category = default(SoundBackSettings); category.maxDistanceMultiplier = 1f; category.minDistanceMultiplier = 1f; category.volumeMultiplier = 1f; category.pitchMultiplier = 1f; val4.category = category; val4.cooldown = 0.2f; val4.lengthInMeasures = 0; val4.maxInstanceBehaviour = (MaxInstanceBehaviour)0; val4.maxInstances = 10; val4.minDistance = 1f; val4.pitch = new Vector2(1f, 1f); val4.volume = new Vector2(1f, 1f); val4.priority = 128; val4.soundRef = "Jotaro Kujo"; SoundEffectVariations val5 = new SoundEffectVariations(); val5.materialType = (MaterialType)1; val5.clips = (AudioClip[])(object)new AudioClip[1] { Bundle2.LoadAsset<AudioClip>("Assets/JKS1.mp3") }; val4.clipTypes = (SoundEffectVariations[])(object)new SoundEffectVariations[1] { val5 }; val3.soundEffects = (SoundEffectInstance[])(object)new SoundEffectInstance[1] { val4 }; List<SoundBankCategory> list2 = categories.ToList(); list2.Add(val3); soundBank.Categories = list2.ToArray(); Jotarosounds = new VoiceBundle(); Jotarosounds.DeathRef = ""; Jotarosounds.VocalRef = "Intreasting Units/Jotaro Kujo"; DatabaseEntity val6 = new DatabaseEntity((WorkshopContentType)5); val6.GenerateNewID(); val6.Name = "Jotaro Sound"; Jotarosounds.Entity = val6; SoundEffectInstance val7 = new SoundEffectInstance(); SoundBackSettings category2 = default(SoundBackSettings); category2.maxDistanceMultiplier = 1f; category2.minDistanceMultiplier = 1f; category2.volumeMultiplier = 0.3f; category2.pitchMultiplier = 1f; val7.category = category2; val7.cooldown = 0.2f; val7.lengthInMeasures = 0; val7.maxInstanceBehaviour = (MaxInstanceBehaviour)0; val7.maxInstances = 10; val7.minDistance = 1f; val7.pitch = new Vector2(1f, 1f); val7.volume = new Vector2(1f, 1f); val7.priority = 128; val7.soundRef = "Gary"; SoundEffectVariations val8 = new SoundEffectVariations(); val8.materialType = (MaterialType)1; val8.clips = (AudioClip[])(object)new AudioClip[2] { Garyclip1, Garyclip2 }; val7.clipTypes = (SoundEffectVariations[])(object)new SoundEffectVariations[1] { val8 }; val3.soundEffects = (SoundEffectInstance[])(object)new SoundEffectInstance[2] { val4, val7 }; list2.Add(val3); soundBank.Categories = list2.ToArray(); Garysounds = new VoiceBundle(); Garysounds.DeathRef = ""; Garysounds.VocalRef = "Intreasting Units/Gary"; DatabaseEntity val9 = new DatabaseEntity((WorkshopContentType)5); val9.GenerateNewID(); val9.Name = "Gary Sound"; Garysounds.Entity = val9; SetupAbs(); } public static GameObject CreateNewAb(GearType gt, string name, DatabaseID id) { //IL_0073: Unknown result type (might be due to invalid IL or missing references) //IL_0092: Unknown result type (might be due to invalid IL or missing references) //IL_00a2: Unknown result type (might be due to invalid IL or missing references) //IL_00ab: Unknown result type (might be due to invalid IL or missing references) //IL_00bc: Unknown result type (might be due to invalid IL or missing references) GameObject val; try { val = Object.Instantiate<GameObject>(Bundle.LoadAsset<GameObject>(name)); } catch { val = Object.Instantiate<GameObject>(Bundle2.LoadAsset<GameObject>(name)); } Object.Destroy((Object)(object)val.GetComponent<BoxCollider>()); Object.Destroy((Object)(object)val.GetComponent<MeshFilter>()); ((Object)val).hideFlags = (HideFlags)61; ((Object)val).name = name; CharacterItem component = val.GetComponent<CharacterItem>(); typeof(CharacterItem).GetField("m_gearType", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(component, gt); component.Entity.Name = name; component.Entity.GUID = id; component.tags = new List<Tag> { new Tag { tagType = (TagType)0, value = "Interesting Units" } }; return val; } public static void MakeAbShowinUCAsAbb(GameObject move, LandfallContentDatabase landfallContentDatabase) { //IL_002f: Unknown result type (might be due to invalid IL or missing references) Dictionary<DatabaseID, GameObject> dictionary = (Dictionary<DatabaseID, GameObject>)typeof(LandfallContentDatabase).GetField("m_combatMoves", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(landfallContentDatabase); dictionary.Add(move.GetComponent<CharacterItem>().Entity.GUID, move); typeof(LandfallContentDatabase).GetField("m_combatMoves", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(landfallContentDatabase, dictionary); } public static void MakeAbShowinUCAsProp(GameObject prop, LandfallContentDatabase landfallContentDatabase) { //IL_002f: Unknown result type (might be due to invalid IL or missing references) Dictionary<DatabaseID, GameObject> dictionary = (Dictionary<DatabaseID, GameObject>)typeof(LandfallContentDatabase).GetField("m_characterProps", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(landfallContentDatabase); dictionary.Add(prop.GetComponent<CharacterItem>().Entity.GUID, prop); typeof(LandfallContentDatabase).GetField("m_characterProps", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(landfallContentDatabase, dictionary); } public static void MakeAbShowinUCAsWeapon(GameObject prop, LandfallContentDatabase landfallContentDatabase) { //IL_002f: Unknown result type (might be due to invalid IL or missing references) Dictionary<DatabaseID, GameObject> dictionary = (Dictionary<DatabaseID, GameObject>)typeof(LandfallContentDatabase).GetField("m_weapons", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(landfallContentDatabase); dictionary.Add(prop.GetComponent<CharacterItem>().Entity.GUID, prop); typeof(LandfallContentDatabase).GetField("m_weapons", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(landfallContentDatabase, dictionary); } public static void MakeAbShowinUCAsWCopyWeapon(GameObject prop, string name, int ID, int modid, LandfallContentDatabase landfallContentDatabase) { //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0036: Expected O, but got Unknown //IL_0070: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Unknown result type (might be due to invalid IL or missing references) Object.Destroy((Object)(object)prop.GetComponent<WeaponItem>()); WeaponItem val = prop.AddComponent<WeaponItem>(); typeof(CharacterItem).GetField("m_entity", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(val, (object?)new DatabaseEntity((WorkshopContentType)5)); typeof(CharacterItem).GetField("m_gearType", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(val, (object)(GearType)10); ((CharacterItem)val).Entity.Name = name; ((CharacterItem)val).Entity.GUID = new DatabaseID(ID, modid); Dictionary<DatabaseID, GameObject> dictionary = (Dictionary<DatabaseID, GameObject>)typeof(LandfallContentDatabase).GetField("m_weapons", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(landfallContentDatabase); dictionary.Add(prop.GetComponent<CharacterItem>().Entity.GUID, prop); typeof(LandfallContentDatabase).GetField("m_weapons", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(landfallContentDatabase, dictionary); } public void Update() { if (Input.GetKeyDown((KeyCode)284)) { Bundle2.Unload(true); Bundle3.Unload(true); Bundle2 = AssetBundle.LoadFromFile(Path.Combine("D:\\Yahoi\\Assets\\AssetBundler", "tree")); Bundle3 = AssetBundle.LoadFromFile(Path.Combine("D:\\Yahoi\\Assets\\AssetBundler", "taiga")); taigaMap = Bundle2.LoadAsset<MapAsset>("Assets/TAIGA/Taiga.asset"); taigaMap.MapName = Bundle3.GetAllScenePaths()[0]; } if (Input.GetKeyDown((KeyCode)285)) { TABSSceneManager.LoadMainMenu(true); } } } public class MakeGaryRemovableByCursor : MonoBehaviour { public GameObject Gary; public Unit unit; public PlacementCursor PC; private void Awake() { Gary = ((Component)this).gameObject; PC = GameObject.Find("Cursor").GetComponent<PlacementCursor>(); } private void Update() { //IL_007e: Unknown result type (might be due to invalid IL or missing references) //IL_0089: Unknown result type (might be due to invalid IL or missing references) //IL_00b0: Unknown result type (might be due to invalid IL or missing references) if (Input.GetMouseButtonDown(1) && typeof(PlacementCursor).GetField("m_hoveredGameObject", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(PC) != null && typeof(PlacementCursor).GetField("m_hoveredGameObject", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(PC) == Gary) { World.Active.GetOrCreateManager<TeamSystem>().RemoveEntity(((Component)unit).GetComponent<GameObjectEntity>().Entity, unit.Team, unit); ServiceLocator.GetService<GameModeService>().CurrentGameMode.OnUnitRemoved(unit, unit.Team); } } } [HarmonyPatch(typeof(HealthHandler), "Die", new Type[] { typeof(Unit) })] public class MakeUnitNoDie1 { private static bool Prefix(HealthHandler __instance, Unit damager, ref bool __result) { if (Object.op_Implicit((Object)(object)((Component)((Component)__instance).transform.root).gameObject.GetComponentInChildren<Immortality>())) { __result = true; return false; } __result = true; return true; } } [HarmonyPatch(typeof(GameObject), "SetActive", new Type[] { typeof(bool) })] internal class DontSetActiveNo { private static bool Prefix(GameObject __instance) { if (Object.op_Implicit((Object)(object)((Component)__instance.transform.root).GetComponentInChildren<Immortality>())) { return false; } return true; } } [HarmonyPatch(typeof(VerticalCurtainController), "PeekCurtains", new Type[] { })] public static class DontDie { public static string GetRandomEnd() { string[] array = new string[30] { "bananas", "ez", "ts <#ff0000>aint<#ffffff> tuff\ud83d\udc94", "skibdi", "ohio \ud83e\udd23", "erm, what the <#ff0000>sigma", "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", "<#00bbbb>altercreature", "CASA", "sigma", "je n'aime pas ce", "fdgjoiseddfoijzefjoi", "daàodikaàçrier", "rectangle", "square", "shoutout to justmeleetabs", "shoutout to zayed gamer", "shoutout to mohammed rx", "oilsnatcher, more like: not sigma", "<#000000>gary<#ffffff> was actually named shmuh popo when he was born 5 years ago until he legaly changed his name to <#000000>gary<#ffffff>, also <#000000>gary<#ffffff> was born 4 years ago", "Not Close", "<#000000>random <#ffffff>text", "me when i have to type random text for 10 minutes", "sigma, no i already said that", "unban from TME pls", "<#ff0000>p<#00ff00>o<#0000ff>t<#ffff00>a<#ff00ff>t<#00ffff>o<#ff0000>e<#00ff00>s", "return strings[UnityEngine.Random.Range(0, strings.Length)];", "<#ff0000> Red Colored Text", "<#0000ff> Blue Colored Text", "<#00ff00> Green Colored Text" }; return array[Random.Range(0, array.Length)]; } private static bool Prefix(VerticalCurtainController __instance) { //IL_0073: Unknown result type (might be due to invalid IL or missing references) //IL_0079: Expected O, but got Unknown //IL_007a: Unknown result type (might be due to invalid IL or missing references) //IL_0081: Expected O, but got Unknown //IL_0021: Unknown result type (might be due to invalid IL or missing references) //IL_0028: Expected O, but got Unknown //IL_00b2: Unknown result type (might be due to invalid IL or missing references) //IL_00b8: Invalid comparison between Unknown and I4 //IL_010c: Unknown result type (might be due to invalid IL or missing references) //IL_0112: Invalid comparison between Unknown and I4 //IL_00d3: Unknown result type (might be due to invalid IL or missing references) //IL_00da: Expected O, but got Unknown //IL_012d: Unknown result type (might be due to invalid IL or missing references) //IL_0134: Expected O, but got Unknown int currentValue = ServiceLocator.GetService<GlobalSettingsHandler>().GetSettingsInstance("Matches Dont End").currentValue; if (currentValue == 1) { GameObject val = new GameObject(); val.AddComponent<StartTimeScaleForTime>(); return false; } object value = typeof(VerticalCurtainController).GetField("m_topText", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(__instance); object value2 = typeof(VerticalCurtainController).GetField("m_topSubText", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(__instance); LocalizeText val2 = (LocalizeText)value; TMP_Text val3 = (TMP_Text)value2; Gaurdian_Angel[] array = Object.FindObjectsOfType<Gaurdian_Angel>(); foreach (Gaurdian_Angel gaurdian_Angel in array) { if (val2.LocaleID == "LABEL_RED_VICTORY") { if ((int)gaurdian_Angel.TargetTeam == 1) { if ((Object)(object)Object.FindObjectOfType<StartTimeScaleForTime>() == (Object)null) { GameObject val4 = new GameObject(); val4.AddComponent<StartTimeScaleForTime>(); } return false; } gaurdian_Angel.Stop(); } if (!(val2.LocaleID == "LABEL_BLUE_VICTORY")) { continue; } if ((int)gaurdian_Angel.TargetTeam == 0) { if ((Object)(object)Object.FindObjectOfType<StartTimeScaleForTime>() == (Object)null) { GameObject val5 = new GameObject(); val5.AddComponent<StartTimeScaleForTime>(); } return false; } gaurdian_Angel.Stop(); } return true; } } public class MyModItems : MonoBehaviour { public static Dictionary<string, Item> items = new Dictionary<string, Item>(); private static MyModItems instance { get; set; } public static MyModItems GetInstance() { //IL_0016: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)instance == (Object)null) { instance = new GameObject("MyModItems").AddComponent<MyModItems>(); Object.DontDestroyOnLoad((Object)(object)instance); } return instance; } public void AddItem(Item item) { items.Add(item.name, item); } public Item GetItem(string name, Item.kind k) { Item value = new Item { name = name, Kind = k }; items.TryGetValue(name, out value); return value; } public void SetupAllItems() { int num = 0; foreach (Item value in items.Values) { if (value.Kind == Item.kind.Skill) { } num++; } } } public class OnEquipWorky : MonoBehaviour { public LandfallContentDatabase landfallContentDatabase; private void Awake() { LandfallContentDatabase val = ContentDatabase.Instance().LandfallContentDatabase; if (Object.op_Implicit((Object)(object)((Component)((Component)this).transform.root).GetComponent<Unit>()) && val != null) { GameObject[] array = val.GetCombatMoves().ToArray(); Object.Instantiate<GameObject>(array[Random.Range(0, array.Length)], ((Component)this).transform.root); } } } public class OffsetTransform : MonoBehaviour { public Transform target; public Vector3 offset; private void Awake() { if (Object.op_Implicit((Object)(object)((Component)((Component)this).transform.root).GetComponent<Unit>())) { target = ((Component)((Component)((Component)this).transform.root).GetComponent<Unit>().data.mainRig).transform; } } public void Update() { //IL_000d: Unknown result type (might be due to invalid IL or missing references) //IL_0013: Unknown result type (might be due to invalid IL or missing references) //IL_0018: Unknown result type (might be due to invalid IL or missing references) ((Component)this).transform.position = target.position + offset; } } public class SealingCube : MonoBehaviour { private bool IsFlying = false; private GameObject collisionGameObj; private int i = 0; private void OnCollisionEnter(Collision collision) { //IL_012c: Unknown result type (might be due to invalid IL or missing references) //IL_0131: Unknown result type (might be due to invalid IL or missing references) if (!IsFlying && (Object)(object)collision.gameObject.transform.root != (Object)null && Object.op_Implicit((Object)(object)((Component)collision.gameObject.transform.root).GetComponent<Unit>())) { ((Component)collision.gameObject.transform.root).GetComponent<Unit>().FreezeBody(); collisionGameObj = ((Component)collision.gameObject.transform.root).gameObject; Object.Destroy((Object)(object)((Component)this).GetComponent<Rotate>()); Object.Destroy((Object)(object)((Component)this).GetComponentInChildren<BoxCollider>()); Object.Destroy((Object)(object)((Component)this).GetComponent<SlowProjectile>()); if (Object.op_Implicit((Object)(object)collisionGameObj.GetComponentInChildren<GravityHandler>())) { Object.Destroy((Object)(object)collisionGameObj.GetComponentInChildren<GravityHandler>()); } collisionGameObj.GetComponent<UnitAPI>().SetIsDead(); collisionGameObj.AddComponent<StopAttacks>().StopAttacksFor(float.PositiveInfinity); if (Object.op_Implicit((Object)(object)((Component)((Component)this).transform.parent).GetComponent<SpawnObject>())) { ((Component)((Component)this).transform.parent).GetComponent<SpawnObject>().Spawn(((Component)this).transform.parent.position, Vector3.one); } IsFlying = true; } } private void Update() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Unknown result type (might be due to invalid IL or missing references) //IL_003e: Unknown result type (might be due to invalid IL or missing references) //IL_0064: Unknown result type (might be due to invalid IL or missing references) if (IsFlying) { Transform transform = collisionGameObj.transform; transform.position += new Vector3(0f, 32f * Time.deltaTime, 0f); ((Component)this).transform.position = collisionGameObj.GetComponent<Unit>().data.mainRig.position; i++; if (i == 200) { Help.Kill(collisionGameObj.GetComponent<Unit>()); } } } } public class SecretUnlockSpawnerComp : GameStateListener { public override void OnEnterNewScene() { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_0065: Unknown result type (might be due to invalid IL or missing references) //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Unknown result type (might be due to invalid IL or missing references) //IL_0059: Unknown result type (might be due to invalid IL or missing references) //IL_00cc: Unknown result type (might be due to invalid IL or missing references) //IL_00d1: Unknown result type (might be due to invalid IL or missing references) //IL_00a3: Unknown result type (might be due to invalid IL or missing references) //IL_00b6: Unknown result type (might be due to invalid IL or missing references) //IL_00c0: Unknown result type (might be due to invalid IL or missing references) //IL_015e: Unknown result type (might be due to invalid IL or missing references) //IL_0163: Unknown result type (might be due to invalid IL or missing references) //IL_010c: Unknown result type (might be due to invalid IL or missing references) //IL_012d: Unknown result type (might be due to invalid IL or missing references) //IL_0152: Unknown result type (might be due to invalid IL or missing references) //IL_01c2: Unknown result type (might be due to invalid IL or missing references) //IL_01c7: Unknown result type (might be due to invalid IL or missing references) //IL_018f: Unknown result type (might be due to invalid IL or missing references) //IL_01b6: Unknown result type (might be due to invalid IL or missing references) //IL_01fe: Unknown result type (might be due to invalid IL or missing references) //IL_0205: Expected O, but got Unknown //IL_0223: Unknown result type (might be due to invalid IL or missing references) Scene activeScene = SceneManager.GetActiveScene(); if (((Scene)(ref activeScene)).name == "02_Lvl2_Farmer_VC") { GameObject val = Object.Instantiate<GameObject>(Loader.UnlockDeforester); val.transform.position = new Vector3(-11f, 1.8f, 23f); Transform transform = val.transform; transform.localScale *= 0.5f; } activeScene = SceneManager.GetActiveScene(); if (((Scene)(ref activeScene)).name == "03_Lvl2_Ancient_VC") { GameObject val2 = Object.Instantiate<GameObject>(Loader.UnlockChestDude); val2.transform.position = new Vector3(5.05f, 13.95f, 27.95f); Transform transform2 = val2.transform; transform2.localScale /= 4f; } activeScene = SceneManager.GetActiveScene(); if (((Scene)(ref activeScene)).name == "05_Sandbox_Medieval_VC") { GameObject val3 = Object.Instantiate<GameObject>(Loader.UnlockJotaroKujo); val3.transform.position = new Vector3(33.4197f, 62.4325f, 137.4187f); val3.transform.localScale = new Vector3(6f, 6f, 6f); ((Component)this).transform.localRotation = new Quaternion(0.4323f, -0.5602f, -0.5572f, -0.4346f); } activeScene = SceneManager.GetActiveScene(); if (((Scene)(ref activeScene)).name == "00_Lvl2_Halloween_VC") { GameObject val4 = Object.Instantiate<GameObject>(Loader.UnlockGary); ((Renderer)val4.GetComponentInChildren<ParticleSystemRenderer>()).material = GarySetups.Fastmat(Color.white); val4.transform.position = new Vector3(6.1375f, -2.05f, 30.4f); } activeScene = SceneManager.GetActiveScene(); if (!(((Scene)(ref activeScene)).name == "01_Taiga_VC")) { return; } foreach (Transform item in ((Component)ServiceLocator.GetService<Load