1.实现长按功能:当用户按下后0.1s内不会有变化,0.1s后变化然后和普通按同时还原。如下图(橘黄色IsDelaying区域为长按,红色为正常按击,紫色区域为判断双击区域)
增加MyButton代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class MyButton {/// <summary>/// 三种状态(缺省为false)/// </summary>public bool IsPressing = false;public bool OnPressed = false;public bool OnReleased = false;public bool IsExtending = false;//判断双击区域public bool IsDelaying = false;public float extendingDuration = 1.0f;//双击判断区域时常public float delayingDuration = 1.0f;//长按时间时长private bool curState = false;      //目前的状态private bool lastState = false;     //前一次状态private MyTimer extTimer = new MyTimer();private MyTimer delayTimer = new MyTimer();public void Tick(bool input){// StartTimer(extTimer, 1.0f);extTimer.Tick();//推进delayTimer.Tick();curState = input;IsPressing = curState;OnPressed = false;OnReleased = false;IsExtending = false;IsDelaying = false;if (curState != lastState){if(curState ==true ){OnPressed = true;StartTimer(delayTimer, delayingDuration);}else{OnReleased = true;StartTimer(extTimer, extendingDuration);}}lastState = curState;if (extTimer.state == MyTimer.STATE.RUN){IsExtending = true;}if(delayTimer.state == MyTimer.STATE.RUN){IsDelaying = true;}}private void  StartTimer(MyTimer timer,float duration){timer.duration = duration;timer.Go();}
}

修改joystickinput:

 run =( buttonA.IsPressing&& !buttonA.IsDelaying) || buttonA.IsExtending ;jump = buttonA.OnPressed&&buttonA .IsExtending;

新增roll判断条件:
IUserInput:增加publick bool roll
有了roll判断条件的时候ground到roll动画的判断条件就要进行修改(只要一个roll判断);ground到jab的判断也只需要一个roll;在切换jab的时候增加时间判断当forward小于0.1的时候是后跳jab;这样实现了没有方向的时候是后跳而有方向的时候会是翻滚。

Long Press(长按功能)相关推荐

  1. android 截长图 方法,Android实现截屏与截长图功能

    本文实例为大家分享了Android实现截屏与截长图功能展示的具体代码,供大家参考,具体内容如下 Demo在GitHub的地址:ScreenShoot 在Android开发中,有时候会遇到需要截屏分享到 ...

  2. Z-Stack通过按键中断实现长按功能

    一.功能介绍 项目需要实现长按功能,实现按键有2种方式,一种是通过中断.一种KEY_CHANGE事件轮询的方式.由于中断更加的灵敏,这里选择中断的方式.意外的发现,如果开启了中断,那么按键就不会触发K ...

  3. 腾讯测试王者荣耀网速的软件,腾讯游戏启用账号时长共享功能 开启人脸识别测试有效果吗?以《王者荣耀》为试点...

    腾讯游戏启用账号时长共享功能 开启人脸识别测试有效果吗?以<王者荣耀>为试点 2018-11-16 14:22:35  来源:游民星空 扫码可以: 1.在手机上浏览 2.分享给微信好友或朋 ...

  4. 百度免费开放长语音识别功能

    近日,百度AI开放平台向开发者免费开放长语音识别功能,通过SDK调用服务,可将长语音转换为文字.据了解,新版本SDK解除了对时间的限制,开发者无需再将长语音切割成60秒以内的分段,进行调用,提升了转写 ...

  5. 京东商品长图功能来啦 不用改图一键生成长图

    产品是吸引顾客购买的关键,想要提升店铺转化率产品主图优化必不可少?首先基础优化是在设计主图的时候就要注意产品突出,使用场景来设计,根据产品的特点突出卖点,文案搭配要起到辅助的效果等等. 关于主图设计和 ...

  6. Android实现截屏和截长图功能的几种方法

    一般情况下各种型号的手机都会有自带的截屏功能,也会有诸如"开关机键+音量键"的截屏快捷键,只要手机是亮屏状态,都会将手机屏幕的可视区域(包含状态栏)全部截取下来. 如果开发中想要调 ...

  7. import java.io后报错_用JSP+JAVABEAN实现一个根据圆半径求圆面积、圆周长的功能:为什么我的老出错啊错误:...

    用JSP+JAVABEAN实现一个根据圆半径求圆面积.圆周长的功能:为什么我的老出错啊错误: 圆的半径是: 圆的面积是: 圆的周长是: package tools; import java.io.*; ...

  8. Android 实现截屏和截长图功能的几种方法

    欢迎大家关注我的公众号:**牛角尖尖上起舞** 一般情况下各种型号的手机都会有自带的截屏功能,也会有诸如"开关机键+音量键"的截屏快捷键,只要手机是亮屏状态,都会将手机屏幕的可视区 ...

  9. 鸿蒙TouchEvent已实现单击、连续、长按功能,安卓也可以模仿着原理实现(网上绝大多未实现不动长按),这个支持不动长按事件

    原创文章引用请注明出处,文章问题持续优化中. 以下的例子是模仿抖音的刷视频的单击播放.暂停,长按弹出框,连续点击是点赞的效果.连续点击视频时候,视频处于播放或者暂停是不会击穿事件导致视频播放或者暂停的 ...

最新文章

  1. uboot的作用和功能
  2. BCH粉必转 | 围绕BCH建立的相关项目和应用列表汇总
  3. 读书笔记《鸟哥的Linux私房菜-基础学习篇》man page 查询数据后数字的意思
  4. Java程序员的日常—— Arrays工具类的使用
  5. java实现apriori算法_七大经典、常用排序算法的原理、Java 实现以及算法分析
  6. 45岁码农用不到2年时间撸出100款扑克游戏
  7. mysql run sql files_如何在Eclipse DTP中運行多個.sql文件
  8. 通过jQuery源码学习javascript(三)
  9. 巡回沙龙_美浮特全国巡回沙龙第一期结束撒花!
  10. 前端学习(2746):uniapp--基本介绍
  11. 白盒测试中的六种覆盖方法及案例分析
  12. linux shell中实现循环日期的实例代码
  13. 用ASP.NET刷新页面的几种有效方法
  14. weblogic设置classpath、debug端口和log目录
  15. GameEntity(六)—— IChat
  16. CentOS 7之Systemd详解之服务单元设置system.service
  17. 计算机毕业设计springboot微信小程序购物商城源码
  18. 锐捷交换机堆叠配置实例
  19. 团队建设的不同阶段与管理方式
  20. html 获取页面高度css,css怎么获得屏幕的高度?

热门文章

  1. JarvisOJ Basic部分题目wp
  2. (附源码)springboot高校社团管理系统的开发毕业设计231128
  3. 如何给导师发邮件?【附带邮件模板】
  4. 图片地址正确但是无法显示问题
  5. matplotlib 辅助线
  6. 西门子三菱台达PLC读取国网DLT645协议电表数据方案
  7. 树莓派安装AdGuard Home
  8. 照片美妆---人脸老化
  9. 【Ⅰ绪论】2.数据结构的基本概念
  10. 备件采购可应用的几种需求预测方法