// File: /workspace/github_cpp_makefile_star2_O1/giovifazi[P]knossos-bloodbath/Hud.cpp
// Function: hud_action(int)
void hud_action(int n){

   // Stampo righe vuote per separare schermate
   for(int j=0; j < 6; j++)
      std::cout << "\n"; 

   switch(n){
      case 1: case 2: case 3: case 4: case 5:
         std::cout 

         <<"Hai deciso di interrompere la tua fuga per entrare in una stanza malamente illuminata. \n"
         <<"Speri di trovare un baule, del cibo o dell'acqua. Ti accontenteresti di poco... ma non trovi nulla...\n"
         <<"\n";			
      break;

      case 6:
         std::cout 
         <<"In un baule trovi uno scudo. Su di esso vi è raffigurato lo scontro tra Ercole e Cicno. Ti senti più forte...\n\n"
         <<"Hai trovato uno scudo d'oro!\nUtile nei combattimenti.\n"
         <<"\n"
          <<"|`-._/\\_.-`|\n"
          <<"|    ||    |\n"
          <<"|___o()o___|\n"
          <<"|__((<>))__|\n"
          <<"\\   o\\/o   /\n"
          <<" \\   ||   /\n"
          <<"  \\  ||  /\n"
          <<"   '.||.'\n"
          <<"     ``\n";
			
      break;

      case 71:
         std::cout 
         <<"Trovi una stanza. Pare fosse una sorta di cucina. Bicchieri e cianfrusaglie su di un lungo tavolo.\n"
         <<"C'è un anche un'anfora ben chiusa. La apri... nasconde del vino conservato meravigliosamente. Lo bevi e ti senti rinvigorito...\n\n"
         <<"+8 Hp.\n"
         <<"\n"
            
    <<"    ___\n"
    <<"   (___)\n"
    <<"   <   >\n"
    <<"    ) (\n"
    <<"   /`-.\\\n"
    <<"  /     \\\n"
    <<" / _    _\\\n"
    <<":,' `-.' `:\n"
    <<"|         |\n"
    <<":         ;\n"
    <<" \\       /\n"
    <<"  `.___.' \n\n";		
      break;

      case 72:
          std::cout 
         <<"Sei assetato e quell'ampolla contiene, pare, ottimo vino. In realtà è sangue infetto. Riesci a vomitarlo, ma sei avvelenato...\n\n"
         << "Hai bevuto del sangue infetto... \n-8 Hp.\n"
         <<"\n"
            
    <<"    ___\n"
    <<"   (___)\n"
    <<"   <   >\n"
    <<"    ) (\n"
    <<"   /`-.\\\n"
    <<"  /     \\\n"
    <<" / _    _\\\n"
    <<":,' `-.' `:\n"
    <<"|         |\n"
    <<":         ;\n"
    <<" \\       /\n"
    <<"  `.___.' \n\n";
      break;

      case 91:
         std::cout 
         <<"In un baule trovi uno scudo. Su di esso vi è raffigurato lo scontro tra Ercole e Cicno. Ti senti più forte.\n\n"
         <<"Hai trovato uno scudo di bronzo!\nUtile nei combattimenti.\n"
         <<"\n"
          <<"|`-._/\\_.-`|\n"
          <<"|    ||    |\n"
          <<"|___o()o___|\n"
          <<"|__((<>))__|\n"
          <<"\\   o\\/o   /\n"
          <<" \\   ||   /\n"
          <<"  \\  ||  /\n"
          <<"   '.||.'\n"
          <<"     ``\n";
			
      break;

      case 92:
         std::cout 
<<"Esistono verso il nord Europa, barbari esperti nell'uso di piccole spade chiamate daghe. \n"
<<"Non sai come sia possibile, ma ne hai trovata una nel labirinto. Simboli celtici adornano una lama consumata...\n\n"

         << "Trovata una daga!\n+1 in attacco.\n"
         <<"\n"		


               
<<"              (@|\n"
<<" ,,           ,)|____________________________________\n"
<<"//\\8@8@8@8@8@8 / _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \\\n"
<<"\\//8@8@8@8@8@8 \\_____________________________________/\n"
<<" ``           `)|\n"
<<"              (@|\n\n";
                
      break;

      case 13: case 14: case 15: case 16: case 17: 
         std::cout 

<<"           __\n"
<<"        ,. |_'.\n"
<<"       / / /:\\ \\\n"
<<"     _/_/_/::: |\n"
<<"    /o_'/o>::/ /\n"
<<"    / /'/:::/ /\n"
<<"   / /_/::.'_/\n"
<<"  / / \\__.-'   \n"           
<<" / /          \n"            
<<"/ /          \n"              
<<" /\n\n"

<<"Stai percorrendo il tunnel con passo costante e monotono e sei cosi' stanco da non dare piu' attenzione a quello che ti circonda.\n"
<<"Non ti accorgi dal sistema di trappole ad ascia che si attiva nel momento in cui premi la mattonella. \n"
<<"Riesci, con un riflesso animale, a schivare la lama, ma solo in parte: una lunga ferita ti attraversa il petto...\n\n"
         <<"Hai attivato una trappola!\n-4 Hp.\n"
         <<"\n";			
      break;

      case 18: case 19: 
         std::cout
         <<"Qualcosa splende sul pavimento impolverato del Labirinto: è una spada incagliata nella gabbia toracica di uno scheletro.\n" 
         <<"La sfili mentre le ossa si dissolvono in uno scricchiolio che rimbomba con eco. \n"
         <<"La spada è lucente e pare appartenuta ad un antico eroe...\n\n"
         <<"Hai trovato una spada d'argento!\n"
         <<"+4 in attacco.\n"
         <<"\n"
<<"              />\n"
<<" ()          //----------------------------------------------------.._\n"
<<"(8)OXOXOXOXO(8>|---------------------------------------------------  _:> \n"
<<" ()          \\\\----------------------------------------------------''   \n"
<<"              \\>\n\n";			
      break;

      case 20:
         std::cout 
        <<"Saranno le allucinazioni da stanchezza ma quello che ti appare davanti agli occhi non ti sembra vero. \n"
        <<"C'era una volta un gigante di nome Orione, portava con sé una grossa spada. \n"
        <<"Dava la caccia ad animali feroci con quella lama e la sua forza fece innamorare anche Diana, una dea.\n"
        <<"Quella che vedi, nascosta in un anfratto, pare una mirabile copia. La impugni con timore...\n\n"
		 <<"Hai trovato una spada magica!\n"
         <<"+5 Hp e +5 in attacco.\n"
         <<"\n"
<<"               \n"
<<"               /)     \n"          
<<"              //          \n"    
<<" _   .-------| |--------------------------------------.__\n"
<<"(_)88|WMWMWMW| |>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>:>\n"
<<"     `-------| |--------------------------------------'^^\n"
<<"              \\\\               \n"
<<"               \\)        \n"
<<"                       \n\n";
      break;
   }
   
   

   std::cout << "Premi invio per continuare ";
  
   std::cin.ignore();
   std::cin.get();

   // Stampo righe vuote per separare schermate
   for(int j=0; j < 40; j++)
      std::cout << "\n"; 
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
movl %edi, %ebx
movl $0x6, %r12d
movq 0xc3d3(%rip), %r14      # 0x11fd0
leaq 0x8c51(%rip), %r15      # 0xe855
movl $0x1, %edx
movq %r14, %rdi
movq %r15, %rsi
callq 0x2140
decl %r12d
jne 0x5c04
cmpl $0x46, %ebx
jg 0x5e0d
decl %ebx
cmpl $0x13, %ebx
ja 0x5db0
leaq 0x4548(%rip), %rax      # 0xa17c
movslq (%rax,%rbx,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movq 0xc38c(%rip), %rbx      # 0x11fd0
leaq 0x5eb7(%rip), %rsi      # 0xbb02
movl $0x58, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5efc(%rip), %rsi      # 0xbb5b
movl $0x66, %edx
jmp 0x5d94
movq 0xc360(%rip), %rbx      # 0x11fd0
leaq 0x6314(%rip), %rsi      # 0xbf8b
movl $0xe, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x630f(%rip), %rsi      # 0xbf9a
movl $0x10, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x630c(%rip), %rsi      # 0xbfab
movl $0x11, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x630a(%rip), %rsi      # 0xbfbd
movl $0x11, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6308(%rip), %rsi      # 0xbfcf
movl $0x11, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6306(%rip), %rsi      # 0xbfe1
movl $0x10, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6303(%rip), %rsi      # 0xbff2
movl $0xf, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x62ff(%rip), %rsi      # 0xc002
movl $0x10, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x62fc(%rip), %rsi      # 0xc013
movl $0xf, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x62e9(%rip), %rsi      # 0xc014
movl $0xe, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x51fe(%rip), %rsi      # 0xaf3d
movl $0x4, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x62d0(%rip), %rsi      # 0xc023
movl $0x82, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x633f(%rip), %rsi      # 0xc0a6
movl $0x67, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6393(%rip), %rsi      # 0xc10e
movl $0x73, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x52ae(%rip), %rsi      # 0xb03d
movl $0x22, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x8ab2(%rip), %rsi      # 0xe855
movl $0x1, %edx
movq %rbx, %rdi
callq 0x2140
movq 0xc219(%rip), %rbx      # 0x11fd0
leaq 0x6587(%rip), %rsi      # 0xc345
movl $0x1b, %edx
movq %rbx, %rdi
callq 0x2140
movq 0xc20e(%rip), %r14      # 0x11fe0
movq %r14, %rdi
callq 0x2230
movq %r14, %rdi
callq 0x2160
movl $0x28, %r15d
leaq 0x8a66(%rip), %r14      # 0xe855
movl $0x1, %edx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2140
decl %r15d
jne 0x5def
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
cmpl $0x5a, %ebx
jg 0x5e4c
cmpl $0x47, %ebx
je 0x617a
cmpl $0x48, %ebx
jne 0x5db0
movq 0xc1a9(%rip), %rbx      # 0x11fd0
leaq 0x5c0c(%rip), %rsi      # 0xba3a
movl $0x82, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5ea4(%rip), %rsi      # 0xbce6
movl $0x29, %edx
jmp 0x61b5
cmpl $0x5b, %ebx
je 0x62be
cmpl $0x5c, %ebx
jne 0x5db0
movq 0xc16b(%rip), %rbx      # 0x11fd0
leaq 0x5f4f(%rip), %rsi      # 0xbdbb
movl $0x5a, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5f96(%rip), %rsi      # 0xbe16
movl $0x71, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5ff4(%rip), %rsi      # 0xbe88
movl $0x21, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x89ad(%rip), %rsi      # 0xe855
movl $0x1, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5fee(%rip), %rsi      # 0xbeaa
movl $0x12, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5fed(%rip), %rsi      # 0xbebd
movl $0x36, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6010(%rip), %rsi      # 0xbef4
movl $0x37, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6034(%rip), %rsi      # 0xbf2c
movl $0x37, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6058(%rip), %rsi      # 0xbf64
movl $0x12, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6057(%rip), %rsi      # 0xbf77
movl $0x13, %edx
jmp 0x5da8
movq 0xc09f(%rip), %rbx      # 0x11fd0
leaq 0x476b(%rip), %rsi      # 0xa6a3
movl $0x7a, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x47d2(%rip), %rsi      # 0xa71e
movl $0x51, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x4810(%rip), %rsi      # 0xa770
movl $0x3d, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x4969(%rip), %rsi      # 0xa8dd
movl $0x21, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x4977(%rip), %rsi      # 0xa8ff
movl $0xf, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x88b9(%rip), %rsi      # 0xe855
movl $0x1, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x495f(%rip), %rsi      # 0xa90f
movl $0x11, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x495d(%rip), %rsi      # 0xa921
movl $0x47, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x4991(%rip), %rsi      # 0xa969
movl $0x4a, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x49c8(%rip), %rsi      # 0xa9b4
movl $0x49, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x49fe(%rip), %rsi      # 0xa9fe
movl $0x12, %edx
jmp 0x5da8
movq 0xbfbf(%rip), %rbx      # 0x11fd0
leaq 0x49f9(%rip), %rsi      # 0xaa11
movl $0x67, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6156(%rip), %rsi      # 0xc182
movl $0x4e, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x4a8e(%rip), %rsi      # 0xaace
movl $0x66, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x4ae1(%rip), %rsi      # 0xab35
movl $0x5d, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6169(%rip), %rsi      # 0xc1d1
movl $0x1e, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6174(%rip), %rsi      # 0xc1f0
movl $0x17, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x87c5(%rip), %rsi      # 0xe855
movl $0x1, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x8445(%rip), %rsi      # 0xe4e9
movl $0x10, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6150(%rip), %rsi      # 0xc208
movl $0x17, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6154(%rip), %rsi      # 0xc220
movl $0x1b, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x615c(%rip), %rsi      # 0xc23c
movl $0x3a, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x6183(%rip), %rsi      # 0xc277
movl $0x3c, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x61ac(%rip), %rsi      # 0xc2b4
movl $0x3a, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x61d3(%rip), %rsi      # 0xc2ef
movl $0x20, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x61e0(%rip), %rsi      # 0xc310
movl $0x1a, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x61e7(%rip), %rsi      # 0xc32b
movl $0x19, %edx
jmp 0x5da8
movq 0xbe7b(%rip), %rbx      # 0x11fd0
leaq 0x5a66(%rip), %rsi      # 0xbbc2
movl $0x71, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5ac4(%rip), %rsi      # 0xbc34
movl $0x36, %edx
jmp 0x62e5
movq 0xbe4f(%rip), %rbx      # 0x11fd0
leaq 0x5723(%rip), %rsi      # 0xb8ab
movl $0x63, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5773(%rip), %rsi      # 0xb90f
movl $0x82, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5b2e(%rip), %rsi      # 0xbcde
movl $0x7, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x8691(%rip), %rsi      # 0xe855
movl $0x1, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x57db(%rip), %rsi      # 0xb9b3
movl $0x8, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x57d0(%rip), %rsi      # 0xb9bc
movl $0x9, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x57c6(%rip), %rsi      # 0xb9c6
movl $0x9, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x57bc(%rip), %rsi      # 0xb9d0
movl $0x8, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x57b1(%rip), %rsi      # 0xb9d9
movl $0x9, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x57a7(%rip), %rsi      # 0xb9e3
movl $0xa, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x579e(%rip), %rsi      # 0xb9ee
movl $0xb, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5796(%rip), %rsi      # 0xb9fa
movl $0xc, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x578f(%rip), %rsi      # 0xba07
movl $0xc, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5788(%rip), %rsi      # 0xba14
movl $0xc, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5781(%rip), %rsi      # 0xba21
movl $0xb, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5779(%rip), %rsi      # 0xba2d
movl $0xc, %edx
jmp 0x5da8
movq 0xbd0b(%rip), %rbx      # 0x11fd0
leaq 0x5a44(%rip), %rsi      # 0xbd10
movl $0x6f, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5aa0(%rip), %rsi      # 0xbd80
movl $0x3a, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x8561(%rip), %rsi      # 0xe855
movl $0x1, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5963(%rip), %rsi      # 0xbc6b
movl $0xd, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x595d(%rip), %rsi      # 0xbc79
movl $0xd, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5957(%rip), %rsi      # 0xbc87
movl $0xd, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5951(%rip), %rsi      # 0xbc95
movl $0xd, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x594b(%rip), %rsi      # 0xbca3
movl $0xd, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5945(%rip), %rsi      # 0xbcb1
movl $0xc, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x593e(%rip), %rsi      # 0xbcbe
movl $0xb, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x5936(%rip), %rsi      # 0xbcca
movl $0xa, %edx
movq %rbx, %rdi
callq 0x2140
leaq 0x592d(%rip), %rsi      # 0xbcd5
movl $0x8, %edx
jmp 0x5da8