??
字號:
整個程序在win-tc下編寫的,需要cga.bgi,egavga.bgi支持。
頭文件如下:
#include "math.h"
#include "stdio.h"
#include "stdlib.h"
#include "conio.h"
#include "graphics.h"
宏定義如下:
#define LEFT 0x4b00 /*光標左鍵值*/
#define RIGHT 0x4d00 /*光標右鍵值*/
#define DOWN 0x5000 /*光標下鍵值*/
#define UP 0x4800 /*光標上鍵值*/
#define ESC 0x011b /* ESC鍵值*/
#define ENTER 0x1c0d /* 回車鍵值*/
全局變量如下:
Enemyhp=700:敵人的生命值
MP=600:人物的魔法值
HP=1000:人物的生命值
Row:人物所在的行
Column:人物所在的列
Lastrow:人物上一次位置所在的行
Lastcolumn:人物上一次們軒所在的列
Endornot=0:游戲是否結束
Loseornot=0:游戲是否失敗
Letter=0:人物是否有信(游戲中與劇情相關的一個物品)
Currentmap[19][24]:當前地圖
map1[19][24]:地圖1
map2[19][24]:地圖2
map3[19][24]:地圖3
函數如下:
start():游戲
map4[19][24]:地圖4
map5[19][24]:地圖5
map6[19][24]:地圖6
map7[19][24]:地圖7
map8[19][24]:地圖8
map9[19][24]:地圖9
map10[19][24]:地圖10
map11[19][24]:地圖11
map12[19][24]:地圖12
程序中用到的子函數:
start():游戲開始時的文字
invokemap(int):調用地圖函數
showface():畫臉函數
showmap():畫地圖函數
changemap(int,int):地圖轉換函數
scenario():劇情函數
attacked(int enemyattack):被攻擊函數
attack():攻擊函數
magicattack():魔法攻擊函數
magic():魔法函數
menu2(int *pointer):第二級菜單函數
showmenuselect2(int):顯示第二級菜單函數
menu1(int *pointer):第一級菜單函數
showmenuselect1(int):顯示第一級菜單函數
win():勝利函數
lose():戰(zhàn)敗函數
fight():戰(zhàn)斗函數
move():行走函數
主函數下主要是move(),其余大都是些初始化用的;move()中會調用changemap(),scenario(),fight(),以上是主要枝桿。程序中還用到了其它函數,以上函數間還有相互調用,如scenario()中調用fight();
另外,整個程序只在作兩個菜單時用到了指針,能過二維數組生成地圖。
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -