using System.Collections; using System.Collections.Generic; using UnityEngine; public class TestLauncher : MonoBehaviour { public TestGrenade bullet; public Transform shadow; public Transform start; public float speed = 1; SpriteRenderer sprite; // Start is called before the first frame update void Start() { sprite = GetComponent(); } // Update is called once per frame void Update() { Vector3 screenPos = Input.mousePosition; Vector2 target = Camera.main.ScreenToWorldPoint(screenPos); Vector2 dir = Vector2.ClampMagnitude(target - (Vector2)transform.position, 1); Vector3 move = dir * speed * Time.deltaTime; float x = move.x; if (x > 0) { sprite.flipY = false; } else if (x < 0) { sprite.flipY = true; } transform.rotation = Quaternion.Euler(0, 0, Mathf.Rad2Deg * Mathf.Atan2(dir.y, dir.x)); Shot(); } void Shot() { if (Input.GetButtonDown("Fire1")) { //Debug.Log("Shoot"); TestGrenade b = TestGrenade.Instantiate(bullet); b.gameObject.SetActive(true); b.transform.position = start.position; b.pseudoPos = new TestPseudoVec3(start.position.x, start.position.y, 0.1f); float speed = 5; b.velocity = new TestPseudoVec3(transform.right.x * speed, transform.right.y * speed, 3f); } } }