void Start() { allowedToCreateCharacter = false; cm = cursor.GetComponent <CursorMover>(); selectedGameObject = cm.GetSelectedOption(); selectedCharacter = selectedGameObject; selectedText = selectedGameObject.GetComponent <Text>(); // selectedSlot = 0; }
void Awake() { prefabHandler = GameObject.Find("StatusBoxHandler").GetComponent <MenuPrefabHandler>(); menuHandler = GameObject.Find("MenuHandler").GetComponent <MenuHandler>(); cursor = gameObject; string parent = cursor.transform.parent.name; cm = gameObject.GetComponent <CursorMover>(); selectedOption = cm.GetSelectedOption(); menuHandler.SetCursor(cursor); }
// Update is called once per frame void Update() { selectedText.color = Color.red; selectedGameObject = cm.menuObjects[selectedSlot]; if (CharacterInSlot(selectedSlot) && IsASlotItem()) { cm.menuObjects[4].GetComponent <Text>().color = Color.white; cm.menuObjects[3].GetComponent <Text>().color = Color.grey; cm.menuObjects[6].GetComponent <Text>().color = Color.white; //Set enter to valid //Set create character invalid allowedToEnterWorld = true; allowedToCreateCharacter = false; allowedToDeleteCharacter = true; } else if (IsASlotItem()) { cm.menuObjects[4].GetComponent <Text>().color = Color.grey; cm.menuObjects[6].GetComponent <Text>().color = Color.grey; cm.menuObjects[3].GetComponent <Text>().color = Color.white; allowedToCreateCharacter = true; allowedToDeleteCharacter = false; allowedToEnterWorld = false; //set enter to invalid //Set create character to valid } if (Input.GetButtonDown("Fire1") && deleteHandler.GetPrefab() == null && !deleting) { var refToPreviousSlot = selectedGameObject; selectedGameObject = cm.GetSelectedOption(); if (selectedGameObject == cm.menuObjects[3] && allowedToCreateCharacter && cursor.activeInHierarchy) //3 is Create { selectedGameObject.gameObject.GetComponent <CharacterMenuPrefabHandler>().InstantiatePrefabAsChangedMenu(MenuPrefabs.CharacterCreate); selectedGameObject = refToPreviousSlot; SetCharacterSlot(); } else if (selectedGameObject.transform.IsChildOf(transform) && IsASlotItem()) { selectedText.color = Color.white; selectedText = selectedGameObject.GetComponent <Text>(); selectedCharacter = selectedGameObject; selectedText.color = Color.red; SetCharacterSlot(); } else if (selectedGameObject == cm.menuObjects[6] && allowedToDeleteCharacter) { deleting = true; allowedToDeleteCharacter = false; deleteHandler.InstantiatePrefab(MenuPrefabs.ModalStatusBox, "Are you sure you want to delete this character?"); var sibling = Utils.FindSiblingGameObjectByName(refToPreviousSlot, "CharacterView"); var character = Utils.FindComponentInChildWithTag <Character>(sibling, "Character"); deleteHandler.HandleDeleteDecision(character); } else if (selectedGameObject == cm.menuObjects[4] && allowedToEnterWorld) { GameEventManager.TriggerClientWantsToEnter(new GameEventArgs { ClientSelectedEnterWorld = true }); } } allowedToCreateCharacter = false; }
void Update() { Vector2 direction = new Vector2(0, 0); bool inputPressed = false; if (Input.GetButtonDown("Vertical") || Input.GetButtonDown("Horizontal")) { direction = direction + getDirection(); enteringText = false; inputPressed = true; // Debug.Log("DirectoinV: " + direction); } if (inputPressed) { cm.SetDirection(direction); } selectedOption = cm.GetSelectedOption(); string clientState = ""; MenuLink ml = selectedOption.GetComponent <MenuLink>(); if (ml != null) { clientState = ml.GetState().ToString(); } if (clientState == "inputfield") { inputField = ml.GetComponent <InputField>(); enteringText = true; inputField.enabled = true; inputField.ActivateInputField(); } else { enteringText = false; if (inputField != null) { inputField.enabled = false; } } if (!enteringText) { if (Input.GetButtonDown("Fire1")) { switch (clientState) { case "menu": menuHandler.EnterMenu(ml.GetMenuItem()); break; case "register": // SubmitAccount("UsernameRegister", "PasswordRegister", ml, true); var submitobj = GameObject.Find("Submit"); var accountHandler = submitobj.GetComponent <AccountHandler>(); accountHandler.SubmitAccount("UsernameRegister", "PasswordRegister", ml, true); break; case "login": // SubmitAccount("UsernameLogin", "PasswordLogin", ml, false); submitobj = GameObject.Find("Submit"); accountHandler = submitobj.GetComponent <AccountHandler>(); accountHandler.SubmitAccount("UsernameLogin", "PasswordLogin", ml, false); break; case "cancel": menuHandler.GoUpMenu(); break; default: break; } } if (Input.GetButtonDown("Fire2") && !(MenuPrefabHandler.statusBoxOpened || prefabHandler.ModalBoxHasBeenOpened())) { menuHandler.GoUpMenu(); } } direction = new Vector2(0, 0); }