VimIy微民网,让世界倾听微民的声音! 设为首页 | 加入收藏 | 网站地图
当前位置:主页 > 大杂烩 >

【我是逗比】口袋妖怪大家怀念不?我自己写了个基于控制台的口袋妖怪对战,咳咳..

整理时间:2013-02-01 12:02 来源:www.vimiy.com 作者:编辑 点击:

【楼主】(942161)2013-01-31 00:19

» 口袋妖怪大家怀念不?我自己写了个基于控制台的口袋妖怪对战,咳咳..
    首先,楼主很低端啊,楼主只是个大学生啊,大三啊,楼主很无聊啊,楼主想找实习啊,楼主找不到啊,大家不要喷我啊
     我是魔都的哟,有大神收我吗
    前两天还发了个贴问这问那啊相当低端啊怎么破啊!!
    
    呸!我说了什么!
    
    
    啊呀突然想玩以前在gba上玩的口袋妖怪,怒搜!
    
    泥马吖,不是要下模拟器就是要买掌机,坑爹啊!怎么没PC版啊
    好吧反正无聊,自己写个好了,还能想怎么搞怎么搞
    
    
    啊呀虽然写的时候是想到什么写什么,不过写了2天之后发现,如果当初是系统化的话,会更方便吧
    喂!软件工程真的很重要啊喂!
    
    
    
    
    #pragma once
    #include "InitMonster.h"
    #include "InitSkill.h"
    #include "Gamer.h"
    #include "Monster.h"
    class Battle
    {
    private:
     int turn;
    public:
     Battle()
     {
     turn=0;//回合计数
     }
     void ShowInfo(Monster &t)//内显示怪物属性与技能
     {
     char a;
    loop:
     system("cls");
     ShowMonster(t);//显示信息
     cout<<endl;
     ShowSkillofMonster(t);//显示技能
    
     cout<<endl<<endl<<"按2查看技能,按其他键返回:";
     a=_getch();
     if(a=='2')
     {
     system("cls");
     ShowSkill(t.skill1);
     ShowSkill(t.skill2);
     ShowSkill(t.skill3);
     ShowSkill(t.skill4);
     cout<<endl;
     cout<<"按任意键返回:";
     a=_getch();
     goto loop;
     }
     return;
     }
     void ShowMonsterOwn(Gamer &p)
     {
     cout<<endl;
     cout<<'\t'<<"1."<<p.PM1.name<<endl;
     cout<<'\t'<<"2."<<p.PM2.name<<endl;
     cout<<'\t'<<"3."<<p.PM3.name<<endl;
     }
     Monster PlayerChoose(int i)//玩家选择怪物
     {
     int a;
     Monster t;
     while(1)
     {
     system("cls");
     cout<<endl<<"请选择你的第"<<i<<"只Pokemon(按回车继续):"<<endl;
     ShowMonsterList(100);//max需更改
     cout<<endl<<endl;
     cin>>a;
     while(FindMonster(a).ID==10)
     {
     cout<<"不存在,请重新输入:"<<endl;
     cin>>a;
     }
     //找到怪物
     t=FindMonster(a);
    loop:
     system("cls");
     ShowMonster(t);//显示信息
     cout<<endl;
     ShowSkillofMonster(t);//显示技能
    
     cout<<endl<<endl<<"按1确认,按2查看技能,按其他键返回:";
     a=_getch();
     if(a=='1')
     {
     return t;
     break;
     }
     if(a=='2')
     {
     system("cls");
     ShowSkill(t.skill1);
     ShowSkill(t.skill2);
     ShowSkill(t.skill3);
     ShowSkill(t.skill4);
     cout<<"按任意键返回:";
     a=_getch();
     goto loop;
     }
     }
     }
     Monster EnemyChoose(Gamer &p)//敌人怪物选择
     {
     int key=rand()%100+1;//max需调整
     while(FindMonster(key).ID==10||FindMonster(key).ID==p.PM1.ID||FindMonster(key).ID==p.PM2.ID||FindMonster(key).ID==p.PM3.ID)//与玩家选不同的
     key=rand()%100+1;
     return FindMonster(key);
     }
    
     Monster &ExchangeMonsterB(Gamer &p,Monster &m)
     {
     //if(!isLive(m))
     //{ m=NoneM; }
     int a;
     ShowMonsterOwn(p);
    recm:
     cout<<'\t'<<"请选择要更换的Pokemon,(回车继续):"<<endl;
     cin>>a;
     while(a<0||a>3)
     {
     cout<<"不存在,请重新输入:";
     cin>>a;
     }
     switch(a)
     {
     case 1:
     if(isLive(p.PM1))
     return p.PM1;
     else
     {
     cout<<'\t'<<p.PM1.name<<"已经挂了";
     goto recm;
     }
     case 2:
     if(isLive(p.PM2))
     return p.PM2;
     else
     {
     cout<<'\t'<<p.PM2.name<<"已经挂了";
     goto recm;
     }
     case 3:
     if(isLive(p.PM3))
     return p.PM3;
     else
     {
     cout<<'\t'<<p.PM3.name<<"已经挂了";
     goto recm;
     }
     default: return p.PM1;
     }
     }
     Monster &ExchangeMonsterAI(Gamer &p)
     {
     int a;
    recmai:
     a=rand()%3+1;
     switch(a)
     {
     case 1:
     if(isLive(p.PM1))
     return p.PM1;
     else
     goto recmai;
     case 2:
     if(isLive(p.PM2))
     return p.PM2;
     else
     goto recmai;
     case 3:
     if(isLive(p.PM3))
     return p.PM3;
     else
     goto recmai;
     default: return p.PM1;
     }
     }
     Monster ExchangeMonsterQ(Gamer &p,int a)
     {
     switch(a)
     {
     case 1: return p.PM1;
     case 2: return p.PM2;
     case 3: return p.PM3;
     default: return p.PM1;
     }
     }
    
     Gamer MonsterQueue(Gamer &p)//排列Pokemon出场顺序
     {
    queue:
     Gamer t=p;
     int a;
     system("cls");
     ShowMonsterOwn(p);
     cout<<endl<<'\t'<<"选择首位出场的Pokemon(回车继续):"<<endl;
     cin>>a;
     while(a<1||a>3)
     {
     cout<<"不存在,请重新输入:";
     cin>>a;
     }
     t.PM1=ExchangeMonsterQ(p,a);
     switch(a)
     {
     case 1: t.PM1=p.PM1; break;
     case 2: t.PM2=p.PM1; break;
     case 3: t.PM3=p.PM1; break;
     default: t.PM1=p.PM1; break;
     }
     cout<<endl<<'\t'<<"你选择 "<<t.PM1.name<<" 首发"<<endl;
     cout<<endl<<'\t'<<"确认按1,按其他键重选(回车继续):"<<endl;
     cin>>a;
     if(a==1)
     return t;
     else
     goto queue;
     }
     void TempProperty(Monster &m,Skill &s)//获取计算属性
     {
     m.TempATK=m.ATK+s.ATKaddition;
     m.TempDEF=m.DEF+s.DEFaddition;
     m.TempAGI=m.AGI+s.AGIaddition;
     m.BattleHP+=s.HPaddition;
     m.TempSPATK=m.SPATK+s.SPATKaddition;
     m.TempSPDEF=m.SPDEF+s.SPDEFaddition;
     }
     void OrigPropertyM(Monster &m)//还原临时属性
     {
     m.TempATK=m.BattleATK;
     m.TempDEF=m.BattleDEF;
     m.TempAGI=m.BattleAGI;
     m.TempSPATK=m.BattleSPATK;
     m.TempSPDEF=m.BattleSPDEF;
     }
     void OrigPropertyG(Gamer &m)
     {
     OrigPropertyM(m.PM1);
     OrigPropertyM(m.PM2);
     OrigPropertyM(m.PM3);
     m.PM1.BattleLive=1;
     m.PM2.BattleLive=1;
     m.PM3.BattleLive=1;
     }
     void SaveHP(Monster &t,int hp)
     {
     t.BattleHP=hp;
     }
     Skill ChooseSkillB(Monster &p,Monster &e,Monster &t)//战斗时技能选择
     {
     int a;
    CS:
     system("cls");
     Screen(p,e);
     cout<<'\t'<<"请选择技能:"<<endl;
     ShowSkillofMonster(t);
     a=_getch();
     while(a<'1'||a>'4')
     a=_getch();
     switch(a)
     {
     case '1':
     if(t.skill1.TempPP==0)
     {
     cout<<" Out of PP!!";
     Sleep(1000);
     goto CS;
     }
     t.skill1.TempPP--;
     return t.skill1;
     case '2':
     if(t.skill2.TempPP==0)
     {
     cout<<" Out of PP!!";
     Sleep(1000);
     goto CS;
     }
     t.skill2.TempPP--;
     return t.skill2;
     case '3':
     if(t.skill3.TempPP==0)
     {
     cout<<" Out of PP!!";
     Sleep(1000);
     goto CS;
     }
     t.skill3.TempPP--;
     return t.skill3;
     case '4':
     if(t.skill4.TempPP==0)
     {
     cout<<" Out of PP!!";
     Sleep(1000);
     goto CS;
     }
     t.skill4.TempPP--;
     return t.skill4;
     default:
     return t.skill1;
     }
     }
     Skill ChooseSkillAI(Monster &t)
     {
    CS:
     int a=rand()%4+1;
     switch(a)
     {
     case 1:
     if(t.skill1.TempPP==0)
     { goto CS;}
     t.skill1.TempPP--;
     return t.skill1;
     case 2:
     if(t.skill2.TempPP==0)
     { goto CS;}
     t.skill2.TempPP--;
     return t.skill2;
     case 3:
     if(t.skill3.TempPP==0)
     { goto CS;}
     t.skill3.TempPP--;
     return t.skill3;
     case 4:
     if(t.skill4.TempPP==0)
     { goto CS;}
     t.skill4.TempPP--;
     return t.skill4;
     default:
     return t.skill1;
     }
     }
     void Screen(Monster &Player,Monster &Enemy)//显示界面
     {
     int EHP=Enemy.HP,PHP=Player.HP;
     cout<<endl<<endl;
     cout<<'\t'<<Enemy.name<<" HP: "<<GorEqualthanzero(Enemy.BattleHP)<<"/"<<EHP;
     cout<<endl<<endl<<endl<<endl<<endl;
     cout<<endl<<endl<<endl<<endl<<endl;
     cout<<'\t'<<'\t'<<'\t'<<'\t'<<'\t'<<'\t'<<Player.name<<" HP: "<<GorEqualthanzero(Player.BattleHP)<<"/"<<PHP;
     cout<<endl<<endl<<endl;
     }
    
     bool Hitornot(Skill &s)//判断命中
     {
     int key=rand()%100+1;
     if(key<s.Hitrate)
     return 1;
     else
     return 0;
     }
     bool isLive(Monster &t)//无用
     {
     if(t.BattleLive=1)
     return 1;
     else
     return 0;
     }
     bool GamerLive(Gamer &t)
     {
     if(t.PM1.BattleHP>0||t.PM2.BattleHP>0||t.PM3.BattleHP>0)
     return 1;
     else
     return 0;
     }
     double Coefficient(Skill &ps,Monster &e)//克制循环有待改进
     {
     double t;
     int p;
     if(ps.Skillelement-e.element==1||(ps.Skillelement==FIRE&&e.element==GRASS))
     {
     cout<<'\t'<<"效果拔群! 疼炸天! "<<endl<<endl;
     t=1.5;
     }
     else if(ps.Skillelement-e.element==-1||(ps.Skillelement==GRASS&&e.element==FIRE))
     {
     cout<<'\t'<<"效果一般! 痒死爹! "<<endl<<endl;
     t=0.75;
     }
     else
     t=1;
     p=rand()%100;
     if(p<5)
     {
     cout<<'\t'<<"命中要害!!!(运气不错么嗯?) "<<endl<<endl;
     return 1.5*t;
     }
     else
     return t;
     }
     int Damage(Monster &launch,Skill &ls,Monster &bear)//伤害值
     {
     int key=rand()%100;
     if(!Hitornot(ls))
     {
     cout<<'\t'<<"泥马打偏了!次奥! "<<endl<<endl;
     return -1;
     }
     else if(key<(bear.BattleAGI-launch.BattleAGI)/10)
     {
     cout<<'\t'<<"敏太低,打偏了...T-T "<<endl<<endl;
     return -1;
     }
     TempProperty(launch,ls);
     if(ls.Skillelement==0)
     return (int)(launch.BattleATK+ls.ATKaddition*Coefficient(ls,bear)-bear.BattleDEF);
     else
     return (int)(launch.BattleSPATK+ls.SPATKaddition*Coefficient(ls,bear)-bear.BattleSPDEF);
     }
     int Greaterthanzero(int a)
     {
     if(a==-1)
     return 0;
     else if(a<=0)
     return 1;
     else
     return a;
     }
     int GorEqualthanzero(int a)
     {
     if(a<0)
     return 0;
     else
     return a;
     }
     void FightNormal(Gamer &Player,Gamer &Enemy)//搞起
     {
     char a;
     Skill ts;
     Monster *cpm,*cem;
     int l;
     OrigPropertyG(Player);
     OrigPropertyG(Enemy);
     cpm=&Player.PM1;
     cem=&Enemy.PM1;
     if(cpm->AGI>=cem->AGI)
     { turn++; }
     while(GamerLive(Player)&&GamerLive(Enemy))
     {
     if(turn%2==1)//玩家回合
     {
     turnstart:
     system("cls");
     Screen(*cpm,*cem);
     if(cpm->BattleHP<=0)
     {
     cpm->BattleLive=0;//无用
     system("cls");
     Screen(*cpm,*cem);
     cout<<'\t'<<cpm->name<<"阵亡了,biu!"<<endl;
     Sleep(2000);
     a='4';
     goto cm;
     }
     cout<<'\t'<<"请选择你的行动: "<<endl<<endl;
     cout<<'\t'<<" 1.使用技能 2.查看自己资料 3.查看敌方资料 4.更换宠物 5.逃跑"<<endl<<endl;
     a=_getch();
     while(a<'1'||a>'5')//判断行为
     a=_getch();
     if(a=='1')//用技能
     {
     ts=ChooseSkillB(*cpm,*cem,*cpm);
     system("cls");
     Screen(*cpm,*cem);
     l=Greaterthanzero(Damage(*cpm,ts,*cem));
     cem->BattleHP-=l;
     cout<<'\t'<<cpm->name<<"使用了技能: "<<ts.Skillname<<" 对 "<<cem->name<<"造成了"
     <<l<<"点伤害."<<endl<<endl;
     Sleep(2500);
     OrigPropertyM(*cpm);
     }
     if(a=='2')
     {
     ShowInfo(*cpm);
     goto turnstart;
     }
     if(a=='3')
     {
     ShowInfo(*cem);
     goto turnstart;
     }
     cm:
     if(a=='4')
     {
     system("cls");
     Screen(*cpm,*cem);
     //cpm2=cpm;
     SaveHP(*cpm,cpm->BattleHP);
     //cpm=new Monster;
     cpm=&ExchangeMonsterB(Player,*cpm);
     //if(cpm->ID==cpm2->ID)
     // goto turnstart;
     system("cls");
     Screen(*cpm,*cem);
     cout<<'\t'<<"上吧! "<<cpm->name<<" !"<<endl;
     Sleep(2000);
     if(cpm->BattleHP<=0)
     {
     cout<<'\t'<<cpm->name<<"已经挂了!"<<endl;
     Sleep(2000);
     a='4';
     goto cm;
     }
     }
     if(a=='5')
     {
     Player.PM1.BattleHP=0;
     Player.PM2.BattleHP=0;
     Player.PM3.BattleHP=0;
     }
     }
     else//敌人回合
     {
     if(cem->BattleHP<=0)
     {
     SaveHP(*cem,cem->BattleHP);
     cem->BattleLive=0;//无用
     system("cls");
     Screen(*cpm,*cem);
     cout<<'\t'<<cem->name<<"阵亡了,biu!"<<endl;
     Sleep(2000);
     cem=&ExchangeMonsterAI(Enemy);
     while(cem->BattleHP<=0)
     cem=&ExchangeMonsterAI(Enemy);
     system("cls");
     Screen(*cpm,*cem);
     cout<<'\t'<<"对手派出了 "<<cem->name<<" !"<<endl;
     Sleep(2000);
     system("cls");
     Screen(*cpm,*cem);
     goto eturnend;
     }
     ts=ChooseSkillAI(*cem);
     system("cls");
     Screen(*cpm,*cem);
     l=Greaterthanzero(Damage(*cem,ts,*cpm));
     cpm->BattleHP-=l;
     cout<<'\t'<<cem->name<<"使用了技能: "<<ts.Skillname<<" 对 "<<cpm->name<<"造成了"<<l<<
     "点伤害."<<endl<<endl;
     OrigPropertyM(*cem);
     Sleep(2500);
     }
     eturnend:
     turn++;
     }
     if(!GamerLive(Enemy))//玩家胜
     {
     system("cls");
     Screen(*cpm,*cem);
     cout<<endl<<"你赢了!"<<endl;
     }
     else
     {
     system("cls");
     Screen(*cpm,*cem);
     cout<<endl<<"你输了!"<<endl;
     }
     }
     void FightChallenge(Gamer &Player,Gamer &Enemy)//搞起
     {
     int num=1;
     char a;
     Skill ts;
     Monster *cpm,*cem;
     int l;
    rc:
     int k=0;
     Enemy.PM1=EnemyChoose(Enemy);
     OrigPropertyG(Player);
     OrigPropertyG(Enemy);
     cpm=&Player.PM1;
     cem=&Enemy.PM1;
     if(cpm->AGI>=cem->AGI)
     { turn++; }
     while(GamerLive(Player))
     {
     if(turn%2==1)//玩家回合
     {
     turnstart:
     system("cls");
     Screen(*cpm,*cem);
     if(cpm->BattleHP<=0)
     {
     cpm->BattleLive=0;//无用
     system("cls");
     Screen(*cpm,*cem);
     cout<<'\t'<<cpm->name<<"阵亡了,biu!"<<endl;
     Sleep(2000);
     a='4';
     goto cm;
     }
     cout<<'\t'<<"请选择你的行动: "<<endl<<endl;
     cout<<'\t'<<" 1.使用技能 2.查看自己资料 3.查看敌方资料 4.更换宠物 5.逃跑"<<endl<<endl;
     a=_getch();
     while(a<'1'||a>'5')//判断行为
     a=_getch();
     if(a=='1')//用技能
     {
     ts=ChooseSkillB(*cpm,*cem,*cpm);
     system("cls");
     Screen(*cpm,*cem);
     l=Greaterthanzero(Damage(*cpm,ts,*cem));
     cem->BattleHP-=l;
     cout<<'\t'<<cpm->name<<"使用了技能: "<<ts.Skillname<<" 对 "<<cem->name<<"造成了"
     <<l<<"点伤害."<<endl<<endl;
     Sleep(2500);
     OrigPropertyM(*cpm);
     }
     if(a=='2')
     {
     ShowInfo(*cpm);
     goto turnstart;
     }
     if(a=='3')
     {
     ShowInfo(*cem);
     goto turnstart;
     }
     cm:
     if(a=='4')
     {
     system("cls");
     Screen(*cpm,*cem);
     //cpm2=cpm;
     SaveHP(*cpm,cpm->BattleHP);
     //cpm=new Monster;
     cpm=&ExchangeMonsterB(Player,*cpm);
     //if(cpm->ID==cpm2->ID)
     // goto turnstart;
     system("cls");
     Screen(*cpm,*cem);
     cout<<'\t'<<"上吧! "<<cpm->name<<" !"<<endl;
     Sleep(2000);
     if(cpm->BattleHP<=0)
     {
     cout<<'\t'<<cpm->name<<"已经挂了!"<<endl;
     Sleep(2000);
     a='4';
     goto cm;
     }
     }
     if(a=='5')
     {
     Player.PM1.BattleHP=0;
     Player.PM2.BattleHP=0;
     Player.PM3.BattleHP=0;
     }
     }
     else//敌人回合
     {
     if(cem->BattleHP<=0)
     {
     system("cls");
     Screen(*cpm,*cem);
     cout<<'\t'<<cem->name<<"阵亡了,biu!"<<endl;
     Sleep(2000);
     Enemy.PM1=EnemyChoose(Enemy);
     system("cls");
     Screen(*cpm,*cem);
     cout<<'\t'<<"对手派出了 "<<cem->name<<" !"<<endl;
     Sleep(2000);
     system("cls");
     Screen(*cpm,*cem);
     num++;
     goto eturnend;
     }
     ts=ChooseSkillAI(*cem);
     system("cls");
     Screen(*cpm,*cem);
     l=Greaterthanzero(Damage(*cem,ts,*cpm));
     cpm->BattleHP-=l;
     cout<<'\t'<<cem->name<<"使用了技能: "<<ts.Skillname<<" 对 "<<cpm->name<<"造成了"<<l<<
     "点伤害."<<endl<<endl;
     OrigPropertyM(*cem);
     Sleep(2500);
     }
     eturnend:
     turn++;
     }
     if(!GamerLive(Player))//输了
     {
     system("cls");
     cout<<endl<<'\t'<<"团灭!"<<endl<<endl;
     cout<<'\t'<<"但是你英勇得战胜了 "<<num<<" 只野生的Pokemon!"<<endl;
     if(num>3)
     { cout<<'\t'<<"水平不错哟!"<<endl; }
     else if(num>6)
     { cout<<'\t'<<"屌炸了哟!"<<endl; }
     else if(num>9)
     { cout<<'\t'<<"你吖运气有点好哟!"<<endl; }
     else
     { cout<<'\t'<<"喂喂喂..你是运气太差还是太菜?"<<endl;}
     }
     }
    };
    
    
    
    
    
    
    #include <stdio.h>
    #include <string>
    #include <iostream>
    #include <iomanip>
    #include <conio.h>
    #include <cmath>
    #include "windows.h"
    #include "time.h"
    using namespace std;
    
    const static int COMMON=0;
    const static int FIRE=2;
    const static int WATER=3;
    const static int ELECTRIC=4;
    const static int GRASS=5;
    const static int POISON=6;
    const static int PSYCHIC=7;
    string EletoWord(int a);//将属性转换为字符
    
    #include "Skill.h"
    #include "Monster.h"
    #include "InitSkill.h"
    #include "InitMonster.h"
    #include "Gamer.h"
    #include "Battle.h"
    
    #include "Text.h"
    void main()
    {
     srand((unsigned)time(NULL));
     char a;
    start:
     ShowWelcome();
     cout<<endl<<endl<<'\t'<<"按2查看帮助与更新日志";
     cout<<endl<<'\t'<<"按4进入挑战模式";
     cout<<endl<<'\t'<<"按其他键开始训练师对决模式"<<endl;
     while(a=_getch())
     {
     Gamer P;
     Gamer E;
     Battle test;
     if(a=='2')
     {
     ShowHelpUpdate();
     a=_getch();
     goto start;
     }
     if(a=='4')
     {
     P.PM1=test.PlayerChoose(1);
     P.PM2=test.PlayerChoose(2);
     P.PM3=test.PlayerChoose(3);
     P=test.MonsterQueue(P);
     test.FightChallenge(P,E);
     system("pause");
     goto start;
     }
     else
     {
     while(1)
     {
     P.PM1=test.PlayerChoose(1);
     cout<<endl<<'\t'<<"电脑选择Pokemon中..."<<endl;
     E.PM1=test.EnemyChoose(E);
     Sleep(200);
     P.PM2=test.PlayerChoose(2);
     cout<<endl<<'\t'<<"电脑选择Pokemon中..."<<endl;
     E.PM2=test.EnemyChoose(E);
     Sleep(200);
     P.PM3=test.PlayerChoose(3);
     cout<<endl<<'\t'<<"电脑选择Pokemon中..."<<endl;
     E.PM3=test.EnemyChoose(E);
     Sleep(200);
     P=test.MonsterQueue(P);
     test.FightNormal(P,E);
     system("pause");
     }
     }
     }
    }
    
    
    string EletoWord(int a)
    {
     switch(a)
     {
     case 0: return "普通";
     case 2: return "火";
     case 3: return "水";
     case 4: return "电";
     case 5: return "草";
     case 6: return "毒";
     case 7: return "超能力";
     default: return "Unknown";
     }
    }
    
    
    
    以下正文
    
    首先进入画面我们可以看到:
    
    泥马这什么玩意啊!
    黑底白框的,傻逼啊!
    咳咳
    
    接着不管你选择哪个模式 都可以看到:
    
    我了个擦!才这么点口袋妖怪,玩个奶子啊!
    咳咳..会慢慢加的吗,这个是属于时间问题..
    
    选了序号之后可以看到妖怪的属性:
    
    我去! 这些属性是啥?你瞎编的???
    咳咳..俺可是根据神奇宝贝百科写的好嘛!
    
    然后可以看技能:
    
    ......
    
    选好首发阵容之后就可以搞起了!:
    
    我去你妹的你这怎么全是文字啊一点都不带感啊怎么回事啊!
     我是逗比我不会T-T
    
    对面是草系逗比?嗯...:
    
     好像还挺带劲呵呵!
    
    经过一番激烈枯燥的战斗之后:
    
    啧啧,你个神奇宝贝太屌丝怎么打得动你亲爸爸??
    
    挑战模式最后:
    
    
    
    好吧这都是楼主一个人写的,一共用了3个下午,代码大概1000多行,非常低端
    下一步可能打算增加道具或者持续性技能(当然还有更多的妖怪!)
    
    
    大家轻喷
    


网友评论(15946597)2013-01-31 00:21


    前段时间表弟来我家玩,和我说半天神奇宝贝,听不懂.........
    
    一搜图,这尼玛不是口袋妖怪吗....
    
网友评论(1889515)2013-01-31 00:21


    lz模拟器明明简单又好用...干嘛用这个...当然,还是要鼓励一下的
    


网友评论(2391136)2013-01-31 00:21


    我看到的是中国暴雪的雏形啊骚年!
    
网友评论(2171949)2013-01-31 00:22


    我喜欢口袋 楼主加油么么哒!
    
网友评论(20091210)2013-01-31 00:22


    又想起了“坦克大战到底得罪了谁”
    
    
网友评论(11442649)2013-01-31 00:23


    加油楼主…
    
    ----sent from my HTC HTC Incredible S,Android 4.0.4
    
网友评论(942161)2013-01-31 00:23


    Reply to Reply Post by Lenous (2013-01-31 00:21)
    
    
    你为什么要欺负我!
    
网友评论(6428251)2013-01-31 00:23


    我试试。。。
    
    可以捕获并培养小怪兽么?
    
网友评论(1918702)2013-01-31 00:23


    模拟器不能玩么
    ----sent from my samsung Galaxy Nexus,Android 4.2.1
    
网友评论(942161)2013-01-31 00:23


    Reply to Reply Post by 金钹法王 (2013-01-31 00:23)
    
    我一开始也想有什么..额 rpg功能
    然后发现...
    咳咳,这个超出我能力范围有点远啊!
    
    
网友评论(847177)2013-01-31 00:24


    我觉得你用C#写可能更简单也更好看点。。。
    
网友评论(20883133)2013-01-31 00:24


    没图的口袋妖怪玩个蛋啊...
    
网友评论(942161)2013-01-31 00:25


    Reply to Reply Post by hou_1123 (2013-01-31 00:24)
    
    不会呢..
    我看我同学就是拖窗口拖窗口,好像很好玩的样子
    不过还是打算先把算法导论啃完吧
    
网友评论(942161)2013-01-31 00:26


    Reply to Reply Post by 是你的砖头 (2013-01-31 00:24)
    
    
    说了不会还要欺负我
    
网友评论(6428251)2013-01-31 00:29


    Reply Post by pigdehao (2013-01-31 00:23):
    
    我一开始也想有什么..额 rpg功能
    然后发现...
    咳咳,这个超出我能力范围有点远啊!
    
    
    刚才试了一下。。。翻来覆去就这几个小怪兽啊!!!
    
    而且攻防属性相克什么都木有啊!!!
    
网友评论(942161)2013-01-31 00:31


    Reply Post by 金钹法王 (2013-01-31 00:29):
    
    刚才试了一下。。。翻来覆去就这几个小怪兽啊!!!
    
    而且攻防属性相克什么都木有啊!!!
    
    小怪兽是少了点
    但是属性克制妥妥的有啊
    效果拔群啊!
    
网友评论(1293765)2013-01-31 00:32


    怪物你可以用字符串拼出一个大概的外形。。
    
网友评论(6428251)2013-01-31 00:33


    Reply to Reply Post by pigdehao (2013-01-31 00:31)
    
    尼玛我出超梦了都!
    
    对方一个雷丘一招打我167啊有木有!
    
    效果拔群啊有木有!
    
    我幻想攻击还没有打中啊有木有!
    
    最后我居然没干过一只雷丘啊有木有!
    
网友评论(942161)2013-01-31 00:36


    Reply to Reply Post by 金钹法王 (2013-01-31 00:33)
    
    技能有命中率的嘛~~
    还有5%几率命中要害
    敏捷差的10%躲闪
    咳咳
    一切看人品
    
    你看这是属性克制啊!
    
    



    
    
    

关于网站 | 网站声明 | 用户反馈 | 合作伙伴 | 联系我们
Copyright © 2012年2月8日