赞 | 0 |
VIP | 0 |
好人卡 | 2 |
积分 | 5 |
经验 | 31761 |
最后登录 | 2025-9-10 |
在线时间 | 1789 小时 |
- 梦石
- 0
- 星屑
- 507
- 在线时间
- 1789 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
這是F1中關於Input內的說明, E9 q8 S$ G& F( D; E
0 ? F% h( t- E! ^
Input.press?(num) 0 _: X( q4 u5 v1 R
3 B+ E/ ]1 b8 @
判断与编号 num 对应的按钮是否现在被按下。
$ }7 t4 O% L3 @. o2 x$ M如果按下返回 true,未按下则返回 false。
4 J- i: Z+ C4 _' O( d$ i `2 g& Q
& [# a! u, C2 Z, K, ]( z- a' Nif Input.press?(Input::C), \* t( P. D/ n. x$ [- Z7 s8 k
do_something
# }" `3 n9 U. p: n$ v. j- M3 Eend
: F" s0 Z" |0 u1 e; N+ B# x5 B' }" Z" Z
Input.trigger?(num) ( V. L9 X, q- J q, x6 d
& Z' s) o0 O7 Z$ Z, L
判断与编号 num 对应的按钮是否重新被按下。
$ a( F; ^/ _7 S9 L' W( b只有从未按下状态向按下状态变化的瞬间被认定是「重新被按下」。* g3 S4 U3 P. w: Q7 ?
如果按下返回 true,未按下则返回 false。
7 d) H1 h( p6 F4 Y8 I) A# b. U; `
1 p4 K7 o1 x8 u% w: eInput.repeat?(num) & ?5 y9 r, m; R2 E7 p6 l
. e6 N8 { s8 s+ }) E9 h判断与编号 num 对应的按钮是否重新被按下。
+ N2 S6 ]8 {! I+ R# f; K W和 trigger? 不同的是,其考虑了连续按下按钮时的重复。& F- m) C6 l# t. P
如果按下返回 true,未按下则返回 false。
3 {# P' i1 B8 Y w/ [, [3 J
* z* M" o, ]! B. F, ^6 |& j. z, C. ]% I" D5 q! I* X' ]3 L
F1的說明有些糊裡糊塗的
; T7 `6 @+ k2 U! r) ?直接觀察全鍵盤中的寫法= =
z: u; T0 v) n. c& C; _6 ~' W7 D) J0 Y" l3 _
推斷press?是「只要是按下的情況下就成立」8 P! |4 ]# t, m* s/ x# ]
7 x7 {3 T* S/ S0 _) {0 wtrigger?為「按下的那瞬間」條件成立,也就是說按下後若沒放開,不會再重新執行結果
! R) A3 O' n. t, X' `
0 X/ W$ \5 M' y! L4 Lrepeat?則是按下後@R_Key_Repeat[rkey] 會+1
/ c8 o" K _7 X$ I6 x當@R_Key_Repeat[rkey]的值大於設定且!@R_Key_Repeat[rkey].nil?
# W9 w, ]/ }, N9 C6 I# M@R_Key_Repeat[rkey]值會重新轉為0
' f5 Y0 J H4 H7 S8 C$ e- x) I且結果為true
0 g7 [6 B6 q# i( V3 l- b5 X& o; m所以推斷為「持續按下按鍵一定時間後,結果成立」, b6 _. x/ g# t
- V) X. L, H; D8 m
XAS_3.82中判斷武器 def right_hand_button_update 中也是用 trigger? 來判斷. \: p! R: L# `9 _2 T$ T# R) N; c
|
|