Unity-黑暗之魂复刻-按钮类

本文介绍了一种按钮状态管理的方法,通过MyButton类实现按钮的按下、释放和是否正在按下的判断。同时,提到了双击检测的概念,即在用户松开按键一段时间内输出信号。

将按钮进行抽象
此类提供三个功能

1.IsPressing得知当前用户输入按钮的状态
2.OnPressed目前是否按下了此按钮
3.OnReleased目前是否释放了按钮

public class MyButton {
    public bool IsPressing = false;
    public bool OnPressed = false;
    public bool OnReleased = false;

    private bool curState = false;
    private bool lastState = false;

    public void Tick(bool input)
    {
        curState = input;
        IsPressing = curState;
        OnPressed = false;
        OnReleased = false;
        if(curState != lastState)
        {
            if(curState == true)
            {
                OnPressed = true;
            }
            else
            {
                OnReleased = true;
            }
        }
        lastState = curState;
    }
}

DoubleTrigger
IsExtending:
在用户松开按键一段时间内输出信号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值