Last active 1747790431

Revision ff57e7867b382ffef948692a61688c6d1beb05e4

IntroStory.cs Raw Playground
1using System.Collections;
2using System.Collections.Generic;
3using UnityEngine;
4using UnityEngine.UI;
5
6
7public class IntroStory : MonoBehaviour
8{
9
10 Dictionary<string, AudioClip> audioClips = new Dictionary<string, AudioClip>();
11 Dictionary<string, Animator> animators = new Dictionary<string, Animator>();
12 int index = 0;
13 string[] sequence =
14 {
15 "intro-00",
16 "intro-01",
17 "intro-02",
18 "intro-03",
19 "intro-04",
20 "intro-05",
21 "intro-06",
22 "intro-07",
23 "intro-08",
24 "intro-09",
25 "intro-10",
26 "intro-11",
27 "intro-12",
28 "intro-13",
29 "intro-14",
30 "intro-15",
31 "intro-16"
32 };
33 [SerializeField]
34 public Button button;
35
36 [SerializeField]
37 public StoryEngine engine;
38
39 [SerializeField]
40 public GameObject Erika;
41
42 [SerializeField]
43 public GameObject Alice;
44
45 // Start is called before the first frame update
46 void Start()
47 {
48 engine.LoudAudioClips("AudioClips/InstructionScene");
49 engine.AddActor("Erika", Erika.GetComponent<Animator>());
50 engine.AddActor("Alice", Alice.GetComponent<Animator>());
51
52 engine.Register("intro-00", (engine, args) =>
53 {
54 engine.SetActorTrigger("Erika", "isInst_0");
55 engine.PlayClip("intro-00");
56 });
57
58 engine.Register("intro-01", (engine, args) =>
59 {
60 engine.SetActorTrigger("Erika", "isInst_1");
61 engine.PlayClip("intro-01");
62 });
63
64 engine.Register("intro-02", (engine, args) =>
65 {
66 engine.SetActorTrigger("Erika", "isInst_2");
67 engine.PlayClip("intro-02");
68 });
69
70 engine.Register("intro-03", (engine, args) =>
71 {
72 engine.SetActorTrigger("Erika", "isInst_3");
73 engine.PlayClip("intro-03");
74 });
75
76 engine.Register("intro-04", (engine, args) =>
77 {
78 engine.SetActorTrigger("Erika", "isInst_4");
79 engine.SetActorTrigger("Alice", "Appear");
80 engine.PlayClip("intro-04");
81 });
82
83 engine.Register("intro-05", (engine, args) =>
84 {
85 engine.SetActorTrigger("Erika", "isInst_5");
86 engine.PlayClip("intro-05");
87 });
88
89 engine.Register("intro-06", (engine, args) =>
90 {
91 engine.SetActorTrigger("Erika", "isInst_6");
92 engine.PlayClip("intro-06");
93 });
94
95 engine.Register("intro-07", (engine, args) =>
96 {
97 engine.SetActorTrigger("Erika", "isInst_7");
98 engine.PlayClip("intro-07");
99 });
100
101 engine.Register("intro-08", (engine, args) =>
102 {
103 engine.SetActorTrigger("Erika", "isInst_8");
104 engine.PlayClip("intro-08");
105 engine.SetActorTrigger("Alice", "Disappear");
106 });
107
108 engine.Register("intro-09", (engine, args) =>
109 {
110 engine.SetActorTrigger("Erika", "isInst_9");
111 engine.PlayClip("intro-09");
112 });
113
114 engine.Register("intro-10", (engine, args) =>
115 {
116 engine.SetActorTrigger("Erika", "isInst_10");
117 engine.PlayClip("intro-10");
118 });
119
120 engine.Register("intro-11", (engine, args) =>
121 {
122 engine.SetActorTrigger("Erika", "isInst_11");
123 engine.PlayClip("intro-11");
124 });
125
126 engine.Register("intro-12", (engine, args) =>
127 {
128 engine.SetActorTrigger("Erika", "isInst_12");
129 engine.PlayClip("intro-12");
130 });
131
132 engine.Register("intro-13", (engine, args) =>
133 {
134 engine.SetActorTrigger("Erika", "isInst_13");
135 engine.PlayClip("intro-13");
136 });
137
138 engine.Register("intro-14", (engine, args) =>
139 {
140 engine.SetActorTrigger("Erika", "isInst_14");
141 engine.PlayClip("intro-14");
142 });
143
144 engine.Register("intro-15", (engine, args) =>
145 {
146 engine.SetActorTrigger("Erika", "isInst_15");
147 engine.PlayClip("intro-15");
148 });
149
150 engine.Register("intro-16", (engine, args) =>
151 {
152 engine.SetActorTrigger("Erika", "isInst_16");
153 engine.PlayClip("intro-16");
154 });
155
156 engine.Register("enable-button", (engine, args) =>
157 {
158 (args[0] as Button).interactable = true;
159 });
160 Debug.Log(engine);
161 }
162
163 // Update is called once per frame
164 void Update()
165 {
166
167 }
168
169 public void OnNextButtonPressed (Button button)
170 {
171 button.interactable = false;
172 engine.Run(engine.GetClipLength(sequence[index]), "enable-button", button);
173 engine.Run(sequence[index]);
174 index += 1;
175 }
176
177}
178