Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.monprojetjeu.ImageAnimee;
- import org.anddev.andengine.entity.primitive.Rectangle;
- import org.anddev.andengine.entity.scene.Scene;
- import org.anddev.andengine.ui.activity.BaseGameActivity;
- import android.util.Log;
- public class Personnage extends ImageAnimee
- {
- private int vie;
- private int limite_vie;
- private float ratioBase;
- private Rectangle barreDeVie;
- private Rectangle interieur;
- public Personnage(BaseGameActivity activity, int pWidth, int pHeight,
- String nameSprite, int nbColonne, int nbLines, int movementTime, int vie) {
- super(activity, pWidth, pHeight, nameSprite, nbColonne, nbLines, movementTime);
- this.vie = vie;
- this.limite_vie = Integer.MAX_VALUE;
- }
- public Personnage(Personnage p)
- {
- super(p);
- this.vie = p.vie;
- this.limite_vie = p.limite_vie;
- }
- public void setLimiteVie(int limite)
- {
- this.limite_vie = limite;
- }
- public int getVie()
- {
- return this.vie;
- }
- public boolean isAlive()
- {
- return this.vie > 0;
- }
- public void recevoirDegats(int degats)
- {
- this.vie-=degats;
- if(vie < 0)
- {
- vie = 0;
- }
- this.miseAJourVie();
- }
- public void rajouter_vie(int supplement)
- {
- vie += supplement;
- if(vie > limite_vie)
- {
- vie = limite_vie;
- }
- this.miseAJourVie();
- }
- @Override
- public void launch(Scene scene,int x, int y)
- {
- super.launch(scene,x,y);
- this.barreDeVie = new Rectangle(x, y - getSprite().getHeight()/10, this.getSprite().getWidth(), this.getSprite().getHeight()/10);
- Log.v( this.getClass().getSimpleName() + " NAME", this.getClass().getSimpleName() + " NAME");
- this.ratioBase = this.barreDeVie.getWidth() / vie;
- Log.v("PERSONNAGE", "LAUNCH");
- Log.v("PERSONNAGE", "RATIO_BASE:" + this.ratioBase);
- Log.v("PERSONNAGE", "WITDH BDV:" + this.barreDeVie.getWidth());
- Log.v("PERSONNAGE", "HEIGHT BDV:" + this.barreDeVie.getHeight());
- Log.v("PERSONNAGE", "WITDH BDV:" + this.barreDeVie.getWidth());
- interieur = new Rectangle(this.barreDeVie.getX(),this.barreDeVie.getY(),ratioBase*this.vie,this.barreDeVie.getHeight());
- interieur.setColor(1f,0f,0f);
- scene.attachChild(barreDeVie);
- scene.attachChild(interieur);
- }
- private void miseAJourVie()
- {
- this.getScene().detachChild(interieur);
- interieur = new Rectangle(this.barreDeVie.getX(),this.barreDeVie.getY(),ratioBase*this.vie,this.barreDeVie.getHeight());
- interieur.setColor(1f,0f,0f);
- this.getScene().attachChild(interieur);
- Log.v("Changement vie","Vie : " + vie);
- }
- @Override
- public Object clone()
- {
- return new Personnage(this);
- }
- @Override
- public void stop()
- {
- super.stop();
- this.getScene().detachChild(barreDeVie);
- this.getScene().detachChild(this.interieur);
- }
- }
Add Comment
Please, Sign In to add comment