超级玛丽代码java 超级玛丽代码大全( 二 )


看一下程序:
IF x - pyl * 16120 AND pyl181 THEN wyl = wyl + 4
IF wyl = 16 THEN wyl = 0: pyl = pyl + 1
X是人在地图上的横坐标 , pyl是显示的地图的首地址,x - pyl * 16是人在显示器上的横坐标,120大约在屏幕中线,wyl是显示的首块地图的显示位置,叫它位移量吧,取值为0、4、8、12 。
第一条:当人向右行走超过中线且没到终点时,位移量加四 , 每块地图显示时向左移动四像素 。
第二条:当移动十六像素时显示的地图范围向右移动一格,位移量置零 。
这样循环就实现了地图平滑卷动 。
碰撞检测 。这一部分很简单,依次检查人所占的四格地图是否为空,如果人已进入前景,就把他拉回来 。
人物图像的显示:
IF dz3 THEN dz = dz + 1 ELSE dz = 0 '正常行走时,三幅行走图交替显示 。
IF GameKey(75) = 0 AND 0 = GameKey(77) THEN dz = 0 '没有行走时,站立资势 。
IF d = 0 THEN dz = 5 '跳跃时,显示跳的图片 。
它们的顺序也是优先级 。
再加上方向,就很自然了 。方向是在检测输入时设置的 。
刚才说了“tp.xp”文件和显示地图块 , 再用源码解释一下 。我并不懂GET图像格式,不过我的辅助程序是这样写文件的:
OPEN "tp.xp" FOR BINARY AS #2
for ………
f = 1
GET (,)-(,), a
FOR j = 0 TO 130
PUT #2, f, a(j)
f = f + 2
NEXT
……NEXT
CLOSE
游戏初始化时读文件:
f = 1
OPEN "tp.xp" FOR BINARY AS #2
FOR i = 0 TO 15
FOR j = 0 TO 130
GET #2, f, bj(j, i)
f = f + 2
NEXT
NEXT
CLOSE #2
显示时:
PUT (,), bj(0, 图像索引值), PSET
一条就行了 。
嗯,主要的就这些了 。
这些只是我在编程时摸索得来的,可能与正规游戏开发有出入 。如果有不当或错误的地方,欢迎批评指正.
谢谢 。
超级玛丽金手指代码是什么?NES版 SMB3
0552-01-00无敌
0553-01-FF保护无限
05F0-04-09 无限时间
0736-01-631号无限命数
0737-01-632号无限命数
056E-01-FF飞行能量最大
00ED-01-05变身(00可改:长大01,火球02,飞行03,青蛙04,狐狸05,乌龟06)
0727-01-00选关(00可改:01~07)
00ED-01-07变身幽灵
SMB1
079E-01-03透明无敌
07FA-01-09时间
0756-01-02子弹
079F-01-09无敌
0754-01-02大小
075A-01-09生命
0704-01-01超能力00水中大跳,01空中游泳
0754-01-FF上穿墙问题00-FF,值越大穿墙越轻松
079E-01-01隐身00正常,01隐身
079F-01-01保护00肉体,01金身
07FA-01-01时间锁定00正常,01锁定
0039-01-03特殊状态100顶出红蘑菇,01顶出花,02顶出星,03顶出绿蘑菇,40顶出闪蘑菇
0484-01-00踩坏蛋的分数00-10,10为1UP
0706-01-FF跳跃问题00-40 , 值越大跳跃越轻松
0752-01-00出场方式00站在地面,01半空坠落,02管中钻出,03高空坠落,07接近地面,??等等
0756-01-04特殊状态200不火且个头不变且顶出红蘑菇,01不火但个头变换且顶出花,02开火且个头变换且顶出花,03开火且个头变换且顶出星,04开火且个头变换且顶出绿蘑菇,EE开火且个头变换且顶出龟壳
076A-01-01周目数(00世界一,01世界二)
0781-01-02行走样式00正常,01飞毛腿,02溜冰
0786-01-00弹簧质量00优质,01劣质,02报废
0791-01-10体质00-09,10刀枪不入但刺猬、食人花、火、锤子等除外
0797-01-FF敌人状态00动态,FF僵硬
079E-01-01隐身00正常,01隐身
07FA-01-01时间锁定00正常,01锁定
0754-01-FF上穿墙
0723-01-00
在《超级玛丽》中,只要按一下空格,人物就调跳一下,这个用java swing怎么实现!谢谢要是swing 的button 的话

推荐阅读