-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPlayerControl.cs
More file actions
60 lines (53 loc) · 1.44 KB
/
PlayerControl.cs
File metadata and controls
60 lines (53 loc) · 1.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerControl : MonoBehaviour
{
//碰撞效果
public GameObject HitPre;
//爆炸效果
public GameObject BombPre;
//血量
public int hp = 3;
private Rigidbody rBody;
// Start is called before the first frame update
void Start()
{
rBody = GetComponent<Rigidbody>();
}
// Update is called once per frame
void Update()
{
//水平轴
float horizontal = Input.GetAxis("Horizontal");
//垂直轴
float vertical = Input.GetAxis("Vertical");
//方向
Vector3 dir = new Vector3(horizontal, 0, vertical);
if(dir != Vector3.zero)
{
//移动
rBody.velocity = dir * 2f;
}
}
//碰到碰撞体调用
private void OnCollisionEnter(Collision collision)
{
//如果碰到墙
if (collision.collider.tag == "Wall")
{
hp--;
if(hp <= 0)
{
AudioManager.Instance.PlayBomb();
//死了
Instantiate(BombPre, transform.position, Quaternion.identity);
Destroy(gameObject);
}
else
{
Instantiate(HitPre, collision.contacts[0].point, Quaternion.identity);
}
}
}
}