public void setAct(PBlokConstants.blokAct act) { myAct = act; changeInterface(); }
void changeInterface() { foreach(Transform child in transform){ DestroyImmediate (child.gameObject); } // There are not this many different ways to behave, // only this many different ways to be seen switch(myPotency){ case PBlokConstants.blokPotency.modify: switch(myAct){ case PBlokConstants.blokAct.block_heavy: appearance = Instantiate(Resources.Load("HeavyMPBlok", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.block_normal: appearance = Instantiate(Resources.Load("NormalMPBlok", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.empty: appearance = Instantiate(Resources.Load("EmptyMPBlok", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.block_frozen: appearance = Instantiate(Resources.Load("FrozenMPBlok", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.surface_frozen: appearance = Instantiate(Resources.Load("FrozenMPSurf", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.surface_magnetic: appearance = Instantiate(Resources.Load("MagneticMPSurf", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.surface_normal: appearance = Instantiate(Resources.Load("NormalMPSurf", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.block_death: appearance = Instantiate(Resources.Load("DeathNMPBlok", typeof(GameObject))) as GameObject; break; default: break; } break; case PBlokConstants.blokPotency.no_modify: switch(myAct){ case PBlokConstants.blokAct.block_heavy: appearance = Instantiate(Resources.Load("HeavyNMPBlok", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.block_normal: appearance = Instantiate(Resources.Load("NormalNMPBlok", typeof(GameObject))) as GameObject; break; // Duplicate case from modify branch case PBlokConstants.blokAct.empty: appearance = Instantiate(Resources.Load("EmptyMPBlok", typeof(GameObject))) as GameObject; break; // ^^ case PBlokConstants.blokAct.block_frozen: appearance = Instantiate(Resources.Load("FrozenNMPBlok", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.surface_frozen: appearance = Instantiate(Resources.Load("FrozenNMPSurf", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.surface_magnetic: appearance = Instantiate(Resources.Load("MagneticNMPSurf", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.surface_normal: appearance = Instantiate(Resources.Load("NormalNMPSurf", typeof(GameObject))) as GameObject; break; case PBlokConstants.blokAct.block_death: appearance = Instantiate(Resources.Load("DeathNMPBlok", typeof(GameObject))) as GameObject; break; default: break; } break; default: break; } // Update previous instance oldAct = myAct; oldPotency = myPotency; // Ensure proper placement of new appearance, and child it appearance.transform.position = gameObject.transform.position; appearance.transform.parent = gameObject.transform; // add editor functionality callbacks via PBlokSwitcher appearance.AddComponent<PBlokSwitcher>(); }