| 赞 | 0 |
| VIP | 0 |
| 好人卡 | 2 |
| 积分 | 7 |
| 经验 | 31761 |
| 最后登录 | 2026-2-12 |
| 在线时间 | 1808 小时 |
- 梦石
- 0
- 星屑
- 687
- 在线时间
- 1808 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
這是F1中關於Input內的說明
9 a, _3 S% I9 Y8 y! T
3 M+ c$ B2 m1 P, N; G' d/ QInput.press?(num) , K9 y* k6 {1 _( l5 W
+ {4 j C- Q1 O% I$ h判断与编号 num 对应的按钮是否现在被按下。 {7 q }) @0 g# m: i% h
如果按下返回 true,未按下则返回 false。, q# E$ l7 q2 J
' n: D ] x1 p. b
if Input.press?(Input::C)0 g5 v; R. F1 \ j0 P
do_something
( Z6 `7 A' X- m; w H8 hend
; Y/ N; l7 a2 F/ e1 ~/ C" }
0 v' Q4 n: m$ B4 H# g+ Y5 v5 XInput.trigger?(num) 4 h: [. j& p; |& i( l% Y
# O7 d, G1 w2 b- }" c
判断与编号 num 对应的按钮是否重新被按下。& ^) Q" X, k. D0 D3 y
只有从未按下状态向按下状态变化的瞬间被认定是「重新被按下」。* `5 ]8 f9 ~2 s& o" `+ \' h! s
如果按下返回 true,未按下则返回 false。1 ^# g) l& Y# e, k6 X
4 w! n+ J7 L' \ I
Input.repeat?(num) / z! q, ]* t5 m! V
s/ p5 Z" r& I判断与编号 num 对应的按钮是否重新被按下。
: w E7 b; d4 |和 trigger? 不同的是,其考虑了连续按下按钮时的重复。
3 i0 k, S+ L3 ?5 Z3 R如果按下返回 true,未按下则返回 false。
# G1 r; L8 T+ t/ [: M0 a' C
& V& M: m z! ], |0 K( T2 b
* l1 K6 K& W/ CF1的說明有些糊裡糊塗的& l: d" X P/ A4 Y4 U: X/ o/ @
直接觀察全鍵盤中的寫法= =
6 v0 b, A# V8 u, u {" E, ]% s8 P! L j7 v: d( j1 S0 u' f
推斷press?是「只要是按下的情況下就成立」4 \$ s8 ]4 T1 W0 y
$ z1 z1 V1 o4 w$ ~+ Ftrigger?為「按下的那瞬間」條件成立,也就是說按下後若沒放開,不會再重新執行結果$ a' g% P, X7 ]! Z
3 f. S4 M% f' j9 s; @repeat?則是按下後@R_Key_Repeat[rkey] 會+1/ N. j: w% C! p' h6 Z$ m' i" u
當@R_Key_Repeat[rkey]的值大於設定且!@R_Key_Repeat[rkey].nil?
9 k* x5 u5 o ]@R_Key_Repeat[rkey]值會重新轉為0) B1 j0 o( p0 u+ j/ I% j R" b
且結果為true2 r( o5 g: R3 C% }6 ], N L
所以推斷為「持續按下按鍵一定時間後,結果成立」& z: h3 e8 W# _
& B; l7 L& S5 n7 U2 }8 t/ p5 AXAS_3.82中判斷武器 def right_hand_button_update 中也是用 trigger? 來判斷
+ }2 j W k( ?1 Y |
|