项目
在这两周是我们的项目时间,在项目期间,我学到了许多新的知识,例如文件读写。还知道了许多方便快捷的软件,例如图片转字符软件。我完成了角色移动,移动打怪,文件读写等板块。。。接下来为大家展示下...
//角色移动 void roleMove(){ char m;//接收输入的字符 int running=2;//控制循环的变量 while(running) { //接收输入的字符 m=getch(); // printf("输入的字符为:%c,%d\n", m,m); if(m=='q'||m=='w'||m=='a'||m=='s'||m=='d'){ if(m=='d'){ printf("向右移动"); // Sleep(500); //首先判断是否能移动到新的位置 int tmp=l[y][x+1]; if(tmp==1){//不能撞墙,不移动 }else if(tmp==0){ //空白区域,可以移动 l[y][x]=0; l[y][x+1]=2; x++; }else if(tmp==3){ int ret=pkguai(); if(ret==0){ l[y][x]=0; l[y][x+1]=2; x++; } } else if(tmp==4){ //打大boss int ret=pkboss(); if(ret==0){ l[y][x]=0; l[y][x+1]=2; x++; } } }else if(m=='s'){ printf("向下移动"); // Sleep(500); //首先判断是否能移动到新的位置 int tmp=l[y+1][x]; if(tmp==1){//不能撞墙,不移动 }else if(tmp==0){ //空白区域,可以移动 l[y][x]=0; l[y+1][x]=2; y++; }else if(tmp==3){//打小怪 int ret=pkguai(); if(ret==0){ l[y][x]=0; l[y+1][x]=2; y++; } } else if(tmp==4){//打大boss int ret=pkboss(); if(ret==0){ l[y][x]=0; l[y+1][x]=2; y++; } } }else if(m=='a'){ printf("向左移动"); //Sleep(500); //首先判断是否能移动到新的位置 int tmp=l[y][x-1]; if(tmp==1){//不能撞墙,不移动 }else if(tmp==0){//空白区域,可以移动 l[y][x]=0; l[y][x-1]=2; x--; }else if(tmp==3){//打小怪 int ret=pkguai(); if(ret==0){ l[y][x]=0; l[y][x-1]=2; x--; } } else if(tmp==4){//打大boss int ret=pkboss(); if(ret==0){ l[y][x]=0; l[y][x-1]=2; x--; } } } if(m=='w'){//向上 printf("向上移动"); // Sleep(500); //首先判断是否能移动到新的位置 int tmp=l[y-1][x]; if(tmp==1){//不能撞墙,不移动 }else if(tmp==0){//空白区域,可以移动 l[y][x]=0; l[y-1][x]=2; y--; } else if(tmp==3){//打小怪 int ret=pkguai(); if(ret==0){ l[y][x]=0; l[y-1][x]=2; y--; } } else if(tmp==4){//打大boss int ret=pkboss(); if(ret==0){ l[y][x]=0; l[y-1][x]=2; y--; } } } else if(m=='q'){ running=0; continue; } } else{ printf("输入错误....."); Sleep(500); } system("cls"); printDitu(); } }
d=0; printf("\n\t我怪物攻击了我,我受到了伤害,失去了生命值%d,挂了.....",shangHai); num=0; }else{ printf("\n\t我怪物攻击了我,我受到了伤害,失去了生命值%d,还剩%d.....",shangHai, p1.blood); } } } else if(c=='2'){ printf("\n\n"); printf("\t\t胆小鬼..."); printf("\n\n"); Sleep(100); exit (0); }else if(c=='3'){ int dazhao = p1.attack*p1.grade; shanghai = dazhao-b1.defense; blood-=shanghai; if(blood<=0){ printf("\n\t我攻击了怪物,怪物受到了伤害,失去了生命值%d,怪物挂了.....",shanghai); printf("\n\t您获得了胜利,得到经验%lf\n", p1.experience=b1.experience+p1.experience); printf("\n\t您获得了胜利,得到金币%d\n",p1.money=b1.money+p1.money); shengji(); Sleep(WAIT2); return 0; } else{ printf("我攻击了怪物,怪物受到伤害,失去%d生命值,还剩%d生命值",shanghai,blood); shangHai=b1.attack*b1.grade-p1.defense; p1.blood+=shangHai; if(p1.blood<=0){ p1.blood=0; printf("\n\t怪物攻击了我,我受到了伤害,失去了生命值%d,挂了.....",shangHai); exit(0); num=0; exit(0); }else{ printf("\n\t怪物攻击了我,我受到了伤害,失去了生命值%d,还剩%d.....",shangHai, p1.blood); } } }else if(c=='4'){ printf("冷血阶段,回血中...."); p1.blood=p1.blood+20; if(p1.blood>=100){ printf("血量已回满!"); Sleep(50); } }else{ printf("输入错误...."); continue; } Sleep(WAIT3); } } //打boss int pkboss(){ int blood = b1.blood; char c; int num=2,shanghai,shangHai; system("cls"); printf("\n\n\t发现了怪物......"); //每次发现怪物时,将怪物的血量补满 printf("\n\t发现怪物:%s,等级%d,血量%d\n",b1.name,b1.grade,blood); Sleep(WAIT2); printf("刷新出怪物....省略"); printf("\n\t对话提示:\n"); while(num){ system("cls"); printf("\n\n\t刷新出怪物....省略"); printf("\n\t1.攻击 2.逃跑 3.大招 4.补充\n\t"); c=getch(); if(c=='1'){ shanghai=p1.grade*p1.attack-b1.defense; blood-=shanghai; if(blood<=0){ printf("\n\t我攻击了怪物,怪物受到了伤害,失去了生命值%d,怪物挂了.....",shanghai); printf("\n\t您获得了胜利,得到经验%lf\n", p1.experience=g1.experience+p1.experience); printf("\n\t您获得了胜利,得到金币%d\n",g1.money+p1.money); shengji(); Sleep(WAIT2); return 0; } else{ printf("我攻击了怪物,怪物受到伤害,失去%d生命值,还剩%d生命值",shanghai,blood); shangHai=b1.attack*b1.grade-p1.defense; p1.blood+=shangHai; if(p1.blood<=0){ p1.blood=0; printf("\n\t怪物攻击了我,我受到了伤害,失去了生命值%d,挂了.....",shangHai); shengji(); num=0; }else{ printf("\n\t怪物攻击了我,我受到了伤害,失去了生命值%d,还剩%d.....",shangHai, p1.blood); } } } else if(c=='2'){ printf("胆小鬼..."); Sleep(100); break; }else if(c=='3'){ int dazhao = p1.attack*p1.grade+500; shanghai = dazhao-b1.defense; blood-=shanghai; if(blood<=0){ printf("\n\t我攻击了怪物,怪物受到了伤害,失去了生命值%d,怪物挂了.....",shanghai); printf("\n\t您获得了胜利,得到经验%lf\n", p1.experience=g1.experience+p1.experience); printf("\n\t您获得了胜利,得到金币%d\n",p1.money=g1.money+p1.money); shengji(); Sleep(WAIT2); return 0; } else{ printf("我攻击了怪物,怪物受到伤害,失去%d生命值,还剩%d生命值",shanghai,blood); shangHai=b1.attack*b1.grade-p1.defense; p1.blood+=shangHai; if(p1.blood<=0){ p1.blood=0; printf("\n\t怪物攻击了我,我受到了伤害,失去了生命值%d,挂了.....",shangHai); shengji(); num=0; }else{ printf("\n\t怪物攻击了我,我受到了伤害,失去了生命值%d,还剩%d.....",shangHai, p1.blood); } } }else if(c=='4'){ printf("冷血阶段,回血中...."); p1.blood=p1.blood+20; if(p1.blood>=100){ printf("血量已回满!"); Sleep(50); } }else{ printf("输入错误...."); continue; } Sleep(WAIT3); } }