import processing.core.*; 
import processing.data.*; 
import processing.event.*; 
import processing.opengl.*; 

import processing.sound.*; 

import java.util.HashMap; 
import java.util.ArrayList; 
import java.io.File; 
import java.io.BufferedReader; 
import java.io.PrintWriter; 
import java.io.InputStream; 
import java.io.OutputStream; 
import java.io.IOException; 

public class HeadLess extends PApplet {


SoundFile soncle;
SoundFile music;
SoundFile porte;
SoundFile decap;
int emplacementJoueur = 0;
int headc=1;
int timer;
int cdcdc=0;
int t=15;
boolean cle=false;
boolean head = false;
boolean wolfhead = false;
boolean rabbithead = false;
boolean AA = true; //prevents unholy super speed
int regard = 0;
int [] cooJoueur={2,2};
int lapins[][] = {{1,3,4},{1,5,6},{1,8,4},{1,11,2},{1,2,4}};
int loups[][] = {{2,12,6},{2,9,5}};
ArrayList<Boolean> Lapins = new ArrayList();
PImage begin, cave, terrier, loup, fin, perso, clei, persoL, persoR, WH1L, WH1B, WH1R, walkL, walkR, walk,
LF, LJ, HitL, HitR, wolf,
d1rr,d1rl,d1rb,d2rr,d2rl,d2rb,d3rr,d3rl,d3rb,
d2wr,d2wl,d2wb,d3wr,d3wl,d3wb,
d1hr,d2hr,d3hr,
zero,un,deux,trois,quatre,cinq,six,sept,huit,neuf;
int[][][] tab1col ={{
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, 
{1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1},
{1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1},
{1,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0},
{1,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1},
{1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}},
{
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, 
{1,0,0,1,0,0,1,0,0,0,0,0,0,1,1,1},
{1,0,0,0,0,1,0,1,0,0,0,0,0,0,0,1},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,1,0,0,0,0,0,0,0,0,0,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}},
{
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, 
{1,1,1,0,0,0,1,1,0,1,0,0,0,0,0,1},
{1,1,0,0,1,0,0,0,0,1,0,0,1,1,0,1},
{1,1,0,1,1,1,1,1,1,1,1,0,1,0,0,1},
{1,0,0,0,1,0,0,0,1,0,0,0,1,0,1,1},
{1,0,1,0,0,0,1,0,0,0,0,1,1,0,0,1},
{1,0,1,1,1,1,1,1,1,1,0,1,0,1,0,1},
{1,0,0,0,0,0,1,0,0,0,0,1,0,0,0,1},
{1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1}},
{
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, 
{1,1,1,0,0,1,1,0,0,1,0,0,0,1,1,1},
{1,1,0,0,0,1,1,1,0,0,0,0,0,0,1,1},
{0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,1},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1},
{1,1,1,0,0,0,1,0,0,1,0,0,0,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}},
{
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, 
{1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1},
{1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1}}};

public void setup(){
  begin=loadImage("HeadLoss-2.png.png");
  cave=loadImage("HeadLoss-3.png.png");
  terrier=loadImage("HeadLoss-4.png.png");
  loup=loadImage("HeadLoss-5.png.png");
  fin=loadImage("HeadLoss-6.png.png");
  perso=loadImage("SprFix.png");
  clei=loadImage("cle.png");
  persoL = loadImage("SprL.png");
  persoR = loadImage("SprR.png");
  LF = loadImage("LpinF.png");
  LJ = loadImage("LpinJ.png");
  wolf = loadImage("Wolf.png");
  HitL = loadImage("Hit.png");
  HitR = loadImage("HitR.png");
  WH1L = loadImage("WolfH1L.png");
  WH1R = loadImage("WolfH1R.png");
  WH1B = loadImage("WolfH1back.png");
  d2wr=loadImage("d2wr.png");
  d2wl=loadImage("d2wl.png");
  d2wb=loadImage("d2wb.png");
  d3wr=loadImage("d3wr.png");
  d3wl=loadImage("d3wl.png");
  d3wb=loadImage("d3wb.png");
  
  d1rr=loadImage("d1rr.png");
  d1rl=loadImage("d1rl.png");
  d1rb=loadImage("d1rb.png");
  d2rr=loadImage("d2rr.png");
  d2rl=loadImage("d2rl.png");
  d2rb=loadImage("d2rb.png");
  d3rr=loadImage("d3rr.png");
  d3rl=loadImage("d3rl.png");
  d3rb=loadImage("d3rb.png");
  
  d1hr=loadImage("d1hr.png");
  d2hr=loadImage("d2hr.png");
  d3hr=loadImage("d3hr.png");
  walkL = loadImage("SprWalkL.png");
  walkR = loadImage("SprWalkR.png");
  walk = loadImage("SprWalk.png");
  zero=loadImage("0.png");
  un=loadImage("1.png");
  deux=loadImage("2.png");
  trois=loadImage("3.png");
  quatre=loadImage("4.png");
  cinq=loadImage("5.png");
  six=loadImage("6.png");
  sept=loadImage("7.png");
  huit=loadImage("8.png");
  neuf=loadImage("9.png");
  frameRate(15);
  
  soncle = new SoundFile(this,"soncle.wav");
  decap = new SoundFile(this,"decap.wav");
  music = new SoundFile(this,"song.wav");
  porte= new SoundFile(this,"porte.wav");
  music.loop();
}
public void draw(){
  terrain();
  if (head==true){
    int m=millis();
    if (headc==1){
      print("0");
      lafin1();
    }
    if (headc==2){
      while (millis()-m<2000){}
      print("1");
      lafin2();
    }
    if (headc==3){
      while (millis()-m<2000){}
      print("2");
      lafin3();
      print("3");
      while (millis()-m<2500){}
      exit();
    }
    headc++;
   }
  else{
  int sec=millis()/1000;
  timer=t-sec;
  posJoueur();
  timer();
  }
}
public void timer(){
  if (head==false){  
    if (timer/10==1){
      image(un,0,0);
      if(timer-10==0){image(zero,50,0);}
      if(timer-10==1){image(un,50,0);}
      if(timer-10==2){image(deux,50,0);}
      if(timer-10==3){image(trois,50,0);}
      if(timer-10==4){image(quatre,50,0);}
      if(timer-10==5){image(cinq,50,0);}
      if(timer-10==6){image(six,50,0);}
      if(timer-10==7){image(sept,50,0);}
      if(timer-10==8){image(huit,50,0);}
      if(timer-10==9){image(neuf,50,0);}
    }
    else if (timer/10==0){
      image(zero,0,0);
      if(timer==0){
        image(zero,50,0);
        if (head==false&&wolfhead==false&&rabbithead==false){
          exit();
        }        
        else if (wolfhead==true){
          wolfhead=false;
          t+=15;
        }
        else if (rabbithead==true){
          t+=15;
          delay(1000);
          rabbithead=false;
        }
      }
      if(timer==1){image(un,50,0);}
      if(timer==2){image(deux,50,0);}
      if(timer==3){image(trois,50,0);}
      if(timer==4){image(quatre,50,0);}
      if(timer==5){image(cinq,50,0);}
      if(timer==6){image(six,50,0);}
      if(timer==7){image(sept,50,0);}
      if(timer==8){image(huit,50,0);}
      if(timer==9){image(neuf,50,0);}
    }
  }
}
public void keyPressed(){
  //coo 0 = x, coo 1 = y
  if (head==false){
    if (AA == true){
    //W
    if (key==119){
      regard = 0;
      if(tab1col[emplacementJoueur][cooJoueur[1]-1][cooJoueur[0]]!=1){
        cooJoueur[1]--;
        
        //println(cooJoueur[1]);
        //println(tab1col[emplacementJoueur][cooJoueur[1]]);
      }
    }
    //S
    if (key==115){
      regard = 4;
      if(tab1col[emplacementJoueur][cooJoueur[1]+1][cooJoueur[0]]!=1){
        cooJoueur[1]++;
        
        //println(cooJoueur[1]);
        //println(tab1col[emplacementJoueur][cooJoueur[1]]);
      }
    }
    //A
    if (key==97){
      regard = 1;
      terrain();
      image(walkL,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        if(timer>=10){  
          image(WH1L,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
        if(timer<10&&timer>=5){  
          image(d2wl,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
        if(timer<5){  
          image(d3wl,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
      }
      if (rabbithead == true){
        if(timer>=10){  
          image(d1rl,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
        if(timer<10&&timer>=5){  
          image(d2rl,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
        if(timer<5){  
          image(d3rl,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
      }
      if(tab1col[emplacementJoueur][cooJoueur[1]][cooJoueur[0]-1]!=1){
        cooJoueur[0]--;
        
        //println(cooJoueur[0]);
        //println(tab1col[emplacementJoueur][cooJoueur[1]]);
      }
    }
    //D
    if (key==100){
      regard = 2;
      terrain();
      image(walkR,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        if(timer>=10){  
          image(WH1R,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
        if(timer<10&&timer>=5){  
          image(d2wr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
        if(timer<5){  
          image(d3wr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
      }
      if (rabbithead == true){
        if(timer>=10){  
          image(d1rr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
        if(timer<10&&timer>=5){  
          image(d2rr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
        if(timer<5){  
          image(d3rr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
        }
      }
      if(tab1col[emplacementJoueur][cooJoueur[1]][cooJoueur[0]+1]!=1 && cooJoueur[0]+1 <16){
        cooJoueur[0]++;
        
        //println(cooJoueur[0]);
        //println(tab1col[emplacementJoueur][cooJoueur[1]]);
      }
    }
    
  if(key == 32){
    kill();
  }
    
    AA = false;
    }
  }
}
public void kill(){
    if(regard == 0){
      if(emplacementJoueur == 0){
      if(lapins[0][1]==cooJoueur[0] && (lapins[0][2]==cooJoueur[1]||lapins[0][2]==cooJoueur[1]-1) ){
      lapins[0][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(lapins[1][1]==cooJoueur[0] && (lapins[1][2]==cooJoueur[1]||lapins[1][2]==cooJoueur[1]-1) ){
      lapins[1][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
      }
      
    if(emplacementJoueur == 1){
      if(lapins[2][1]==cooJoueur[0] && (lapins[2][2]==cooJoueur[1]||lapins[2][2]==cooJoueur[1]-1) ){
      lapins[2][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(loups[0][1]==cooJoueur[0] && (loups[0][2]==cooJoueur[1]||loups[0][2]==cooJoueur[1]-1) ){
      loups[0][0]--;
      terrain();
      t+=(20-timer);
      decap.play();
      rabbithead=false;
      wolfhead=true;
      //WOLF HEAD HERE
    }
      }
      
    if(emplacementJoueur == 2){
      if(lapins[3][1]==cooJoueur[0] && (lapins[3][2]==cooJoueur[1]||lapins[3][2]==cooJoueur[1]-1) ){
      lapins[3][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(lapins[4][1]==cooJoueur[0] && (lapins[4][2]==cooJoueur[1]||lapins[4][2]==cooJoueur[1]-1) ){
      lapins[4][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }

      }
     if(emplacementJoueur == 3){

    if(loups[1][1]==cooJoueur[0] && (loups[1][2]==cooJoueur[1]||loups[1][2]==cooJoueur[1]-1) ){
      loups[1][0]--;
      terrain();
      t+=(20-timer);
      decap.play();
      rabbithead=false;
      wolfhead=true;
      //WOLF HEAD HERE
    }
      }
    terrain();
    image(HitR,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
    } //end if regard  0
    //------------------------------------------------------------------------------------------------------------------------
        if(regard == 1){
      if(emplacementJoueur == 0){
      if(lapins[0][2]==cooJoueur[1] && (lapins[0][1]==cooJoueur[0]||lapins[0][1]==cooJoueur[0]-1) ){
      lapins[0][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(lapins[1][2]==cooJoueur[1] && (lapins[1][1]==cooJoueur[0]||lapins[1][1]==cooJoueur[0]-1) ){
      lapins[1][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
      }
      
    if(emplacementJoueur == 1){
      if(lapins[2][2]==cooJoueur[1] && (lapins[2][1]==cooJoueur[0]||lapins[2][1]==cooJoueur[0]-1)) {
      lapins[2][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
      if(loups[0][2]==cooJoueur[1] && (loups[0][1]==cooJoueur[0]||loups[0][1]==cooJoueur[0]-1)) {
      loups[0][0]--;
      terrain();
      t+=(20-timer);
      decap.play();
      rabbithead=false;
      wolfhead=true;

      //WOLF HEAD HERE
    }
      }
      
    if(emplacementJoueur == 2){
      if(lapins[3][2]==cooJoueur[1] && (lapins[3][1]==cooJoueur[0]||lapins[3][1]==cooJoueur[0]-1) ){
      lapins[3][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(lapins[4][2]==cooJoueur[1] && (lapins[4][1]==cooJoueur[0]||lapins[4][1]==cooJoueur[0]-1) ){
      lapins[4][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
      }
    if(emplacementJoueur == 3){

      if(loups[1][2]==cooJoueur[1] && (loups[1][1]==cooJoueur[0]||loups[1][1]==cooJoueur[0]-1)) {
      loups[1][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      rabbithead=false;
      wolfhead=true;
   
      //WOLF HEAD HERE
    }
      }
    terrain();
    image(HitL,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
    } //end if regard  1
    
    //------------------------------------------------------------------------------------------------------------------
    
     if(regard == 2){
      if(emplacementJoueur == 0){
      if(lapins[0][2]==cooJoueur[1] && (lapins[0][1]==cooJoueur[0]||lapins[0][1]==cooJoueur[0]+1) ){
      lapins[0][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(lapins[1][2]==cooJoueur[1] && (lapins[1][1]==cooJoueur[0]||lapins[1][1]==cooJoueur[0]+1) ){
      lapins[1][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
      }
      
    if(emplacementJoueur == 1){
      if(lapins[2][2]==cooJoueur[1] && (lapins[2][1]==cooJoueur[0]||lapins[2][1]==cooJoueur[0]+1) ){
      lapins[2][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(loups[0][2]==cooJoueur[1] && (loups[0][1]==cooJoueur[0]||loups[0][1]==cooJoueur[0]+1) ){
      loups[0][0]--;
      terrain();
      t+=(20-timer);
      decap.play();
      rabbithead=false;
      wolfhead=true;
  
      //WOLF HEAD HERE
    }
      }
      
    if(emplacementJoueur == 2){
      if(lapins[3][2]==cooJoueur[1] && (lapins[3][1]==cooJoueur[0]||lapins[3][1]==cooJoueur[0]+1) ){
      lapins[3][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(lapins[4][2]==cooJoueur[1] && (lapins[4][1]==cooJoueur[0]||lapins[4][1]==cooJoueur[0]+1) ){
      lapins[4][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
      }
     if(emplacementJoueur == 3){

    if(loups[1][2]==cooJoueur[1] && (loups[1][1]==cooJoueur[0]||loups[1][1]==cooJoueur[0]+1) ){
      loups[1][0]--;
      terrain();
      t+=(20-timer);
      decap.play();
      rabbithead=false;
      wolfhead=true;
 
      //WOLF HEAD HERE
    }
      }
    terrain();
    image(HitR,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
    } //end if regard  2
    //------------------------------------------------------------------------------------------------------------------------
     if(regard == 4){
      if(emplacementJoueur == 0){
      if(lapins[0][1]==cooJoueur[0] && (lapins[0][2]==cooJoueur[1]||lapins[0][2]==cooJoueur[1]+1) ){
      lapins[0][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(lapins[1][1]==cooJoueur[0] && (lapins[1][2]==cooJoueur[1]||lapins[1][2]==cooJoueur[1]+1) ){
      lapins[1][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
      }
      
    if(emplacementJoueur == 1){
      if(lapins[2][1]==cooJoueur[0] && (lapins[2][2]==cooJoueur[1]||lapins[2][2]==cooJoueur[1]+1)) {
      lapins[2][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(loups[0][1]==cooJoueur[0] && (loups[0][2]==cooJoueur[1]||loups[0][2]==cooJoueur[1]+1)) {
      loups[0][0]--;
      terrain();
      t+=(20-timer);
      decap.play();
      rabbithead=false;
      wolfhead=true;

      //WOLF HEAD HERE
    }
      }
      
    if(emplacementJoueur == 2){
      if(lapins[3][1]==cooJoueur[0] && (lapins[3][2]==cooJoueur[1]||lapins[3][2]==cooJoueur[1]+1) ){
      lapins[3][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
    if(lapins[4][1]==cooJoueur[0] && (lapins[4][2]==cooJoueur[1]||lapins[4][2]==cooJoueur[1]+1) ){
      lapins[4][0]--;
      terrain();
      t+=(15-timer);
      decap.play();
      wolfhead=false;
      rabbithead=true;
      //RABBIT HEAD HERE
    }
      }
     if(emplacementJoueur == 3){
      if(loups[1][1]==cooJoueur[0] && (loups[1][2]==cooJoueur[1]||loups[1][2]==cooJoueur[1]+1)) {
      loups[1][0]--;
      terrain();
      t+=(20-timer);
      decap.play();
      rabbithead=false;
      wolfhead=true;
      

      //WOLF HEAD HERE
    }
 
      }
    terrain();
    image(HitL,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
    } //end if regard  4
    
    //------------------------------------------------------------------------------------------------------------------

}// end void kill
public void lafin1(){
  
  image(perso,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
  image(d1hr,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
}
public void lafin2(){

  image(perso,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
  image(d2hr,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
}
public void lafin3(){

  image(perso,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
  image(d3hr,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
}
public void lapin(){
    int X;
    int Y;

   if(emplacementJoueur==0){
    if(lapins[0][0] > 0){
    
        X=(int)random(-2,2);
        Y=(int)random(-2,2);

        if(tab1col[emplacementJoueur][lapins[0][2]+Y][lapins[0][1]+X] !=1 && lapins[0][1]+X <15 && lapins[0][1]+X != lapins[1][1]  && lapins[0][2]+Y != lapins[1][2] ){
        
        
        lapins[0][1]+=X;
        lapins[0][2]+=Y;

        }
        image(LF,lapins[0][1]*10*(displayWidth/160),lapins[0][2]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      }

    if(lapins[1][0] > 0){
          
        X=(int)random(-2,2);
        Y=(int)random(-2,2);

        if(tab1col[emplacementJoueur][lapins[1][2]+Y][lapins[1][1]+X] !=1 && lapins[1][1]+X <15 && lapins[1][1]+X != lapins[0][1] && lapins[1][2]+Y != lapins[0][2]){
        
        
        lapins[1][1]+=X;
        lapins[1][2]+=Y;

        }
 
 
    image(LF,lapins[1][1]*10*(displayWidth/160),lapins[1][2]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
    }
  }
    if(emplacementJoueur==1){
    if(lapins[2][0] > 0){
          
        X=(int)random(-2,2);
        Y=(int)random(-2,2);

        if(tab1col[emplacementJoueur][lapins[2][2]+Y][lapins[2][1]+X] !=1 && lapins[2][1]+X <15 && lapins[2][1]>1){
        
        
        lapins[2][1]+=X;
        lapins[2][2]+=Y;

        }

    image(LF,lapins[2][1]*10*(displayWidth/160),lapins[2][2]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
    } 
  }
    if(emplacementJoueur==2){
      if(lapins[3][0] > 0){
                  
        X=(int)random(-2,2);
        Y=(int)random(-2,2);

        if(tab1col[emplacementJoueur][lapins[3][2]+Y][lapins[3][1]+X] !=1 && lapins[3][2]+Y <8){
        
        
        lapins[3][1]+=X;
        lapins[3][2]+=Y;

        }

    image(LF,lapins[3][1]*10*(displayWidth/160),lapins[3][2]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
    }
    if(lapins[4][0] > 0){
                
        X=(int)random(-2,2);
        Y=(int)random(-2,2);

        if(tab1col[emplacementJoueur][lapins[4][2]+Y][lapins[4][1]+X] !=1 && lapins[4][2]+Y <8){
        
        
        lapins[4][1]+=X;
        lapins[4][2]+=Y;

        }

    image(LF,lapins[4][1]*10*(displayWidth/160),lapins[4][2]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
    }
  }


  }
  
public void wolves(){

if (emplacementJoueur == 1 && loups[0][0]>0){

    if(cooJoueur[0]>loups[0][1] && loups[0][1]+1 <15 && tab1col[emplacementJoueur][loups[0][2]][loups[0][1]+1] !=1){
      loups[0][1]++;
    }else if (cooJoueur[0]<loups[0][1] && loups[0][1]-1 >0 && tab1col[emplacementJoueur][loups[0][2]][loups[0][1]-1] !=1){
      loups[0][1]--;
    }

    if(cooJoueur[1]>loups[0][2] && loups[0][2]+1 <8 && tab1col[emplacementJoueur][loups[0][2]+1][loups[0][1]] !=1){
      loups[0][2]++;
    }else if (cooJoueur[1]<loups[0][2] && loups[0][2]-1 <8 && tab1col[emplacementJoueur][loups[0][2]-1][loups[0][1]] !=1){
      loups[0][2]--;
    }
  image(wolf,loups[0][1]*10*(displayWidth/160),loups[0][2]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
  
}

if (emplacementJoueur == 3 && loups[1][0]>0){

    if(cooJoueur[0]>loups[1][1] && loups[1][1]+1 <15 && tab1col[emplacementJoueur][loups[1][2]][loups[1][1]+1] !=1){
      loups[1][1]++;
    }else if (cooJoueur[0]<loups[1][1] && loups[1][1]-1 >0 && tab1col[emplacementJoueur][loups[1][2]][loups[1][1]-1] !=1){
      loups[1][1]--;
    }

    if(cooJoueur[1]>loups[1][2] && loups[1][2]+1 <8 && tab1col[emplacementJoueur][loups[1][2]+1][loups[1][1]] !=1){
      loups[1][2]++;
    }else if (cooJoueur[1]<loups[1][2] && loups[1][2]-1 <8 && tab1col[emplacementJoueur][loups[1][2]-1][loups[1][1]] !=1){
      loups[1][2]--;
    }
  image(wolf,loups[1][1]*10*(displayWidth/160),loups[1][2]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
  
}
  
}
public void posJoueur(){
  if(timer>=10){
    if (regard == 0){
      image(perso,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        image(WH1B,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
      if (rabbithead == true){
        image(d1rb,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
    }
    if (regard == 1){
      image(persoL,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        image(WH1L,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
      if (rabbithead == true){
        image(d1rl,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
    }
    if (regard == 2){
      image(persoR,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        image(WH1R,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
      if (rabbithead == true){
        image(d1rr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
    }
   if (regard == 4){
     image(perso,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
     if (wolfhead == true){
       image(WH1R,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
     }
     if (rabbithead == true){
       image(d1rr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
     }
   }
 }
 if(timer<10&&timer>=5){
    if (regard == 0){
      image(perso,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        image(d2wb,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
      if (rabbithead == true){
        image(d2rb,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
    }
    if (regard == 1){
      image(persoL,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        image(d2wl,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
      if (rabbithead == true){
        image(d2rl,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
    }
    if (regard == 2){
      image(persoR,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        image(d2wr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
      if (rabbithead == true){
        image(d2rr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
    }
   if (regard == 4){
     image(perso,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
     if (wolfhead == true){
       image(d2wr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
     }
     if (rabbithead == true){
       image(d2rr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
     }
   }
 }
 if(timer<5){
    if (regard == 0){
      image(perso,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        image(d3wb,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
      if (rabbithead == true){
        image(d3rb,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
    }
    if (regard == 1){
      image(persoL,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        image(d3wl,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
      if (rabbithead == true){
        image(d3rl,cooJoueur[0]*10*(displayWidth/160)-20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
    }
    if (regard == 2){
      image(persoR,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
      if (wolfhead == true){
        image(d3wr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
      if (rabbithead == true){
        image(d3rr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
      }
    }
   if (regard == 4){
     image(perso,cooJoueur[0]*10*(displayWidth/160),cooJoueur[1]*10*(displayHeight/90),displayWidth/16,displayHeight/9);
     if (wolfhead == true){
       image(d3wr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
     }
     if (rabbithead == true){
       image(d3rr,cooJoueur[0]*10*(displayWidth/160)+20,cooJoueur[1]*10*(displayHeight/90)-80,displayWidth/16,displayHeight/9);
     }
   }
 }
 AA = true;
}
public void terrain(){
    if (emplacementJoueur == 0){
    image(begin,0,0,displayWidth,displayHeight);
    if (cooJoueur[0]>14 && cooJoueur[1]<=5 && cooJoueur[1]>=3){
      emplacementJoueur = 1;
      cooJoueur[0]= 1;
    }    
  }
  if (emplacementJoueur == 1){
    image(cave,0,0,displayWidth,displayHeight);
    if (cooJoueur[0]<1 && cooJoueur[1]<=5 && cooJoueur[1]>=3){
      emplacementJoueur = 0;
      cooJoueur[0]= 14;
    }    
    if (cooJoueur[0]>=6 && cooJoueur[0]<7 && cooJoueur[1]>=2&&cooJoueur[1]<3){
      emplacementJoueur = 2;
      cooJoueur[0]= 8;
      cooJoueur[1]= 7;
    }    
    if (cooJoueur[0]>14 && cooJoueur[1]<=5 && cooJoueur[1]>=3){
      emplacementJoueur = 3;
      cooJoueur[0]= 1;
    }
  }
  if (emplacementJoueur == 2){
    image(terrier,0,0,displayWidth,displayHeight);
    if (cle==false){
      image(clei,50*displayWidth/160,10*displayHeight/90);
    }
    if (cooJoueur[0]>=7 && cooJoueur[0]<9 && cooJoueur[1]>=8){
      emplacementJoueur = 1;
      cooJoueur[0]= 6;
      cooJoueur[1]= 3;
    }
    if (cooJoueur[0]>=5 && cooJoueur[0]<6 && cooJoueur[1]>=1 && cooJoueur[1]<=2){
      if (cle==false){
        soncle.play();
      }
      cle=true;
    }
  }
  if (emplacementJoueur == 3){
    image(loup,0,0,displayWidth,displayHeight);
    if (cooJoueur[0]<1 && cooJoueur[1]<=5 && cooJoueur[1]>=3){
      emplacementJoueur = 1;
      cooJoueur[0]= 14;
    }    
    if (cooJoueur[0]>=6 && cooJoueur[0]<7 && cooJoueur[1]>=3&&cooJoueur[1]<4&&cle==true){
      porte.play();
      emplacementJoueur = 4;
      cooJoueur[0]= 8;
      cooJoueur[1]= 7;
    }    
  }
  if (emplacementJoueur == 4){
   image(fin,0,0,displayWidth,displayHeight);
    if (cooJoueur[0]>=7 && cooJoueur[0]<9 && cooJoueur[1]>=4&&cooJoueur[1]<5){
      head=true;
    }
    if (head==false){
      image(d1hr,75*displayWidth/160,25*displayHeight/90);
    }
    if (cooJoueur[0]>=7 && cooJoueur[0]<9 && cooJoueur[1]>=8){
      emplacementJoueur = 3;
      cooJoueur[0]= 6;
      cooJoueur[1]= 4;
    }
  }
  lapin();
  wolves();
  
}
  public void settings() {  fullScreen(); }
  static public void main(String[] passedArgs) {
    String[] appletArgs = new String[] { "HeadLess" };
    if (passedArgs != null) {
      PApplet.main(concat(appletArgs, passedArgs));
    } else {
      PApplet.main(appletArgs);
    }
  }
}
