Unity制作RPG游戏——按键功能的分类与实现

这一部分跟大家分享一个游戏开发中一个必须明白的问题,那就是怎么设计按键,有哪几种按键,怎么实现?

一、按键的种类

简单来说,一般有三类,

  • press signal :键位输入等,按下时获取并更新输入
  • once trigger signal:跳跃、(非蓄力)攻击等,当玩家按下按钮时,只执行一次便结束
  • double trigger signal:连击打combo,按键较少需要区分按下一次和短时间按下两次的功能时

先考虑前面两种状态,我们可以设计一个MyButton类,专门用于获取相应的状态。

public class MyButton_TEST
{
    //press signal
    public bool OnPressing;

    //once trigger
    public bool OnPressed;
    public bool OnReleased;

    private bool curstate;
    private bool laststate;

    //double trigger
    public bool isExtending;
    public bool isDelaying;


    public void Tick(bool input)
    {
        //按键输入
        curstate = input;
        OnPressing = curstate;

        OnPressed = false;
        OnReleased = false;

        if(curstate != laststate)
        {
            if(curstate == true)
            {
                OnPressed = true;
            }
            else
            {
                OnRelea
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值