Advertisement
Guest User

Untitled

a guest
Oct 31st, 2014
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.59 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <stdlib.h>
  4. #include<Windows.h>
  5.  
  6. FILE *fp;
  7. int n=0;
  8. char map1[11][11];
  9.  
  10. struct data{
  11.         int highscore;
  12.         int posX;
  13.         int posY;
  14.         int level;
  15.         int score;
  16.         int turn;
  17. }player;
  18.  
  19. void initialize(){
  20.        
  21. fp=fopen("map1","r");
  22.  
  23. if (fp==NULL){printf("Failed");}
  24.  n=0;
  25. while(!feof(fp)){
  26.         fscanf(fp,"%[^\n]\n",map1[n]);n++;
  27. }
  28.  
  29. }
  30.  
  31.  
  32. void cetakMap (){
  33.         printf("High Score : %d\n",player.highscore);
  34.         printf("Level : %d\n",player.level);
  35.         printf("Score : %d\n",player.score);
  36.         printf("Turn : %d\n",player.turn);
  37.         for(int i=0;i<10;i++){
  38.        
  39.                 for(int j=0;j<10;j++){
  40.                         if(map1[i][j]=='1'){printf("%c",1);}
  41.                         else if (map1[i][j]=='2'){printf("%c",2);}
  42.                         else {printf("%c",map1[i][j]);}
  43.                 }
  44.                 printf("\n");
  45.         }
  46.        
  47.  
  48. }
  49.  
  50. void cariKarakter(){
  51.        
  52. int i=0;
  53.         int j=0;
  54.                 for (i=0;i<10;i++){
  55.                
  56.                 for(j=0;j<10;j++){
  57.                         if(map1[j][i]=='1'){player.posY=i;player.posX=j;break;}
  58.                         }
  59.                 }
  60.        
  61.        
  62. }
  63. void space(int a){
  64.     for(int n=0;n<a;n++){
  65.         printf("\n");
  66.     }
  67. }
  68.  
  69. void play(){
  70.         player.highscore=0;
  71.         player.level=1;
  72.         player.score=0;
  73.         player.turn=0;
  74.         player.posX=0;
  75.         player.posY=0;
  76.         int move;
  77.         do{
  78.         if (player.level==1){fp=fopen("map1","r");}
  79.         else if (player.level==2){fp=fopen("map2","r");}
  80.         else {fp=fopen("map3","r");}
  81.         n=0;
  82.         while(!feof(fp)){
  83.         fscanf(fp,"%[^\n]\n",map1[n]);n++;
  84.         }
  85.         fclose(fp);
  86.  
  87.                 //PERBAIKAN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!    
  88.               /* if(player.posX!=0 || player.posY!=0)
  89.                 {
  90.                         map1[player.posY][player.posX]=1;
  91.                         if(player.level==1){map1[1][1]=0;}
  92.                         else if(player.level==2){map1[5][5]=0;}
  93.                        else {map1[8][1]=0;}
  94.                 }*/
  95.         //PERBAIKAN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!    
  96.                 for(int a=0;a<10;a++){
  97.                     for(int b=0;b<10;b++){
  98.                         if(map1[a][b]=='1'){
  99.                             player.posX=b;
  100.                             player.posY=a;
  101.                         }
  102.                     }
  103.                 }
  104.  
  105.         do{
  106.         do{
  107.             system("cls");
  108.             space(25);
  109.                 cetakMap();
  110.         printf("1. Up\n");
  111.         printf("2. Down\n");
  112.         printf("3. Left\n");
  113.         printf("4. Right\n");
  114.         printf("5. Save And Exit\n");
  115.         printf("->");
  116.        
  117.         scanf("%d",&move);fflush(stdin);
  118.         }while(move<1 || move>5);
  119.  //PERBAIKAN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!    
  120.         if (move==1){  
  121.                 while(map1[player.posY-1][player.posX]!='#'){
  122.                     if(map1[player.posY-1][player.posX]=='2'){
  123.                         printf("diisi kondisinya");
  124.                         getchar();
  125.                     }
  126.                         cetakMap();
  127.                         map1[player.posY][player.posX] = ' ';
  128.                         map1[player.posY-1][player.posX] = '1';
  129.                         player.posY--;
  130.                         Sleep(100);
  131.                 }
  132.         }
  133.        //PERBAIKAN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!    
  134.         else if (move==2)
  135.         {
  136.                 while(map1[player.posY+1][player.posX]!='#'){
  137.                         if(map1[player.posY+1][player.posX]=='2'){
  138.                             printf("diisi kondisinya");
  139.                             getchar();
  140.                         }
  141.                         cetakMap();
  142.                         map1[player.posY][player.posX] = ' ';
  143.                         map1[player.posY+1][player.posX] = '1';
  144.                         player.posY++;
  145.                         Sleep(100);
  146.                 }
  147.         }
  148.         //PERBAIKAN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!    
  149.         else if (move ==3){
  150.                 while(map1[player.posY][player.posX-1]!='#')
  151.                 {
  152.                     if(map1[player.posY][player.posX-1]=='2'){
  153.                         printf("diisi kondisinya");
  154.                         getchar();
  155.                     }
  156.                 cetakMap();
  157.                 map1[player.posY][player.posX] = ' ';
  158.                 map1[player.posY][player.posX-1] = '1';
  159.                 player.posX--;
  160.                 Sleep(100);
  161.                 }
  162.                
  163.  
  164.         }
  165.         //PERBAIKAN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!    
  166.         else if (move ==4){
  167.                 while(map1[player.posY][player.posX+1]!='#')
  168.                 {
  169.                     if(map1[player.posY][player.posX+1]=='2'){
  170.                         printf("diisi kondisinya");
  171.                         getchar();
  172.                     }
  173.                 cetakMap();
  174.                 map1[player.posY][player.posX] = ' ';
  175.                 map1[player.posY][++player.posX] = '1';
  176.                 Sleep(100);
  177.                 }}
  178.         else {}
  179.        
  180.         }while(move!=5);
  181.         //PERBAIKAN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!    
  182.         //.................
  183.         }while(player.level!=4);
  184. }
  185.  
  186. void main(){
  187.         int choice;
  188.        
  189.  
  190.         do{
  191. //PERBAIKAN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  
  192.         printf("Find The Way\n");
  193. printf("============\n\n\n");
  194.  
  195.  
  196. printf("Menu\n");
  197. printf("====\n");
  198. printf("1. New Game\n");
  199. printf("2. Continue Saved Game\n");
  200. printf("3. Exit\n");
  201. printf("->");
  202.         scanf("%d",&choice); fflush(stdin);
  203.         }while(choice<1||choice>3);
  204.         if (choice ==1){
  205.  
  206.         play();
  207.         getchar();
  208.         }
  209.         else if (choice ==2){}
  210.         else{}
  211.  
  212.        
  213.  
  214.  
  215.  
  216.  
  217.         getchar();
  218. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement