Guest User

Untitled

a guest
Oct 22nd, 2018
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.74 KB | None | 0 0
  1. package com.example.monprojetjeu.ImageAnimee;
  2.  
  3. import org.anddev.andengine.entity.primitive.Rectangle;
  4. import org.anddev.andengine.entity.scene.Scene;
  5. import org.anddev.andengine.ui.activity.BaseGameActivity;
  6.  
  7. import android.util.Log;
  8.  
  9.  
  10. public class Personnage extends ImageAnimee
  11. {
  12.     private int vie;
  13.     private int limite_vie;
  14.     private float ratioBase;
  15.     private Rectangle barreDeVie;
  16.     private Rectangle interieur;
  17.    
  18.     public Personnage(BaseGameActivity activity, int pWidth, int pHeight,
  19.             String nameSprite, int nbColonne, int nbLines, int movementTime, int vie) {
  20.         super(activity, pWidth, pHeight, nameSprite, nbColonne, nbLines, movementTime);
  21.         this.vie = vie;
  22.         this.limite_vie = Integer.MAX_VALUE;
  23.  
  24.     }
  25.  
  26.     public Personnage(Personnage p)
  27.     {
  28.         super(p);
  29.         this.vie = p.vie;
  30.         this.limite_vie = p.limite_vie;
  31.     }
  32.    
  33.     public void setLimiteVie(int limite)
  34.     {
  35.         this.limite_vie = limite;
  36.     }
  37.    
  38.     public int getVie()
  39.     {
  40.         return this.vie;
  41.     }
  42.    
  43.     public boolean isAlive()
  44.     {
  45.         return this.vie > 0;
  46.     }
  47.    
  48.     public void recevoirDegats(int degats)
  49.     {
  50.         this.vie-=degats;
  51.         if(vie < 0)
  52.         {
  53.             vie = 0;
  54.         }
  55.         this.miseAJourVie();
  56.     }
  57.    
  58.     public void rajouter_vie(int supplement)
  59.     {
  60.         vie += supplement;
  61.         if(vie > limite_vie)
  62.         {
  63.             vie = limite_vie;
  64.         }
  65.         this.miseAJourVie();
  66.     }
  67.    
  68.     @Override
  69.     public void launch(Scene scene,int x, int y)
  70.     {
  71.         super.launch(scene,x,y);
  72.        
  73.         this.barreDeVie =  new Rectangle(x, y - getSprite().getHeight()/10, this.getSprite().getWidth(), this.getSprite().getHeight()/10);
  74.         Log.v( this.getClass().getSimpleName() + " NAME", this.getClass().getSimpleName() + " NAME");
  75.        
  76.         this.ratioBase = this.barreDeVie.getWidth() / vie;
  77.         Log.v("PERSONNAGE", "LAUNCH");
  78.         Log.v("PERSONNAGE", "RATIO_BASE:" + this.ratioBase);
  79.         Log.v("PERSONNAGE", "WITDH BDV:" + this.barreDeVie.getWidth());
  80.         Log.v("PERSONNAGE", "HEIGHT BDV:" + this.barreDeVie.getHeight());
  81.         Log.v("PERSONNAGE", "WITDH BDV:" + this.barreDeVie.getWidth());
  82.            
  83.         interieur = new Rectangle(this.barreDeVie.getX(),this.barreDeVie.getY(),ratioBase*this.vie,this.barreDeVie.getHeight());
  84.         interieur.setColor(1f,0f,0f);
  85.         scene.attachChild(barreDeVie); 
  86.         scene.attachChild(interieur);  
  87.     }
  88.  
  89.     private void miseAJourVie()
  90.     {
  91.         this.getScene().detachChild(interieur);
  92.         interieur = new Rectangle(this.barreDeVie.getX(),this.barreDeVie.getY(),ratioBase*this.vie,this.barreDeVie.getHeight());
  93.         interieur.setColor(1f,0f,0f);
  94.         this.getScene().attachChild(interieur);
  95.         Log.v("Changement vie","Vie : " + vie);
  96.     }
  97.    
  98.     @Override
  99.     public Object clone()
  100.     {
  101.         return new Personnage(this);
  102.     }
  103.    
  104.     @Override
  105.     public void stop()
  106.     {
  107.         super.stop();
  108.         this.getScene().detachChild(barreDeVie);
  109.         this.getScene().detachChild(this.interieur);
  110.     }
  111. }
Add Comment
Please, Sign In to add comment