UI update 02

This commit is contained in:
FloatGaming
2026-06-30 21:21:30 +08:00
parent b2a1e307a4
commit f62f643cfc
1666 changed files with 211081 additions and 22799 deletions
@@ -0,0 +1,82 @@
using UnityEngine;
#if ENABLE_INPUT_SYSTEM
using UnityEngine.InputSystem;
#endif
namespace KD.Destro2D{
public class BasicPlayerControl2D : MonoBehaviour
{
#if ENABLE_INPUT_SYSTEM
public InputActionAsset inputActions;
public float bulletCD;
InputAction move;
InputAction missileAttack;
InputAction bulletAttack;
Rigidbody2D rb;
public float speed;
Vector2 lookDirn;
Vector2 dirn;
public GameObject missilePrefab;
public GameObject bulletPrefab;
public float missileSpeed;
public float shootOffset;
float t;
void OnEnable()
{
move = inputActions.FindAction("Player/Move",true);
missileAttack = inputActions.FindAction("Player/AltAttack",true);
bulletAttack = inputActions.FindAction("Player/Attack",true);
missileAttack.Enable();
bulletAttack.Enable();
move.Enable();
rb = GetComponent<Rigidbody2D>();
}
void Start()
{
missileAttack.performed += _ => ShootMissile(missilePrefab);
}
void OnDisable()
{
missileAttack.Disable();
bulletAttack.Disable();
move.Disable();
}
// Update is called once per frame
void Update()
{
t+=Time.deltaTime;
Move();
Look();
if(bulletAttack.IsPressed()){
if(t < bulletCD) return;
ShootMissile(bulletPrefab);
t = 0;
}
}
void FixedUpdate()
{
rb.AddForce(dirn);
}
void ShootMissile(GameObject prefab)
{
float angle = Mathf.Atan2(lookDirn.y,lookDirn.x) * Mathf.Rad2Deg;
Quaternion missileRotn = Quaternion.AngleAxis(angle,transform.forward);
Rigidbody2D missile = Instantiate(prefab,(Vector2)transform.position + lookDirn.normalized * shootOffset,missileRotn).GetComponent<Rigidbody2D>();
missile.AddForce(lookDirn.normalized * missileSpeed);
}
void Look()
{
Vector3 mousePos = Camera.main.ScreenToWorldPoint(Mouse.current.position.ReadValue());
mousePos.z = transform.position.z;
lookDirn = mousePos - transform.position;
}
void Move()
{
float dirval = move.ReadValue<float>();
dirn = transform.right * dirval * speed;
}
#endif
}
}