// Update is called once per frame void Update() { Ray ray; RaycastHit hit; for (int i = 0; i < Input.touchCount; ++i) { if (Input.GetTouch(i).phase == TouchPhase.Began) { ray = Camera.main.ScreenPointToRay(Input.GetTouch(i).position); if (Physics.Raycast(ray, out hit)) { //on RaycastHit handle output if (hit.transform.gameObject.tag == "ClickableObject") { ObjectData = hit.transform.gameObject.GetComponent <NPC_Controller>(); SetElements(ObjectData); print(ObjectData.name); } } } } }
private void SetElements(NPC_Controller hitData) { UI_Name.text = hitData.ObjectName; UI_FlavorText.text = hitData.ObjectFlavortext; UI_Image_L.sprite = hitData.ObjectImageLeft; UI_Image_R.sprite = hitData.ObjectImageRight; ShowUI(true); }
public void OpenPanel(NPCData data, NPC_Controller controller) { currentNPC_Controller = controller; currentNPC = data; gameObject.SetActive(true); NpcPortraitCam.LookTarget(currentNPC_Controller.PortraitCenter); RefreshPanel(); }
//Elindítja a megadott karakter dialógusát public void StartDialogue(NPC_Controller character) { prev = gameState.GetGameState(); gameState.ChangeGameState(GameState.Dialogue); speaker = character; dialogues.Clear(); foreach (string sentence in speaker.dialogues.GetActiveDialogues()) { dialogues.Enqueue(sentence); } DisplayNextSentence(); }
private void DropdownValueChanged(Dropdown dropdown) { foreach (GameObject n in npc) { NPC_Controller controller = n.GetComponent <NPC_Controller>(); if (dropdown.value != 0) { controller.normalSituation = false; } else { controller.normalSituation = true; } } }
private void OnTriggerStay2D(Collider2D collision) { if (collision.gameObject.tag == "NPC") { npc = collision.gameObject.GetComponent <NPC_Controller>(); if (Input.GetKey(KeyCode.E)) { collision.gameObject.GetComponent <NPC_Controller>().ActivateDialogue(); } } if (collision.gameObject.tag == "Next") { fadetrigger.FadeIn(); } }
private void OnTriggerStay2D(Collider2D collision) { if (collision.gameObject.tag == "NPC") { npc = collision.gameObject.GetComponent <NPC_Controller>(); if (Input.GetMouseButtonDown(0) && canTalkWithNPC) { npc.ActivateDialogue(); canTalkWithNPC = false; } } else if (collision.gameObject.tag == "FinalNPC") { _finalNPC = collision.gameObject.GetComponent <Final_NPC_Controller>(); if (Input.GetMouseButtonDown(0) && canTalkWithNPC) { _finalNPC.ActivateDialogue(); canTalkWithNPC = false; } } }
void CreateNPC(NPC npc) { if (npc.type == "Worker") { NPC_Controller npcCont = myPrefab[0].GetComponent <NPC_Controller>(); npcCont.target = new Transform[npc.Schedule.Length]; for (int i = 0; i < npc.Schedule.Length; i++) { npcCont.target[i] = GameObject.Find(npc.Schedule[i]).transform; } npcCont.worker_id = npc.id; npcCont.gameObject.name = "Worker: " + npc.id; Instantiate(myPrefab[0], new Vector3(0, 0, 0), Quaternion.identity); } else { NPC_Controller npcCont = myPrefab[1].GetComponent <NPC_Controller>(); npcCont.isBoss = true; npcCont.target = new Transform[npc.Schedule.Length]; for (int i = 0; i < npc.Schedule.Length; i++) { npcCont.target[i] = GameObject.Find(npc.Schedule[i]).transform; } npcCont.worker_id = npc.id; Instantiate(myPrefab[1], new Vector3(0, 0, 0), Quaternion.identity); } }
public void AddNPC(NPC_Controller npc) { interactableObject = null; interactableCharacter = npc; }
private void OnTriggerExit2D(Collider2D collision) { npc = null; }
public void Open_NPCDialogPanel(NPCData talkingNPC, NPC_Controller controller) { dialog_Panel.OpenPanel(talkingNPC, controller); StartCoroutine(IE_WaitPanelClose(dialog_Panel.gameObject)); }
private void Start() { npc = GetComponent <NPC_Controller>(); }
// walk in octagonal pattern void Start() { npc = this.GetComponentInParent <NPC_Controller>(); messageController = GameObject.Find("Message Overlay").GetComponent <MessageOverlayController>(); ExecuteTestWalk(); }
// public abstract NPC_BehaviorState NextState(); protected virtual void Start() { npcController = GetComponent<NPC_Controller>(); npcAI = GetComponent<NPC_AI>(); npcStats = GetComponent<NPCStats>(); }
public void RemoveNPC() { interactableCharacter = null; }
public void AddObject(InteractableObject objectInRange) { interactableCharacter = null; interactableObject = objectInRange; }
private void OnTriggerExit2D(Collider2D collision) { npc = null; _finalNPC = null; canTalkWithNPC = true; }
//Visszatérés a játékba és a box eltüntetése public void EndDialogue() { speaker = null; gameState.ChangeGameState(prev); BoxDisplay(false); }