当前位置: 首页 > news >正文

外贸网站建设排名网站更新提醒

外贸网站建设排名,网站更新提醒,建站网站哪个最好,wordpress 批量导入文章4.1 游戏中一般都会有各种各样的技能#xff0c;或者其他需要按一定的时间顺序去执行的功能。 这里我写出了一个时间线节点#xff0c;就像是在播放动画一样#xff0c;按一定的阶段去执行某些功能 # # Timeline # # - author: zhangxuetu # - datetime: 2023-09-24 23… 4.1 游戏中一般都会有各种各样的技能或者其他需要按一定的时间顺序去执行的功能。 这里我写出了一个时间线节点就像是在播放动画一样按一定的阶段去执行某些功能 # # Timeline # # - author: zhangxuetu # - datetime: 2023-09-24 23:10:53 # - version: 4.1 # class_name _TimeLine extends Node## 执行完这个阶段时发出这个信号 signal executed_stage(stage, data) ## 手动停止执行 signal stopped ## 暂停执行 signal paused ## 继续执行 signal resumed ## 执行完成 signal finished## process 执行方式 enum ProcessExecuteMode {PROCESS, ## _process 执行PHYSICS, ## _physics_process 执行 }enum {UNEXECUTED, ## 未执行EXECUTING, ## 执行中PAUSED, ## 暂停中 }## 时间阶段名称。这关系到 [method execute] 方法中的数据获取的时间数据 export var stages : Array [] ## process 执行方式。如果设置为 [member PROCESS] 或 [member PHYSICS] 以外的值 ## 则当前节点的线程将不会执行 export var process_execute_mode : ProcessExecuteMode ProcessExecuteMode.PROCESSvar _last_data : Dictionary var _point : int -1:set(v):if _point ! v:_point vif _point 0 and _point stages.size():self.executed_stage.emit(stages[_point], _last_data) var _time : float var _execute_state : int UNEXECUTED:set(v):if _execute_state v:return_execute_state vmatch _execute_state:UNEXECUTED:set_process(false)set_physics_process(false)EXECUTING:if process_execute_mode ProcessExecuteMode.PROCESS:set_process(true)elif process_execute_mode ProcessExecuteMode.PHYSICS:set_physics_process(true)PAUSED:set_process(false)set_physics_process(false)func _ready():set_process(false)set_physics_process(false)func _process(delta):_exec(delta)func _physics_process(delta):_exec(delta)func _exec(delta):_time - deltawhile _time 0:_point 1if _point stages.size():_time _last_data[stages[_point]]else:_point -1_execute_state UNEXECUTEDself.finished.emit()breakfunc get_time_left():return _timefunc get_last_data() - Dictionary:return _last_datafunc get_last_stage():return stages[_point]## 执行功能。这个数据里需要有 [member stages] 中的 key 的数据且需要是 [int] 或 [float] ## 类型作为判断执行的时间。否则默认时间为 0 func execute(data: Dictionary):_last_data data_time 0_point 0if not stages.is_empty():_execute_state EXECUTINGfor stage in stages:_last_data[stage] float(data.get(stage, 0))# 执行时会先执行一下_time _last_data[stages[0]]_exec(0)else:printerr(没有设置 stages必须要设置每个执行的阶段的 key 值)## 获取执行状态 func get_execute_state():return _execute_state## 是否正在执行 func is_executing():return _execute_state EXECUTING## 停止执行 func stop():if _execute_state EXECUTING:_execute_state UNEXECUTEDself.stopped.emit()## 暂停执行 func pause():if _execute_state EXECUTING:_execute_state PAUSED## 恢复执行 func resume():if _execute_state PAUSED:_execute_state EXECUTINGself.resumed.emit()## 跳跃到这个阶段 func goto(stage, emit_stage_changed_signal: bool true):if _execute_state EXECUTING:if stages.has(stage):_point stage_time 0if emit_stage_changed_signal:self.executed_stage.emit()else:printerr(stages 中没有 , stage, . 所有 stage: , stages)这里我进行添加整个时间中有哪些阶段我想一个技能需要有下面几个阶段 start开始执行功能一般用于判断这个条件下是否可以进行执行这个功能以便进行功能的打断等操作before 执行功能时的施放动作前摇execute 具体执行出的功能after 执行功能后的动画结束refresh 技能刷新阶段。 这是我的理解可以自行随意设计。 下面的代码我创建了只有一个 Node2D 作为根节点的场景进行测试 # # Time Line Test # # - author: zhangxuetu # - datetime: 2023-09-24 21:51:11 # - version: 4.1 # extends Node2Dvar timeline _TimeLine.new()func _ready():timeline.stages [start, before, execute, after, refresh]add_child(timeline)timeline.executed_stage.connect(_executed_stage)timeline.execute({name: 技能名称,start: 0,before: 0.4,execute: 0.2,after: 0.2,refresh: 3,})func _executed_stage(stage, data):match stage:start:print( 开始执行: , data[name])before:print( 播放动作)# 临时修改执行时间延长或缩短时间data[execute] 2execute:print( 实际执行功能这里写这个阶段要做的事情)after:print( 已经执行完功能进行后续结束动作)refresh:print( , data[name], 结束动作完成开始进行倒计时刷新)这里我在执行这个技能的时候传入上面各个阶段所需要的时间的数据然后在 executed_stage 信号中进行判断各个阶段所需要处理的功能。 这样一个技能节点即可完成使用时调用 execute 方法即可
http://www.hkea.cn/news/14555834/

相关文章:

  • 做微网站哪家好设一个网站链接为安全怎么做
  • 常州网站建设培训cdn资源访问出现问题怎么办
  • 网站首页模板怎么做策划外贸网站制作价格表
  • 做网站没装数据库上海闵行网站建设公司
  • 网站做得好的公司丽水做网站
  • 注销备案号 网站wordpress同步谷歌博客
  • 免费网站建设apk免费模式营销案例
  • 建站模板外贸asp网站目录权限
  • 网站缩略图制作公司产品展示网站源码
  • 网站文件命名规则接外包网站
  • 电商网站设计论文张家港市建设局网站
  • 做挂件的网站wordpress 域名访问还是临时域名
  • 没有公司做网站犯法吗邢台最新消息
  • 做推广便宜的网站wordpress js 插件
  • 网站开发与运行环境程序ui设计
  • 四川鸿业建设集团公司网站抖音代运营正规公司
  • seo优化能提高网站的流量吗长沙企业建网站
  • 青岛做公司网站的多吗wordpress 头像 virtos
  • 广州商城网站建设移动门网站建设
  • 合肥公司建设网站首页360免费建站永久免费
  • 虚拟主机销售网站模板网页图片文字识别
  • 孟村网 网站北京网站制作网站
  • 网站建设怎么入会计账中小型企业建设网站
  • 无为做网站ui设计已经不火了
  • app小程序网站开发是什么纪念币商城网站建设
  • 做网站首页置顶多少钱网站改版对网站优化影响最大的问题是什么
  • 打开山东城市建设职业学院网站设计资料网站
  • 建设部网站实名制举报查企业用什么软件
  • 泉州网站的建设笑傲网站建设
  • 为什么企业需要建设网站?萧山网页设计