谁帮我写个游戏程序!
发布网友
发布时间:2022-04-30 15:47
我来回答
共1个回答
热心网友
时间:2022-06-26 17:16
pascal的
var
plife,plifemax,patt,pre:integer;
gr,ex,exmax:integer;
alife,alife1,aatt,are:integer;
name,fname:string;
na:text;
code,co:string;
dz:integer;
money:longint;
mp,mpmax:integer;
red,blue,knife,clothes:integer;
i:integer;
god:array[1..100] of 1..7;
godthing:integer;
procere bag;
var
obj:integer;
begin
writeln;
writeln;
writeln('百宝箱:'),qqkongjian;
writeln('1:红色药丸: ',red,' 2:兰色药丸: ',blue,' 3:神剑:',knife,' 4:防身衣:',clothes,' 5;离开');
writeln;
writeln;
writeln('请选择:');
repeat
readln( obj);
case obj of
1:begin
if red>0 then begin
red:=red-1;
plife:=plife+40;
if plife>plifemax then plife:=plifemax;
end;
end;
2:begin
if blue>0 then begin
blue:=blue-1;
mp:=mp+40;
if mp>mpmax then mp:=mpmax;
end;
end;
3:begin
if knife>0 then begin
knife:=knife-1;
patt:=patt+15;
end;
end;
4:begin
if clothes>0 then begin
clothes:=clothes-1;
pre:=pre+15;
end;
end;
end;
writeln;
writeln;
writeln;
until obj=5;
exit;
end;
procere bagplus(sh:integer);
begin
case sh of
1:red:=red+1;
2:blue:=blue+1;
3:knife:=knife+1;
4:clothes:=clothes+1;
end;
end;
procere shop;
var
ob:integer;
begin
writeln;
writeln;
writeln('欢迎来到商店!');
writeln(' 1:红色药丸 2:兰色药丸 3:神剑 4:防身衣 5:离开');
writeln(' $15 $15 $30 $30');
writeln;
writeln('你想买什么?');
writeln;
repeat
readln(ob);
case ob of
1:begin
if money>=15 then
begin
money:=money-15;
bagplus(1);
writeln('OK!');
writeln(' 1:红色药丸 2:兰色药丸 3:神剑 4:防身衣 5:离开');
writeln(' $15 $15 $30 $30');
writeln;
writeln('你想买什么?');
writeln;
end
else writeln('钱不够啊,老大!');
end;
2:begin
if money>=15 then
begin
money:=money-15;
bagplus(2);
writeln('OK!');
writeln(' 1:红色药丸 2:兰色药丸 3:神剑 4:防身衣 5:离开');
writeln(' $15 $15 $30 $30');
writeln;
writeln('你想买什么?');
writeln;
end
else writeln('钱不够啊,老大!');
end;
3:begin
if money>=30 then
begin
money:=money-30;
bagplus(3);
writeln('OK!');
writeln(' 1:红色药丸 2:兰色药丸 3:神剑 4:防身衣 5:离开');
writeln(' $15 $15 $30 $30');
writeln;
writeln('你想买什么?');
writeln;
end
else writeln('钱不够啊,老大!');
end;
4:begin
if money>=30 then
begin
money:=money-30;
bagplus(4);
writeln('OK!');
writeln(' 1:红色药丸 2:兰色药丸 3:神剑 4:防身衣 5:离开');
writeln(' $15 $15 $30 $30');
writeln;
writeln('你想买什么?');
writeln;
end
else writeln('钱不够啊,老大!');
end;
end;
until ob=5;
exit;
end;
procere storm;
var
ka,kp:integer;
begin
if mp>=30 then begin
writeln;
writeln;
writeln('破天一剑!!!!!!!!!!');
writeln(' 怪物生命:',alife1);
writeln('你的生命:',plife,'/',plifemax);
kp:=(random(patt)-random(are))*33; ;
if kp>0 then begin
writeln('攻击!!怪物得到',kp,' 伤害!?!');
alife1:=alife1-kp;
end
else begin
writeln('你无法攻击');
end;
ka:=aatt-pre+random(aatt div 4)-aatt div 2;
if ka>0 then begin
writeln('怪物攻击!!你得到',ka,' 伤害!?!');
plife:=plife-ka;
end
else begin
writeln( ' 怪物无法攻击');
end;
mp:=mp-30;
end
else writeln('魔力不够!!');
2007-1-1 11:14 回复
222.184.52.*2楼
end;
procere wall;
var
ka,kp:integer;
begin
if mp>=15 then begin
writeln;
writeln;
writeln('你用雷光!!!!');
writeln('怪物生命:',alife1);
writeln('你的生命:',plife,'/',plifemax);
kp:=(random(patt)-random(are))*26;
if kp>0 then begin
writeln('攻击!!怪物得到',kp,' 伤害!?!');
alife1:=alife1-kp;
end
else begin
writeln('你输了');
end;
ka:=aatt-pre+random(aatt div 4)-aatt div 2;
if ka>0 then begin
writeln('怪物攻击!!你得到',ka,' 伤害!?!');
plife:=plife-ka;
end
else begin
writeln( ' 你赢了!!!!!');
end;
mp:=mp-10;
end
else writeln('生命不够!!');
end;
procere ball;
var
ka,kp:integer;
begin
if mp>=5 then begin
writeln;
writeln;
writeln('你用粉碎神拳!!!');
writeln('怪物生命:',alife1);
writeln('你的生命:',plife,'/',plifemax);
kp:=(random(patt)-random(are))*20;
if kp>0 then begin
writeln('攻击!!怪物得到',kp,' 伤害!?!');
alife1:=alife1-kp;
end
else begin
writeln('你输了');
end;
ka:=aatt-pre+random(aatt div 4)-aatt div 2;
if ka>0 then begin
writeln('怪物攻击!!你得到',ka,' 伤害!?!');
plife:=plife-ka;
end
else begin
writeln( ' 你赢了!!!!!');
end;
mp:=mp-10;
end
else writeln('生命不够!!');
end;
procere magic;
var
ma:integer;
begin
writeln;
writeln;
writeln('1. 粉碎神拳 [5] 2. 雷光 [15] 3.破天一剑 [30]');
writeln('魔法值: ',mp,'/',mpmax);
read(ma);
case ma of
1:ball;
2:wall;
3:storm;
end;
end;
procere plusmoney;
var
money1:longint;
begin
money1:=random(alife);
writeln;
writeln;
writeln('你得到 $',money1);
money:=money1+money,Cheap Gucci HandBags;
end;
procere load,仿牌方案系列:美国空间仿牌方案,仿牌空间方案-最新推出, Louis Handbags, Replica Vertu Phone;
begin
close(na);
writeln;
writeln;
writeln('你的名字: ');
readln;
readln(name);
fname:=concat(name,'.txt');
assign(na,fname);
reset(na);
readln(na,code);
writeln('输入密码:',Chinese Phone;);
readln(co);
if co<>code then
begin
writeln('密码错误');
readln;
halt;
end;
readln(na,plife);
readln(na,plifemax);
readln(na,patt);
readln(na,pre);
readln(na,ex);
readln(na,exmax);
readln(na,gr);
readln(na,money);
readln(na,mp);
readln(na,mpmax);
readln(na,red);
readln(na,blue);
readln(na,knife);
readln(na,clothes);
end;
procere save;
var i:integer;
begin
close(na);
assign(na,fname);
rewrite(na);
writeln(na,code);
writeln(na,plife);
writeln(na,plifemax);
writeln(na,patt);
writeln(na,pre);
writeln(na,ex);
writeln(na,exmax);
writeln(na,gr);
writeln(na,money);
writeln(na,mp);
writeln(na,mpmax);
writeln(na,red);
writeln(na,blue);
writeln(na,knife);
writeln(na,clothes);
writeln(na,godthing);
for i:=1 to godthing do writeln(god);
writeln;
writeln;
writeln('save successfully');
writeln;
writeln;
end;
procere see;var i:integer;
begin
writeln('你的名字: ',name);
writeln('你的生命: ',plife,'/',plifemax);
writeln('攻击力: ',patt);
writeln('防御力: ',pre);
writeln('经验: ',ex);
writeln('升级经验',exmax);
writeln('级数: ',gr);
writeln('钞票:',money);
writeln('魔力: ',mp,'/',mpmax);
write('光之七神器:');for i:=1 to godthing do write(god,' ');
writeln;
writeln('百宝箱:');
writeln('红色药丸:',red);
2007-1-1 11:14 回复
222.184.52.*3楼
writeln('兰色药丸:',blue);
writeln('神剑:' ,knife);
writeln('防身衣:',clothes);
writeln;
writeln;
end;
procere people;
begin
plife:=100;
plifemax:=100;
patt:=20;
pre:=15;
money:=100;
gr:=1;
ex:=0;
exmax:=20;
mp:=50;
mpmax:=50;
red:=5;
blue:=5;
knife:=0;
clothes:=0;
end;
procere old;
var i:integer;
begin
writeln('输入你的名字 :');
readln;
readln(name);
fname:=concat(name,'.txt');
assign(na,fname);
reset(na);
readln(na,code);
writeln('输入密码:');
readln(co);
if co<>code then
begin
writeln('密码错误!');
readln;
halt;
end;
readln(na,plife);
readln(na,plifemax);
readln(na,patt);
readln(na,pre);
readln(na,ex);
readln(na,exmax);
readln(na,gr);
readln(na,money);
readln(na,mp);
readln(na,mpmax);
readln(na,red);
readln(na,blue);
readln(na,knife);
readln(na,clothes);
readln(na,godthing);
for i:=1 to godthing do readln(god);
end;
procere new;
var i:integer;
begin
writeln( ' 输入你的名字: ');
readln;
readln(name);
if name<>'0' then begin
fname:=concat(name,'.txt');
assign(na,fname);
rewrite(na);
writeln('输入密码');
readln(code);
writeln(na,code);
people;
writeln(na,plife);
writeln(na,plifemax),Phones in China;
writeln(na,patt);
writeln(na,pre);
writeln(na,ex);
writeln(na,exmax);
writeln(na,gr);
writeln(na,money);
writeln(na,mp);
writeln(na,mpmax);
writeln(na,red);
writeln(na,blue);
writeln(na,knife);
writeln(na,clothes);
writeln(godthing);
for i:=1 to godthing do writeln(god);
end
else halt;
end;
procere denlu;
var
dl:byte;
begin
writeln('-------------------自制的游戏不要笑----------------------');
writeln('-----------------------仅供娱乐----------------------');
writeln('1: 新游戏 2:老游戏 3:退出');
read(dl);
case dl of
1:new;
2:old;
3:halt;
end;
end;
procere godthing2;
var
qi:integer;
begin
randomize;
qi:=random(50);
case qi of
0,8:begin
writeln('得到光之七神具----1:辟天宝剑');
writeln('攻击增加60点!!!');
patt:=patt+60;
godthing:=godthing+1;
god[godthing]:=1;
end;
3,16:begin
writeln('得到光之七神具----2:开地玄远剑');
writeln('攻击力*2');
patt:=patt*2;
godthing:=godthing+1;
god[godthing]:=2;
end;
end;
end;
procere grow;
begin
if ex>=exmax then begin
plife:=plifemax+50;
plifemax:=plife;
patt:=patt+15;
pre:=pre+15;
mpmax:=mpmax+30;
mp:=mpmax;
ex:=0;
gr:=gr+1;
exmax:=exmax+100;
writeln('升级!!');
godthing2;
writeln;
writeln;
end;
end;
procere experience;
begin
randomize;
ex:=ex+random(alife)+30;
grow;
end;
procere attack;
var
win,lost,run:boolean;
ch,ff,kp,ka:integer;
procere winner;
begin
win:=false;
if alife1<1 then win :=true;
end;
procere loster;
begin
lost:=false;
if plife<1 then lost:=true;
end;
begin
win:=false;
lost:=false;
run:=false;
writeln('1:攻击; 2:逃跑');
writeln('你的生命:',plife,'/',plifemax);
writeln('你的魔法值: ',mp,'/',mpmax);
readln(ch);
if ch=1 then begin
alife1:=alife;
repeat
writeln;
writeln;
writeln('1:物理¥攻击; 2:魔法¥攻击; 3:用百宝箱; 4.逃跑 ');
read(ff);
case ff of
1:begin
writeln;
writeln;
writeln;
writeln;
{}
kp:=random(patt)-random(are);
if kp>0 then begin
writeln('你攻击!!怪物受到',kp,' 伤害');
alife1:=alife1-kp;
end
else begin
writeln('你输了');
end;
ka:=random(aatt)-random(pre);
if ka>0 then begin
writeln('怪物攻击,你得到',ka,' 伤害');
plife:=plife-ka;
end
else begin
writeln( '怪物输了');
end;
writeln(' 怪物生命:',alife1);
writeln('你生命:',plife,'/',plifemax);
writeln('你的魔法值: ',mp,'/',mpmax);
end;
2:begin
magic;
end;
3:begin
bag;
end;
4:begin
run:=true;
writeln('逃跑失败');
end;
end;
winner;
loster;
until win or lost or run;
if win then begin experience; plusmoney; writeln('你赢了!!!'); writeln; end;
if lost then
begin
writeln('输了');
readln;
halt;
end;
end
else exit;
end;
procere animal;
begin
alife:=plifemax+random(50);
if plifemax=100 then begin
aatt:=15;
are:=10;
end
else begin
aatt:=aatt+10;
are:=are+7;
end;
attack;
end;
procere meet;
var
cc:integer;
begin
randomize;
cc:=random(100);
if cc<40 then begin
writeln;
writeln('你遇见一个怪物');
animal;
end
else writeln('没碰到.......');
end;
procere choose;
begin
writeln('1:找怪物; 2:去商店; 3:读取; 4:保存; 5:退出 6:查看 7:用百宝箱');
read(dz);
case dz of
1:meet;
2:shop;
3:load;
4:save;
6:see;
7:bag;
end;
end;
begin
denlu;
while dz<>5 do
choose;
close(na);
end.