| 赞 | 0 |
| VIP | 0 |
| 好人卡 | 2 |
| 积分 | 7 |
| 经验 | 31761 |
| 最后登录 | 2026-2-12 |
| 在线时间 | 1808 小时 |
- 梦石
- 0
- 星屑
- 687
- 在线时间
- 1808 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
這是F1中關於Input內的說明
8 {% k8 y/ x2 k# F) O, i
% P& S3 b& {/ q. U5 |0 _2 q8 fInput.press?(num) # n! G3 d! A8 w% W8 b7 q- J1 y
4 k# J T/ D; C C
判断与编号 num 对应的按钮是否现在被按下。
/ @0 t- x/ d% z1 v0 L3 R$ f. t如果按下返回 true,未按下则返回 false。8 p: @ Z/ P& o2 J
# E: M. V" U: n7 p1 M' M
if Input.press?(Input::C)
* X+ D* _9 G) u do_something; R; L/ ^9 d0 t7 S/ ^
end
2 d3 m, F+ G/ B" ]1 m+ R: u2 d, J2 l& ^9 h$ c
Input.trigger?(num) ! w( N. O$ L- i! r
0 X G/ b4 Y! m2 ~
判断与编号 num 对应的按钮是否重新被按下。
2 U4 N# N2 e/ S9 b* }" \; i只有从未按下状态向按下状态变化的瞬间被认定是「重新被按下」。
2 c7 \) w$ c/ c" o- [* h如果按下返回 true,未按下则返回 false。8 Y, l& G% Y4 C/ {* }: B
8 `& T$ F& q" C3 @, Y' Z$ kInput.repeat?(num)
# @* E8 ^( ], O2 e" c7 P9 u4 ^
0 T. ~! y% ]' @7 T+ @# t判断与编号 num 对应的按钮是否重新被按下。
, ]- }4 j9 M/ `' t. J9 ?4 l7 i9 O6 L和 trigger? 不同的是,其考虑了连续按下按钮时的重复。
! J3 z$ R& z. c& U如果按下返回 true,未按下则返回 false。
& B- r% k) o: x4 }3 t+ t6 @& r
* G/ D B& ^9 N- ]/ P7 b, \* X
; s. u$ T- }! H* JF1的說明有些糊裡糊塗的
# C% x" x" R# f9 C2 Y. v直接觀察全鍵盤中的寫法= =
. u0 w$ G6 V. G9 C0 N+ L
, s0 ]7 g# ~) e; ~, `/ U Y推斷press?是「只要是按下的情況下就成立」! m) L$ v5 g. i6 T- u3 J7 q3 V- t
; |& C4 U/ [+ c0 X6 u
trigger?為「按下的那瞬間」條件成立,也就是說按下後若沒放開,不會再重新執行結果) V! J7 ?) N C% x9 Y! X* M9 n' B
0 n. t0 g2 ^7 X0 V7 _4 `repeat?則是按下後@R_Key_Repeat[rkey] 會+1- s0 W9 a* t$ j% q- f7 P# H
當@R_Key_Repeat[rkey]的值大於設定且!@R_Key_Repeat[rkey].nil?, x# ^1 i; [0 H9 V. _5 j: Z
@R_Key_Repeat[rkey]值會重新轉為0
) b: T2 y3 I: ~5 I1 E& O2 L, V0 X( V& M且結果為true
7 t9 k* B; W. K7 G1 T+ x% P所以推斷為「持續按下按鍵一定時間後,結果成立」
2 H! Y- G: @) C2 `/ I+ j% S' ?) j9 C. d( t" @# h
XAS_3.82中判斷武器 def right_hand_button_update 中也是用 trigger? 來判斷
* @0 K l* o5 j+ [1 N |
|