赞 | 0 |
VIP | 0 |
好人卡 | 2 |
积分 | 2 |
经验 | 31761 |
最后登录 | 2025-4-18 |
在线时间 | 1746 小时 |
- 梦石
- 0
- 星屑
- 193
- 在线时间
- 1746 小时
- 注册时间
- 2009-7-12
- 帖子
- 443
|
這是F1中關於Input內的說明
9 A$ ~: }4 B; I, @; E) C; ~" o6 r8 X' \ d, ^# L/ N6 Y7 d1 A$ S
Input.press?(num) ' r4 G7 k6 z1 A5 U6 V1 w/ ?
+ A5 f% {1 O9 K
判断与编号 num 对应的按钮是否现在被按下。
5 U; W5 ?6 K6 z8 i0 _$ D& J如果按下返回 true,未按下则返回 false。, F5 Y4 @, S4 {( R4 b8 _
! r8 M# e$ c0 Y. _
if Input.press?(Input::C)
' z+ f1 U) G& y3 Z& O/ Z do_something
+ G! r9 @8 x1 Uend 7 F- \. t. R. W& U2 e% ^+ g" K3 `- u" L$ V
: R4 Q6 @$ O* T; [$ o
Input.trigger?(num)
; \: H8 j) l) E# p
* T( N* Z' j' g1 L判断与编号 num 对应的按钮是否重新被按下。/ u& B# Y; S' G3 R0 |
只有从未按下状态向按下状态变化的瞬间被认定是「重新被按下」。8 p. x6 g7 x% m7 l( v7 J
如果按下返回 true,未按下则返回 false。
1 e5 \7 b* j0 {1 x1 G; T. Q5 J1 |; y* |/ T) \- N- q; h
Input.repeat?(num)
l8 v' k4 P) D' L) d: s; V/ m, p3 b
7 J2 j7 K' a( P0 \! t) d# f2 S1 X判断与编号 num 对应的按钮是否重新被按下。
% R5 {% H/ c4 {- t和 trigger? 不同的是,其考虑了连续按下按钮时的重复。* |" E: V8 b. c6 v7 W5 {
如果按下返回 true,未按下则返回 false。
8 s% i Q* I/ s
# |. b$ @( d% A- V; a/ P" E% f3 T0 D. ?/ H1 ~
F1的說明有些糊裡糊塗的4 S& d3 g" t' {5 m) J) S
直接觀察全鍵盤中的寫法= =( d$ D4 J, e/ @+ _/ T8 p
1 U- L, p% @1 a; m3 m
推斷press?是「只要是按下的情況下就成立」
8 Y% c7 Y n! n, M* M0 e; u0 S4 D B) g: z, W
trigger?為「按下的那瞬間」條件成立,也就是說按下後若沒放開,不會再重新執行結果
* E+ n5 S" W# |/ A/ Y# c" m. R# [- M- X0 A
repeat?則是按下後@R_Key_Repeat[rkey] 會+13 A1 f0 C& S/ y; _& q* l
當@R_Key_Repeat[rkey]的值大於設定且!@R_Key_Repeat[rkey].nil?
& F8 F0 O3 f$ O8 ~. T/ J@R_Key_Repeat[rkey]值會重新轉為0
9 C' G9 v9 V+ \) T% m5 d且結果為true
) j2 }& L. o% Z# t( \# C# Q1 l' J+ N R所以推斷為「持續按下按鍵一定時間後,結果成立」
& J4 h+ r( r+ F& o$ }: n0 l8 r, W; z& b% F
XAS_3.82中判斷武器 def right_hand_button_update 中也是用 trigger? 來判斷
: a' s: V$ E( f. ^ |
|