查看: 1977|回复: 7

[有事请教] 关于一个按键对应一个功能

[复制链接]
梦石
7
星屑
2585
在线时间
567 小时
注册时间
2009-4-30
回帖
228
发表于 2012-8-5 17:55:18 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
由于有使用改键脚本,希望不要造成太多问题的情况下,
1 X0 w, D" m9 V" c想让默认的按键变成一键对应一个功能,
& w% l/ D/ f: i- U# i* o不过脚本好像哪边出了问题…
  l( H* U  ?4 ?$ p* k( g) u昨日请ML4455739大大帮在下看了一下,
5 B* P# V, O3 X! V攻击键变成压住就会连续打,8 \/ _  Y* u7 W. W+ |
不知道有没有其他知道XAS的大大可以帮在下看看?
梦石
0
星屑
687
在线时间
1808 小时
注册时间
2009-7-12
回帖
416
发表于 2012-8-24 16:42:24 | 显示全部楼层
trigger?和press?的問題吧?詳細可以看F19 m0 A6 }( b# x7 E
全鍵盤腳本有兩種版本,看你是用哪種的+ @6 r- {. x) y& w
一種是語法跟內建一樣,只是把Input改為Kboard7 B- r6 i+ I/ S- H$ }' J
一種是連後面的都改了
回复

使用道具 举报

梦石
0
星屑
672
在线时间
2184 小时
注册时间
2009-12-6
回帖
571

开拓者

发表于 2012-8-24 17:28:31 | 显示全部楼层
serena718 发表于 2012-8-24 16:42 # k0 T" T" k* i7 r7 H3 E% o3 s
trigger?和press?的問題吧?詳細可以看F1' _+ i* G8 @6 A4 e9 W2 J% e
全鍵盤腳本有兩種版本,看你是用哪種的+ H' S/ B, Z/ u
一種是語法跟內建一樣,只 ...

) s1 _- F: U% T/ P9 ~全键盘这些我知道
1 D; {* A0 o  Y8 F  Y0 C! p* l难倒我的是键位设置那一块" `0 I1 u7 l1 b1 p; K; _# a. E: J
您能帮到LZ么,顺便我也想学习一下
往事简直不堪回首,稍微做点想做的事吧
回复

使用道具 举报

梦石
0
星屑
687
在线时间
1808 小时
注册时间
2009-7-12
回帖
416
发表于 2012-8-24 18:26:33 | 显示全部楼层
這是F1中關於Input內的說明5 h/ a. `. Y/ ^' |3 M' P
. Z6 |, s) E+ f! K; t" B  m
Input.press?(num)
. \$ G$ i2 v. S+ }/ N8 G/ s
$ q& _" D- i( @# p% I判断与编号 num 对应的按钮是否现在被按下。
% m+ H9 i3 Y6 f7 m如果按下返回 true,未按下则返回 false。
4 j/ w9 e9 h; i: c& M& g& Z% Q
3 S, f6 b" c0 m/ y& B
if Input.press?(Input::C): V! [1 u: S$ K2 f4 V9 _# _
  do_something8 a) D" Z1 N' t
end
: F0 d0 t( d6 E9 z/ V* J

& v( f' s) G# @0 JInput.trigger?(num)   }3 j- w/ A4 N+ d. R

' U: O5 ~: c! l& O' N' ^判断与编号 num 对应的按钮是否重新被按下。+ f/ L0 Y6 n  U# \( l" Q+ @3 @
只有从未按下状态向按下状态变化的瞬间被认定是「重新被按下」。
' H) a: a; B$ i3 u如果按下返回 true,未按下则返回 false。! h; t6 `$ W" V# w( ]7 y5 n
/ v7 t/ [# I; n! @
Input.repeat?(num)
1 g7 S9 y1 j5 p2 `4 m- G$ P  N" a+ k& }5 ~, ]4 z. y
判断与编号 num 对应的按钮是否重新被按下。
5 p3 p2 D  W3 B1 r, X. A和 trigger? 不同的是,其考虑了连续按下按钮时的重复。4 F) E3 h; G: ]( o6 f- b9 I( n
如果按下返回 true,未按下则返回 false。
& S: ^! |, K) O2 W& E4 g3 w3 [! M3 K" z, \
" f7 Z" G; A. N' |% [
F1的說明有些糊裡糊塗的; m% @; Q/ p$ w1 q" _0 `& N. y4 i0 [+ b8 B
直接觀察全鍵盤中的寫法= =
5 c8 m' }% }! q; t1 g8 D5 |8 \$ b; ]
推斷press?是「只要是按下的情況下就成立」( r  J, t- |( [+ S

, K- m# x9 b" ~7 _# Btrigger?為「按下的那瞬間」條件成立,也就是說按下後若沒放開,不會再重新執行結果
; r# Y* ?  Z0 D4 u1 }& z6 T
* d7 Z. T: y2 h5 B8 b- ]9 arepeat?則是按下後@R_Key_Repeat[rkey] 會+1
- }$ k" g+ p, q當@R_Key_Repeat[rkey]的值大於設定且!@R_Key_Repeat[rkey].nil?! N/ N) ~( m/ Y+ V
@R_Key_Repeat[rkey]值會重新轉為0- m. f- r) o1 F: a
且結果為true
2 h/ [: |3 x/ o/ `1 J7 ?所以推斷為「持續按下按鍵一定時間後,結果成立」# a1 B5 O6 [, W2 C
6 s) V5 D4 S3 J3 `1 F
XAS_3.82中判斷武器 def right_hand_button_update 中也是用 trigger? 來判斷4 m) M  I- V1 Y, z* u
回复

使用道具 举报

梦石
0
星屑
672
在线时间
2184 小时
注册时间
2009-12-6
回帖
571

开拓者

发表于 2012-8-24 18:55:31 | 显示全部楼层
serena718 发表于 2012-8-24 18:26
! X. p/ Y' @8 r2 v# y( S7 l" [這是F1中關於Input內的說明
( n. B) C0 h- r' E
" b( B3 Q& w& A. I/ n4 s7 }* RInput.press?(num)
  I2 \4 t( |5 Z2 d$ E: X
您没有看过LZ的工程……2 V7 h) c$ B& v0 F5 T; L0 {
( B3 G# g$ W$ `: D' a1 N/ v! N
这些基础的我当然知道的说,- ~5 }7 s7 P. k' ?; ~5 t  @
就是顶楼提到的改键脚本是难题,+ ~1 S. X/ M: c2 O; {+ A" ]
% w( C: v& ~) d: h2 |% u: v6 ?0 l; Y
他相当于把这些条件都重置了……
往事简直不堪回首,稍微做点想做的事吧
回复

使用道具 举报

梦石
0
星屑
687
在线时间
1808 小时
注册时间
2009-7-12
回帖
416
发表于 2012-8-24 19:45:00 | 显示全部楼层
改鍵腳本?
* p! W! I4 D" ^  ^% H是像網遊那樣自定義按鍵那種嗎?
回复

使用道具 举报

梦石
0
星屑
672
在线时间
2184 小时
注册时间
2009-12-6
回帖
571

开拓者

发表于 2012-8-24 20:31:47 | 显示全部楼层
serena718 发表于 2012-8-24 19:45
7 z% T! W  n! z7 P3 S* X改鍵腳本?
1 x- F9 ~6 B0 x/ T" Z是像網遊那樣自定義按鍵那種嗎?
  w5 \' n0 ^& n; O
是啊。" D$ s1 y+ P/ c  a
默认的、全键盘的、改键的
$ D8 I1 y8 y& h+ b8 G, `- B三种类似Input.press?这种判定的写法,我彻底混乱了……

点评

基本上用了全鍵盤,默認的算法應該就廢掉了吧  发表于 2012-8-25 00:52
留一種版本的Input判斷就好了吧,最好整合在一起,我倒覺得要弄改鍵的話,得動到很多全局變量的預感……  发表于 2012-8-25 00:51
往事简直不堪回首,稍微做点想做的事吧
回复

使用道具 举报

梦石
7
星屑
2585
在线时间
567 小时
注册时间
2009-4-30
回帖
228
 楼主| 发表于 2012-9-28 01:39:53 | 显示全部楼层
抱歉,前阵子比较忙碌,一个月多没上线,
& D# A1 \% ^4 [- I$ ]# a4 W7 `. v0 I现在才回复这篇内容。
! c+ q7 E) q5 s0 f
4 F  n( {+ o' K& ~因为改键要动到太多,果然玩家还是用作者的按键玩吧~
回复

使用道具 举报

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本发帖返回顶部