using Assets.Scripts; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; public class Controls : MonoBehaviour { GameObject player; GameObject fight; GameObject worldGen; GameObject playerCam; UIHandler uihandler; void Start() { player = GameObject.Find("Player"); fight = GameObject.Find("Fight"); worldGen = GameObject.Find("WorldGenerator"); playerCam = GameObject.Find("InformationCamera"); uihandler = GameObject.Find("UIHandler").GetComponent(); } // Update is called once per frame void Update() { if (!player.GetComponent().takeDamage(0)) { EventSystem.current.SetSelectedGameObject(null); if (!uihandler.isPlayerInFight()) { checkNormalControls(); } else { checkFightControls(); } } } private void checkNormalControls() { if (uihandler.canPlayerMove()) { player.GetComponent().move(); if (Input.GetKeyDown(KeyCode.E)) { GameObject target = playerCam.GetComponent().interactWithObject(); if (target != null) { switch (target.tag.Split(':')[1]) { case "Enemy": fight.GetComponent().startFight(worldGen.GetComponent().getCurrentTile(), target, player); break; case "Tree": GameObject.Find("Inventory").GetComponent().addItem(new Item("Wood")); Destroy(target); break; case "Stone": GameObject.Find("Inventory").GetComponent().addItem(new Item("Stone")); Destroy(target); break; case "NPC": target.GetComponent().interact(); break; case "House": break; } } } else if (Input.GetKeyDown(KeyCode.C)) { uihandler.switchCharactersheet(); } else if (Input.GetKeyDown(KeyCode.Q)) { uihandler.switchQuestLog(); } else if (Input.GetKeyDown(KeyCode.I)) { uihandler.switchInventory(); } } if (Input.GetKeyDown(KeyCode.Escape)) { uihandler.switchPauseMenu(); } } private void checkFightControls() { if (Input.GetKeyDown(KeyCode.Alpha1) || Input.GetKeyDown(KeyCode.Keypad1)) { fight.GetComponent().playerAction(1); } else if (Input.GetKeyDown(KeyCode.Alpha2) || Input.GetKeyDown(KeyCode.Keypad2)) { fight.GetComponent().playerAction(2); } else if (Input.GetKeyDown(KeyCode.Alpha3) || Input.GetKeyDown(KeyCode.Keypad3)) { fight.GetComponent().playerAction(3); } else if (Input.GetKeyDown(KeyCode.Alpha4) || Input.GetKeyDown(KeyCode.Keypad4)) { fight.GetComponent().playerAction(4); } else if (Input.GetKeyDown(KeyCode.Alpha5) || Input.GetKeyDown(KeyCode.Keypad5)) { fight.GetComponent().playerAction(5); } else if (Input.GetKeyDown(KeyCode.Alpha6) || Input.GetKeyDown(KeyCode.Keypad6)) { fight.GetComponent().playerAction(6); } } }