void Objet::ramasse() { Joueur* gpJoueur = gpJeu->getJoueur(); switch(type) { case I_RUBIS_VERT : gpJoueur->setRubis(gpJoueur->getRubis()+1); gpJeu->getAudio()->playSound(14); break; case I_RUBIS_BLEU : gpJoueur->setRubis(gpJoueur->getRubis()+5); gpJeu->getAudio()->playSound(14); break; case I_RUBIS_ROUGE : gpJoueur->setRubis(gpJoueur->getRubis()+20); gpJeu->getAudio()->playSound(14); break; case I_PETIT_COEUR : gpJoueur->setBoostVie(gpJoueur->getBoostVie()+2); if (gpJoueur->getVie()==gpJoueur->getVieMax()) gpJeu->getAudio()->playSound(15); break; case I_FLECHE : gpJoueur->setFleche(gpJoueur->getFleche()+5); gpJeu->getAudio()->playSound(13); break; case I_BOMBE : gpJoueur->setBombe(gpJoueur->getBombe()+1); gpJeu->getAudio()->playSound(13); break; case I_MAGIE_PEU : gpJoueur->setBoostMagie(gpJoueur->getBoostMagie()+gpJoueur->getMagieMax()/8); //if (gpJoueur->getMagie()<gpJoueur->getMagieMax()) gpJeu->getAudio()->playSound(13); break; case I_MAGIE_BCP : gpJoueur->setBoostMagie(gpJoueur->getBoostMagie()+gpJoueur->getMagieMax()/4); if (gpJoueur->getMagie()<gpJoueur->getMagieMax()) gpJeu->getAudio()->playSound(37); else gpJeu->getAudio()->playSound(13); break; case I_QUART_COEUR : gpJoueur->setCoeur(id); gpJeu->trouve(C_QUART_COEUR); break; case I_COEUR : gpJoueur->setCoeur(gpJeu->getZone()-15); gpJeu->trouve(C_COEUR); break; case I_EPEE : gpJeu->trouve(C_EPEE); break; case I_CRISTAL : switch (gpJeu->getZone()) { case 15 : gpJoueur->setCristal(0); break; case 17 : gpJoueur->setCristal(1); break; case 19 : gpJoueur->setCristal(2); break; case 21 : gpJoueur->setCristal(3); break; case 22 : gpJoueur->setCristal(4); break; default : vie = 0; return; }gpJeu->trouve(C_CRISTAL); break; case I_EXCALIBUR : gpJeu->trouve(C_EXCALIBUR); gpJoueur->setCoeur(7); break; case I_TRIFORCE : gpJeu->trouve(C_TRIFORCE); break; case I_ARC : gpJeu->trouve(C_ARC); break; case I_PETITE_CLE : gpJeu->trouve(C_CLE); int zone; zone = gpJeu->getZone(); int region[2]; region[0] = gpJeu->getMonde()->regionValue(0); region[1] = gpJeu->getMonde()->regionValue(1); if (zone==16 && region[0]==120*16 && region[1]==15*16) gpJoueur->setCoffre(1,28); if (zone==16 && region[0]==280*16 && region[1]==60*16) gpJoueur->setCoffre(1,29); if (zone==20 && region[0]==0 && region[1]==45*16) gpJoueur->setCoffre(5,1); if (zone==20 && region[0]==20*16 && region[1]==0) gpJoueur->setCoffre(5,3); if (zone==20 && region[0]==60*16 && region[1]==45*16) gpJoueur->setCoffre(5,4); if (zone==20 && region[0]==60*16 && region[1]==60*16) gpJoueur->setCoffre(5,5); if (zone==20 && region[0]==80*16 && region[1]==45*16) gpJoueur->setCoffre(5,6); if (zone==20 && region[0]==100*16 && region[1]==45*16) gpJoueur->setCoffre(5,7); if (zone==20 && region[0]==100*16 && region[1]==60*16) gpJoueur->setCoffre(5,8); if (zone==20 && region[0]==120*16 && region[1]==15*16) gpJoueur->setCoffre(5,9); if (zone==20 && region[0]==120*16 && region[1]==75*16) gpJoueur->setCoffre(5,10); if (zone==20 && region[0]==160*16 && region[1]==0) gpJoueur->setCoffre(5,11); if (zone==20 && region[0]==160*16 && region[1]==60*16) gpJoueur->setCoffre(5,12); if (zone==20 && region[0]==220*16 && region[1]==0) gpJoueur->setCoffre(5,13); if (zone==20 && region[0]==220*16 && region[1]==60*16) gpJoueur->setCoffre(5,14); if (zone==23) gpJoueur->setCoffre(8,16); if (zone==28) gpJoueur->setCoffre(13,8); break; /*case I_PETITE_CLE : src.x = 32; src.y = 0; break; case I_TRIFORCE : src.x = 166; src.y = 26; src.h = 25;src.w = 26; break; case I_ARC : src.x = 144; src.y = 34; break;*/ } vie=0; }
void Menu::drawInventaire(SDL_Surface* gpScreen) { int dec = 200-val; Joueur* gpJoueur = gpJeu->getJoueur(); gpJeu->affiche(gpScreen, "Y", 20-dec,20); SDL_Rect src; SDL_Rect dst; src.w=16; src.h=17; //arc if (gpJoueur->hasObjet(O_ARC)) { src.x=0; dst.x=32-dec; dst.y=32; if (gpJoueur->hasObjet(O_ARC)==5)src.y=0; else {src.x=16; src.y=102;} if (dst.x > -15) { if (dst.x < 0) {src.x -= dst.x; src.w+= dst.x; dst.x = 0;} SDL_BlitSurface(imageInventaire, &src, gpScreen, &dst); if (src.w < 16) {src.x -= (16-src.w); dst.x-= (16-src.w); src.w = 16;} } } //grappin if (gpJoueur->hasObjet(O_GRAPPIN)) { src.x=16; src.y=0; dst.x=64-dec; dst.y=32; if (dst.x > -15) { if (dst.x < 0) {src.x -= dst.x; src.w+= dst.x; dst.x = 0;} SDL_BlitSurface(imageInventaire, &src, gpScreen, &dst); if (src.w < 16) {src.x -= (16-src.w); dst.x-= (16-src.w); src.w = 16;} } } //bombes if (gpJoueur->hasObjet(O_SAC_BOMBES) && gpJoueur->getBombe()>0) { src.x=32; src.y=0; dst.x=96-dec; dst.y=32; if (dst.x > -15) { if (dst.x < 0) {src.x -= dst.x; src.w+= dst.x; dst.x = 0;} SDL_BlitSurface(imageInventaire, &src, gpScreen, &dst); if (src.w < 16) {src.x -= (16-src.w); dst.x-= (16-src.w); src.w = 16;} } } //baguette de feu if (gpJoueur->hasObjet(O_BFEU)) { src.x=0; src.y=17; dst.x=32-dec; dst.y=64; if (dst.x > -15) { if (dst.x < 0) {src.x -= dst.x; src.w+= dst.x; dst.x = 0;} SDL_BlitSurface(imageInventaire, &src, gpScreen, &dst); if (src.w < 16) {src.x -= (16-src.w); dst.x-= (16-src.w); src.w = 16;} } } //baguette de glace if (gpJoueur->hasObjet(O_BGLACE)) { src.x=16; src.y=17; dst.x=64-dec; dst.y=64; if (dst.x > -15) { if (dst.x < 0) {src.x -= dst.x; src.w+= dst.x; dst.x = 0;} SDL_BlitSurface(imageInventaire, &src, gpScreen, &dst); if (src.w < 16) {src.x -= (16-src.w); dst.x-= (16-src.w); src.w = 16;} } } //lanterne if (gpJoueur->hasObjet(O_LANTERNE)) { src.x=32; src.y=17; dst.x=96-dec; dst.y=64; if (dst.x > -15) { if (dst.x < 0) {src.x -= dst.x; src.w+= dst.x; dst.x = 0;} SDL_BlitSurface(imageInventaire, &src, gpScreen, &dst); if (src.w < 16) {src.x -= (16-src.w); dst.x-= (16-src.w); src.w = 16;} } } //marteau if (gpJoueur->hasObjet(O_MARTEAU)) { src.x=0; src.y=34; dst.x=32-dec; dst.y=96; if (dst.x > -15) { if (dst.x < 0) {src.x -= dst.x; src.w+= dst.x; dst.x = 0;} SDL_BlitSurface(imageInventaire, &src, gpScreen, &dst); if (src.w < 16) {src.x -= (16-src.w); dst.x-= (16-src.w); src.w = 16;} } } //flute if (gpJoueur->hasObjet(O_OCARINA)) { src.x=0; src.y=85; dst.x=64-dec; dst.y=96; if (dst.x > -15) { if (dst.x < 0) {src.x -= dst.x; src.w+= dst.x; dst.x = 0;} SDL_BlitSurface(imageInventaire, &src, gpScreen, &dst); if (src.w < 16) {src.x -= (16-src.w); dst.x-= (16-src.w); src.w = 16;} } } //masque if (gpJoueur->hasObjet(O_MASQUE)) { src.x=0; src.y=102; dst.x=96-dec; dst.y=96; if (gpJoueur->hasObjet(O_MASQUE)==2) {src.x=16;src.y=85;} if (dst.x > -15) { if (dst.x < 0) {src.x -= dst.x; src.w+= dst.x; dst.x = 0;} SDL_BlitSurface(imageInventaire, &src, gpScreen, &dst); if (src.w < 16) {src.x -= (16-src.w); dst.x-= (16-src.w); src.w = 16;} } } //bouteilles for (int i = 0; i < 3; i++) { if (gpJoueur->hasBouteille(i)) { dst.x=32*(i+1)-dec; dst.y=128; switch (gpJoueur->hasBouteille(i)) { case 1 : src.x=0; src.y=68; break; case 2 : src.x=0; src.y=51; break; case 3 : src.x=16; src.y=51; break; case 4 : src.x=32; src.y=51; break; } if (dst.x > -15) { if (dst.x < 0) {src.x -= dst.x; src.w+= dst.x; dst.x = 0;} SDL_BlitSurface(imageInventaire, &src, gpScreen, &dst); if (src.w < 16) {src.x -= (16-src.w); dst.x-= (16-src.w); src.w = 16;} } } } }
void Keyboard::pollKeys(Uint8* keys) { Joueur* gpJoueur; int vit; int avance; int nbdir; switch (mode) { case 0 : if (gpJeu->getMonde()->isChangeTemps()) return; gpJoueur = gpJeu->getJoueur(); if (keys[SDLK_RETURN] && tmp == 0) { if (gpJoueur->getTypeAnim() == MORT) gpJoueur->revie(); else if (!gpJeu->getStop() && !gpJeu->getMenu()) gpJeu->setMenu(true); else if (gpJeu->getMenu()) gpJeu->setMenu(false); else if (gpJeu->getText() && !gpJeu->getTransition()) gpJeu->setText(gpJeu->getTexte()->suite()); tmp = 1; } if ((!keys[SDLK_RETURN] && !gpJeu->getMenu()) || (gpJeu->getMenu() && !keys[SDLK_RETURN] && !keys[SDLK_LEFT] && !keys[SDLK_RIGHT] && !keys[SDLK_UP] && !keys[SDLK_DOWN])) tmp=0; if (gpJeu->getText() && gpJeu->getTexte()->isFinished()) { if(tmpt==0){ tmpt=1; switch (gpJeu->getTexte()->getId()) { case 77 : case 80 : case 83 : case 86 : case 89 : case 92 : case 96 : case 99 : case 102 : case 107 : case 126 : case 129 : case 132 : case 135 : case 138 : case 141 : case 144 : case 147 : case 150 : case 159 : case 162 : case 165 : case 168 : case 171 : case 180 : case 191 : case 204 : case 215 : case 218 : case 220 : case 222 : case 228 : case 230 : case 232 : case 234 : case 240 : case 245 : case 251 : case 265 : case 268 : case 271 : case 273 : case 278 : case 281 : case 290 : case 299 : case 309 : case 351 : case 356 : case 368 : case 370 : case 376 : case 378 : case 380 : case 383 : case 387 : case 390 : case 393 : case 395 : case 398 : case 400 : case 403 : case 413 : case 415 : case 426 : case 433 : case 447 : case 451 : case 461 : case 464 : case 467 : case 470 : case 473 : case 506 : case 524 : case 530 : case 555 : case 561 : case 569 : case 576 : case 581 : case 586 : case 593 : case 600 : case 605 : case 614 : case 641 : case 643 : case 645 : case 647 : case 649 : case 678 : case 680 : case 688 : case 701 : case 706 : case 721 : case 728 : case 734 : case 740 : case 750 : case 752 : case 754 : case 756 : case 758 : case 767 : case 769 : case 780 : case 789 : case 823 : case 834 : case 859 : case 888 : case 896 : case 908 : case 916 : case 1048: case 1085: case 1114: case 1120: case 1126: case 1132: case 1139: case 1141: case 1145: case 1154: case 1158: case 1162: case 1166: case 1170: case 1174: case 1178: case 1182: case 1186: case 1190: case 1194: case 1198: case 1202: case 1206: case 1210: case 1214: case 1218: case 1222: case 1226: case 1230: case 1234: case 1238: case 1242: case 1246: case 1250: case 1254: case 1258: case 1262: case 1266: case 1270: case 1274: case 1278: case 1282: case 1286: case 1290: case 1294: case 1298: case 1302: case 1306: case 1310: case 1314: case 1327: if (keys[SDLK_LEFT] || keys[SDLK_RIGHT]) { gpJeu->getAudio()->playSound(3); gpJeu->getTexte()->changeId(gpJeu->getTexte()->getId()+1); } break; case 78 : case 81 : case 84 : case 87 : case 90 : case 93 : case 97 : case 100 : case 103 : case 108 : case 127 : case 130 : case 133 : case 136 : case 139 : case 142 : case 145 : case 148 : case 151 : case 160 : case 163 : case 166 : case 169 : case 172 : case 181 : case 192 : case 205 : case 216 : case 219 : case 221 : case 223 : case 229 : case 231 : case 233 : case 235 : case 241 : case 246 : case 252 : case 266 : case 269 : case 272 : case 274 : case 279 : case 282 : case 291 : case 300 : case 310 : case 352 : case 357 : case 369 : case 371 : case 377 : case 379 : case 381 : case 384 : case 388 : case 391 : case 394 : case 396 : case 399 : case 401 : case 404 : case 414 : case 416 : case 427 : case 434 : case 448 : case 452 : case 462 : case 465 : case 468 : case 471 : case 474 : case 507 : case 525 : case 531 : case 556 : case 562 : case 570 : case 577 : case 582 : case 587 : case 594 : case 601 : case 606 : case 615 : case 642 : case 644 : case 646 : case 648 : case 650 : case 679 : case 681 : case 689 : case 702 : case 707 : case 722 : case 729 : case 735 : case 741 : case 751 : case 753 : case 755 : case 757 : case 759 : case 768 : case 770 : case 781 : case 790 : case 824 : case 835 : case 860 : case 889 : case 897 : case 909 : case 917 : case 1049: case 1086: case 1115: case 1121: case 1127: case 1133: case 1140: case 1142: case 1146: case 1155: case 1159: case 1163: case 1167: case 1171: case 1175: case 1179: case 1183: case 1187: case 1191: case 1195: case 1199: case 1203: case 1207: case 1211: case 1215: case 1219: case 1223: case 1227: case 1231: case 1235: case 1239: case 1243: case 1247: case 1251: case 1255: case 1259: case 1263: case 1267: case 1271: case 1275: case 1279: case 1283: case 1287: case 1291: case 1295: case 1299: case 1303: case 1307: case 1311: case 1315: case 1328: if (keys[SDLK_LEFT] || keys[SDLK_RIGHT]) { gpJeu->getAudio()->playSound(3); gpJeu->getTexte()->changeId(gpJeu->getTexte()->getId()-1); } break; case 48 : case 49 : case 50 : case 51 : case 52 : case 53 : case 54 : case 55 : case 56 : case 57 : case 58 : case 59 : case 60 : case 61 : case 62 : case 63 : case 64 : case 65 : case 66 : case 199 : case 200 : case 410 : case 411 : case 412 : case 421 : case 422 : case 423 : case 513 : case 514 : case 515 : case 516 : case 564 : case 565 : case 566 : case 608 : case 609 : case 610 : case 675 : case 676 : case 677 : case 709 : case 710 : case 711 : case 764 : case 765 : case 766 : if (gpJeu->getTexte()->getId()!=49 && gpJeu->getTexte()->getId()!=52 && gpJeu->getTexte()->getId()!=56 && gpJeu->getTexte()->getId()!=58 && gpJeu->getTexte()->getId()!=60 && gpJeu->getTexte()->getId()!=63 && gpJeu->getTexte()->getId()!=66 && gpJeu->getTexte()->getId()!=200 && gpJeu->getTexte()->getId()!=217 && gpJeu->getTexte()->getId()!=412 && gpJeu->getTexte()->getId()!=423 && gpJeu->getTexte()->getId()!=516 && gpJeu->getTexte()->getId()!=566 && gpJeu->getTexte()->getId()!=610 && gpJeu->getTexte()->getId()!=677 && gpJeu->getTexte()->getId()!=711 && gpJeu->getTexte()->getId()!=766) { if (keys[SDLK_DOWN]) { gpJeu->getAudio()->playSound(3); gpJeu->getTexte()->changeId(gpJeu->getTexte()->getId()+1); } } if (gpJeu->getTexte()->getId()!=48 && gpJeu->getTexte()->getId()!=50 && gpJeu->getTexte()->getId()!=53 && gpJeu->getTexte()->getId()!=57 && gpJeu->getTexte()->getId()!=59 && gpJeu->getTexte()->getId()!=61 && gpJeu->getTexte()->getId()!=64 && gpJeu->getTexte()->getId()!=199 && gpJeu->getTexte()->getId()!=215 && gpJeu->getTexte()->getId()!=410 && gpJeu->getTexte()->getId()!=421 && gpJeu->getTexte()->getId()!=513 && gpJeu->getTexte()->getId()!=564 && gpJeu->getTexte()->getId()!=608 && gpJeu->getTexte()->getId()!=675 && gpJeu->getTexte()->getId()!=709 && gpJeu->getTexte()->getId()!=764) { if (keys[SDLK_UP]) { gpJeu->getAudio()->playSound(3); gpJeu->getTexte()->changeId(gpJeu->getTexte()->getId()-1); } } break; } } if (!keys[SDLK_RETURN] && !keys[SDLK_RETURN] && !keys[SDLK_LEFT] && !keys[SDLK_RIGHT] && !keys[SDLK_UP] && !keys[SDLK_DOWN]) tmpt=0; } nbdir=0; if (keys[SDLK_UP]) nbdir++; if (keys[SDLK_DOWN]) nbdir++; if (keys[SDLK_LEFT]) nbdir++; if (keys[SDLK_RIGHT]) nbdir++; int vitesse; if ((keys[SDLK_CAPSLOCK] || keys[SDLK_LSHIFT]) && !gpJeu->getStop() && gpJoueur->hasObjet(O_BOTTES) && gpJoueur->hasObjet(O_TROC1)!=2) vitesse=4; else vitesse=2; avance=0; //marche if (!keys[SDLK_LCTRL] && ( gpJoueur->getTypeAnim()==AUCUNE || gpJoueur->getTypeAnim()==MARCHE || gpJoueur->getTypeAnim()==PORTE || gpJoueur->getTypeAnim()==EMMENE || gpJoueur->getTypeAnim()==NAGE || gpJoueur->getTypeAnim()==FLOTTE || gpJoueur->getTypeAnim()==RAME || gpJoueur->getTypeAnim()==BARQUE) && !gpJeu->getStop() && !gpJeu->getTransition() && !gpJoueur->getImmo()) { gpJoueur->savePrec(); if ((keys[SDLK_LEFT] && !gpJoueur->isIvre()) || (keys[SDLK_RIGHT] && gpJoueur->isIvre())) { if(!gpJoueur->getCharge() && (!keys[SDLK_UP] || gpJoueur->getDirection()!=N) && (!keys[SDLK_DOWN] || gpJoueur->getDirection()!=S)) gpJoueur->setDirection(O); if (gpJoueur->getX()%4==2) vit=2; else vit = vitesse; //gpJeu->moveJoueurX(-vit, nbdir); gpJoueur->moveX(-vit, nbdir); avance = 1; } if ((keys[SDLK_RIGHT] && !gpJoueur->isIvre()) || (keys[SDLK_LEFT] && gpJoueur->isIvre())) { if(!gpJoueur->getCharge() && (!keys[SDLK_UP] || gpJoueur->getDirection()!=N) && (!keys[SDLK_DOWN] || gpJoueur->getDirection()!=S)) gpJoueur->setDirection(E); if (gpJoueur->getX()%4==2) vit=2; else vit = vitesse; //gpJeu->moveJoueurX(vit, nbdir); gpJoueur->moveX(vit, nbdir); avance=1; } if ((keys[SDLK_UP] && !gpJoueur->isIvre()) || (keys[SDLK_DOWN] && gpJoueur->isIvre())) { if(!gpJoueur->getCharge() && (!keys[SDLK_LEFT] || gpJoueur->getDirection()!=O) && (!keys[SDLK_RIGHT] || gpJoueur->getDirection()!=E)) gpJoueur->setDirection(N); if (gpJoueur->getY()%4!=0) vit=2; else vit = vitesse; //gpJeu->moveJoueurY(-vit, nbdir); gpJoueur->moveY(-vit, nbdir); avance=1; } if ((keys[SDLK_DOWN] && !gpJoueur->isIvre()) || (keys[SDLK_UP] && gpJoueur->isIvre())) { if(!gpJoueur->getCharge() && (!keys[SDLK_LEFT] || gpJoueur->getDirection()!=O) && (!keys[SDLK_RIGHT] || gpJoueur->getDirection()!=E)) gpJoueur->setDirection(S); if (gpJoueur->getY()%4!=0) vit=2; else vit = vitesse; //gpJeu->moveJoueurY(vit, nbdir); gpJoueur->moveY(vit, nbdir); avance=1; } if (gpJeu->getVueHorz()>0) { if (gpJeu->getVueHorz()>=4) gpJeu->setVueHorz(gpJeu->getVueHorz()-4); else gpJeu->setVueHorz(0); } if (gpJeu->getVueHorz()<0) { if (gpJeu->getVueHorz()<=-4) gpJeu->setVueHorz(gpJeu->getVueHorz()+4); else gpJeu->setVueHorz(0); } if (gpJeu->getVueVert()>0) { if (gpJeu->getVueVert()>=4) gpJeu->setVueVert(gpJeu->getVueVert()-4); else gpJeu->setVueVert(0); } if (gpJeu->getVueVert()<0) { if (gpJeu->getVueVert()<=-4) gpJeu->setVueVert(gpJeu->getVueVert()+4); else gpJeu->setVueVert(0); } } if (keys[SDLK_LCTRL] && !gpJoueur->getImmo()) { if (keys[SDLK_LEFT] && gpJeu->getVueHorz()>-64) gpJeu->setVueHorz(gpJeu->getVueHorz()-2); if (keys[SDLK_RIGHT] && gpJeu->getVueHorz()<64) gpJeu->setVueHorz(gpJeu->getVueHorz()+2); if (keys[SDLK_UP] && gpJeu->getVueVert()>-64) gpJeu->setVueVert(gpJeu->getVueVert()-2); if (keys[SDLK_DOWN] && gpJeu->getVueVert()<64) gpJeu->setVueVert(gpJeu->getVueVert()+2); } if (avance == 1) { if (gpJoueur->getTypeAnim()==AUCUNE) gpJoueur->setTypeAnim(MARCHE); if (gpJoueur->getTypeAnim()==FLOTTE) gpJoueur->setTypeAnim(NAGE); if (gpJoueur->getTypeAnim()==PORTE) gpJoueur->setTypeAnim(EMMENE); if (gpJoueur->getTypeAnim()==BARQUE) gpJoueur->setTypeAnim(RAME); gpJeu->testFin(); } else { if (gpJoueur->getTypeAnim()==MARCHE && !gpJeu->getStop()) gpJoueur->setTypeAnim(AUCUNE); if (gpJoueur->getTypeAnim()==NAGE && !gpJeu->getStop()) gpJoueur->setTypeAnim(FLOTTE); if (gpJoueur->getTypeAnim()==EMMENE && !gpJeu->getStop()) gpJoueur->setTypeAnim(PORTE); if (gpJoueur->getTypeAnim()==RAME && !gpJeu->getStop()) gpJoueur->setTypeAnim(BARQUE); } //épée if ((gpJoueur->getTypeAnim()==AUCUNE || gpJoueur->getTypeAnim()==MARCHE) && !gpJoueur->getCharge() && gpJoueur->getEpee() && !gpJeu->getStop() && !gpJoueur->isLapin() && !gpJoueur->getImmo()) { if ((keys[SDLK_z] || keys[SDLK_w]) && !tmpw) { gpJoueur->setTypeAnim(EPEE); gpJoueur->chargeSpin(); tmpw=1; } if (!keys[SDLK_z] && !keys[SDLK_w] && tmpw) tmpw=0; } if (!keys[SDLK_z] && !keys[SDLK_w] && gpJoueur->getCharge() && !gpJeu->getStop() && !gpJoueur->isLapin()) { if (gpJoueur->getCharge() >= 20) gpJoueur->setTypeAnim(SPIN); gpJoueur->dechargeSpin(); } //curseur menu if (gpJeu->getMenu() && !gpJoueur->getOni() && (gpJoueur->getTypeAnim()<4 || gpJoueur->getTypeAnim()==NAGE || gpJoueur->getTypeAnim()==FLOTTE || (gpJoueur->getTypeAnim()>20 && gpJoueur->getTypeAnim()<25)) && tmp==0) { if (keys[SDLK_LEFT]) { int obj = gpJoueur->getObjet(); if (obj%4 == 0) gpJoueur->setObjet(obj+3); else gpJoueur->setObjet(obj-1); gpJeu->getAudio()->playSound(3); tmp=1; } if (keys[SDLK_RIGHT]) { int obj = gpJoueur->getObjet(); if (obj%4 == 3) gpJoueur->setObjet(obj-3); else gpJoueur->setObjet(obj+1); gpJeu->getAudio()->playSound(3); tmp=1; } if (keys[SDLK_UP]) { int obj = gpJoueur->getObjet(); if (obj/4 == 0) gpJoueur->setObjet(obj+12); else gpJoueur->setObjet(obj-4); gpJeu->getAudio()->playSound(3); tmp=1; } if (keys[SDLK_DOWN]) { int obj = gpJoueur->getObjet(); if (obj/4 == 3) gpJoueur->setObjet(obj-12); else gpJoueur->setObjet(obj+4); gpJeu->getAudio()->playSound(3); tmp=1; } } if (keys[SDLK_x] && ( gpJoueur->getTypeAnim()==AUCUNE || gpJoueur->getTypeAnim()==MARCHE || gpJoueur->getTypeAnim()==PECHE) && !gpJeu->getStop() && !gpJoueur->getImmo() && gpJoueur->getVie()>0 && !gpJoueur->getCharge() && !gpJoueur->isLapin() && !gpJoueur->getOni() && !tmpx) { tmpx=1; switch(gpJoueur->getObjet()) { case 0 : //arc if (gpJoueur->hasObjet(O_ARC)) gpJoueur->setTypeAnim(ARC); break; case 1 : //grappin if (gpJoueur->hasObjet(O_GRAPPIN)) gpJoueur->setTypeAnim(GRAPPIN); break; case 2 : //bombe if (gpJoueur->hasObjet(O_SAC_BOMBES) && gpJoueur->getBombe()) gpJoueur->setTypeAnim(BOMBE); break; case 3 : //flèche feu ou troc 1 if (gpJoueur->hasObjet(O_FFEU)) { if (gpJoueur->hasObjet(O_ARC)) gpJoueur->setTypeAnim(ARC); } else if (gpJoueur->hasObjet(O_TROC1)) gpJeu->ecrit(1); break; case 4 : //baguette de feu if (gpJoueur->hasObjet(O_BFEU)) gpJoueur->setTypeAnim(BFEU); break; case 5 : //baguette de glace if (gpJoueur->hasObjet(O_BGLACE)) gpJoueur->setTypeAnim(BGLACE); break; case 6 : //lanterne if (gpJoueur->hasObjet(O_LANTERNE) && gpJoueur->getMagie() >= 2) gpJoueur->setTypeAnim(LANTERNE); break; case 7 : //troc 2 if (gpJoueur->hasObjet(O_FGLACE)) { if (gpJoueur->hasObjet(O_ARC)) gpJoueur->setTypeAnim(ARC); } else if (gpJoueur->hasObjet(O_TROC2)) gpJeu->ecrit(1); break; case 8 : //marteau if (gpJoueur->hasObjet(O_MARTEAU)) gpJoueur->setTypeAnim(MARTEAU); break; case 9 : //ocarina if (gpJoueur->hasObjet(O_OCARINA)) { gpJoueur->setTypeAnim(JOUE); gpJeu->ecrit(47);} break; case 10 : //canne à pêche if (gpJoueur->getTypeAnim()==PECHE) gpJoueur->finPeche(); else gpJoueur->peche(); break; case 11 : //troc 3 if (gpJoueur->hasObjet(O_FLUM)) { if (gpJoueur->hasObjet(O_ARC)) gpJoueur->setTypeAnim(ARC); } else if (gpJoueur->hasObjet(O_TROC3)) gpJeu->ecrit(1); break; case 12 : // flacon case 13 : case 14 : case 15 : if (gpJoueur->hasBouteille(gpJoueur->getObjet()-12)) gpJoueur->setTypeAnim(BOIRE); else if (gpJoueur->getObjet()==15 && gpJoueur->hasObjet(O_TROC4)) gpJeu->ecrit(1); break; } } if (!keys[SDLK_x] && tmpx) tmpx=0; if (keys[SDLK_c] && !tmpc && !gpJoueur->getCharge() && gpJoueur->getVie()>0 && !gpJoueur->isLapin() && !gpJeu->getStop() && !gpJoueur->getImmo()) { if (gpJoueur->getTypeAnim()==AUCUNE || gpJoueur->getTypeAnim()==MARCHE) gpJeu->ramasse(); else if (gpJoueur->getTypeAnim()==PORTE || gpJoueur->getTypeAnim()==EMMENE) gpJoueur->setTypeAnim(LANCE); } if (!keys[SDLK_c] && tmpc) tmpc=0; if (keys[SDLK_SPACE] && !gpJeu->getStop() && gpJoueur->getVie() && (gpJoueur->getTypeAnim()==AUCUNE || gpJoueur->getTypeAnim()==MARCHE || gpJoueur->getTypeAnim()==PORTE || gpJoueur->getTypeAnim()==EMMENE || gpJoueur->getTypeAnim()==FLOTTE || gpJoueur->getTypeAnim()==NAGE || gpJoueur->getTypeAnim()==BARQUE || gpJoueur->getTypeAnim()==RAME) && !gpJoueur->getImmo()) { gpJeu->lire(); } if (keys[SDLK_p] && (gpJoueur->hasObjet(O_CARTE) || gpJeu->isDonjon()) && (gpJeu->isDehors() || gpJeu->isDonjon()) && !gpJeu->getStop() && gpJoueur->getVie()>0 && !tmpp) { mode = 12; gpJeu->getAudio()->playSound(1); gpCarte->init(); tmpp=1; } if (!keys[SDLK_p] && tmpp) tmpp=0; if ((keys[SDLK_m] || keys[SDLK_SEMICOLON]) && gpJoueur->hasObjet(O_ENCYCL) && !gpJeu->getStop() && gpJoueur->getVie()>0 && gpJoueur->nbEnnemis() && !tmpm) { mode = 13; gpJeu->getAudio()->playSound(1); gpEncyclopedie->setPage(0); gpEncyclopedie->init(); tmpm=1; } if (!(keys[SDLK_m] || keys[SDLK_SEMICOLON]) && tmpm) tmpm=0; if (keys[SDLK_o] && gpJoueur->hasObjet(O_MASQUE) && !gpJoueur->isLapin() && !tmpo && !gpJeu->getStop() && !gpJoueur->getImmo() && gpJoueur->getVie()>0) { if (gpJoueur->getOni()) { gpJeu->getAudio()->playSound(2);gpJoueur->setOni(false);} else {gpJeu->getAudio()->playSound(1); gpJoueur->setOni(true);} tmpo=1; } if (!(keys[SDLK_o]) && tmpo) tmpo=0; if (keys[SDLK_t] && gpJoueur->getOni() && !gpJoueur->isLapin() && gpJeu->isDonjon() && !tmptp && !gpJeu->getStop() && !gpJoueur->getImmo() && gpJoueur->getVie()>0) { gpJeu->getAudio()->playSound(5); SDL_Delay(1000); gpJeu->getAudio()->stopSpecial(); gpJoueur->restoreEmpl(); tmptp=1; } if (!(keys[SDLK_t]) && tmptp) tmptp=0; // liste poissons if (keys[SDLK_l] && gpJoueur->hasObjet(O_POISSONS) && gpJoueur->nbPoissons() && !tmpl && !gpJeu->getStop() && !gpJoueur->getImmo() && gpJoueur->getVie()>0) { mode = 23; gpJeu->getAudio()->playSound(1); gpPoissons->setPage(0); gpPoissons->init(); tmpl=1; } if (!keys[SDLK_l] && tmpl) tmpl=0; // liste items troc if (keys[SDLK_i] && gpJoueur->hasObjet(O_SAC_TROC) && !tmpi && !gpJeu->getStop() && !gpJoueur->getImmo() && gpJoueur->getVie()>0) { mode = 25; gpJeu->getAudio()->playSound(1); gpJeu->getGenerique()->initTroc(); tmpi=1; } if (!keys[SDLK_i] && tmpi) tmpi=0; break; case 1 : if (keys[SDLK_RETURN] && tmp == 0) { mode = 2; gpJeu->getGenerique()->initLogo(); gpJeu->getAudio()->playSound(1); tmp = 1; } if (!keys[SDLK_RETURN]) tmp=0; break; case 2 : if (keys[SDLK_RETURN] && tmp == 0) { mode = 3; gpJeu->getGenerique()->initTitre(); gpJeu->getAudio()->playSound(1); gpJeu->getAudio()->playMusic(180); tmp = 1; } if (!keys[SDLK_RETURN]) tmp=0; break; case 3 : if (keys[SDLK_RETURN] && tmp == 0) { mode = 4; colonne=0; gpJeu->getGenerique()->initSelection(); gpJeu->getAudio()->playSound(1); gpJeu->getAudio()->playMusic(190); tmp = 1; } if (!keys[SDLK_RETURN]) tmp=0; break; case 4 : if (keys[SDLK_RETURN] && tmp == 0) { if (ligne < 3) { if (save[ligne]) { mode = 7; ligneVal=0; gpJeu->getGenerique()->initCharger(); } else { mode = 8; intro = 0; gpJeu->getGenerique()->initIntro(); gpJeu->getAudio()->playMusic(200); } } if (ligne == 3 && colonne == 0) { mode = 6; ligneOption=2; gpJeu->getGenerique()->initOption(); } if (ligne == 3 && colonne == 1) { mode = 15; ligneRecord=3; colonneRecord=0; gpJeu->getGenerique()->initRecord(); } tmp=1; gpJeu->getAudio()->playSound(1); } if (keys[SDLK_UP] && !tmp) { ligne--; if (ligne<0) ligne=3; tmp=1; if (ligne!=3) colonne=0; gpJeu->getAudio()->playSound(3);} if (keys[SDLK_DOWN] && !tmp) { ligne++; if (ligne>3) ligne=0; tmp=1; if (ligne!=3) colonne=0; gpJeu->getAudio()->playSound(3);} if (keys[SDLK_LEFT] && !tmp && ligne==3) { colonne--; if (colonne<0) colonne=1; tmp=1; gpJeu->getAudio()->playSound(3);} if (keys[SDLK_RIGHT] && !tmp && ligne==3) { colonne++; if (colonne>1) colonne=0; tmp=1; gpJeu->getAudio()->playSound(3);} if (!keys[SDLK_RETURN] && !keys[SDLK_UP] && !keys[SDLK_DOWN] && !keys[SDLK_LEFT] && !keys[SDLK_RIGHT] && tmp) tmp=0; break; case 6 : if (keys[SDLK_RETURN] && tmp == 0 && ligneOption == 2) { mode = 4; gpJeu->getGenerique()->initSelection(); gpJeu->getAudio()->playSound(2); tmp = 1; saveP(); } if (keys[SDLK_UP] && !tmp) { ligneOption--; if (ligneOption<0) ligneOption=2; tmp=1; gpJeu->getAudio()->playSound(3);} if (keys[SDLK_DOWN] && !tmp) { ligneOption++; if (ligneOption>2) ligneOption=0; tmp=1; gpJeu->getAudio()->playSound(3);} if (keys[SDLK_LEFT] && !tmp) { if (ligneOption == 0) { volume-=8; if (volume < 0) volume = 0; tmp=1; gpJeu->getAudio()->setVolume(volume); gpJeu->getAudio()->playSound(3);} if (ligneOption == 1) { volson-=8; if (volson < 0) volson = 0; tmp=1; gpJeu->getAudio()->setVolson(volson); gpJeu->getAudio()->playSound(3);}} if (keys[SDLK_RIGHT] && !tmp) { if (ligneOption == 0) { volume+=8; if (volume > 64) volume = 64; tmp=1; gpJeu->getAudio()->setVolume(volume);gpJeu->getAudio()->playSound(3);} if (ligneOption == 1) { volson+=8; if (volson > 64) volson = 64; tmp=1; gpJeu->getAudio()->setVolson(volson);gpJeu->getAudio()->playSound(3);}} if (!keys[SDLK_RETURN] && !keys[SDLK_UP] && !keys[SDLK_DOWN] && !keys[SDLK_LEFT] && !keys[SDLK_RIGHT] && tmp) tmp=0; break; case 7 : if (keys[SDLK_RETURN] && tmp == 0) { if (ligneVal==0) { mode = 0; gpJeu->init(ligne+1); } if (ligneVal==1) { mode = 9; ligneVal=1; gpJeu->getGenerique()->initEffacer(); gpJeu->getAudio()->playSound(1); } if (ligneVal==2) { mode = 4; gpJeu->getGenerique()->initSelection(); gpJeu->getAudio()->playSound(2); } tmp = 1; } if (keys[SDLK_UP] && !tmp) { if (--ligneVal<0) ligneVal=2; tmp=1; gpJeu->getAudio()->playSound(3);} if (keys[SDLK_DOWN] && !tmp) { if (++ligneVal>2) ligneVal=0; tmp=1; gpJeu->getAudio()->playSound(3);} if (!keys[SDLK_RETURN] && !keys[SDLK_UP] && !keys[SDLK_DOWN] && tmp) tmp=0; break; case 8 : if (keys[SDLK_RETURN] && tmp == 0) { int old; old = gpJeu->getTexte()->getId(); if (!gpJeu->getTexte()->suite()) { mode = 10; gpJeu->getGenerique()->initNuit(); gpJeu->getAudio()->stopMusic(); } else if (old != gpJeu->getTexte()->getId()) intro++; tmp = 1; } if (!keys[SDLK_RETURN] && tmp) tmp=0; break; case 9 : if (keys[SDLK_RETURN] && tmp == 0) { if (ligneVal==0) { ostringstream oss; oss << (ligne+1); remove(("data/save/3t" + oss.str() + ".dat").c_str()); mode = 4; gpJeu->getGenerique()->initSelection(); gpJeu->getAudio()->playSound(2); } else { mode = 7; gpJeu->getGenerique()->initCharger(); gpJeu->getAudio()->playSound(1); } tmp = 1; } if ((keys[SDLK_UP] || keys[SDLK_DOWN]) && !tmp) { ligneVal ? ligneVal=0 : ligneVal = 1; tmp=1; gpJeu->getAudio()->playSound(3);} if (!keys[SDLK_RETURN] && !keys[SDLK_UP] && !keys[SDLK_DOWN] && tmp) tmp=0; break; case 10 : if (keys[SDLK_RETURN] && tmp == 0) { if (gpJeu->getText()) gpJeu->setText(gpJeu->getTexte()->suite()); if (!gpJeu->getText()) { //gpJeu->getAudio()->playSound(5); //SDL_Delay(2500); mode = 0; gpJeu->init(ligne+1); gpJeu->ecrit(1367); } tmp = 1; } if (!keys[SDLK_RETURN] && tmp) tmp=0; break; case 11 : if (keys[SDLK_RETURN] && tmp == 0) { gpJeu->setText(gpJeu->getTexte()->suite()); tmp = 1; } if (!keys[SDLK_RETURN]) tmp=0; break; case 12 : if (keys[SDLK_RETURN] && !tmp) { mode = 0; gpJeu->getAudio()->playSound(2); tmp=1; } if (keys[SDLK_UP] && !tmp) { gpCarte->moveLevel(N); tmp=1; } if (keys[SDLK_DOWN] && !tmp) { gpCarte->moveLevel(S); tmp=1; } if (!keys[SDLK_RETURN] && !keys[SDLK_UP] && !keys[SDLK_DOWN] && tmp) tmp=0; break; case 13 : if (keys[SDLK_RETURN] && !tmp) { mode = 0; gpJeu->getAudio()->playSound(2); tmp=1; } if (keys[SDLK_LEFT] && !tmp) { gpJeu->getAudio()->playSound(3); gpEncyclopedie->moveL(); tmp=1; } if (keys[SDLK_RIGHT] && !tmp) { gpJeu->getAudio()->playSound(3); gpEncyclopedie->moveR(); tmp=1; } if (!keys[SDLK_RETURN] && !keys[SDLK_LEFT] && !keys[SDLK_RIGHT] && tmp) tmp=0; break; case 14 : if (keys[SDLK_RETURN] && tmp == 0) { mode = 2; gpJeu->getAudio()->playSound(1); gpJeu->getGenerique()->initLogo(); tmp = 1; } if (!keys[SDLK_RETURN] && tmp) tmp=0; break; case 15 : if (keys[SDLK_RETURN] && tmp == 0) { if (ligneRecord==3) { if (colonneRecord == 0) { mode = 4; gpJeu->getGenerique()->initSelection(); gpJeu->getAudio()->playSound(2); } else { mode = 16; ligneVal=1; gpJeu->getGenerique()->initEffacer(); gpJeu->getAudio()->playSound(1); } } else { mode = 19 + ligneRecord; gpJeu->getGenerique()->initRang(ligneRecord); gpJeu->getAudio()->playSound(1); } tmp = 1; } if (keys[SDLK_UP] && !tmp) { ligneRecord--; if (ligneRecord<0) ligneRecord=3; tmp=1; colonneRecord=0; gpJeu->getAudio()->playSound(3);} if (keys[SDLK_DOWN] && !tmp) { ligneRecord++; if (ligneRecord>3) ligneRecord=0; tmp=1; colonneRecord=0; gpJeu->getAudio()->playSound(3);} if ((keys[SDLK_LEFT] || keys[SDLK_RIGHT]) && ligneRecord==3 && !tmp) { if (colonneRecord == 0) colonneRecord=1; else colonneRecord=0; tmp=1; gpJeu->getAudio()->playSound(3);} if (!keys[SDLK_RETURN] && !keys[SDLK_UP] && !keys[SDLK_DOWN] && !keys[SDLK_LEFT] && !keys[SDLK_RIGHT] && tmp) tmp=0; break; case 16 : if (keys[SDLK_RETURN] && tmp == 0) { mode = 15; if (ligneVal==0) { gpJeu->getAudio()->playSound(2); temps=0; for (int i = 0; i < 3; i++) rang[6+i]=0; saveP(); } else gpJeu->getAudio()->playSound(1); gpJeu->getGenerique()->initRecord(); tmp = 1; } if ((keys[SDLK_UP] || keys[SDLK_DOWN]) && !tmp) { ligneVal ? ligneVal=0 : ligneVal = 1; tmp=1; gpJeu->getAudio()->playSound(3);} if (!keys[SDLK_RETURN] && !keys[SDLK_UP] && !keys[SDLK_DOWN] && tmp) tmp=0; break; case 17 : if (keys[SDLK_RETURN] && !tmp) { mode = 0; gpJeu->getAudio()->playSound(2); tmp=1; } if (keys[SDLK_RIGHT] && !tmp) { mode = 18; gpJeu->getGenerique()->initAide2(); gpJeu->getAudio()->playSound(3); tmp=1;} if (!keys[SDLK_RETURN] && !keys[SDLK_RIGHT] && tmp) tmp=0; break; case 18 : if (keys[SDLK_RETURN] && !tmp) { mode = 0; gpJeu->getAudio()->playSound(2); tmp=1; } if (keys[SDLK_LEFT] && !tmp) { mode = 17; gpJeu->getGenerique()->initAide1(); gpJeu->getAudio()->playSound(3); tmp=1;} if (keys[SDLK_RIGHT] && !tmp) { if (gpJeu->getGenerique()->initAide3()) { mode = 24; gpJeu->getAudio()->playSound(3); tmp=1;}} if (!keys[SDLK_RETURN] && !keys[SDLK_LEFT] && !keys[SDLK_RIGHT] && tmp) tmp=0; break; case 24 : if (keys[SDLK_RETURN] && !tmp) { mode = 0; gpJeu->getAudio()->playSound(2); tmp=1; } if (keys[SDLK_LEFT] && !tmp) { mode = 18; gpJeu->getGenerique()->initAide2(); gpJeu->getAudio()->playSound(3); tmp=1;} if (!keys[SDLK_RETURN] && !keys[SDLK_LEFT] && tmp) tmp=0; break; case 19 : case 20 : case 21 : if (keys[SDLK_RETURN] && !tmp) { mode = 15; gpJeu->getGenerique()->initRecord(); gpJeu->getAudio()->playSound(2); tmp=1; } if (!keys[SDLK_RETURN] && tmp) tmp=0; break; case 22 : if (keys[SDLK_RETURN] && !tmp) { mode = 0; gpJeu->getAudio()->playSound(5); SDL_Delay(2500); gpJeu->teleporte(telep); tmp=1; } if (keys[SDLK_LEFT] && !tmp) { telep--; if (telep<0) telep=8; gpJeu->getAudio()->playSound(3); tmp=1;} if (keys[SDLK_RIGHT] && !tmp) { telep++; if (telep>8) telep=0; gpJeu->getAudio()->playSound(3); tmp=1;} if ((keys[SDLK_1] || keys[SDLK_KP1] || keys[SDLK_2] || keys[SDLK_KP2] || keys[SDLK_3] || keys[SDLK_KP3] || keys[SDLK_4] || keys[SDLK_KP4] || keys[SDLK_5] || keys[SDLK_KP5] || keys[SDLK_6] || keys[SDLK_KP6] || keys[SDLK_7] || keys[SDLK_KP7] || keys[SDLK_8] || keys[SDLK_KP8] || keys[SDLK_9] || keys[SDLK_KP9] ) && !tmp) { if (keys[SDLK_1] || keys[SDLK_KP1])telep=0; if (keys[SDLK_2] || keys[SDLK_KP2])telep=1; if (keys[SDLK_3] || keys[SDLK_KP3])telep=2; if (keys[SDLK_4] || keys[SDLK_KP4])telep=3; if (keys[SDLK_5] || keys[SDLK_KP5])telep=4; if (keys[SDLK_6] || keys[SDLK_KP6])telep=5; if (keys[SDLK_7] || keys[SDLK_KP7])telep=6; if (keys[SDLK_8] || keys[SDLK_KP8])telep=7; if (keys[SDLK_9] || keys[SDLK_KP9])telep=8; gpJeu->getAudio()->playSound(3); tmp=1; } if (!keys[SDLK_RETURN] && !keys[SDLK_LEFT] && !keys[SDLK_RIGHT] && !keys[SDLK_1] && !keys[SDLK_2] && !keys[SDLK_3] && !keys[SDLK_4] && !keys[SDLK_5] && !keys[SDLK_6] && !keys[SDLK_7] && !keys[SDLK_8] && !keys[SDLK_9] && !keys[SDLK_KP1] && !keys[SDLK_KP2] && !keys[SDLK_KP3] && !keys[SDLK_KP4] && !keys[SDLK_KP5] && !keys[SDLK_KP6] && !keys[SDLK_KP7] && !keys[SDLK_KP8] && !keys[SDLK_KP9] && tmp) tmp=0; break; case 23 : if (keys[SDLK_RETURN] && !tmp) { mode = 0; gpJeu->getAudio()->playSound(2); tmp=1; } if (keys[SDLK_LEFT] && !tmp) { gpJeu->getAudio()->playSound(3); gpPoissons->moveL(); tmp=1; } if (keys[SDLK_RIGHT] && !tmp) { gpJeu->getAudio()->playSound(3); gpPoissons->moveR(); tmp=1; } if (!keys[SDLK_RETURN] && !keys[SDLK_LEFT] && !keys[SDLK_RIGHT] && tmp) tmp=0; break; case 25 : if (keys[SDLK_RETURN] && !tmp) { mode = 0; gpJeu->getAudio()->playSound(2); tmp=1; } if (!keys[SDLK_RETURN] && tmp) tmp=0; break; case 26 : case 27 : if (keys[SDLK_RETURN] && tmp == 0) { gpJeu->setText(gpJeu->getTexte()->suite()); tmp = 1; } if (!keys[SDLK_RETURN]) tmp=0; break; case 28 : if (keys[SDLK_RETURN] && !tmp) { mode = 14; gpJeu->getAudio()->stopSpecial(); gpJeu->getAudio()->stopMusic(); gpJeu->getGenerique()->initScore(); gpJeu->setZone(79); gpJeu->getJoueur()->setVie(gpJeu->getJoueur()->getVieMax()); gpJeu->getJoueur()->setXDep(152); gpJeu->getJoueur()->setYDep(72); gpJeu->getJoueur()->setDirDep(S); gpJeu->getJoueur()->save(); gpJeu->getAudio()->playSound(2); tmp=1; } if (!keys[SDLK_RETURN] && tmp) tmp=0; break; } }