魔塔之拯救白娘子~我的第一个VB6+DX8做的小游戏源码~6地图编辑器-初始化

魔塔之拯救白娘子 完整工程下载地址:
从今天开始我将写一下《魔塔之拯救白娘子》的游戏地图编辑器,俗话说,事半功倍。把地图编辑器搞好,基本一个游戏就写好了三分之一了。可以说,魔塔的地图是相对来说还是很简单的,这里仅仅定义了地图上怪物的编号,复杂的地图不仅如此,还要加上音乐、音效、怪物脚本等等。复杂的东西都是从简单的开始,所以我们先做简单的。
一:确定是窗口模式还是全屏模式,或者两者都可以?
因为游戏简单,所以确定用窗口模式,并且窗口模式也方便调试,对于初次写游戏的我来讲也容易成功些,毕竟第一次写游戏能够写成功,信心很重要。

frmMain.frm 是游戏的主窗口也是游戏地图编辑器的窗口。
在Form_Load里(程序初始化),我们设置一下显示为窗口模式:

With frmMain
    
        .Caption = "魔塔之拯救白娘子 by 高保洪 QQ:127644712 "
        .ScaleMode = 3
        .Width = 800 * Screen.TwipsPerPixelX '(800 / 2) * Screen.TwipsPerPixelX '表示横坐标中每像素有多少缇
        .Height = 600 * Screen.TwipsPerPixelY '(600 / 2) * Screen.TwipsPerPixelY '表示纵坐标中每像素有多少缇
        End With
        InitDXGraph 800, 600, Me.hWnd, xgWindow, xgAUTO '初始化DXGraph

二、加载所有基础的PNG图片,比如人物、怪物、道具等等

'1-29为基本道具
   储存基本的物体图形数组(0).LoadGraph "\ico\墙壁.png", xgBLACK '围绕游戏场景四周的围墙

   储存基本的物体图形数组(1).LoadGraph "\ico\ground.png", xgBLACK '最基本的可通过的背景
   
   储存基本的物体图形数组(2).LoadGraph "\ico\白色的墙体.png", xgBLACK '白色的墙
   
   储存基本的物体图形数组(3).LoadGraph "\ico\红色的墙体.png", xgBLACK '红色的墙
   
   储存基本的物体图形数组(4).LoadGraph "\ico\黄色的墙体.png", xgBLACK ' 黄色的墙

   储存基本的物体图形数组(5).LoadGraph "\ico\星空.bmp", xgBLACK '星空、
       
   储存基本的物体图形数组(6).LoadGraph "\ico\黄门.bmp", xgBLACK ' 黄门
   
   储存基本的物体图形数组(7).LoadGraph "\ico\岩浆.bmp", xgBLACK ' 岩浆、
   
   储存基本的物体图形数组(8).LoadGraph "\ico\上楼.bmp", xgBLACK ' 上楼、
   
   储存基本的物体图形数组(9).LoadGraph "\ico\下楼.bmp", xgBLACK ' 下楼
   
   储存基本的物体图形数组(10).LoadGraph "\ico\蓝门.bmp", xgBLACK ' 蓝门、
   
   储存基本的物体图形数组(11).LoadGraph "\ico\红门.bmp", xgBLACK ' 红门、
   
   储存基本的物体图形数组(12).LoadGraph "\ico\防盗门.bmp", xgBLACK ' 防盗门、
   
   储存基本的物体图形数组(13).LoadGraph "\ico\铁门.bmp", xgBLACK ' 铁门、
   
   储存基本的物体图形数组(14).LoadGraph "\ico\勇者.bmp", xgWHITE ' 男主角
   
   储存基本的物体图形数组(15).LoadGraph "\ico\白娘子.png", xgBLACK ' 公主、
   
   储存基本的物体图形数组(16).LoadGraph "\ico\小青.png", xgBLACK ' 仙子
   
   储存基本的物体图形数组(17).LoadGraph "\ico\小偷.png", xgWHITE ' 小偷
   
   储存基本的物体图形数组(18).LoadGraph "\ico\老人.png", xgBLACK ' 老人
   
   储存基本的物体图形数组(19).LoadGraph "\ico\商人.png", xgBLACK ' 商人
   
   储存基本的物体图形数组(20).LoadGraph "\ico\商店左.bmp", xgBLACK ' 商店左、
   
   储存基本的物体图形数组(21).LoadGraph "\ico\商店中.png", xgBLACK ' 商店中、
   
   储存基本的物体图形数组(22).LoadGraph "\ico\商店右.bmp", xgBLACK ' 商店右、
   
   储存基本的物体图形数组(23).LoadGraph "\ico\草地.png", xgBLACK ' 草地
   
   储存基本的物体图形数组(24).LoadGraph "\ico\怪物手册.png", xgBLACK ' 怪物手册
   
   储存基本的物体图形数组(25).LoadGraph "\ico\铸铁门.png", xgBLACK ' 铸铁门
   
   
    '储存基本的物体图形数组(21).LoadGraph "\ico\prop.png", xgBLACK, 6, 5 '道具
    
   
   '30-79为道具
   储存基本的物体图形数组(30).LoadGraph "\ico\红宝石.png", xgBLACK '道具红宝石
   储存基本的物体图形数组(31).LoadGraph "\ico\蓝宝石.png", xgBLACK '道具蓝宝石.bmp
   储存基本的物体图形数组(32).LoadGraph "\ico\绿宝石.png", xgBLACK '道具绿宝石.png
   储存基本的物体图形数组(33).LoadGraph "\ico\红血瓶.png", xgBLACK '道具红血瓶.png
   储存基本的物体图形数组(34).LoadGraph "\ico\蓝血瓶.png", xgBLACK '道具蓝血瓶.png
   储存基本的物体图形数组(35).LoadGraph "\ico\绿血瓶.png", xgBLACK '道具绿血瓶.png
   储存基本的物体图形数组(36).LoadGraph "\ico\圣水瓶.png", xgBLACK '道具圣水瓶.png
   储存基本的物体图形数组(37).LoadGraph "\ico\小钥匙盒.png", xgBLACK '道具小钥匙盒.png
   储存基本的物体图形数组(38).LoadGraph "\ico\大钥匙盒.png", xgBLACK '道具大钥匙盒.png
   储存基本的物体图形数组(39).LoadGraph "\ico\黄钥匙.png", xgBLACK '道具黄钥匙
   储存基本的物体图形数组(40).LoadGraph "\ico\蓝钥匙.png", xgBLACK '道具蓝钥匙
   
   储存基本的物体图形数组(41).LoadGraph "\ico\红钥匙.png", xgBLACK '道具红钥匙
   储存基本的物体图形数组(42).LoadGraph "\ico\小飞羽.png", xgBLACK '道具小飞羽
   储存基本的物体图形数组(43).LoadGraph "\ico\大飞羽.png", xgBLACK '道具大飞羽
   储存基本的物体图形数组(44).LoadGraph "\ico\铁锒头.png", xgBLACK '道具圣水瓶.png
   储存基本的物体图形数组(45).LoadGraph "\ico\星光神锒.png", xgBLACK '道具星光神锒
   储存基本的物体图形数组(46).LoadGraph "\ico\风之罗盘.png", xgBLACK '道具风之罗盘
   储存基本的物体图形数组(47).LoadGraph "\ico\幸运十字架.png", xgBLACK '道具幸运十字架
   '储存基本的物体图形数组(48).LoadGraph "\ico\金盘.png", xgBLACK '道具金盘
   储存基本的物体图形数组(48).LoadGraph "\ico\金条.png", xgBLACK '道具金盘
   
   储存基本的物体图形数组(49).LoadGraph "\ico\圣光徽.png", xgBLACK '道具圣光徽
   储存基本的物体图形数组(50).LoadGraph "\ico\铁剑.png", xgBLACK '道具铁剑
   
   
   储存基本的物体图形数组(51).LoadGraph "\ico\钢剑.png", xgBLACK '道具钢剑
   储存基本的物体图形数组(52).LoadGraph "\ico\青锋剑.png", xgBLACK '道具青锋剑
   储存基本的物体图形数组(53).LoadGraph "\ico\星光神剑.png", xgBLACK '道具星光神剑
   储存基本的物体图形数组(54).LoadGraph "\ico\铁盾.png", xgBLACK '道具蓝血瓶.png
   储存基本的物体图形数组(55).LoadGraph "\ico\钢盾.png", xgBLACK '道具绿血瓶.png
   储存基本的物体图形数组(56).LoadGraph "\ico\黄金盾.png", xgBLACK '道具圣水瓶.png
   储存基本的物体图形数组(57).LoadGraph "\ico\光芒神盾.png", xgBLACK '道具光芒神盾
'    储存基本的物体图形数组(58).LoadGraph "\ico\大钥匙盒.png" , xgBLACK'道具大钥匙盒.png
'    储存基本的物体图形数组(59).LoadGraph "\ico\黄钥匙.png" , xgBLACK'道具黄钥匙
'    储存基本的物体图形数组(60).LoadGraph "\ico\蓝钥匙.png", xgBLACK '道具蓝钥匙
'80-99为怪物

'设置图片的分割参数:横向6张,纵向6张
   储存基本的物体图形数组(80).LoadGraph "\ico\monster2.png", xgBLACK, 6, 6 '怪物
   
   
'100-105是英雄的角色
储存基本的物体图形数组(100).LoadGraph "\ico\hero1.png", xgBLACK, 4, 4 '英雄角色

'106是血海星空
储存基本的物体图形数组(106).LoadGraph "\ico\星空血海.png", xgBLACK, 4, 3 '血海星空basic2

储存基本的物体图形数组(107).LoadGraph "\ico\小仙女.png", xgBLACK, 4, 4 '小仙女
储存基本的物体图形数组(108).LoadGraph "\ico\小公主.png", xgBLACK, 4, 4 '小公主
储存基本的物体图形数组(109).LoadGraph "\ico\NPC01-01.png", xgBLACK, 4, 4 'NPC小偷
储存基本的物体图形数组(110).LoadGraph "\ico\NPC01-02.png", xgBLACK, 4, 4 'NPC商店

'储存基本的物体图形数组(111).LoadGraph "\ico\红头怪.png", xgBLACK, 4, 4 '红头怪
'储存基本的物体图形数组(112).LoadGraph "\ico\黑头怪.png", xgBLACK, 4, 4 '黑头怪
'储存基本的物体图形数组(113).LoadGraph "\ico\骷髅头.png", xgBLACK, 4, 4 '骷髅人
储存基本的物体图形数组(113).LoadGraph "\ico\monster.png", xgBLACK, 4, 34 '全部怪物

在初始化里,我们还将对音乐、音效、游戏状态等进行初始化,这些留在后边再说。
这里定义一个全局变量,用来控制游戏的状态:

Running = 9 '开始游戏
    
    'Running = 9 '游戏第一面,选择界面
    ' Running = 8 '地图编辑器界面
   ' Running = 2 '继续游戏(读取存档)
   'running=3 读档后开始游戏

在调试地图编辑器的时候,直接将 Running = 8 '地图编辑器界面,这样可以直接进入地图编辑器状态,方便调试。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
作品名称 游戏地图编辑器 作者 汉克斯 运行环境 只在Win XP Service Pack2的环境下测试 联系方式 QQ: 349330748 源代码使用的编译器 VS2005 代码说明 此编辑器是用自行写的库制作的,库可实现45度和0度2D的绘制,里面包含简单的效果模块,还有比较失败的控件模块, 都是可以自行扩展的. 由于这是个demo,并没有把使用的资源放在特定的文档里面,而是集成在程序内部成了硬编码,的确不太方便.这里,感 谢不夜人的图片资源,给我省掉了很多的事情. 另外说明,代码的编写基本上是一个人完成的,完全使用其他人代码的地方,我都在SDK中进行了说明,如果想获取此程 序的SDK,请联系我.或者你可以自行制作出SDK,使用doxygen根据代码可自动生成SDK. 程序说明 编辑器可在16位和32位颜色模式下运行(24位不行!)。 可对地面建筑和精灵进行添加、删除、移动、修改等操作。 对地图进行的添加、删除、移动等操作会被存入缓存,以供Redo、Undo。 可显示地图网格和地面是否能通过的情况。 对精灵可以以加速、减速、暂停等速度方式运行。 其他使用说明请使用程序内部的"说明"按钮 后记 这个程序是对C++和Ddraw库学习的一个总结,由于windows的编程设计还刚开始学,所以其中的有些部分可能是费力不 讨好的(控件部分),有些部分是没有深入使用的(多线程部分),不过目前是基本满意了.希望大家也帮忙测试一下,有 bug的话通知我一声,我对于在其他的电脑上运行是怎样的还没有个底,先谢过了.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gosub60

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值