using System.Collections; using System.Collections.Generic; using TMPro; using System; using UnityEngine; using Unity.XR.CoreUtils; //using UnityEngine.UIElements; public class GameLogicSk3 : MonoBehaviour { public GameObject[] spPoints; public GameObject[] objInScene; public string[] objOrder; public Transform mizaPos; public TextMeshProUGUI mssg; List<int> usedIndices = new List<int>(); GameObject Base; int searchForObjIdx; // Start is called before the first frame update void Start() { int index = UnityEngine.Random.Range(0, spPoints.Length); ; for (int i = 0; i < objInScene.Length; i++) { while (usedIndices.Contains(index)) { index = UnityEngine.Random.Range(0, spPoints.Length); } GameObject target = spPoints[index]; usedIndices.Add(index); GameObject.Instantiate(objInScene[i], target.transform.position, target.transform.rotation); } searchForObjIdx = 0; } // Update is called once per frame void Update() { mssg.text = "Išči objekt: " + objOrder[searchForObjIdx]; if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began) { Ray raycast = Camera.current.ScreenPointToRay(Input.GetTouch(0).position); RaycastHit raycastHit; if (Physics.Raycast(raycast, out raycastHit)) { if (raycastHit.collider.gameObject.tag == objOrder[searchForObjIdx]) { if(raycastHit.collider.gameObject.tag == "Miza") { raycastHit.collider.gameObject.transform.position = mizaPos.transform.position; raycastHit.collider.gameObject.transform.rotation = mizaPos.transform.rotation; Vector3 TmvV = mizaPos.transform.position; TmvV.y += (float)0.5; mizaPos.transform.position = TmvV; Base = raycastHit.collider.gameObject; } else { if (raycastHit.collider.gameObject.tag == "Stol") { Transform trns = Base.transform.GetChild(9).transform; raycastHit.collider.gameObject.transform.position = trns.transform.position; //raycastHit.collider.gameObject.transform.rotation = trns.transform.rotation; raycastHit.collider.gameObject.transform.localRotation = Quaternion.identity; } else { if (raycastHit.collider.gameObject.tag == "Prenosnik") { Transform trns = Base.transform.GetChild(5).transform; raycastHit.collider.gameObject.transform.position = trns.transform.position; raycastHit.collider.gameObject.transform.rotation = trns.transform.rotation; } else { raycastHit.collider.gameObject.transform.position = mizaPos.transform.position; raycastHit.collider.gameObject.transform.rotation = mizaPos.transform.rotation; } } } searchForObjIdx++; if (searchForObjIdx == objInScene.Length) { mssg.text = " "; TimerSk3 tmr = GetComponent<TimerSk3>(); tmr.StopTimer(); } } else { // Na novo razmeci objekte } } } } }