|
|
发表于 2009-7-31 19:28:02
|
显示全部楼层
pha # E5 l' {9 f$ i% O+ t
lda 按键内存
: T1 r$ s% s! Z3 H9 U7 i; Wcmp #$20 SELECT键
' p. f. s) O7 [' p9 o- pbne end
0 S9 e6 I d$ n: u- E @* vinc 子弹内存1 p6 j% v3 n& `
lda 子弹内存
0 @' V, _& f' z; @4 Qcmp #$06 假设有5种子弹,那么到了6就变07 J" {+ T G# d) l
bne end7 H ?! f7 T+ k+ L+ S8 F
lda #$00
4 U) `, |" J1 q; Z9 g' K8 H4 Csta 子弹内存8 G2 y2 q- P0 N9 V) ^
end:* Q# L# j! z. r
pla
1 B2 v/ L, k3 L# G4 E: C! `0 {rts5 u' a8 `" G( y7 N; H6 k0 {
8 M0 S( Y( o9 p! I6 U
魂斗罗这个游戏 子弹代码是 00 01 02 03............. 吃了加速后是 10 11 12 13..................
9 H/ n* ^" m8 A9 O- a这里的判断还要多判断几次, k8 g; c: r: @( _$ F
按键的映射内存有两个 一个是按一次后自动归0 这样的效果就是 即使按住也只运行一次) Q- f$ F# p2 J6 K/ ]# R
另一个内存是按住之后是每个周期都运行的,那样的话就是按一下就运行了N次了,基本选不到你要的武器, 效果就是 随机抽到某子弹,因为按一次就加了N次了$ b, ]. {& A7 ]0 L9 }
两个内存是在一起的 中间隔开一个字节~~
- r3 b& I* ^! g {* p" A当然也可以写程序处理这个问题,只是没必要兜圈子了 |
|