怎样制作一个回旋斧 2D篇
【参考视频】
url:bilibili - 【中文字幕】在2D中重现:战神4奎爷投掷和召回寒冰之斧的攻击方式
这个视频中不仅实现了回旋斧的制作,还实现了相机震动、以及一些特效效果丰富体验。有兴趣的小伙伴可以观看这个视频,这里我只实现普通的回旋斧制作。
【PS:我实现的方式与这位UP有些不同,若是有错误请指正】
一、打开初始资源
下载地址 https://pan.baidu.com/s/1L5APoVJundN1IUDphSNUBg
提取码:v4m2
- 打开Scenes文件夹下的第一个场景,这个场景已经实现了部分功能(玩家移动,敌人攻击,按空格敌人血量会减少)。
- 打开Sprites文件夹,找到weapon斧头,将其拖拽到Player的子物体中,并调整Position和Sorting Layer以显示在正确的位置
二、在Scripts/01文件夹下新建C#脚本 Weapon
(1)首先来实现物体的旋转,在点击斧头物体按E进行旋转可知斧头是围绕Z轴进行旋转的。简单的旋转只需以下代码即可:
public class Weapon: MonoBehaviour
{
[Header("旋转参数")]
[SerializeField]
float rotateSpeed = 1000f; // 旋转速度
private void Update()
{
SelfRotate();
}
void SelfRotate()
{
// 斧头围绕Z轴顺时针旋转
transform.Rotate(-Vector3.forward * rotateSpeed * Time.deltaTime);
}
}
(2)接下来实现鼠标点击某个位置,斧头会旋转并移动到该位置。
新建两个变量 移动速度moveSpeed , 目标位置 targetPos
[Header("移动参数")]
[SerializeField]
float moveSpeed = 10f; // 移动速度
Vector2 targetPos; // 鼠标点击位置
private void Update()
{
SelfRotate();
Movement();
// 点击鼠标左键