summaryrefslogtreecommitdiff
path: root/Assets/Scripts/DialogueScript.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Scripts/DialogueScript.cs')
-rwxr-xr-xAssets/Scripts/DialogueScript.cs100
1 files changed, 100 insertions, 0 deletions
diff --git a/Assets/Scripts/DialogueScript.cs b/Assets/Scripts/DialogueScript.cs
new file mode 100755
index 0000000..b6fc42c
--- /dev/null
+++ b/Assets/Scripts/DialogueScript.cs
@@ -0,0 +1,100 @@
+using UnityEngine;
+using System.Collections;
+using UnityEngine.UI;
+
+public class DialogueScript : MonoBehaviour
+{
+ //Player reference
+ GameObject player;
+ PlayerMovementScript playerMovementScript;
+ PlayerShootingScript playerShootingScript;
+
+ //Single dialogue
+ GameObject dialoguePanle;
+ Text dialogueText;
+ bool isDialogueActive;
+
+ //Multi Dialogue
+ bool isMultiDialogueActive;
+ string[] multiDialogueText;
+ int multiDialogueLength;
+ int multiDialogueCounter;
+
+ //Animator for DialoguePanel
+ Animator anim;
+
+ // for Boss1
+ public bool FromBoss1;
+
+ void Awake()
+ {
+ dialoguePanle = GameObject.FindGameObjectWithTag("HUD").transform.Find("DialoguePanel").gameObject;
+ anim = dialoguePanle.GetComponent<Animator>();
+ player = GameObject.FindGameObjectWithTag("Player");
+ playerMovementScript = player.GetComponent<PlayerMovementScript>();
+ playerShootingScript = player.GetComponentInChildren<PlayerShootingScript>();
+ dialogueText = dialoguePanle.GetComponentInChildren<Text>();
+ dialogueText.text = "";
+ }
+
+ void Start ()
+ {
+
+ }
+
+ void Update ()
+ {
+ if (isDialogueActive && Input.GetButtonDown("Jump"))
+ {
+ anim.SetBool("isActive", false);
+ //dialoguePanle.GetComponent<RectTransform>().localScale = new Vector3(0, 0, 0);
+ playerMovementScript.enabled = true;
+ playerShootingScript.enabled = true;
+ isDialogueActive = false;
+
+ if (FromBoss1)
+ {
+ GameObject.FindGameObjectWithTag("Boss1FightHandler").GetComponent<BossFighthandlerScript>().StartBossFight();
+ }
+ }
+
+ if (isMultiDialogueActive && Input.GetButtonDown("Jump") && multiDialogueCounter <= multiDialogueLength)
+ {
+ if (multiDialogueCounter < multiDialogueLength)
+ {
+ dialogueText.text = multiDialogueText[multiDialogueCounter];
+ multiDialogueCounter++;
+ }
+ else if (multiDialogueCounter == multiDialogueLength)
+ {
+ anim.SetBool("isActive", false);
+ playerMovementScript.enabled = true;
+ playerShootingScript.enabled = true;
+ isMultiDialogueActive = false;
+ }
+ }
+ }
+
+ public void ShowDialogue(string message)
+ {
+ isDialogueActive = true;
+ playerMovementScript.StopPlayer();
+ playerMovementScript.enabled = false;
+ playerShootingScript.enabled = false;
+ dialogueText.text = message;
+ anim.SetBool("isActive", true);
+ }
+
+ public void ShowMultiDialogue(string message)
+ {
+ isMultiDialogueActive = true;
+ playerMovementScript.StopPlayer();
+ playerMovementScript.enabled = false;
+ playerShootingScript.enabled = false;
+ multiDialogueText = message.Split(new string[] {"\\n"},System.StringSplitOptions.None);
+ multiDialogueLength = multiDialogueText.Length;
+ multiDialogueCounter = 1;
+ dialogueText.text = multiDialogueText[0];
+ anim.SetBool("isActive", true);
+ }
+}