void doHandleTeamInfo( const int, const TeamT & left, const TeamT & right ) { printTeam( 'l', left ); printTeam( 'r', right ); }
static void printGameData( bowl_game_s *bowl_game ) { printf( "{\"road_team\":" ); printTeam( bowl_game->road_team ); printf( ",\"home_team\":" ); printTeam( bowl_game->home_team ); printf( "}" ); }
static void printBoxscore( team_s *road_team, team_s *home_team, nst_save_state_s *save_state ) { printf( "{\"road_team\":" ); printTeam( road_team ); printf( ",\"home_team\":" ); printTeam( home_team ); printf( "}" ); }
void camping(void) { char i, encre, a; char *ptr; while(1) { text();cls(); ptr = (char*)0x26a; *ptr = *ptr & 254; // Vire le curseur ink(eencre[ville-1]); printFrame(15); printTitle(8,2, A_BGRED, "< ++ CAMPEMENT ++ >", 21); printAtXY(9,6, "1. Inspecter un heros"); printAtXY(9,8, "2. Visualiser l'equipe"); if (ca>20 && ca<29) printAtXY(9,10, "3. Ouvrir un coffre"); printAtXY(9,12,"4. Se reposer"); printAtXY(13,16,"5. Lever le camp"); // affichage équipe printTeam(); a = get(); switch(a) { case '1': inspect(); break; case '2': printTeamFull(); break; case '3': if (ca>20 && ca<29) chest(); break; case '4': sleep(); break; case '5': cls(); printAtXY(8,10, "Bon voyage !"); wait(150); return; break; default: ping(); break; } //attribAtXY(3,0,a); } }
void printPiece(const byte p) { printTeam(teamOf(p)); print(" "); printType(typeOf(p)); }
void chest(void) { char a,i,dff,ss; char borne_sup, borne_inf; cls(); printTitle(4,6, A_BGRED, "Voila un coffre, Qui l'ouvre ? ", 31); printTeam(); while(1) { a = get(); if (a<'0' || a>'6') ping(); // ping si pas correct else break; // correct : on sort } a = a - '1'; tentatives+=5; if (characters[a].cp!=3) { printAtXY(9,9, "C'est pas son truc !"); zap(); wait(500); return; } for(i=0;i<6;i++) { if (characters[a].sad[i]==34) { dff=35; break; } else dff=-25; } ss = rand()%100+1; if(ss>characters[a].ag+dff+tentatives) { printAtXY(11,12, itoa(ss)); printAtXY(14,12, "Et non ! t1:"); printAtXY(27,12, itoa(tentatives)); zap(); wait(500); return; } printAtXY(11,11, "Ouvert ! Bravo."); ping(); printAtXY(6,12, "Il trouve "); if(ca==21) { cles[ville-1][0]=1; printAtXY(20,12, "Une clef en fer"); // clé 1 wait(500); ca=0; return; } else if(ca==26) { cles[ville-1][3]=1; printAtXY(20,12, "Une clef en or"); // clé 4 (prison) wait(500); ca=0; return; } else if(ca==27) { // // 21700 IF IG(VI-2)=1THEN RETURN // 21708 NP=NP+1:IG(VI-2)=1:S$=IG$(VI-2) // 21710 PRINT@5,10;"IL TROUVE: ";S$ // 21720 S$="Nb d'Ingredients Potion:"+STR$(NP):PRINT@5,12;S$ // 21730 IF NP=6THENPRINT@5,14;"Direction le Labo pour la potion":GOTO21790 // 21740 S$="Encore"+STR$(6-NP)+" a trouver":PRINT@5,14;S$ // 21790 L=16:GOSUB 30000 // 21800 RETURN if(ville<3 || ville >8) return; // bug if(ingredients[ville-3]) { printAtXY(20,12, "Rien !"); wait(150); return; } np++; ingredients[ville-3]=1; printAtXY(20,12, nomIngredients[ville-3]); printAtXY(6,13, "Nb d'Ingredients Potion :"); printAtXY(20,13, itoa(np)); if(np==6) { printAtXY(6,15, "Direction le Labo pour la potion :"); } else { printAtXY(6,15, "Encore "); printAtXY(13,15, itoa(6-np)); printAtXY(17,15, "a trouver"); } ca=0; wait(500); return; } else if(ca==28) { // tresor // 21900 SS=FNA(5000)+3000:RI(P)=RI(P)+SS // 21910 S$="un TRESOR de"+STR$(SS)+" ca" // 21920 TL=TL+1:UP=1 // 21950 RETURN int prime = rand()%5000 + 3000; characters[a].ri += prime/10; // attention on stocke les ca / 10 printAtXY(20,12, "un TRESOR de"); printAtXY(33,13, itoa(prime)); printAtXY(38,13, "ca"); tl++; // on peut aller a la ville suivante ! printAtXY(4,15, "Vous trouvez le chemin vers"); printAtXY(4,16, " une nouvelle ville !"); ca=0; wait(500); return; } // un objet // 21410 SS=FNA(100):IFSS<5ORSS>95THENSS=FNA(5)+43:GOTO21420 // 21415 SS=FNA(22)+19:IFSS=40OR(SS>21ANDSS<29)OR(SS>36ANDSS<44)THEN21415 // 21420 S$=IT$(SS) if(characters[a].sad[5]>0) { zap(); printAtXY(19,12, "Un objet Mais..."); printAtXY(6,14, "Son sac a dos est plein ! Dommage."); wait(500); return; } ss = rand()%100+1; if(ss<5||ss>95) { ss=rand()%5+43; } else { do { ss=rand()%22+19; } while(ss==40 || (ss>21 && ss<29) || (ss>36 && ss<44)); } printAtXY(19,12, textesItems[ss-1]); if(ss == 36 || ss == 35) { // selle de dragon ou boussole // on essaie de les donner à quelqu'un qui pourra s'en servir char j; for(j=0;j<6;j++) { if(ss == 35 && characters[j].cp<5) // il ne peut pas utiliser la boussole continue; if(ss == 36 && characters[j].cp!=6) // il ne peut pas utiliser la selle continue; // on a trouvé quelqu'un qui pourra utiliser l'objet // peut on ranger l'objet for(i=0;i<6;i++) { if (characters[j].sad[i]==0) { // on a trouvé de la place characters[j].sad[i]=ss; printAtXY(11,14, "Il donne l'objet a "); printAtXY(15,15, characters[j].nom); wait(500); // on positionne les booléens if (ss == 35) boussole = 1; else if (ss == 36) selle_dragon = 1; // le coffre est désormais vide ca=0; // on arrête tout return; } } } } // on range l'objet dans l'inventaire de celui qui l'a trouvé for(i=0;i<6;i++) { if (characters[a].sad[i]==0) { // il y a de la place ici characters[a].sad[i]=ss; // le coffre est désormais vide ca=0; // on arrête tout wait(500); return; } } wait(500); }
void spells(char p) { char i,a,j, max; char titre[32]; // tests /* characters[0].ok=2; characters[0].et=2; characters[1].ok=3; characters[1].et=2; characters[2].ok=4; characters[2].et=2; characters[3].ok=3; characters[3].et=2; characters[4].ni=8; */ cls(); printFrame(14); printTitle(11,2, A_BGRED, " < * SORTS * > ", 15); max = characters[p].ni > 8 ? 8 : characters[p].ni; for(i=0;i<max;i++) { printAtXY(11,4+i, itoa(i+1)); printAtXY(14,4+i, sorts[(characters[p].cp-4)*8+i]); printAtXY(25,4+i, "("); printAtXY(27,4+i, itoa(characters[p].sp[i])); printAtXY(30,4+i, ")"); } if (characters[p].cp!=5) { printTitle(14,14, A_BGRED, " <ESPACE> ", 10); a = get(); } else { // mestre a = 'o'; while(a == 'o' || a == 'O') { printTitle(7,14, A_BGRED, " Un sort de soin (O/N) ? ", 25); a = get(); if (a!='o' && a!='O') return; printAtXY(6,14, " "); // affichage équipe printTeam(); printAtXY(8,12, " LEQUEL ? "); while(1) { a = get(); if (a<'1' || a>'7' || a=='4' || a=='6') { zap(); // zap si pas correct printAtXY(6,12, " !IMPOSSIBLE! "); wait(250); printAtXY(8,12, " LEQUEL ? "); } else { i = a - '1'; if(i>=characters[p].ni) { zap(); // pas du bon niveau printAtXY(6,12, " !IMPOSSIBLE! "); wait(250); printAtXY(8,12, " LEQUEL ? "); } else break; // correct : on sort } } strcpy(titre, "Incantation de "); strcat(titre, sorts[(characters[p].cp-4)*8+i]); j = strlen(titre); a = (31-j)/2 + 4; printAtXY(a,12, titre); if(i==4) { // soigne tout le monde for(i=0;i<6;i++) { if (characters[i].ok!=4) { characters[i].et=characters[i].pv; characters[i].ok=1; } } } else { printAtXY(7,16, " SOIGNER QUI ? (0:Aucun) "); while(1) { a = get(); if (a<'0' || a>'6') ping(); // ping si pas correct else break; // correct : on sort } a = a - '1'; if (a>=0) { // soigne a // cas impossibles if((i==0 && characters[a].ok==4) || (i==1 && characters[a].ok!=2) || (i==2 && characters[a].ok!=3) || (i==6 && characters[a].ok!=4)) { zap(); printAtXY(6,12, " !IMPOSSIBLE! "); wait(250); printAtXY(6,12, " "); } else { // ça marche characters[a].et=characters[a].pv; if(i!=0) characters[a].ok=1; } } printAtXY(7,16, " "); } printAtXY(7,12, " "); // affichage équipe printTeam(); a='o'; } } }