Newer
Older
TheVengeance-Project-IADE-Unity2D / Assets / Scripts / UI / UI.cs
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5. public class UI : MonoBehaviour
  6. {
  7. public GameObject talkButtonPrefab;
  8. private TalkQuest talkQuest;
  9. private TravelNPC NPCtravel;
  10. private TravelNPC2 NPCtravel2;
  11. private RangedArea rangedArea;
  12. private GameObject keyButton;
  13. private GameObject keyButton2;
  14. private GameObject keyButtonQuest;
  15. private bool talkButtonDisplayed;
  16. private bool talkButtonDisplayed2;
  17. private bool talkButtonQuestDisplayed;
  18. private void Start()
  19. {
  20. talkButtonDisplayed = false;
  21. talkButtonDisplayed2 = false;
  22. talkButtonQuestDisplayed = false;
  23. NPCtravel = FindObjectOfType<TravelNPC>();
  24. NPCtravel2 = FindObjectOfType<TravelNPC2>();
  25. rangedArea = FindObjectOfType<RangedArea>();
  26. talkQuest = FindObjectOfType<TalkQuest>();
  27. }
  28. //This code needs to be optimazed for the 3rd delivery
  29. //One function for all NPC'S
  30. private void NPCTalkButtonDisplay()
  31. {
  32. //TRAVEL NPC
  33. if (NPCtravel.playerInRange == true && NPCtravel.NPCchatEnabled == false && talkButtonDisplayed == false)
  34. {
  35. keyButton = Instantiate(talkButtonPrefab, transform);
  36. keyButton.transform.localScale = new Vector3(0.7f, 0.7f, 0.7f);
  37. talkButtonDisplayed = true;
  38. }
  39. if ((NPCtravel.playerInRange == false) || (NPCtravel.NPCchatEnabled == true || NPCtravel.accepted == true))
  40. {
  41. Object.Destroy(keyButton);
  42. talkButtonDisplayed = false;
  43. }
  44. }
  45. private void NPCTalkButtonDisplay2()
  46. {
  47. if (rangedArea.playerInRange == true && talkQuest.NPCchatEnabled == false && talkButtonQuestDisplayed == false)
  48. {
  49. keyButtonQuest = Instantiate(talkButtonPrefab, transform);
  50. keyButtonQuest.transform.localScale = new Vector3(0.7f, 0.7f, 0.7f);
  51. talkButtonQuestDisplayed = true;
  52. }
  53. if ((rangedArea.playerInRange == false) || (talkQuest.NPCchatEnabled == true))
  54. {
  55. Object.Destroy(keyButtonQuest);
  56. talkButtonQuestDisplayed = false;
  57. }
  58. }
  59. private void NPCTalkButtonDisplay3()
  60. {
  61. //TRAVEL NPC 2
  62. if (NPCtravel2.playerInRange == true && NPCtravel2.NPCchatEnabled == false && talkButtonDisplayed2 == false)
  63. {
  64. keyButton2 = Instantiate(talkButtonPrefab, transform);
  65. keyButton2.transform.localScale = new Vector3(0.7f, 0.7f, 0.7f);
  66. talkButtonDisplayed2 = true;
  67. }
  68. if ((NPCtravel2.playerInRange == false) || (NPCtravel2.NPCchatEnabled == true || NPCtravel2.accepted == true))
  69. {
  70. Object.Destroy(keyButton2);
  71. talkButtonDisplayed2 = false;
  72. }
  73. }
  74. // Update is called once per frame
  75. private void Update()
  76. {
  77. NPCTalkButtonDisplay();
  78. NPCTalkButtonDisplay2();
  79. NPCTalkButtonDisplay3();
  80. }
  81. }