1. 程式人生 > 其它 >魔塔之拯救白娘子~我的第一個VB6+DX8做的小遊戲原始碼~6地圖編輯器-初始化

魔塔之拯救白娘子~我的第一個VB6+DX8做的小遊戲原始碼~6地圖編輯器-初始化

技術標籤:我的程式vb62d遊戲3d渲染dx遊戲引擎

魔塔之拯救白娘子 完整工程下載地址:
從今天開始我將寫一下《魔塔之拯救白娘子》的遊戲地圖編輯器,俗話說,事半功倍。把地圖編輯器搞好,基本一個遊戲就寫好了三分之一了。可以說,魔塔的地圖是相對來說還是很簡單的,這裡僅僅定義了地圖上怪物的編號,複雜的地圖不僅如此,還要加上音樂、音效、怪物指令碼等等。複雜的東西都是從簡單的開始,所以我們先做簡單的。
一:確定是視窗模式還是全屏模式,或者兩者都可以?
因為遊戲簡單,所以確定用視窗模式,並且視窗模式也方便除錯,對於初次寫遊戲的我來講也容易成功些,畢竟第一次寫遊戲能夠寫成功,信心很重要。

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 '地圖編輯器介面,這樣可以直接進入地圖編輯器狀態,方便除錯。