triangle.cs
unknown
csharp
4 years ago
3.1 kB
5
Indexable
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class triangle : MonoBehaviour { private bool canClick = false; void Start() { if(transform.name == "2") { transform.GetComponent<SpriteRenderer>().color = Color.yellow; } if(transform.name == "3") { transform.GetComponent<SpriteRenderer>().color = Color.blue; } if(transform.name == "4") { transform.GetComponent<SpriteRenderer>().color = Color.magenta; } } void Update() { Look(); Move(); if(Input.GetKeyDown(KeyCode.UpArrow) && canClick && transform.name == "1") { if(GameObject.Find("Main Camera").GetComponent<SpawnTriangles>().orderTop.IndexOf(gameObject) != 0) return; GameObject.Find("Main Camera").GetComponent<SpawnTriangles>().orderTop.Remove(this.gameObject); Destroy(this.gameObject); } if(Input.GetKeyDown(KeyCode.RightArrow) && canClick && transform.name == "2") { if(GameObject.Find("Main Camera").GetComponent<SpawnTriangles>().orderRight.IndexOf(gameObject) != 0) return; GameObject.Find("Main Camera").GetComponent<SpawnTriangles>().orderRight.Remove(this.gameObject); Destroy(this.gameObject); } if(Input.GetKeyDown(KeyCode.DownArrow) && canClick && transform.name == "3") { if(GameObject.Find("Main Camera").GetComponent<SpawnTriangles>().orderDown.IndexOf(gameObject) != 0) return; GameObject.Find("Main Camera").GetComponent<SpawnTriangles>().orderDown.Remove(this.gameObject); Destroy(this.gameObject); } if(Input.GetKeyDown(KeyCode.LeftArrow) && canClick && transform.name == "4") { print(GameObject.Find("Main Camera").GetComponent<SpawnTriangles>().orderLeft.IndexOf(gameObject).ToString()); if(GameObject.Find("Main Camera").GetComponent<SpawnTriangles>().orderLeft.IndexOf(gameObject) != 0) return; GameObject.Find("Main Camera").GetComponent<SpawnTriangles>().orderLeft.Remove(this.gameObject); Destroy(this.gameObject); } } private void OnCollisionEnter2D(Collision2D other) { GameObject.Find("protect").transform.SetParent(Camera.main.transform); if(other.transform.name == "protect") Destroy(this.gameObject); if(other.transform.name == "click") canClick = true; } void Look() { Vector3 diff = (GameObject.Find("protect").transform.position - transform.position); float angle = Mathf.Atan2(-diff.y, -diff.x); transform.rotation = Quaternion.Euler(0f, 0f, angle * Mathf.Rad2Deg); } void Move() { transform.position = Vector3.MoveTowards(transform.position, GameObject.Find("protect").transform.position, 6 * Time.deltaTime); } }
Editor is loading...