赞 | 0 |
VIP | 0 |
好人卡 | 2 |
积分 | 4 |
经验 | 31761 |
最后登录 | 2025-6-6 |
在线时间 | 1769 小时 |
- 梦石
- 0
- 星屑
- 366
- 在线时间
- 1769 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
這是F1中關於Input內的說明6 i, B$ ]+ I: i% J3 d; b0 t
" v H* c. E0 l" n( z) l! @. r
Input.press?(num)
' H4 ^: I1 R/ Z: d' P: _9 f. R
) I* x5 q' |$ t' A; ?判断与编号 num 对应的按钮是否现在被按下。
2 l1 O; `5 ]! I- `6 L& ^) {如果按下返回 true,未按下则返回 false。5 f9 _4 r$ m5 M# V3 s8 f6 M
' N4 n! `! ^3 i% }
if Input.press?(Input::C)
7 ?* d/ m" f4 }( a4 C! d- Z do_something
+ Q" }) {" }: O& X& [7 bend 3 c8 k4 R9 @: _3 F; W! M9 e
+ e% z2 t7 n9 M' L$ O8 c
Input.trigger?(num) b3 m5 W4 V( S& K4 w# M
) b) X1 s9 j$ n! \! x( r* s判断与编号 num 对应的按钮是否重新被按下。7 v# b( [" A9 M/ A7 e2 s% q
只有从未按下状态向按下状态变化的瞬间被认定是「重新被按下」。
7 Z M9 t+ _6 K2 u8 T! Q如果按下返回 true,未按下则返回 false。
4 a0 _+ }' }) w/ S ?2 J. |" Z! v, {
Input.repeat?(num) 1 D. J9 B" A) d% R( K9 j" Q
) V, g2 J0 z& X! ^# E0 l5 l判断与编号 num 对应的按钮是否重新被按下。
3 C U9 P9 j) f3 W和 trigger? 不同的是,其考虑了连续按下按钮时的重复。9 n- T( n, Z d4 z6 d
如果按下返回 true,未按下则返回 false。. A( }. |$ F8 x
6 ?5 v3 L1 ~* [4 a' d% f4 q+ v8 ]$ C* R4 |/ N p
F1的說明有些糊裡糊塗的
5 j& \, a. f7 Z! g5 v! u! G直接觀察全鍵盤中的寫法= =
! I: g) [2 v# q
" s) b# c1 ~4 ? V' N) |( f推斷press?是「只要是按下的情況下就成立」
+ v: p( \1 m7 X6 t! G! [! |
$ F0 I6 p2 J6 a- g+ ztrigger?為「按下的那瞬間」條件成立,也就是說按下後若沒放開,不會再重新執行結果
0 O+ }$ X, F3 x% n+ n7 y! h* j. q$ n2 C3 p
repeat?則是按下後@R_Key_Repeat[rkey] 會+1
& l( o% t& ?( D; M' n5 e) A9 |當@R_Key_Repeat[rkey]的值大於設定且!@R_Key_Repeat[rkey].nil?
# U7 \, f4 t3 s# x@R_Key_Repeat[rkey]值會重新轉為0
( ]) ~+ z1 ^6 p( F且結果為true4 O0 M1 K( z, o0 f! H Q
所以推斷為「持續按下按鍵一定時間後,結果成立」
* q1 j% A/ g9 a1 Z" S1 y% U9 J- C& T9 V
XAS_3.82中判斷武器 def right_hand_button_update 中也是用 trigger? 來判斷
6 O8 i8 i$ T8 L {3 _1 ] |
|