大佬来看看!!!
pascal吧
全部回复
仅看楼主
level 1
不占得1X 楼主
program joyxy;
type
player = record
level:integer; gjl:integer;
fyl:integer; xue:integer;
money:integer; maxxue:integer;
map:integer; jy:integer; end;
bag = record
red:integer; back:integer; sl:integer; ttl:integer; end;
monster = record
gj:integer; fy:integer; xt:integer; jyz:integer; end;
gjfs = record
gj:integer; fy:integer; bx:integer; jb:integer; end;
pet = record
gj:integer; jx:integer; nm:string; live:integer; level:integer; end;
var
i,m,sjs,rsx,gsx,pd,qk,dqgj,dqfy,jnxz,rys:integer;
role:player; bao:bag; ms:array[1..100] of monster; dqgw:monster; ml:string;
jn:array [1..100] of gjfs;
bb:pet;
procedure js;
begin
role.level:= 1;
role.gjl:=26;
role.fyl:=20;
role.maxxue:=100;
role.xue:=100;
role.map:=0;
bao.red:=2;
end;
procedure gw;
begin
ms[1].gj:=21; ms[1].fy:=0; ms[1].xt:=100; ms[1].jyz:=12;
ms[2].gj:=25; ms[2].fy:=10; ms[2].xt:=80; ms[2].jyz:=15;
ms[3].gj:=45; ms[3].fy:=0; ms[3].xt:=250; ms[3].jyz:=45;
ms[4].gj:=65; ms[4].fy:=20; ms[4].xt:=230; ms[4].jyz:=50;
ms[5].gj:=250; ms[5].fy:=75; ms[5].xt:=500; ms[5].jyz:=90;
ms[6].gj:=320; ms[6].fy:=83; ms[6].xt:=450; ms[6].jyz:=93;
ms[7].gj:=1000; ms[7].fy:=400; ms[7].xt:=5000; ms[7].jyz:=120;
ms[8].gj:=1000; ms[8].fy:=800; ms[8].xt:=8000; ms[8].jyz:=150;
ms[9].gj:=10; ms[9].fy:=10; ms[9].xt:=5000; ms[9].jyz:=50;
end;
procedure skill;
begin
jn[1].gj:=0; jn[1].fy:=0; jn[1].bx:=0; jn[1].jb:=1;
jn[2].gj:=10; jn[2].fy:=-5; jn[2].bx:=0; jn[2].jb:=1;
jn[3].gj:=0; jn[3].fy:=0; jn[3].bx:=0; jn[3].jb:=1;
jn[4].gj:=0; jn[4].fy:=0; jn[4].bx:=0; jn[4].jb:=1;
end;
procedure baobao;
begin
bb.gj:=3; bb.jx:=15; bb.live:=1; bb.nm:='红尘猪'; bb.level:=1;
end;
procedure cwgj;
begin
sjs:=random(10);
if sjs=0 then begin if role.xue+bb.jx>role.maxxue then role.xue:=role.maxxue else role.xue:=role.xue+bb.jx; writeln('你的宠物 ', bb.nm ,' 为你加血',bb.jx,'点'); end else begin
rys:=bb.gj+random(3)-1; dqgw.xt:=dqgw.xt-rys; writeln('你的宠物 ', bb.nm ,' 攻击怪物',rys,'点血'); end;
end;
procedure sj;
begin
role.level:= role.level+1;
role.gjl:= role.gjl+10;
role.fyl:= role.fyl+5;
role.maxxue:=role.maxxue+25;
role.xue:=role.maxxue;
end;
procedure hqwp;
begin
sjs:=random(20)+1;
case sjs of
1: begin bao.red:=bao.red+1; writeln('获得金创药1个'); end;
6: begin role.xue:=role.maxxue; writeln('获得神佑,生命值回复到最大'); end;
7: begin role.gjl:=role.gjl+1; writeln('获得神佑,攻击力+1'); end;
8: begin role.fyl:=role.fyl+1; writeln('获得神佑,防御力+1'); end;
3: begin role.money:=role.money+sjs*10; writeln('获得金币',sjs*10); end;
9: begin role.money:=role.money+sjs*10; writeln('获得金币',sjs*10); end;
12: begin role.money:=role.money+sjs*10; writeln('获得金币',sjs*10); end;
13: begin bao.ttl:=bao.ttl+1; writeln('获得饕餮料1块'); end;
14: begin bao.ttl:=bao.ttl+1; writeln('获得饕餮料1块'); end;
15: begin bao.ttl:=bao.ttl+1; writeln('获得饕餮料1块'); end;
16: begin bao.ttl:=bao.ttl+1; writeln('获得饕餮料1块'); end;
end;
writeln;
end;
procedure jypd;
begin
if role.jy>=role.level*role.level*50 then begin
role.jy:=role.jy-role.level;
sj; writeln('恭喜你升级! 剩余生命力:',role.xue,'/',role.maxxue,' 剩余金创药个数:',bao.red);end else
writeln('升级剩余经验:',role.level*role.level*50-role.jy,' 剩余生命力:',role.xue,'/',role.maxxue,' 剩余金创药个数:',bao.red);
end;
procedure bxjc;
begin
if bao.red>0 then
if role.xue+100>role.maxxue then begin role.xue:=role.maxxue; bao.red:=bao.red-1; writeln('生命力:',role.xue,'/',role.maxxue,' 剩余金创药个数:',bao.red);
end else begin role.xue:=role.xue+100; bao.red:=bao.red-1; writeln('生命力:',role.xue,'/',role.maxxue,' 剩余金创药个数:',bao.red); end
else writeln('没有足够的金创药!');
end;
procedure beforehuihe;
begin
writeln('请选择技能:');
if jn[1].jb=1 then write('1 普通攻击 ');
if jn[2].jb=1 then write('2 豪龙破 ');
if jn[3].jb=1 then write('3 狂龙乱舞 ');
if jn[4].jb=1 then write('4 一斩封神 ');
write('5 使用红药 '); writeln('6 使用卷轴逃跑');
readln(jnxz);
for i:=1 to 4 do
if (jnxz=i) and (jn[i].jb=1) then begin
dqgj:=role.gjl+jn[i].gj; dqfy:=role.fyl+jn[i].fy; role.xue:=role.xue+jn[i].bx;
end;
if jnxz=5 then begin dqgj:=role.gjl; dqfy:=role.fyl; bxjc; end;
if jnxz=6 then begin writeln('回城卷轴功能未开放!'); beforehuihe; end;
end;
procedure gwpd;
begin
sjs:=random(10)+1;
case role.map of
1 :if sjs<8 then begin
dqgw.gj:=ms[1].gj; dqgw.fy:=ms[1].fy; dqgw.xt:=ms[1].xt; dqgw.jyz:=ms[1].jyz; writeln('遭遇怪物绿草球!'); end else begin
dqgw.gj:=ms[2].gj; dqgw.fy:=ms[2].fy; dqgw.xt:=ms[2].xt; dqgw.jyz:=ms[2].jyz; writeln('头盔鸭袭来!') ;end;
2 :if sjs <10 then
if sjs<7 then begin
dqgw.gj:=ms[3].gj; dqgw.fy:=ms[3].fy; dqgw.xt:=ms[3].xt; dqgw.jyz:=ms[3].jyz; writeln('遭遇怪物爱磨牙的小猫!'); end else begin
dqgw.gj:=ms[4].gj; dqgw.fy:=ms[4].fy; dqgw.xt:=ms[4].xt; dqgw.jyz:=ms[4].jyz; writeln('红角小魔羊袭来!') ;end else begin
dqgw.gj:=ms[9].gj; dqgw.fy:=ms[9].fy; dqgw.xt:=ms[9].xt; dqgw.jyz:=ms[9].jyz; writeln('玩偶小子!'); end;
3 :if sjs<8 then begin
dqgw.gj:=ms[5].gj; dqgw.fy:=ms[5].fy; dqgw.xt:=ms[5].xt; dqgw.jyz:=ms[5].jyz; writeln('遭遇怪物尖耳弥狼!'); end else begin
dqgw.gj:=ms[6].gj; dqgw.fy:=ms[6].fy; dqgw.xt:=ms[6].xt; dqgw.jyz:=ms[6].jyz; writeln('冰狼将军袭来!') ;end;
4 :if sjs<8 then begin
dqgw.gj:=ms[7].gj; dqgw.fy:=ms[7].fy; dqgw.xt:=ms[7].xt; dqgw.jyz:=ms[7].jyz; writeln('遭遇怪物海蜇!'); end else begin
dqgw.gj:=ms[8].gj; dqgw.fy:=ms[8].fy; dqgw.xt:=ms[8].xt; dqgw.jyz:=ms[8].jyz; writeln('大白鲨袭来!') ;end;
end;
end;
procedure duringhuihe;
begin
gsx:=dqgj-dqgw.fy+random(11)-5;
dqgw.xt:=dqgw.xt-gsx;
rsx:=dqgw.gj-dqfy+random(11)-5;
if rsx>0 then role.xue:=role.xue-rsx;
if gsx>=0 then write('怪物被你攻击掉',gsx,'点血 ') else write('怪物反噬你',0-gsx,'点血 ');
2017年08月04日 10点08分 1
level 1
不占得1X 楼主
错在哪里呢?我在别人那里弄来的游戏源码,编译错误怎么办~~~~
2017年08月04日 10点08分 2
level 1
不占得1X 楼主
ding
2017年08月06日 01点08分 3
level 3
连 end. 都没有
2018年02月12日 04点02分 4
1