void Awake() { if (instance != null) { GameObject.DestroyImmediate(instance.gameObject); } instance = this; rootPreUnitMake.SetActive(false); rootUnitMake.gameObject.SetActive(false); // rootChallengeResult.gameObject.SetActive(false); rootReinforce.gameObject.SetActive(false); cam256.gameObject.SetActive(false); cam512.gameObject.SetActive(false); resetter.setupCam.useTargetResolution = true; resetter.setupCam.UpdateCameraMatrix(); resetter.setupCam.gameObject.SetActive(false); gachaBgMaterial.SetColor("_Color", Color.black); isPlayingMaking = false; }
public void clear() { if (studioMain == null) { studioMain = gameObject.GetComponent <RuneStudioMain>(); } studioMain.resetter = this; if (root == null) { root = gameObject.transform.FindChild("StudioRoot").gameObject; } if (studioMain.cardStudio256 == null || studioMain.cardStudio256.Length < 6) { studioMain.cardStudio256 = new GameObject[6]; } if (studioMain.cardStudio512 == null || studioMain.cardStudio512.Length < 6) { studioMain.cardStudio512 = new GameObject[6]; } if (studioMain.skillIconRareBg == null || studioMain.skillIconRareBg.Length < 6) { studioMain.skillIconRareBg = new GameObject[6]; } if (studioMain.composeController == null || studioMain.composeController.Length < 4) { studioMain.composeController = new PlayMakerFSM[4]; } if (studioMain.evolveController == null || studioMain.evolveController.Length < 5) { studioMain.evolveController = new PlayMakerFSM[5]; } if (studioMain.rootEvolve == null || studioMain.rootEvolve.Length < 5) { studioMain.rootEvolve = new GameObject[5]; } if (studioMain.evolutionCardFrame == null || studioMain.evolutionCardFrame.Length < 5) { studioMain.evolutionCardFrame = new UICardFrame[5]; } if (studioMain.evolutionRotationAni == null || studioMain.evolutionRotationAni.Length < 5) { studioMain.evolutionRotationAni = new Animation[5]; } if (studioMain.evolveMovablePanelParent == null || studioMain.evolveMovablePanelParent.Length < 5) { studioMain.evolveMovablePanelParent = new Transform[5]; } UICamera[] uic = root.GetComponentsInChildren <UICamera>(true); for (int i = uic.Length - 1; i >= 0; --i) { DestroyImmediate(uic[i]); } Transform[] trees = root.GetComponentsInChildren <Transform>(true); for (int i = trees.Length - 1; i >= 0; --i) { Transform t = trees[i]; if (t == null || t == root.transform) { continue; } switch (t.name) { case "01 CameraSetup": case "02 CameraContainer": case "GameCameraContainer": case "SkillMake": case "BtnSkillMake_special": case "summon_infobg": GameObject.DestroyImmediate(t.gameObject, true); break; case "skillIcon_Card_d_studiobg": studioMain.skillIconRareBg[0] = t.gameObject; break; case "skillIcon_Card_c_studiobg": studioMain.skillIconRareBg[1] = t.gameObject; break; case "skillIcon_Card_b_studiobg": studioMain.skillIconRareBg[2] = t.gameObject; break; case "skillIcon_Card_a_studiobg": studioMain.skillIconRareBg[3] = t.gameObject; break; case "skillIcon_Card_s_studiobg": studioMain.skillIconRareBg[4] = t.gameObject; break; case "skillIcon_Card_ss_studiobg": studioMain.skillIconRareBg[5] = t.gameObject; break; case "spSkillIconCHECK": studioMain.spSkillIcon = t.gameObject.GetComponent <UISprite>(); break; case "spCardFrameCHECK": studioMain.spSkillIconFrame = t.gameObject.GetComponent <UISprite>(); break; case "ReinforceSlots": if (t.parent.name == "Studio") { studioMain.reinforceSlotContainer = t.gameObject; UIChallengeItemSlot[] rt = studioMain.reinforceSlotContainer.GetComponentsInChildren <UIChallengeItemSlot>(true); foreach (UIChallengeItemSlot rtt in rt) { switch (rtt.gameObject.name) { case "itemslot0": studioMain.reinforceSlots[0] = rtt; break; case "itemslot1": studioMain.reinforceSlots[1] = rtt; break; case "itemslot2": studioMain.reinforceSlots[2] = rtt; break; case "itemslot3": studioMain.reinforceSlots[3] = rtt; break; case "itemslot4": studioMain.reinforceSlots[4] = rtt; break; } } } break; case "UnitContainer256Stage": studioMain.tfUnit256Container = t; break; case "UnitContainer512Stage": studioMain.tfUnit512Container = t; detailPopupSimpleRotater = t.GetComponent <SimpleRotater>(); break; case "Camera256": if (t.parent.name == "99 Studio") { studioMain.cam256 = t.gameObject.camera; } break; case "Camera512": if (t.parent.name == "99 Studio") { studioMain.cam512 = t.gameObject.camera; } break; case "UnitMake": if (t.parent.name == "StudioRoot") { studioMain.rootUnitMake = t.gameObject; } break; case "UnitMakeVer2": if (t.parent.name == "StudioRoot") { studioMain.rootPreUnitMake = t.gameObject; } break; case "BtnUnitCompose_D": studioMain.composeController[0] = t.GetComponent <PlayMakerFSM>(); break; case "BtnUnitCompose_C": studioMain.composeController[1] = t.GetComponent <PlayMakerFSM>(); break; case "BtnUnitCompose_B": studioMain.composeController[2] = t.GetComponent <PlayMakerFSM>(); break; case "BtnUnitCompose_A": studioMain.composeController[3] = t.GetComponent <PlayMakerFSM>(); break; case "card1frame": if (t.parent.name == "moveCard") { studioMain.composeCardFrame1 = t.GetComponent <UICardFrame>(); } break; case "card2frame": if (t.parent.name == "moveCard") { studioMain.composeCardFrame2 = t.GetComponent <UICardFrame>(); } break; case "RuneCompose": if (t.parent.name == "StudioRoot") { studioMain.rootCompose = t.gameObject; } t.gameObject.SetActive(false); break; case "SSEvolusion": if (t.parent.name == "StudioRoot") { studioMain.rootEvolve[4] = t.gameObject; } t.gameObject.SetActive(false); break; case "SEvolusion": if (t.parent.name == "StudioRoot") { studioMain.rootEvolve[3] = t.gameObject; } t.gameObject.SetActive(false); break; case "AEvolusion": if (t.parent.name == "StudioRoot") { studioMain.rootEvolve[2] = t.gameObject; } t.gameObject.SetActive(false); break; case "BEvolusion": if (t.parent.name == "StudioRoot") { studioMain.rootEvolve[1] = t.gameObject; } t.gameObject.SetActive(false); break; case "CEvolusion": if (t.parent.name == "StudioRoot") { studioMain.rootEvolve[0] = t.gameObject; } t.gameObject.SetActive(false); break; case "PartsUpgrade": if (t.parent.name == "StudioRoot") { studioMain.rootReinforce = t.gameObject; } break; case "ChallengeResult": GameObject.DestroyImmediate(t.gameObject, true); /* * studioMain.rootChallengeResult = t.gameObject; * * studioMain.challengeResultContainer = t.gameObject; * clearChallengeTree(t); * studioMain.challengeController = t.GetComponentsInChildren<PlayMakerFSM>(true); * * foreach(PlayMakerFSM fff in studioMain.challengeController) * { * switch(fff.name) * { * case "result_icon01": * studioMain.challengeResultSlotFSM[0] = fff; * break; * case "result_icon02": * studioMain.challengeResultSlotFSM[1] = fff; * break; * case "result_icon03": * studioMain.challengeResultSlotFSM[2] = fff; * break; * case "result_icon04": * studioMain.challengeResultSlotFSM[3] = fff; * break; * case "result_icon05": * studioMain.challengeResultSlotFSM[4] = fff; * break; * case "result_icon06": * studioMain.challengeResultSlotFSM[5] = fff; * break; * case "result_icon07": * studioMain.challengeResultSlotFSM[6] = fff; * break; * case "result_icon08": * studioMain.challengeResultSlotFSM[7] = fff; * break; * case "result_icon09": * studioMain.challengeResultSlotFSM[8] = fff; * break; * } * } * * foreach(PlayMakerFSM sfsm in studioMain.challengeResultSlotFSM) * { * Transform[] zzz = sfsm.GetComponentsInChildren<Transform>(true); * for(int z = zzz.Length - 1; z >= 0; --z) * { * if(zzz[z].name == "result_icon") * { * GameObject.DestroyImmediate(zzz[z].gameObject, true); * break; * } * } * * } */ break; case "base": if (t.parent.name == "08 MENU") { GameObject.DestroyImmediate(t.gameObject, true); } break; case "08 MENU": menuRoot = t.gameObject; t.gameObject.SetActive(true); Camera c = t.gameObject.GetComponent <Camera>(); if (c != null) { DestroyImmediate(c, true); } UICamera c1 = t.gameObject.GetComponent <UICamera>(); if (c1 != null) { DestroyImmediate(c1, true); } UIPanel c2 = t.gameObject.GetComponent <UIPanel>(); if (c2 != null) { DestroyImmediate(c2, true); } break; case "BtnHeropartsUpgrade": studioMain.reinforceStarter = t.GetComponent <PlayMakerFSM>(); PlayMakerFSM[] rins = t.GetComponents <PlayMakerFSM>(); studioMain.reinforceController = rins; foreach (PlayMakerFSM r in rins) { r.enabled = false; } break; case "BtnUnitMake_special": studioMain.makeStarter = t.GetComponent <PlayMakerFSM>(); PlayMakerFSM[] rm = t.GetComponents <PlayMakerFSM>(); studioMain.makeController = rm; foreach (PlayMakerFSM r in rm) { r.enabled = false; } break; case "BtnUnitMake_NEW": // studioMain.makeStarter = t.GetComponent<PlayMakerFSM>(); // studioMain.makeStarter.enabled = false; break; case "BtnTranscendence": studioMain.transcendStarter = t.GetComponent <PlayMakerFSM>(); PlayMakerFSM[] tm = t.GetComponents <PlayMakerFSM>(); studioMain.reinforceController = tm; foreach (PlayMakerFSM r in tm) { r.enabled = false; } break; case "BtnSSEvolution": studioMain.evolveController[4] = t.GetComponent <PlayMakerFSM>(); studioMain.evolveController[4].enabled = false; break; case "BtnSEvolution": studioMain.evolveController[3] = t.GetComponent <PlayMakerFSM>(); studioMain.evolveController[3].enabled = false; break; case "BtnAEvolution": studioMain.evolveController[2] = t.GetComponent <PlayMakerFSM>(); studioMain.evolveController[2].enabled = false; break; case "BtnBEvolution": studioMain.evolveController[1] = t.GetComponent <PlayMakerFSM>(); studioMain.evolveController[1].enabled = false; break; case "BtnCEvolution": studioMain.evolveController[0] = t.GetComponent <PlayMakerFSM>(); studioMain.evolveController[0].enabled = false; break; case "reset": if (t.parent.name == "08 MENU") { GameObject.DestroyImmediate(t.gameObject, true); } break; case "main": if (t.parent.parent.parent.name == "PartsUpgrade") { studioMain.reinforceMoveablePanelParent = t; } else if (t.parent.parent.parent.name == "UnitMake") { studioMain.moveablePanelParent = t; } else if (t.parent.parent.parent.name == "RuneCompose") { studioMain.composeMovablePanelParent = t; } else if (t.parent.parent.parent.name == "Transcendence") { studioMain.transcendMovablePanelParent = t; PlayMakerFSM df = t.parent.GetComponent <PlayMakerFSM>(); if (df != null) { //DestroyImmediate(df); } if (t.parent.animation != null) { DestroyImmediate(t.parent.animation); } } if (t.parent.name == "PanelDummy") { Transform[] dt = t.gameObject.GetComponentsInChildren <Transform>(true); for (int j = dt.Length - 1; j >= 0; --j) { if (dt[j] == null || dt[j] == t) { continue; } GameObject.DestroyImmediate(dt[j].gameObject, true); } } break; case "Card_d_studio256": studioMain.cardStudio256[0] = t.gameObject; break; case "Card_c_studio256": studioMain.cardStudio256[1] = t.gameObject; break; case "Card_b_studio256": studioMain.cardStudio256[2] = t.gameObject; break; case "Card_a_studio256": studioMain.cardStudio256[3] = t.gameObject; break; case "Card_s_studio256": studioMain.cardStudio256[4] = t.gameObject; break; case "Card_SS_studio256": studioMain.cardStudio256[5] = t.gameObject; break; case "Card_d_studio512": studioMain.cardStudio512[0] = t.gameObject; break; case "Card_c_studio512": studioMain.cardStudio512[1] = t.gameObject; break; case "Card_b_studio512": studioMain.cardStudio512[2] = t.gameObject; break; case "Card_a_studio512": studioMain.cardStudio512[3] = t.gameObject; break; case "Card_s_studio512": studioMain.cardStudio512[4] = t.gameObject; break; case "Card_SS_studio512": studioMain.cardStudio512[5] = t.gameObject; break; case "studio10_container": studioMain.card10Container = t.gameObject; studioMain.card10Container.SetActive(false); break; case "studio2_container": studioMain.card2Container = t.gameObject; studioMain.card2Container.SetActive(false); break; case "studio2_1": studioMain.card2BgSlot[0] = t.GetComponent <StudioCardBgSlot>(); break; case "studio2_2": studioMain.card2BgSlot[1] = t.GetComponent <StudioCardBgSlot>(); break; case "EvolveSourceContainer": studioMain.evolveSourceBgSlot = t.GetComponent <StudioCardBgSlot>(); t.gameObject.SetActive(false); break; case "ss_evolutionSourceFrame": studioMain.evolutionCardFrame[4] = t.GetComponent <UICardFrame>(); break; case "s_evolutionSourceFrame": studioMain.evolutionCardFrame[3] = t.GetComponent <UICardFrame>(); break; case "a_evolutionSourceFrame": studioMain.evolutionCardFrame[2] = t.GetComponent <UICardFrame>(); break; case "b_evolutionSourceFrame": studioMain.evolutionCardFrame[1] = t.GetComponent <UICardFrame>(); break; case "c_evolutionSourceFrame": studioMain.evolutionCardFrame[0] = t.GetComponent <UICardFrame>(); break; case "SSevolutionAnimationContainer": studioMain.evolutionRotationAni[4] = t.animation; break; case "SevolutionAnimationContainer": studioMain.evolutionRotationAni[3] = t.animation; break; case "AevolutionAnimationContainer": studioMain.evolutionRotationAni[2] = t.animation; break; case "BevolutionAnimationContainer": studioMain.evolutionRotationAni[1] = t.animation; break; case "CevolutionAnimationContainer": studioMain.evolutionRotationAni[0] = t.animation; break; case "SSEvolveMoveable": studioMain.evolveMovablePanelParent[4] = t; break; case "SEvolveMoveable": studioMain.evolveMovablePanelParent[3] = t; break; case "AEvolveMoveable": studioMain.evolveMovablePanelParent[2] = t; break; case "BEvolveMoveable": studioMain.evolveMovablePanelParent[1] = t; break; case "CEvolveMoveable": studioMain.evolveMovablePanelParent[0] = t; break; case "Transcendence": studioMain.rootTranscend = t.gameObject; t.gameObject.SetActive(false); break; case "startdoor": if (t.parent.name == "10 EffectZoneBottom") { studioMain.transcendStartDoor = t.gameObject; } break; case "black_background": studioMain.blackBackground = t.gameObject; break; case "runestone": if (t.parent.name == "runestone") { studioMain.evolutionRuneRenderer = t.gameObject.GetComponent <Renderer>(); break; } break; case "parts_icon01": studioMain.reinforceRenderingSlot[0] = t.renderer; studioMain.reinforceRenderingSlot[0].sharedMaterial.SetTextureScale("_diffuse_alpha", new Vector2(0.342f, 0.4f)); studioMain.reinforceRenderingSlot[0].sharedMaterial.SetTextureOffset("_diffuse_alpha", new Vector2(0, 0.5f)); break; case "parts_icon02": studioMain.reinforceRenderingSlot[1] = t.renderer; studioMain.reinforceRenderingSlot[1].sharedMaterial.SetTextureScale("_diffuse_alpha", new Vector2(0.342f, 0.4f)); studioMain.reinforceRenderingSlot[1].sharedMaterial.SetTextureOffset("_diffuse_alpha", new Vector2(0.336f, 0.498f)); break; case "parts_icon03": studioMain.reinforceRenderingSlot[2] = t.renderer; studioMain.reinforceRenderingSlot[2].sharedMaterial.SetTextureScale("_diffuse_alpha", new Vector2(0.342f, 0.4f)); studioMain.reinforceRenderingSlot[2].sharedMaterial.SetTextureOffset("_diffuse_alpha", new Vector2(0.688f, 0.5f)); break; case "parts_icon04": studioMain.reinforceRenderingSlot[3] = t.renderer; studioMain.reinforceRenderingSlot[3].sharedMaterial.SetTextureScale("_diffuse_alpha", new Vector2(0.342f, 0.4f)); studioMain.reinforceRenderingSlot[3].sharedMaterial.SetTextureOffset("_diffuse_alpha", new Vector2(0, 0.114f)); break; case "parts_icon05": studioMain.reinforceRenderingSlot[4] = t.renderer; studioMain.reinforceRenderingSlot[4].sharedMaterial.SetTextureScale("_diffuse_alpha", new Vector2(0.342f, 0.4f)); studioMain.reinforceRenderingSlot[4].sharedMaterial.SetTextureOffset("_diffuse_alpha", new Vector2(0.336f, 0.114f)); break; case "compose_summon_infobg": //t.gameObject.SetActive(false); GameObject.DestroyImmediate(t.gameObject, true); break; case "planeexplosion_001": if (studioMain.megaMorpeAnim == null) { studioMain.megaMorpeAnim = t.GetComponent <MegaMorphAnim>(); } break; } if (t == null || t.gameObject == null) { continue; } if (t.parent == studioMain.reinforceMoveablePanelParent) { GameObject.DestroyImmediate(t.gameObject, true); } if (t.parent == studioMain.transcendMovablePanelParent) { GameObject.DestroyImmediate(t.gameObject, true); } if (t == null || t.gameObject == null) { continue; } int sIndex = 0; if (t.name.Contains("studio10_")) { string[] f**k = t.name.Split('_'); int.TryParse(f**k[1], out sIndex); if (sIndex > 0) { studioMain.card10BgSlot[sIndex - 1] = t.GetComponent <StudioCardBgSlot>(); } } if (t.name.Contains("card_output")) { if (t.parent.name == "10card_ouput") { int.TryParse(t.name.Substring(t.name.Length - 2), out sIndex); if (sIndex > 0) { studioMain.card10Cover[sIndex - 1] = t.GetComponent <StudioCardCoverSlot>(); studioMain.card10Cover[sIndex - 1].rare = 0; } } } } UIWidget[] wg = menuRoot.GetComponentsInChildren <UIWidget>(true); for (int i = wg.Length - 1; i >= 0; --i) { if (wg[i] == null) { continue; } GameObject.DestroyImmediate(wg[i].gameObject, true); } UIButton[] ub = menuRoot.GetComponentsInChildren <UIButton>(true); for (int i = ub.Length - 1; i >= 0; --i) { DestroyImmediate(ub[i], true); } BoxCollider[] b = menuRoot.GetComponentsInChildren <BoxCollider>(true); for (int i = b.Length - 1; i >= 0; --i) { DestroyImmediate(b[i], true); } // 카메라 초기화... Camera[] cams = root.GetComponentsInChildren <Camera>(true); List <Camera> dc = new List <Camera>(); for (int i = 0; i < cams.Length; ++i) { if (dc.Contains(cams[i]) == false && cams[i].name.Contains("256") == false && cams[i].name.Contains("512") == false) { dc.Add(cams[i]); } } setupCam.cams = dc.ToArray(); reinforceTfs = studioMain.rootReinforce.GetComponentsInChildren <Transform>(true); unitMakeTfs = studioMain.rootUnitMake.GetComponentsInChildren <Transform>(true); unitPreMakeTfs = studioMain.rootPreUnitMake.GetComponentsInChildren <Transform>(true); composeTfs = studioMain.rootCompose.GetComponentsInChildren <Transform>(true); transcendTfs = studioMain.rootTranscend.GetComponentsInChildren <Transform>(true); evolveSSTfs = studioMain.rootEvolve[4].GetComponentsInChildren <Transform>(true); evolveSTfs = studioMain.rootEvolve[3].GetComponentsInChildren <Transform>(true); evolveATfs = studioMain.rootEvolve[2].GetComponentsInChildren <Transform>(true); evolveBTfs = studioMain.rootEvolve[1].GetComponentsInChildren <Transform>(true); evolveCTfs = studioMain.rootEvolve[0].GetComponentsInChildren <Transform>(true); reinforcePs = studioMain.rootReinforce.GetComponentsInChildren <ParticleSystem>(true); unitMakePs = studioMain.rootUnitMake.GetComponentsInChildren <ParticleSystem>(true); unitPreMakePs = studioMain.rootPreUnitMake.GetComponentsInChildren <ParticleSystem>(true); composePs = studioMain.rootCompose.GetComponentsInChildren <ParticleSystem>(true); evolveSSPs = studioMain.rootEvolve[4].GetComponentsInChildren <ParticleSystem>(true); evolveSPs = studioMain.rootEvolve[3].GetComponentsInChildren <ParticleSystem>(true); evolveAPs = studioMain.rootEvolve[2].GetComponentsInChildren <ParticleSystem>(true); evolveBPs = studioMain.rootEvolve[1].GetComponentsInChildren <ParticleSystem>(true); evolveCPs = studioMain.rootEvolve[0].GetComponentsInChildren <ParticleSystem>(true); transendPs = studioMain.rootTranscend.GetComponentsInChildren <ParticleSystem>(true); PlayMakerFSM[] fsm = menuRoot.GetComponentsInChildren <PlayMakerFSM>(true); for (int i = fsm.Length - 1; i >= 0; --i) { PlayMakerFSM t = fsm[i]; if (t == null || t.gameObject == menuRoot) { continue; } } reinforceFSM = studioMain.rootReinforce.GetComponentsInChildren <PlayMakerFSM>(true); unitMakeFSM = studioMain.rootUnitMake.GetComponentsInChildren <PlayMakerFSM>(true); unitPreMakeFSM = studioMain.rootPreUnitMake.GetComponentsInChildren <PlayMakerFSM>(true); composeFSM = studioMain.rootCompose.GetComponentsInChildren <PlayMakerFSM>(true); evolveSSFSM = studioMain.rootEvolve[4].GetComponentsInChildren <PlayMakerFSM>(true); evolveSFSM = studioMain.rootEvolve[3].GetComponentsInChildren <PlayMakerFSM>(true); evolveAFSM = studioMain.rootEvolve[2].GetComponentsInChildren <PlayMakerFSM>(true); evolveBFSM = studioMain.rootEvolve[1].GetComponentsInChildren <PlayMakerFSM>(true); evolveCFSM = studioMain.rootEvolve[0].GetComponentsInChildren <PlayMakerFSM>(true); transcendFSM = studioMain.rootTranscend.GetComponentsInChildren <PlayMakerFSM>(true); }