アットウィキロゴ

トップページ

<stdio.h>
<string.h>
<windows.h>
<string>
<iostream>
<stdlib.h>
<time.h>




char x = 66;
char y = 66;
char x2 = 19;
char z = 1;
char q = 1;
char y2 = 19;
char menu = 1;
char menu2 = 1;
char shop = 1;
int money = 100;
char item;
int MENU;
int MENU2;
char SHOP;
int yakusou = 0;
int kimera = 0;
int HP = 15;
int ATK = 5;
int DEF = 5;
int EXP = 0;
int LV = 1;
int enemyHP = 3;
int enemyATK = 7;
int enemyDEF = 4;
int battle;
int battle2;
int battle3;
int nigeru;
int s = 0;
int i = 5;
int s2 = 0;












using namespace std;


int main() {


   //フィールドマップ


   char str[1000];


   string map;


   map = "MwwwwwwwwwwwwT\nMwwwwwwwwwwwww\nMwwwwwwwwwwwww\nMwwwwwwwwwwwww\nMwwwwwwwwwwwww\nMwwwwwwwwwwwww\nMwwwwwwwwwwwww\nMwwwwwwwwwwwww\nMwwwwwwwwwwwww\n";




   map[x] = 'A';
   strcpy(str, map.c_str());
   printf("%s\n", str);


   //町マップ


   char str2[1000];


   string map2;


   map2 = "EEEEEEE\nEllSllE\nElllllE\nEEEoEEE\n";






   char up = 0;
   char left = 0;
   char right = 0;
   char down = 0;


   while (1) {


       //フィールド用処理
       while (z == 1) {


           //フィールドメニュー
           if (GetAsyncKeyState(VK_ESCAPE) & 0x8000)
           {
               Sleep(300);
               system("cls");
               printf("メニュー\n\n");
               printf("1 持ち物\n2 ステータス\n3 とじる\n\nどれを開きますか? >");
               Sleep(300);
               scanf("%d", &MENU);
               //持ち物
               if (MENU == 1) {


                   system("cls");
                   if (yakusou == 0 && kimera == 0) { printf("持ち物はありません"); }
                   if (yakusou != 0) { printf("1 薬草x%d\n", yakusou); }
                   if (kimera != 0) { printf("2 キメラのつばさx%d\n", kimera); }
                   if (yakusou != 0 || kimera != 0) {
                       printf("3 なにもつかわない\n\n");
                       printf("なにをつかいますか? >");
                       Sleep(300);
                       scanf("%d", &i);
                       if (i == 1 && yakusou != 0) {


                           HP = HP + 10;
                           yakusou = yakusou - 1;
                           while (getchar() != '\n');
                           printf("HPが かいふくした\n");


                           if (LV == 1 && HP > 15) { HP = 15; }
                           if (LV == 2 && HP > 17) { HP = 17; }
                           if (LV == 3 && HP > 20) { HP = 20; }
                           i = 0;


                       }
                       if (i == 2 && kimera != 0) { while (getchar() != '\n');  printf("いまはつかえない"); i = 0; }


                       if (i == 3) {
                           while (getchar() != '\n'); printf(" ");
                           i = 0;
                       }


                   }MENU = 0;
               }
               //ステータス
               if (MENU == 2) {
                   system("cls");
                   printf("HP %d\n", HP);
                   printf("ATK %d\n", ATK);
                   printf("DEF %d\n", DEF);
                   printf("EXP %d\n", EXP);
                   printf("LV  %d\n\n", LV);
                   printf("%dG", money);
                   MENU = 0;


               }
               //とじる
               if (MENU == 3) {
                   system("cls");
                   printf("DELETEを押してください");
                   MENU = 0;
               }


               menu++;


           }


           if (menu == 2) {


               if (GetAsyncKeyState(VK_DELETE) & 0x8000)
               {
                   Sleep(300);
                   system("cls");


                   strcpy(str, map.c_str());
                   printf("%s\n", str);
                   menu = menu - 1;




               }
           }


           //フィールド移動
           if (GetAsyncKeyState(VK_UP) & 0x8000)
           {
               //戦闘
               srand((unsigned)time(NULL));
               battle = rand() % 9 + 1;


               if (battle == 1) {
                   s++;
                   s2++;
                   system("cls");
                   printf("敵が現れた\n\n\n");
                   printf("          i⌒i\n");
                   printf("          |  |\n");
                   printf("          ,,r’‘ヽ\n");
                   printf("         r‐”     ヽ、\n");
                   printf("        /         \\n");
                   printf("        /   ( ・ )( ・ ) ヽ\n");
                   printf("       |    ,-、   ,-、   |\n");
                   printf("        ヽ    ヽ、  ̄ ̄ ノ  /\n");
                   printf("       `-、  ` ̄ ̄´   /\n");
                   printf("          ̄ ̄ ̄ ̄ ̄ ̄ ̄\n");


                   printf("\n1 戦う\n2 逃げる\n\nどちらにしますか? >");
                   Sleep(300);
                   scanf("%d", &battle2);


                   if (battle2 == 1) {
                       //バトル処理


                       do {
                           system("cls");
                           printf("          i⌒i\n");
                           printf("          |  |\n");
                           printf("          ,,r’‘ヽ\n");
                           printf("         r‐”     ヽ、\n");
                           printf("        /         \\n");
                           printf("        /   ( ・ )( ・ ) ヽ\n");
                           printf("       |    ,-、   ,-、   |\n");
                           printf("        ヽ    ヽ、  ̄ ̄ ノ  /\n");
                           printf("       `-、  ` ̄ ̄´   /\n");
                           printf("          ̄ ̄ ̄ ̄ ̄ ̄ ̄\n");
                           printf("自分 HP%d\n", HP);
                           printf("1 こうげき\n2 アイテム\n3 にげる\n\n");
                           printf("どうしますか? >");


                           Sleep(300);
                           scanf("%d", &battle3);


                           if (battle3 == 1) {
                               enemyHP = enemyHP - (ATK - enemyDEF);
                               system("cls");
                               while (getchar() != '\n');
                               printf("%dのダメージをあたえた\n", ATK - enemyDEF);
                               if (enemyHP < 1) {


                                   s2 = s2 - 1;


                               }battle3 = 0;
                           }
                           if (battle3 == 2) {
                               system("cls");
                               while (getchar() != '\n');
                               if (yakusou == 0 && kimera == 0) { printf("持ち物はありません"); }
                               if (yakusou != 0) { printf("1 薬草x%d\n", yakusou); }
                               if (kimera != 0) { printf("2 キメラのつばさx%d\n", kimera); }
                               if (yakusou != 0 || kimera != 0) {
                                   printf("3 なにもつかわない\n\n");
                                   printf("なにをつかいますか? >");
                                   Sleep(300);
                                   scanf("%d", &i);
                                   if (i == 1 && yakusou != 0) {


                                       HP = HP + 10;
                                       yakusou = yakusou - 1;
                                       while (getchar() != '\n');
                                       printf("HPが かいふくした\n");


                                       if (LV == 1 && HP > 15) { HP = 15; }
                                       if (LV == 2 && HP > 17) { HP = 17; }
                                       if (LV == 3 && HP > 20) { HP = 20; }
                                       i = 0;


                                   }
                                   if (i == 2 && kimera != 0) { while (getchar() != '\n');  printf("いまはつかえない"); i = 0; }


                                   if (i == 3) {
                                       while (getchar() != '\n'); printf(" "); i = 0;
                                   }


                               }




                               battle3 = 0;
                           }
                           if (battle3 == 3) {
                               srand((unsigned)time(NULL));
                               nigeru = rand() % 2 + 1;
                               if (nigeru != 1) { s = s - 1; }
                               battle3 = 0;
                           }
                           //敵の攻撃


                           if (s2 == 1) {
                               HP = HP - (enemyATK - DEF+3) ;
                               Sleep(1000);


                               while (getchar() != '\n');
                               printf("%dのダメージを受けた", enemyATK - DEF+3);
                               while (getchar() != '\n');
                               if (HP < 1) {
                                   while (getchar() != '\n');
                                   printf("ゲームオーバー");
                                   while (getchar() != '\n'); abort();
                               }


                           }
                           if (s2 == 0) {
                               Sleep(1000);
                               while (getchar() != '\n');
                               printf("勝利\n");
                               printf("2のけいけんちをえた");
                               while (getchar() != '\n');


                               EXP = EXP + 2;
                               if (LV == 1 && EXP > 2) {
                                   LV++; ATK++; DEF++; HP = HP + 2;
                                   while (getchar() != '\n');
                                   printf("レベルアップ!\nこうげき が 1 あがった\n");
                                   printf("ぼうぎょ が 1 あがった\n");
                                   printf("たいりょく が 2 あがった\n");


                               }




                               if (LV == 2 && EXP > 5) {
                                   LV++; ATK = ATK + 2; DEF = DEF + 3; HP = HP + 3;
                                   while (getchar() != '\n');
                                   printf("レベルアップ!\nこうげき が 2 あがった\n");
                                   printf("ぼうぎょ が 3 あがった\n");
                                   printf("たいりょく が 3 あがった\n");


                               }






                               s = s - 1;
                           }




                       } while (s == 1);
                       enemyHP = 3;
                       //フィールドに戻る
                       system("cls");


                       strcpy(str, map.c_str());
                       printf("%s\n", str);
                       battle2 = 0;






                   }


                   if (battle2 == 2) {
                       srand((unsigned)time(NULL));
                       nigeru = rand() % 2 + 1;
                       if (nigeru != 1) {
                           //フィールドに戻る
                           system("cls");


                           strcpy(str, map.c_str());
                           printf("%s\n", str);
                       }
                       if (nigeru == 1) {
                           system("cls");
                           while (getchar() != '\n');  printf("逃げられなかった");
                           //バトル処理


                       }
                       battle2 = 0;
                   }


               }
               //戦闘終了




               y = y + 15;


               system("cls");
               x = x - 15;
               map[x] = 'A';
               strcpy(str, map.c_str());
               printf("%s\n", str);


               system("cls");
               y = x + 15;
               map[y] = 'w';
               strcpy(str, map.c_str());
               printf("%s\n", str);


               Sleep(200);


           }


           if (GetAsyncKeyState(VK_LEFT) & 0x8000)


           {


               y = y + 1;


               system("cls");
               x = x - 1;
               map[x] = 'A';
               strcpy(str, map.c_str());
               printf("%s\n", str);


               system("cls");
               y = x + 1;
               map[y] = 'w';
               strcpy(str, map.c_str());
               printf("%s\n", str);


               Sleep(200);
           }


           if (GetAsyncKeyState(VK_DOWN) & 0x8000)
           {






               y = y - 15;


               system("cls");
               x = x + 15;
               map[x] = 'A';
               strcpy(str, map.c_str());
               printf("%s\n", str);


               system("cls");
               y = x - 15;
               map[y] = 'w';
               strcpy(str, map.c_str());
               printf("%s\n", str);


               Sleep(200);


           }




           if (GetAsyncKeyState(VK_RIGHT) & 0x8000)


           {


               y = y - 1;


               system("cls");
               x = x + 1;
               map[x] = 'A';
               strcpy(str, map.c_str());
               printf("%s\n", str);


               system("cls");
               y = x - 1;
               map[y] = 'w';
               strcpy(str, map.c_str());
               printf("%s\n", str);


               Sleep(200);
           }


           if (x == 0 || x == 15 || x == 30 || x == 45 || x == 60 || x == 75 || x == 90 || x == 105 || x == 120)
           {
               system("cls");
               x = x + 1;
               map[x] = 'A';
               map[x - 1] = 'M';
               strcpy(str, map.c_str());
               printf("%s\n", str);
               printf("山へは入れない");
               Sleep(1000);
               system("cls");
               printf("%s\n", str);




           }


           if (x == 13)
           {
               z++;
               x = x + 15;
               map[13] = 'T';
           }
       }


       //町用処理
       while (z == 2) {










           //町メニュー
           if (GetAsyncKeyState(VK_ESCAPE) & 0x8000)
           {
               Sleep(300);
               system("cls");
               printf("メニュー\n\n");
               printf("1 持ち物\n2 ステータス\n3 とじる\n\nどれを開きますか? >");
               Sleep(300);
               scanf("%d", &MENU2);
               //持ち物
               if (MENU2 == 1) {
                   system("cls");
                   if (yakusou == 0 && kimera == 0) { printf("持ち物はありません"); }
                   if (yakusou != 0) { printf("1 薬草x%d\n", yakusou); }
                   if (kimera != 0) { printf("2 キメラのつばさx%d\n", kimera); }
                   if (yakusou != 0 || kimera != 0) {
                       printf("3 なにもつかわない\n\n");
                       printf("なにをつかいますか? >");
                       Sleep(300);
                       scanf("%d", &i);
                       if (i == 1 && yakusou != 0) {


                           HP = HP + 10;
                           yakusou = yakusou - 1;
                           while (getchar() != '\n');
                           printf("HPが かいふくした\n");


                           if (LV == 1 && HP > 15) { HP = 15; }
                           if (LV == 2 && HP > 17) { HP = 17; }
                           if (LV == 3 && HP > 20) { HP = 20; }


                           i = 0;
                       }
                       if (i == 2 && kimera != 0) { while (getchar() != '\n');  printf("いまはつかえない"); i = 0; }


                       if (i == 3) {
                           while (getchar() != '\n'); printf(" "); i = 0;
                       }
                   }
                   MENU2 = 0;
               }
               //ステータス
               if (MENU2 == 2) {
                   system("cls");
                   printf("HP %d\n", HP);
                   printf("ATK %d\n", ATK);
                   printf("DEF %d\n", DEF);
                   printf("EXP %d\n", EXP);
                   printf("LV  %d\n\n", LV);
                   printf("%dG", money);
                   MENU2 = 0;
               }
               //とじる


               if (MENU2 == 3) {
                   Sleep(300);
                   system("cls");
                   printf("DELETEを押してください");
                   MENU2 = 0;
               }


               menu2 = menu2 + 1;


           }


           if (menu2 > 1) {


               if (GetAsyncKeyState(VK_DELETE) & 0x8000)
               {
                   Sleep(300);
                   system("cls");


                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);
                   menu = menu - 1;




               }
           }






           if (q == 1) {


               system("cls");
               map2[x2] = 'A';
               strcpy(str2, map2.c_str());




               printf("%s\n", str2);
               q = q + 1;
           }


           //町での移動


           if (x2 != 19 && x2 != 9 && x2 != 10 && x2 != 12 && x2 != 13) {


               if (GetAsyncKeyState(VK_UP) & 0x8000)
               {






                   y2 = y2 + 8;


                   system("cls");
                   x2 = x2 - 8;
                   map2[x2] = 'A';
                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);


                   system("cls");
                   y2 = x2 + 8;
                   map2[y2] = 'l';
                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);


                   Sleep(200);


               };
           }




           if (x2 != 9 && x2 != 17 && x2 != 12) {


               if (GetAsyncKeyState(VK_LEFT) & 0x8000)


               {


                   y2 = y2 + 1;


                   system("cls");
                   x2 = x2 - 1;
                   map2[x2] = 'A';
                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);


                   system("cls");
                   y2 = x2 + 1;
                   map2[y2] = 'l';
                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);


                   Sleep(200);
               };
           }




           if (x2 != 17 && x2 != 18 && x2 != 20 && x2 != 21) {


               if (GetAsyncKeyState(VK_DOWN) & 0x8000)
               {






                   y2 = y2 - 7;


                   system("cls");
                   x2 = x2 + 8;
                   map2[x2] = 'A';
                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);


                   system("cls");
                   y2 = x2 - 8;
                   map2[y2] = 'l';
                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);


                   Sleep(200);


               };
           }




           if (x2 != 10 && x2 != 13 && x2 != 21) {


               if (GetAsyncKeyState(VK_RIGHT) & 0x8000)


               {


                   y2 = y2 - 1;


                   system("cls");
                   x2 = x2 + 1;
                   map2[x2] = 'A';
                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);


                   system("cls");
                   y2 = x2 - 1;
                   map2[y2] = 'l';
                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);


                   Sleep(200);
               };
           }


           if (x2 == 27) {
               z = z - 1;
               q = q - 1;


               system("cls");
               map[x] = 'A';
               strcpy(str, map.c_str());
               printf("%s\n", str);
               x2 = x2 - 8;
               strcpy(str2, map2.c_str());
               map2[27] = 'o';
           }


           //買い物
           if (x2 == 19 && GetAsyncKeyState(VK_RETURN) & 0x8000 && shop == 1)
           {
               Sleep(500);
               system("cls");
               printf("道具屋\n\n1 薬草            5G\n2 キメラのつばさ 15G\n3 用はない\n\n何を買いますか? >");
               Sleep(300);
               scanf("%d", &SHOP);




               if (SHOP == 1 && money > 5) {
                   yakusou++;
                   money = money - 5;
                   system("cls");
                   while (getchar() != '\n');
                   printf("薬草を買いました\n残りの所持金は%dGです", money);
                   while (getchar() != '\n');
                   Sleep(900);
                   system("cls");


                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);
                   shop = shop - 1;


                   SHOP = 0;
               }


               if (SHOP == 2 && money > 15) {
                   kimera++;
                   money = money - 15;
                   system("cls");
                   while (getchar() != '\n');
                   printf("キメラの翼を買いました\n残りの所持金は%dGです", money);
                   while (getchar() != '\n');
                   Sleep(900);
                   system("cls");


                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);
                   shop = shop - 1;
                   SHOP = 0;
               }








               shop = shop + 1;


           }


           if (shop == 2) {


               if (GetAsyncKeyState(VK_DELETE) & 0x8000)
               {
                   Sleep(300);
                   system("cls");


                   strcpy(str2, map2.c_str());
                   printf("%s\n", str2);
                   shop = shop - 1;




               }
           }


















       }
   }
}















@wikiへようこそ

  • ウィキはみんなで気軽にホームページ編集できるツールです。
  • このページは自由に編集することができます。
  • メールで送られてきたパスワードを用いてログインすることで、各種変更(サイト名、トップページ、メンバー管理、サイドページ、デザイン、ページ管理、等)することができます

まずはこちらをご覧ください。


分からないことは?

等をご活用ください

アットウィキモードでの編集方法


ワープロモードでの編集方法


その他にもいろいろな機能満載!!


他のWIKIが気になる方はこちら


バグ・不具合を見つけたら? 要望がある場合は?

お手数ですが、お問合せフォームからご連絡ください。
最終更新:2017年11月28日 07:36