internal static void RunAll() { CustomEmotesAPI.LoadResource("customemotespackage"); CustomEmotesAPI.LoadResource("enfucker"); ChangeAnims(); On.RoR2.UI.HUD.Awake += (orig, self) => { orig(self); GameObject g = GameObject.Instantiate(Resources.Load <GameObject>("@CustomEmotesAPI_customemotespackage:assets/emotewheel/emotewheel.prefab")); foreach (var item in g.GetComponentsInChildren <TextMeshProUGUI>()) { item.font = self.mainContainer.transform.Find("MainUIArea").Find("SpringCanvas").Find("UpperLeftCluster").Find("MoneyRoot").Find("ValueText").GetComponent <TextMeshProUGUI>().font; item.fontMaterial = self.mainContainer.transform.Find("MainUIArea").Find("SpringCanvas").Find("UpperLeftCluster").Find("MoneyRoot").Find("ValueText").GetComponent <TextMeshProUGUI>().fontMaterial; item.fontSharedMaterial = self.mainContainer.transform.Find("MainUIArea").Find("SpringCanvas").Find("UpperLeftCluster").Find("MoneyRoot").Find("ValueText").GetComponent <TextMeshProUGUI>().fontSharedMaterial; } g.transform.SetParent(self.mainContainer.transform); g.transform.localPosition = new Vector3(0, 0, 0); var s = g.AddComponent <EmoteWheel>(); foreach (var item in g.GetComponentsInChildren <Transform>()) { if (item.gameObject.name.StartsWith("Emote")) { s.gameObjects.Add(item.gameObject); } if (item.gameObject.name.StartsWith("MousePos")) { s.text = item.gameObject; } if (item.gameObject.name == "Center") { s.joy = item.gameObject.GetComponent <Image>(); } } }; }
public static void SurvivorCatalog_Init(On.RoR2.SurvivorCatalog.orig_Init orig) { orig(); foreach (var item in SurvivorCatalog.allSurvivorDefs) { if (item.bodyPrefab.name == "DGSamusBody") { var skele = Modules.Assets.mainAssetBundle.LoadAsset <GameObject>("DGSamusHUM2"); CustomEmotesAPI.ImportArmature(Modules.Assets.mainAssetBundle.LoadAsset <GameObject>("DGSamusBody"), skele); Debug.Log("Added emote armature"); } } }
internal static void ChangeAnims() { On.RoR2.SurvivorCatalog.Init += (orig) => { orig(); if (!setup) { setup = true; ApplyAnimationStuff(RoR2Content.Survivors.Croco, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/acrid.prefab"); ApplyAnimationStuff(RoR2Content.Survivors.Mage, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/artificer.prefab"); ApplyAnimationStuff(RoR2Content.Survivors.Captain, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/captain.prefab"); ApplyAnimationStuff(RoR2Content.Survivors.Engi, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/engi.prefab"); ApplyAnimationStuff(RoR2Content.Survivors.Loader, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/loader.prefab"); ApplyAnimationStuff(RoR2Content.Survivors.Merc, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/merc.prefab"); ApplyAnimationStuff(RoR2Content.Survivors.Toolbot, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/mult.prefab"); ApplyAnimationStuff(RoR2Content.Survivors.Treebot, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/rex.prefab"); ApplyAnimationStuff(RoR2Content.Survivors.Commando, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/commando.prefab"); ApplyAnimationStuff(RoR2Content.Survivors.Huntress, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/huntressBetterMaybeFixed.prefab"); ApplyAnimationStuff(RoR2Content.Survivors.Bandit2, "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/bandit.prefab"); ApplyAnimationStuff(Resources.Load <GameObject>("prefabs/characterbodies/HereticBody"), "@CustomEmotesAPI_customemotespackage:assets/animationreplacements/heretic.prefab", 3); } foreach (var item in SurvivorCatalog.allSurvivorDefs) { if (item.bodyPrefab.name == "EnforcerBody") { var skele = Resources.Load <GameObject>("@CustomEmotesAPI_enfucker:assets/fbx/enfucker/enfucker.prefab"); skele.GetComponent <Animator>().runtimeAnimatorController = GameObject.Instantiate <GameObject>(Resources.Load <GameObject>("@CustomEmotesAPI_customemotespackage:assets/animationreplacements/commando.prefab")).GetComponent <Animator>().runtimeAnimatorController; CustomEmotesAPI.ImportArmature(item.bodyPrefab, skele); } //DebugClass.Log($"---{item.bodyPrefab.name}"); } //bodyPrefab = survivorDef.displayPrefab; //animcontroller = Resources.Load<GameObject>(resource); //animcontroller.transform.parent = bodyPrefab.GetComponent<ModelLocator>().modelTransform; //animcontroller.transform.localPosition = Vector3.zero; //animcontroller.transform.localEulerAngles = Vector3.zero; //smr1 = animcontroller.GetComponentInChildren<SkinnedMeshRenderer>(); //smr2 = bodyPrefab.GetComponent<ModelLocator>().modelTransform.GetComponentInChildren<SkinnedMeshRenderer>(); //test = animcontroller.AddComponent<BoneMapper>(); //test.smr1 = smr1; //test.smr2 = smr2; //test.a1 = bodyPrefab.GetComponent<ModelLocator>().modelTransform.GetComponentInChildren<Animator>(); //test.a2 = animcontroller.GetComponentInChildren<Animator>(); //test.h = bodyPrefab.GetComponentInChildren<HealthComponent>(); }; }