麦扣 3DRPG游戏开发教程 17-18集

麦扣 3DRPG游戏开发教程 17-18集

🎮

17 敌人的接受伤害


如果动画系统里的动画打不上关键帧,那么就回到素材,ctrl+d,复制一份,调整更换掉(需要回到状态机黑色连线框对应的更改掉)

然后就可以打上关键帧🌶


18 敌人的死亡

每次试玩数值都被更改,这是scriptObect特性

sqrt是开方, sqr是平方


拉脱战后

史莱姆应该回到原点 并且转头也应该在原点

在awake应该记录

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
    private Quaternion guardRotation;
//------------------------------------
private void Awake()
{
//自有组件、自有变量放在awake
anim = GetComponent<Animator>();
agent = GetComponent<NavMeshAgent>();
speed = agent.speed;
guardPos = transform.position;
⭐ guardRotation = transform.rotation; ⭐
remainLookAtTime = lookAtTime;
characterStats = GetComponent<CharacterStats>();
}
//-----------------------------------
switch (enemyStates)
{
case EnemyStates.GUARD:
isChase = false;
if (transform.position != guardPos)
{
isWalk = true;
agent.isStopped = false;
agent.destination = guardPos;
if (Vector3.SqrMagnitude(guardPos - transform.position) <= agent.stoppingDistance)
{
isWalk = false;
transform.rotation = ⭐Quaternion.Lerp(transform.rotation,guardRotation,.01f);⭐
}
}
break;

使其慢慢旋转的函数

Quaternion.Lerp(transform.rotation,guardRotation,.01f);

这个函数会从当前的数值慢慢转换到 最初记录值 会经历0.01秒


动画系统里👉布尔通常是代表状态 trigger 通常表示 当时那一下触发的条件


启用某个组件

1
agent.enabled = false;

麦扣 3DRPG游戏开发教程 17-18集

https://www.llbwy.com/2022/10/15/b站m_studio3drpg17-18/

作者

发布于

2022-10-15

更新于

2022-12-19

许可协议