amelioration du moteur + ajout de DrawableCard pour simplifer la creation de carte + correction du support de texture + correction du support de rectangle

This commit is contained in:
mmarc471@gmail.com
2020-09-08 22:53:14 +02:00
parent 589d6b7a80
commit f121e55071
22 changed files with 495 additions and 121 deletions
@@ -0,0 +1,69 @@
package com.iutlaval.myapplication.Game.Cards;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.util.Log;
import com.iutlaval.myapplication.Game.Board;
import com.iutlaval.myapplication.R;
public abstract class Card {
private int health;
private int attack;
private static Bitmap frameBitmap = null;
public void onCardAttack(Board board){}
public void onCardPlayed(Board board){}
public void onCardDeath(Board board){}
public void onTurnBegin(Board board){}
/**
* SURTOUT NE PAS @OVERRIDE
* si vous voulez modifier le cadre changer getFrameTexture()
* @param c context
* @return bitmap
*/
public Bitmap getFrameBitmap(Context c)
{
//TODO add a frame
if(frameBitmap == null) {
frameBitmap=BitmapFactory.decodeResource(c.getResources(), R.drawable.cadre_carte);
}
if(getFrameTexture() == R.drawable.cadre_carte)
{
return frameBitmap;
}else{
return BitmapFactory.decodeResource(c.getResources(),getFrameTexture());
}
}
public int getFrameTexture()
{
return R.drawable.cadre_carte;
}
public abstract int getCardPicture();
/**
* retourne la culeur de la carte
* la couleur s'affiche comme un filtre sur la carte
* /!\ attention a l'opacite /!\ le format n'est PAS rgba MAIS argb
* #AARRGGBB
* je recomander une opaciter en 44 et 70
* @return
*/
public String getColor()
{
return "#00000000";
}
//TODO
}
@@ -0,0 +1,20 @@
package com.iutlaval.myapplication.Game.Cards;
import android.graphics.Color;
import com.iutlaval.myapplication.R;
public class DemoCard extends Card{
@Override
public int getCardPicture() {
return R.drawable.guerrier_nul;
}
//#AARRGGBB
@Override
public String getColor() {
return "#70FF0000";
}
}