【Unity exam02】怎样制作一个回旋斧 2D篇

本文介绍如何在Unity中制作2D回旋斧。通过C#脚本控制斧头围绕Z轴旋转、移动到指定位置并返回玩家手中。文章详细讲解了旋转、移动、碰撞检测等关键步骤,并提供了资源下载链接。
摘要由CSDN通过智能技术生成

怎样制作一个回旋斧 2D篇

在这里插入图片描述

【参考视频】

url:bilibili - 【中文字幕】在2D中重现:战神4奎爷投掷和召回寒冰之斧的攻击方式

这个视频中不仅实现了回旋斧的制作,还实现了相机震动、以及一些特效效果丰富体验。有兴趣的小伙伴可以观看这个视频,这里我只实现普通的回旋斧制作。

【PS:我实现的方式与这位UP有些不同,若是有错误请指正】

一、打开初始资源
下载地址 https://pan.baidu.com/s/1L5APoVJundN1IUDphSNUBg
提取码:v4m2

  1. 打开Scenes文件夹下的第一个场景,这个场景已经实现了部分功能(玩家移动,敌人攻击,按空格敌人血量会减少)。

在这里插入图片描述

  1. 打开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(); 

        // 点击鼠标左键
  
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值