Advertisement
Guest User

Snake

a guest
Jun 28th, 2014
1,780
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.64 KB | None | 0 0
  1. int Magasin(){
  2.  
  3. int menu = 2;
  4. char nom[40];
  5. char description[3][6][40] = {{"Diminue de ","5% la vitesse", "de votre Snake","a chaque niveau","supplementaire.","Level actuel :"},{"Votre Snake peux","manger 1 mur","supplementaire","par niveau, ","sans mourrir","Level actuel :"},{"Multiplie par deux" ,"a chaque niveau le" , "nombre de piece" ,"gagne quand vous" ,"recolte une rune","Level actuel : "}};
  6. int texte = 0;
  7. int x = 20;
  8. char Sauvegarde[40];
  9. char Sauvegarde2[40];
  10. int texteafficher = 2;
  11. int Debut = 1;
  12. int choix = 1;
  13. unsigned int key;
  14.  
  15.  
  16.  
  17. const unsigned char snake_magasin[]={
  18. 0x0,0x0,0xf,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30,0x0,0x18,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
  19. 0x0,0x0,0x0,0x0,0xc0,0x0,0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x7,0x80,0x76,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
  20. 0x0,0x0,0x0,0x0,0x0,0x2,0x7f,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xc0,0x70,0x0,0x38,0x0,0x0,0x0,0x0,
  21. 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe,0x0,0x60,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x40,0x0,0x4,0x0,0x0,
  22. 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30,0x3e,0x41,0xe0,0x6,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x60,0x3e,0xe3,0xe0,0x6,
  23. 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x60,0x1c,0xf1,0xc0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x70,0x0,0xfc,
  24. 0x0,0x38,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc,0x7c,0x1,0xff,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x78,0x87,
  25. 0xfe,0x0,0x0,0xd,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x11,0x0,0x0,0x0,0x0,0x4,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
  26. 0x1e,0x0,0x0,0x0,0x0,0x3,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0x0,0x0,0x0,0x3,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
  27. 0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x3,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x3,0x0,0x0,0x0,0x0,0x0,0x0,
  28. 0x0,0x0,0x0,0x0,0x8,0x0,0x20,0x2,0x0,0x3,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x80,0x0,0x80,0x3,0x0,0x0,0x0,0x0,
  29. 0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x1,0x38,0xe,0x40,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x1,0x7c,0x1f,0x40,0x6,0x0,0x0,
  30. 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x38,0xe,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x80,0x0,0x0,0x0,0x18,
  31. 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x60,0x0,0x0,0x0,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x0,
  32. 0x0,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x80,0x0,0x3,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
  33. 0xf8,0x0,0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
  34. 0x0,0x0,0x7,0x0,0x3c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6,0x1,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
  35. 0x0,0x0,0x0,0x0,0xe,0x7,0x8c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe,0x7,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
  36. 0x0,0x0,0x0,0x0,0x0,0x0,0xc,0xf,0x8c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x7,0xf8,0x0,0x0,0x0,0x0,0x0,
  37. 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x38,0x1,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x60,0x0,0x38,0x0,0x0,0x0,
  38. 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x0,0x0,0x0,0x0,0xc0,0x1,0xf0,0x0,
  39. 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6,0x0,0x0,0x0,0x1,0x80,0xf,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x0,0x4,0x0,0x3,0x0,0x1e,
  40. 0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x82,0x8,0x0,0x3,0x0,0x38,0x60,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x83,0x8,0x0,0x6,
  41. 0x0,0x38,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x0,0x0,0x6,0x0,0x3c,0xc0,0x0,0x0,0x0,0x7f,0xfc,0x0,0x0,0x0,0x0,0x3,0x80,
  42. 0x0,0xc,0x0,0x1f,0x80,0x0,0x0,0x7,0xfc,0xf,0xc0,0x0,0x0,0x0,0x3,0x80,0x0,0xc,0x0,0x3,0x80,0x0,0x0,0x78,0x3c,0x7,0xf8,0x0,0x0,0x0,
  43. 0x3,0x80,0x0,0xc,0x0,0x0,0x80,0x0,0x1f,0xf8,0x1f,0x3e,0xe,0x0,0x0,0x0,0x7,0x80,0x0,0xc,0x0,0x0,0xc0,0x0,0x3c,0x1c,0x7,0xfc,0xf,0x0,
  44. 0x0,0x0,0xf,0x80,0x0,0xc,0x0,0x1,0xe0,0x0,0xe0,0x3c,0x0,0x0,0x1f,0xc0,0x0,0x0,0xf,0x0,0x0,0xc,0x0,0x3,0xfc,0x1f,0xe0,0x78,0x0,0x0,
  45. 0x1c,0x30,0x0,0x0,0x17,0x0,0x0,0xc,0x0,0x3,0x83,0xf0,0x7f,0xe0,0x0,0x0,0x1e,0x1c,0x0,0x0,0x66,0x0,0x0,0x6,0x0,0x3,0x80,0xe0,0x1f,0x0,
  46. 0x0,0x0,0xf,0x9f,0x0,0x1,0x8e,0x0,0x0,0x6,0x0,0x3,0xc1,0xc0,0x0,0x0,0x0,0x0,0x7,0xff,0xe0,0x7,0x1c,0x0,0x0,0x3,0x0,0x1,0xff,0xc0,
  47. 0x0,0x0,0x3f,0xfe,0x0,0x0,0x3f,0xfe,0x38,0x0,0x0,0x1,0x80,0x0,0x1f,0x0,0x0,0x1,0xf0,0xf,0x80,0x0,0x38,0x1c,0x70,0x0,0x0,0x0,0xe0,0x0,
  48. 0x0,0x0,0x0,0xf,0x0,0x0,0xe0,0x0,0x38,0x3c,0xe0,0x0,0x0,0x0,0x30,0x0,0x0,0x0,0x0,0x78,0x0,0x0,0x38,0x0,0x1f,0xf1,0xc0,0x0,0x0,0x0,
  49. 0x1c,0x0,0x0,0x0,0x1,0xc0,0x0,0x0,0x6,0x0,0x0,0x7,0x0,0x0,0x0,0x0,0x7,0x80,0x0,0x0,0x1f,0x0,0x0,0x0,0x1,0xc0,0x0,0x1e,0x0,0x0,
  50. 0x0,0x0,0x0,0xf0,0x0,0x0,0xf8,0x0,0x0,0x0,0x0,0x7c,0x0,0xf8,0x0,0x0,0x0,0x0,0x0,0x3f,0xc1,0xff,0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xe0,
  51. 0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xfe,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,
  52. 0xff,0x80,0x0,0x0
  53. };
  54.  
  55. Bdisp_AllClr_DDVRAM();
  56.  
  57. while(1){
  58.  
  59. Bdisp_AllClr_VRAM();
  60. ML_rectangle(52,4,125,13,1,ML_BLACK,ML_WHITE);
  61. ML_rectangle(52,13,125,40,1,ML_BLACK,ML_WHITE);
  62.  
  63. ML_bmp_or(snake_magasin,0,0,128,64);
  64.  
  65. if (menu == 1) {
  66. ML_rectangle(33,51,41,54,1,ML_BLACK,ML_BLACK);
  67. sprintf(nom,"%s","Freeeeeeine !");
  68. texteafficher = 0;
  69. }
  70.  
  71. if (menu == 2){
  72. ML_rectangle(50,47,58,51,1,ML_BLACK,ML_BLACK);
  73. sprintf(nom,"%s","Bunker !");
  74. texteafficher = 1;
  75. }
  76.  
  77. if (menu == 3){
  78. ML_rectangle(70,45,77,48,1,ML_BLACK,ML_BLACK);
  79. sprintf(nom,"%s","I'll be rich !");
  80. texteafficher = 2;
  81. }
  82.  
  83. Txt_Text1(nom,94-strlen(nom)*2,6,Txt_None);
  84. texte = 0;
  85. x = 20;
  86. Debut = 1;
  87.  
  88. Bdisp_PutDisp_DD();
  89.  
  90. Sleep(150);
  91.  
  92. while(1){
  93.  
  94. Sleep(10);
  95.  
  96. if (IsKeyDown(KEY_CTRL_LEFT) && menu != 1){
  97. menu --;
  98. break;
  99. }
  100.  
  101. if (IsKeyDown(KEY_CTRL_RIGHT) && menu != 3){
  102. menu ++;
  103. break;
  104. }
  105.  
  106. if(IsKeyDown(KEY_CTRL_MENU) || IsKeyDown(KEY_CTRL_EXIT)) Menu();
  107.  
  108. if (IsKeyDown(KEY_CTRL_DOWN) || Debut == 1){
  109.  
  110. if (menu == 1) sprintf(Sauvegarde2,"%d",(data[14]*10)*(data[14]*10));
  111. if (menu == 2) sprintf(Sauvegarde2,"%d",(data[15]*10)*(data[15]*10));
  112. if (menu == 3) sprintf(Sauvegarde2,"%d",(data[16]*10)*(data[16]*10));
  113.  
  114.  
  115. while (IsKeyDown(KEY_CTRL_DOWN) || Debut == 1){
  116. sprintf(Sauvegarde,"%s",description[texteafficher][texte]);
  117. PrintMini(54,x-1,Sauvegarde,1);
  118. sprintf(Sauvegarde,"%s",description[texteafficher][texte+1]);
  119. PrintMini(54,x+6,Sauvegarde,1);
  120. sprintf(Sauvegarde,"%s",description[texteafficher][texte+2]);
  121. PrintMini(54,x+13,Sauvegarde,1);
  122. ML_rectangle(54,14,124,15,1,ML_WHITE,ML_WHITE);
  123. ML_rectangle(53,33,124,39,1,ML_BLACK,ML_BLACK);
  124. ML_rectangle(54,11,124,12,1,ML_WHITE,ML_WHITE);
  125. PrintMini(54,35,"[EXE]ACHETER",2);
  126. PrintMini(105,35,Sauvegarde2,2);
  127. Bdisp_PutDisp_DD();
  128. ML_rectangle(53,14,124,39,1,ML_WHITE,ML_WHITE);
  129. if (texte != 4) x --;
  130. if (x <= 12 && texte != 4 ){
  131. texte ++;
  132. x = 20;
  133. }
  134. Sleep(20);
  135. Debut = 0;
  136. }
  137. }
  138.  
  139.  
  140. if (IsKeyDown(KEY_CTRL_UP)){
  141.  
  142. if (menu == 1) sprintf(Sauvegarde2,"%d",(data[14]*10)*(data[14]*10));
  143. if (menu == 2) sprintf(Sauvegarde2,"%d",(data[15]*10)*(data[15]*10));
  144. if (menu == 3) sprintf(Sauvegarde2,"%d",(data[16]*10)*(data[16]*10));
  145.  
  146. while (IsKeyDown(KEY_CTRL_UP)){
  147. sprintf(Sauvegarde,"%s",description[texteafficher][texte]);
  148. PrintMini(54,x-1,Sauvegarde,1);
  149. sprintf(Sauvegarde,"%s",description[texteafficher][texte+1]);
  150. PrintMini(54,x+6,Sauvegarde,1);
  151. sprintf(Sauvegarde,"%s",description[texteafficher][texte+2]);
  152. PrintMini(54,x+13,Sauvegarde,1);
  153. ML_rectangle(54,14,124,15,1,ML_WHITE,ML_WHITE);
  154. ML_rectangle(53,33,124,39,1,ML_BLACK,ML_BLACK);
  155. ML_rectangle(54,11,124,12,1,ML_WHITE,ML_WHITE);
  156. PrintMini(54,35,"[EXE]ACHETER",2);
  157. PrintMini(105,35,Sauvegarde2,2);
  158. Bdisp_PutDisp_DD();
  159. ML_rectangle(53,14,124,39,1,ML_WHITE,ML_WHITE);
  160. if (texte != -1) x ++;
  161. if (x >= 20 && texte != -1){
  162. texte --;
  163. x = 12;
  164. }
  165. Sleep(20);
  166. }
  167. }
  168.  
  169. if (IsKeyDown(KEY_CTRL_EXE)){
  170. Sleep(150);
  171.  
  172. while(1){
  173. Bdisp_AllClr_VRAM();
  174. ML_rectangle(8,6,120,58,2,ML_BLACK,ML_WHITE);
  175. PrintMini(18,44,"OUI",1);
  176. PrintMini(98,44,"NON",1);
  177. PrintMini(28,10,"Etes vous sure de",1);
  178. PrintMini(32,20,"vouloir ameliorer",1);
  179. PrintMini(55,30,nom,1);
  180. if (choix == 1) ML_rectangle(15,39,33,53,1,ML_BLACK,ML_XOR);
  181. if (choix == 2) ML_rectangle(95,39,115,53,1,ML_BLACK,ML_XOR);
  182. Bdisp_PutDisp_DD();
  183.  
  184. if (IsKeyDown(KEY_CTRL_LEFT)){
  185. Bdisp_AllClr_VRAM();
  186. choix = 1;
  187. }
  188. if (IsKeyDown(KEY_CTRL_RIGHT)){
  189. Bdisp_AllClr_VRAM();
  190. choix = 2;
  191. }
  192. if(IsKeyDown(KEY_CTRL_EXE)){
  193. if (choix == 1 && data[13] >= (data[menu+13]*data[menu+13]*100)){ // ICI SE SITUE LE PROBLEME
  194. data[menu+13]++;
  195. data[13] -= (data[menu+13]*10)*(data[menu+13]*10);
  196. memcpy(Sauvegarde, data, 4*17);
  197. memory_save("\\\\fls0\\SNAKE2.SAV",Sauvegarde,68);
  198. Magasin();
  199.  
  200. }
  201.  
  202. if (choix == 1 && (data[13] < (data[menu+13]*10)*(data[menu+13]*10))){
  203. Bdisp_AllClr_VRAM();
  204. PopUpWin(3);
  205. PrintMini(12,15,"Erreur :",1);
  206. PrintMini(12,25,"Vous ne possedez pas assez ",1);
  207. PrintMini(12,33,"d'argent. ",1);
  208. Bdisp_PutDisp_DD();
  209. Sleep(100);
  210. GetKey(&key);
  211. Sleep(100);
  212. Magasin();
  213. }
  214.  
  215.  
  216. if (choix == 2) Magasin();
  217. }
  218. Sleep(5);
  219.  
  220. }
  221. }
  222.  
  223.  
  224. }
  225.  
  226.  
  227.  
  228. }
  229.  
  230. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement