重写游戏

一个人玩游戏不容易。我学了两年pascal,编译一个70k的小游戏花了15天。如果没学过编程,还得再学一遍。就算我做游戏,也是很小众的。最多,炫耀一下也不会好玩。还是去玩别人的大公司吧。我必须耐心寻找我心目中的好游戏。总会有一些。只是时间问题。因为太长了,有不明白的位置欢迎提问。

下面是帕斯卡的一个游戏,基本是这样的。如果你学过编程,很容易理解。

节目RPG

使用crt

var mp,hp:array[1..2]的渴望;

lv:整数;

temp:整数;

宫,玉,exp,金钱:渴望;

wp:数组[1..3]的整数;

狄公,玉笛,dihp,dihp1:整数;

程序开始;

var ch:char;

答:shortint

s,s 1:string;

f:正文;

开始

Writeln('1:初入江湖2:旧日回忆3:隐居山林');

readln(a);

案例a

1:开始

clrscr

Writeln('你的名字:');

readln(s);

Writeln('输入密码;');

readln(s 1);

赋值(f,s);

重写(f);

writeln(f,s 1);

MP[1]:= 150;

MP[2]:= 150;

LV:= 1;

exp:= 0;

HP[1]:= 500;

HP[2]:= 500;

fillchar(wp,sizeof(wp),0);

龚:= 120;

于:= 100;

钱:= 0;

writeln(f,LV);

writeln(f,exp);

writeln(f,hp[1],' ',HP[2]);

writeln(f,mp[1],' ',MP[2]);

writeln(f,龚,‘,于);

writeln(f,wp[1],' ',wp[2],' ',WP[3]);

writeln(f,钱);

狄公:= 80;

玉笛:= 30;

dihp:= 250;

dihp 1:= 250;

writeln(f,狄公,' ',玉笛,' ',dihp);

关闭(f);

结束;

2:开始

Writeln('你的名字:');

readln(s);

赋值(f,s);

Writeln('输入密码:');

readln(s);

复位(f);

readln(f,s 1);

如果s1=s

那么开始吧

readln(f,LV);

readln(f,exp);

readln(f,hp[1],HP[2]);

readln(f,mp[1],MP[2]);

readln(f,龚,于);

readln(f,wp[1],wp[2],WP[3]);

readln(f,钱);

readln(f,迪宫,玉笛,dihp);

结束

否则开始

Writeln('密码错误!!!');

延时(1000);

关闭(f);

停止;

结束;

结束;

3:开始

停止;

结束;

4:开始

赋值(f,'简氏');

重写(f);

writeln(f,'简氏');

MP[1]:= 1000;

MP[2]:= 1000;

LV:= 80;

exp:= 0;

HP[1]:= 20000;

HP[2]:= 20000;

fillchar(wp,sizeof(wp),0);

龚:= 2000;

于:= 800;

钱:= 0;

writeln(f,LV);

writeln(f,exp);

writeln(f,hp[1],' ',HP[2]);

writeln(f,mp[1],' ',MP[2]);

writeln(f,龚,‘,于);

writeln(f,wp[1],' ',wp[2],' ',WP[3]);

writeln(f,钱);

狄公:= 80;

玉笛:= 30;

dihp:= 250;

dihp 1:= 250;

writeln(f,狄公,‘,玉笛,‘,dihp);

关闭(f);

结束;

5:开始

赋值(f,' mofa ');

重写(f);

writeln(f,' mofa ');

MP[1]:= 50000;

mp[2]:等于50000;

LV:= 80;

exp:= 0;

HP[125]:= 20000;

HP[2]:= 20000;

fillchar(wp,sizeof(wp),0);

龚:= 800;

于:= 800;

钱:= 0;

writeln(f,LV);

writeln(f,exp);

writeln(f,hp[1],' ',HP[2]);

writeln(f,mp[1],' ',MP[2]);

writeln(f,龚,‘,于);

writeln(f,wp[1],' ',wp[2],' ',WP[3]);

writeln(f,钱);

狄公:= 80;

玉笛:= 30;

dihp:= 250;

dihp 1:= 250;

writeln(f,狄公,‘,玉笛,‘,dihp);

关闭(f);

结束;

结束;

结束;

程序游戏;

var b:字节;答:shortint

程序战斗;

var a:short int;b、时间:字节;

程序升级;

开始

exp:= exp-500;

LV:= LV+1;

HP[1]:= HP[1]+50;

HP[2]:= HP[2]+50;

MP[1]:= MP[1]+30;

MP[2]:= MP[2]+30;

宫:=宫+30;

余:=余+30;

钱:=钱+500;

clrscr

Writeln('终于升级了!!!');

延迟(2000年);

结束;

霍焰程序;

开始

if MP[1]-LV * 2-10 & gt;=0

那么开始吧

MP[1]:= MP[1]-LV * 2-10;

如果LV * 50+50 & gt;玉笛

那么开始吧

如果dihp-LV * 50-50+玉笛& gt0

那么dihp:= dihp-LV * 50-50+玉笛

否则开始

clrscr

Writeln('你赢了!');

延迟(2000年);

exp:= exp+random(dihp 1)* 10;

钱:=钱+LV * 110;

Writeln('你猜对了',lv*110,' $!');

延迟(2000年);

如果exp & gt=lv*500

然后盛基;

退出;

结束;

结束

结束

else writeln(‘你不能!!!');

结束;

习雪程序;

开始

if MP[1]-LV * 5-20 & gt;=0

那么开始吧

MP[1]:= MP[1]-LV * 5-20;

if dihp-LV * 10-50 & gt;0

那么开始吧

dihp:= dihp-LV * 10-50;

如果HP[1]+LV * 10+50 & lt;=惠普[2]

那么HP[1]:= HP[1]+LV * 10+50

else HP[1]:= HP[2];

结束

否则开始

clrscr

如果HP[1]+dihp & lt;=惠普[2]

那么hp[1]:=hp[1]+dihp

else HP[1]:= HP[2];

Writeln('你赢了!');

延迟(2000年);

exp:= exp+random(dihp 1)* 10;

钱:=钱+LV * 110;

Writeln('你猜对了',lv*110,' $!');

延迟(2000年);

如果exp & gt=lv*500

然后盛基;

退出;

结束;

结束

else writeln(‘你不能!!!');

结束;

程序包列一级;

开始

if MP[1]-LV * 8-50 & gt;=0

那么开始吧

MP[1]:= MP[1]-LV * 8-50;

如果LV * 100+200 & gt;玉笛

那么开始吧

如果dihp-LV * 100-200+玉笛& gt0

那么dihp:= dihp-LV * 100-200+玉笛

否则开始

clrscr

Writeln('你赢了!');

延迟(2000年);

exp:= exp+random(dihp 1)* 10;

钱:=钱+LV * 110;

Writeln('你猜对了',lv*110,' $!');

延迟(2000年);

如果exp & gt=lv*500

然后盛基;

退出;

结束;

结束;

结束

else writeln(‘你不能!!!');

结束;

程序包;

var a:short int;

开始

重复

clrscr

Writeln('你想用什么');

Writeln('1:红药[',wp[1],'] 2:蓝药[',WP [2],'] 3:刀[',WP [3],'] (0戒)');

readln(a);

案例a

0:退出;

1:开始

如果wp[1]>0

那么开始吧

WP[1]:= WP[1]-1;

如果HP[1]+100 & lt;=惠普[2]

那么HP[1]:= HP[1]+100

else HP[1]:= HP[2];

退出;

结束

else writeln(‘你没有!!!');

结束;

2:开始

如果WP[2]& gt;0

那么开始吧

WP[2]:= WP[2]-1;

if MP[1]+50 & lt;=mp[2

那么mp[1]:=mp[1]+50

else MP[1]:= MP[2];

退出;

结束

else writeln(‘你没有!!!');

结束;

3:开始

如果WP[3]& gt;0

那么开始吧

WP[3]:= WP[3]-1;

如果dihp-100 & gt;0

那么dihp:=dihp-100

否则开始

clrscr

Writeln('你赢了!');

延迟(2000年);

exp:= exp+random(dihp 1)* 10;

钱:=钱+LV * 110;

Writeln('你猜对了',lv*110,' $!');

延迟(2000年);

如果exp & gt=lv*500

然后盛基;

退出;

结束;

退出;

结束

结束;

结束;

直到假;

结束;

开始

clrscr

时间:= 0;

Writeln('一个怪物...');

延迟(2000年);

重复

clrscr

inc(时代);

Writeln('仇人之血:',dihp 1);

Writeln('你的血:',hp[1],'/',HP[2]);

Writeln('你的魔法:',mp[1],'/',MP[2]);

Writeln('你想做什么?');

Writeln('1:普通打击2:魔法3:使用物品4:行走为上策');

readln(a);

案例a

1:开始

如果龚& gt玉笛

那么开始吧

如果dihp 1 & gt;龚·

那么dihp1:=dihp1-(龚-玉笛)

否则开始

clrscr

Writeln('赢了!');

延迟(2000年);

exp:= exp+random(dihp 1)* 10;

钱:=钱+LV * 110;

Writeln('你猜对了',lv*110,' $!');

延迟(2000年);

如果exp & gt=lv*1000

然后盛基;

退出;

结束;

结束

结束;

2:开始

Writeln('你想做什么?');

Writeln('1:火焰2:吸血3:爆裂打击(0出口)');

readln(b);

案例b

1:霍焰;

2:习雪;

3:宝列依吉;

结束;

结束;

3:包;

4:开始

随机化;

b:= random(2);

如果b=0

然后退出

Else writeln('转义失败!!!');

结束;

结束;

如果狄公& gt禹

那么开始吧

如果HP[1]-狄公+于& gt0

然后HP[1]:= HP[1]-狄公+于

否则开始

clrscr

writeln(‘你输了!!!');

延迟(2000年);

停止;

结束;

结束;

直到假;

结束;

工序车间;

var a:字节;

//short int;

开始

重复

clrscr

Writeln('你有:',钱,' $ ');

欢迎光临本店!!!' );

Writeln('你想要什么?');

Writeln('1:红药(50) 2:蓝药(100) 3:刀(200) 4:攻(200) 5:防(200) 6:医(',LV * 20,')(0到

readln(a);

案例a

0:退出;

1:开始

如果钱& gt=50

那么开始吧

钱:=钱-50;

WP[1]:= WP[1]+1;

结束

否则开始

(‘你没钱!!!!!!');

延迟(2000年);

结束;

结束;

2:开始

如果钱& gt=100

那么开始吧

钱:= money-100;

WP[2]:= WP[2]+1;

结束

否则开始

(‘你没钱!!!');

延迟(2000年);

结束;

结束;

3:开始

如果钱& gt=200

那么开始吧

钱:=钱-200;

WP[3]:= WP[3]+1;

结束;

结束;

4:开始

如果钱& gt=200

那么开始吧

钱:=钱-200;

龚:=龚+15;

结束;

结束;

5:开始

如果钱& gt=200

那么开始吧

钱:=钱-200;

余:=余+10;

结束

否则开始

(‘你没钱!!!');

延迟(2000年);

结束;

结束;

6:开始

如果钱& gt=lv*20

那么开始吧

HP[1]:= HP[2];

MP[1]:= MP[2];

钱:=钱-吕* 20;

结束

否则开始

(‘你没钱!!!');

延迟(2000年);

结束;

结束;

结束;

直到假;

结束;

过程负载;

var s,s 1:string;

f:正文;

开始

clrscr

Writeln('你的名字:');

readln(s);

赋值(f,s);

Writeln('输入密码:');

readln(s);

复位(f);

readln(s 1);

如果s1=s

那么开始吧

readln(f,LV);

readln(f,exp);

readln(f,hp[1],HP[2]);

readln(f,mp[1],MP[2]);

readln(f,龚,于);

readln(f,wp[1],wp[2],WP[3]);

readln(f,钱);

readln(f,迪宫,玉笛,dihp);

playgame

结束

否则开始

Writeln('密码错误!!!');

延时(1000);

关闭(f);

退出;

结束;

结束;

程序保存;

var s,s 1:string;

f:正文;

开始

clrscr

Writeln('你的名字:');

readln(s);

赋值(f,s);

Writeln('输入密码:');

readln(s);

复位(f);

readln(f,s 1);

关闭(f);

如果s=s1

那么开始吧

重写(f);

writeln(f,s 1);

writeln(f,LV);

writeln(f,exp);

writeln(f,hp[1],' ',HP[2]);

writeln(f,mp[1],' ',MP[2]);

writeln(f,龚,‘,于);

writeln(f,wp[1],' ',wp[2],' ',WP[3]);

writeln(f,钱);

writeln(f,狄公,‘,玉笛,‘,dihp);

关闭(f);

结束

否则开始

Writeln('密码错误!!!');

延时(1000);

退出;

结束;

结束;

开始

重复

clrscr

如果a=3

那么开始吧

Writeln ('End!!!');

延迟(2000年);

停止;

结束;

Writeln('你想要什么?');

Writeln('1:行走2:店铺3:打boss 4:加载5:存储6:数据7;exit’);

readln(a);

案例a

1:开始

随机化;

b:= random(10);

案例b

1,2,3,4:开始

狄公:=狄公+15;

玉笛:=玉笛+15;

dihp:= dihp+30;

dihp 1:= dihp;

战豆;

结束;

9:开始

temp:= random(1000);

钱:=钱+临时工;

Writeln('找到钱了!!!',temp,' $ ');

readkey

结束;

否则开始

writeln(‘没什么!!!');

延时(1000);

playgame

结束;

结束;

结束;

2:店铺;

3:开始

狄公:= 1000;

玉笛:= 800;

dihp:= 10000;

dihp 1:= 10000;

战豆;

结束;

4:负载;

5:保存;

6:开始

clrscr

Writeln('年级:',吕);

Writeln('攻:',龚);

Writeln('辩:',于);

Writeln ('blood:',hp[1],'/',HP[2]);

Writeln ('Magic:',mp[1],'/',MP[2]);

Writeln ('Experience:',exp,'/',LV * 1000);

Writeln ('Item:','红药[',wp[1],']','蓝药[',wp[2],']',

刀[',wp[3],']');

Writeln('按任意键继续...');

readkey

结束;

7:立定;

结束;

直到假;

结束;

开始

开始;

playgame

结束。