查看: 1696|回复: 2
打印 上一主题 下一主题

[求助] Tick类型的函数怎么只执行一次,或者延迟执行

[复制链接]

22

主题

93

回帖

51

积分

Lv.3 矿物能手

UID
8595325
小麦
0
金锭
159
下界之星
0
跳转到指定楼层
楼主
发表于 2021-8-11 10:46:22 来自手机 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式 IP:浙江
Tick类型的函数怎么只执行一次,或者延迟执行。

比如监听BlockUseEvent的执行函数

7

主题

104

回帖

257

积分

Lv.5 农牧专家

UID
8188503
小麦
195
金锭
1039
下界之星
0
沙发
发表于 2021-8-11 12:32:39 | 只看该作者 IP:广东
加个bool变量进入时判断修改不就好了
if  self.notTick:
    return
self.notTick=True

22

主题

317

回帖

174

积分

Lv.4 怪物猎人

UID
373726
小麦
3
金锭
611
下界之星
0

开发者认证勋章

板凳
发表于 2021-8-12 04:29:07 | 只看该作者 IP:山西
在手机上点击一次方块只会触发一次BlockUseEvent,电脑上右键方块才会多次触发。所以如果你不打算上架电脑,可以不处理此问题。
玩家使用方块是客户端行为,然后同步到服务端的。所以你只需要监听客户端使用方块的事件。因为你是要适配电脑,所以需要监听鼠标右键,如果玩家右键方块,就判断某个变量是不是True,是的话就return,不是的话就往下走,并把这个变量设为True,然后去执行你的逻辑。玩家松开鼠标右键时,把这个变量再次设为False。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

返回顶部