2using System.Collections;
3using System.Globalization;
7using NaughtyAttributes;
28 public ToggleGroup
tg;
31 private int[] goodAnswer;
32 private bool[] currentAnswers =
new []{
false,
false,
false,
false};
33 private byte quizType = 255;
34 private float quizTimeLeft = 999f;
36 [Header(
"Quiz Editor helpers")]
41 gameObject.SetActive(
false);
45 Question =
"Fontos mosolyogni a gyár területén?",
46 AnswerArray =
new []{
"Igen",
"Nem"},
47 RightIndex =
new []{1},
54 Question =
"Melyik képen látható hónapos retek?",
55 AnswerArray =
new []{
"https://cdn.discordapp.com/attachments/679671608838848546/718119485956947978/sassss.png",
"itt befigyel egy text is",
"http://retek.hu/retek.jpg",
"https://cdn.discordapp.com/attachments/270988546653814784/718182644482965644/IMG_20200604_081746.png"},
56 RightIndex =
new []{2},
63 Question =
"Jelölje be az összes jó választ!",
64 AnswerArray =
new []{
"Ez egy jó válasz",
"Ez a válasz lehet, hogy rossz",
"Ez egy nagyon rossz válasz",
"Ide kattintva, ide lesz kattintva"},
65 RightIndex =
new []{0,3},
83 quizTimeLeft -= Time.deltaTime;
84 if (quizTimeLeft <= 0)
86 Debug.Log(
":( TIMEOUT");
88 gameObject.SetActive(
false);
111 if (goodAnswer[0] == index)
115 gameObject.SetActive(
false);
121 gameObject.SetActive(
false);
126 currentAnswers[index] = !currentAnswers[index];
130 answer1.transform.parent.GetComponent<
Image>().color = currentAnswers[index]
131 ?
new Color(0.0f, 205f / 255f, 1f, 150f / 255f)
132 :
new Color(1, 1, 1, 150f / 255f);
135 answer2.transform.parent.GetComponent<
Image>().color = currentAnswers[index]
136 ?
new Color(0.0f, 205f / 255f, 1f, 150f / 255f)
137 :
new Color(1, 1, 1, 150f / 255f);
140 answer3.transform.parent.GetComponent<
Image>().color = currentAnswers[index]
141 ?
new Color(0.0f, 205f / 255f, 1f, 150f / 255f)
142 :
new Color(1, 1, 1, 150f / 255f);
145 answer4.transform.parent.GetComponent<
Image>().color = currentAnswers[index]
146 ?
new Color(0.0f, 205f / 255f, 1f, 150f / 255f)
147 :
new Color(1, 1, 1, 150f / 255f);
157 for (
int i = 0; i < 4; i++)
159 if (currentAnswers[i])
161 if (!goodAnswer.Contains(i))
165 gameObject.SetActive(
false);
171 if (goodAnswer.Contains(i))
175 gameObject.SetActive(
false);
182 gameObject.SetActive(
false);
187 answer3.gameObject.transform.parent.gameObject.SetActive(
false);
188 answer4.gameObject.transform.parent.gameObject.SetActive(
false);
191 answer3.gameObject.transform.parent.gameObject.SetActive(
true);
193 answer4.gameObject.transform.parent.gameObject.SetActive(
true);
198 answer1.gameObject.SetActive(
false);
199 answer2.gameObject.SetActive(
false);
200 answer3.gameObject.SetActive(
false);
201 answer4.gameObject.SetActive(
false);
202 image1.gameObject.SetActive(
true);
203 image2.gameObject.SetActive(
true);
204 image3.gameObject.SetActive(
true);
205 image4.gameObject.SetActive(
true);
207 if (Uri.IsWellFormedUriString(value.
AnswerArray[0], UriKind.Absolute))
211 image1.texture = go.GetComponent<RawImage>().texture;
216 image1.gameObject.SetActive(
false);
217 answer1.gameObject.SetActive(
true);
221 if (Uri.IsWellFormedUriString(value.
AnswerArray[1], UriKind.Absolute))
225 image2.texture = go.GetComponent<RawImage>().texture;
230 image2.gameObject.SetActive(
false);
231 answer2.gameObject.SetActive(
true);
236 if (Uri.IsWellFormedUriString(value.
AnswerArray[2], UriKind.Absolute))
240 image3.texture = go.GetComponent<RawImage>().texture;
245 image3.gameObject.SetActive(
false);
246 answer3.gameObject.SetActive(
true);
251 if (Uri.IsWellFormedUriString(value.
AnswerArray[3], UriKind.Absolute))
255 image4.texture = go.GetComponent<RawImage>().texture;
260 image4.gameObject.SetActive(
false);
261 answer4.gameObject.SetActive(
true);
269 answer1.gameObject.SetActive(
true);
270 answer2.gameObject.SetActive(
true);
271 answer3.gameObject.SetActive(
true);
272 answer4.gameObject.SetActive(
true);
277 image1.gameObject.SetActive(
false);
278 image2.gameObject.SetActive(
false);
279 image3.gameObject.SetActive(
false);
280 image4.gameObject.SetActive(
false);
290 IEnumerator DownloadPicture(
string url, RawImage target)
292 UnityWebRequest request = UnityWebRequestTexture.GetTexture(url);
293 yield
return request.SendWebRequest();
294 if(request.isNetworkError || request.isHttpError)
295 Debug.Log(request.error);
298 target.texture = ((DownloadHandlerTexture) request.downloadHandler).texture;
307 var ci = CultureInfo.CurrentCulture;
308 var nfi = ci.NumberFormat;
317 Debug.LogWarning(
"not parsable number(?) in timeoutEditor inputfields!");
322 public static Vector2
SizeToParent(RawImage image,
float padding = 0) {
324 var parent = image.transform.parent.GetComponent<RectTransform>();
325 var imageTransform = image.GetComponent<RectTransform>();
328 if (image.texture !=
null) {
329 if (!parent)
return imageTransform.sizeDelta;
330 padding = 1 - padding;
331 float ratio = image.texture.width / (float)image.texture.height;
332 var bounds =
new Rect(0, 0, parent.rect.width, parent.rect.height);
333 if (Mathf.RoundToInt(imageTransform.eulerAngles.z) % 180 == 90) {
335 bounds.size =
new Vector2(bounds.height, bounds.width);
338 h = bounds.height * padding;
340 if (w > bounds.width * padding) {
341 w = bounds.width * padding;
345 imageTransform.SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, w);
346 imageTransform.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, h);
347 return imageTransform.sizeDelta;
UnityEngine.UI.Button Button
System.Drawing.Image Image
bool GetUploadedGOFromName(string value, out GameObject retval)
static FileDragAndDrop instance
void UpdateQuiz(QuizData value)
void SetTimeout(string value)
void AnswerQuiz(int index)
static Vector2 SizeToParent(RawImage image, float padding=0)
void OnTypeChanged(int value)