card scalling
This commit is contained in:
@@ -9,7 +9,20 @@
|
||||
android:roundIcon="@mipmap/ic_launcher_round"
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/AppTheme">
|
||||
<activity android:name=".Game.HandActivity"></activity>
|
||||
<activity
|
||||
android:name=".Game.HandActivity.ItemListActivity"
|
||||
android:label="@string/title_item_list"
|
||||
android:theme="@style/AppTheme.NoActionBar"></activity>
|
||||
<activity
|
||||
android:name=".Game.HandActivity.ItemDetailActivity"
|
||||
android:label="@string/title_item_detail"
|
||||
android:parentActivityName=".Game.HandActivity.ItemListActivity"
|
||||
android:theme="@style/AppTheme.NoActionBar">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="com.iutlaval.myapplication.Game.HandActivity.ItemListActivity" />
|
||||
</activity>
|
||||
<activity android:name=".Game.HandActivity" />
|
||||
<activity android:name=".MainActivity">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
@@ -2,7 +2,6 @@ package com.iutlaval.myapplication.Game.Decks;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import com.iutlaval.myapplication.Game.HandActivity;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
|
||||
@@ -1,14 +1,11 @@
|
||||
package com.iutlaval.myapplication.Game;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.BitmapFactory;
|
||||
import android.os.Bundle;
|
||||
import android.view.MotionEvent;
|
||||
|
||||
import com.iutlaval.myapplication.Game.Cards.Card;
|
||||
import com.iutlaval.myapplication.Game.Cards.DemoCard;
|
||||
import com.iutlaval.myapplication.Game.Decks.Deck;
|
||||
import com.iutlaval.myapplication.Game.Decks.DeckDemo;
|
||||
import com.iutlaval.myapplication.GameActivity;
|
||||
@@ -76,7 +73,7 @@ public class GameLogicThread extends Thread{
|
||||
for(Card c : localPlayerHand.getHand())
|
||||
{
|
||||
renderer.addToDraw(c.getDrawableCard());
|
||||
renderer.moveToDraw(i*DrawableCard.CARD_WITH,90F,c.getDrawableCard().getName());
|
||||
renderer.moveToDraw(i* DrawableCard.CARD_WITH,90F,c.getDrawableCard().getName());
|
||||
i++;
|
||||
}
|
||||
|
||||
@@ -105,6 +102,10 @@ public class GameLogicThread extends Thread{
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
private DrawableCard currentlySelected = null;
|
||||
private static final float SELECTING_OFFSET = 20F;
|
||||
/**
|
||||
* relais l'evenement directement au touch Handler
|
||||
* @param event
|
||||
@@ -114,22 +115,21 @@ public class GameLogicThread extends Thread{
|
||||
float unscalled_Y = event.getY() / GameActivity.screenHeight * 100;
|
||||
if(unscalled_Y >= 90F) {
|
||||
float unscalled_X = event.getX() / GameActivity.screenWidth * 100;
|
||||
//TODO : display fullscreen cards
|
||||
Intent HandActivity = new Intent(gameActivity, HandActivity.class);
|
||||
String[] serializedHand = new String[localPlayerHand.getHand().size() +1];
|
||||
int i = 0;
|
||||
serializedHand[i] = localPlayerDeck.getDeckName();
|
||||
for(Card c : localPlayerHand.getHand())
|
||||
DrawableCard smallCArd = renderer.getCardOn(unscalled_X,unscalled_Y);
|
||||
if(smallCArd !=null)
|
||||
{
|
||||
i++;
|
||||
serializedHand[i] = c.getName();
|
||||
|
||||
if(currentlySelected !=null)
|
||||
{
|
||||
currentlySelected.setCoordinates(currentlySelected.getX(),currentlySelected.getY() + SELECTING_OFFSET);
|
||||
renderer.removeToDraw(currentlySelected.getName()+"BIG");
|
||||
}
|
||||
currentlySelected = smallCArd;
|
||||
DrawableCard bigCard = new DrawableCard(smallCArd,cont,2);
|
||||
renderer.addToDraw(bigCard);
|
||||
bigCard.setCoordinates(50F,50F);
|
||||
smallCArd.setCoordinates(smallCArd.getX(),smallCArd.getY() - SELECTING_OFFSET);
|
||||
touch.onTouchEvent(event);
|
||||
}
|
||||
HandActivity.putExtra("hand",serializedHand);
|
||||
Bundle cardSelectedBundle = new Bundle();
|
||||
gameActivity.startActivity(HandActivity,cardSelectedBundle);
|
||||
|
||||
|
||||
}else{
|
||||
touch.onTouchEvent(event);
|
||||
}
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
package com.iutlaval.myapplication.Game;
|
||||
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
|
||||
import com.iutlaval.myapplication.Game.Decks.Deck;
|
||||
import com.iutlaval.myapplication.Game.Decks.DeckRegister;
|
||||
import com.iutlaval.myapplication.R;
|
||||
|
||||
public class HandActivity extends AppCompatActivity {
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_hand);
|
||||
|
||||
String[] serializedHand = getIntent().getStringArrayExtra("hand");
|
||||
Deck d = DeckRegister.getClassFromName(serializedHand[0],this);
|
||||
|
||||
|
||||
Intent data = new Intent();
|
||||
String text = "Result to be returned....";
|
||||
//---set the data to pass back---
|
||||
data.setData(Uri.parse(text));
|
||||
setResult(RESULT_OK, data);
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,8 @@
|
||||
package com.iutlaval.myapplication.Game;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.view.MotionEvent;
|
||||
|
||||
import com.iutlaval.myapplication.GameActivity;
|
||||
import com.iutlaval.myapplication.MainActivity;
|
||||
import com.iutlaval.myapplication.Video.Drawables.DrawableCard;
|
||||
import com.iutlaval.myapplication.Video.Renderer;
|
||||
|
||||
@@ -24,22 +22,27 @@ public class TouchHandler {
|
||||
|
||||
|
||||
public void onTouchEvent(MotionEvent event){
|
||||
|
||||
//on ignore le multi touch
|
||||
if(event.getPointerCount() <= 1)
|
||||
{
|
||||
float unscalled_X = event.getX() / GameActivity.screenWidth * 100;
|
||||
float unscalled_Y = event.getY() / GameActivity.screenHeight * 100;
|
||||
float unscaled_X = event.getX() / GameActivity.screenWidth * 100;
|
||||
float unscaled_Y = event.getY() / GameActivity.screenHeight * 100;
|
||||
|
||||
if (event.getAction() == MotionEvent.ACTION_DOWN) {
|
||||
if(unscalled_Y <= 90F) {
|
||||
moveEventCard = renderer.getCardOn(unscalled_X, unscalled_Y);
|
||||
if (moveEventCard != null) {
|
||||
TouchDeltaY = unscalled_Y - moveEventCard.getY();
|
||||
TouchDeltaX = unscalled_X - moveEventCard.getX();
|
||||
originalPositionX = moveEventCard.getX();
|
||||
originalPositionY = moveEventCard.getY();
|
||||
}
|
||||
if(unscaled_Y <= 90F)
|
||||
{
|
||||
moveEventCard = renderer.getCardOn(unscaled_X, unscaled_Y -20F);
|
||||
}else{
|
||||
moveEventCard = renderer.getCardOn(unscaled_X, unscaled_Y);
|
||||
}
|
||||
|
||||
if (moveEventCard != null) {
|
||||
TouchDeltaY = unscaled_Y - moveEventCard.getY();
|
||||
TouchDeltaX = unscaled_X - moveEventCard.getX();
|
||||
originalPositionX = moveEventCard.getX();
|
||||
originalPositionY = moveEventCard.getY();
|
||||
}
|
||||
|
||||
} else if (event.getAction() == MotionEvent.ACTION_UP) {
|
||||
TouchDeltaY = 0;
|
||||
TouchDeltaX = 0;
|
||||
@@ -47,7 +50,7 @@ public class TouchHandler {
|
||||
if(moveEventCard != null)renderer.moveToDraw(originalPositionX,originalPositionY,moveEventCard.getName());
|
||||
moveEventCard = null;
|
||||
} else if (moveEventCard != null) {
|
||||
moveEventCard.setCoordinates(unscalled_X - TouchDeltaX, unscalled_Y - TouchDeltaY);
|
||||
moveEventCard.setCoordinates(unscaled_X - TouchDeltaX, unscaled_Y - TouchDeltaY);
|
||||
renderer.updateFrame();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.iutlaval.myapplication.Video.Drawables;
|
||||
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.BitmapFactory;
|
||||
import android.graphics.Canvas;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.Paint;
|
||||
@@ -239,4 +240,8 @@ public class Drawable {
|
||||
}
|
||||
return output;
|
||||
}
|
||||
|
||||
protected void scale(float i) {
|
||||
bitmap = Bitmap.createScaledBitmap(this.bitmap,(int)(bitmap.getWidth()*i),(int)(bitmap.getHeight()*i),GameActivity.bilinearFiltering);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ import com.iutlaval.myapplication.Video.Rectangle;
|
||||
* TODO : tout mettre dans des finals
|
||||
*/
|
||||
public class DrawableCard extends Drawable{
|
||||
private int ratio;
|
||||
|
||||
public static final int CARD_WITH = 14;
|
||||
private static final int CARD_HEIGHT = 40;
|
||||
@@ -65,16 +66,16 @@ public class DrawableCard extends Drawable{
|
||||
private static final float ONBOARD_RECTANGLE_ATK_X = CARD_HEIGHT * 0F;
|
||||
private static final float ONBOARD_RECTANGLE_HP_X = CARD_WITH * 0.5F;
|
||||
|
||||
private final float OFFBOARD_PICTURE_X = 0.0787F * CARD_WITH;
|
||||
private final float OFFBOARD_PICTURE_Y = 0.0834F * CARD_HEIGHT;
|
||||
private final float OFFBOARD_DESCRIPTION_X = 0.07F * CARD_WITH;
|
||||
private final float OFFBOARD_DESCRIPTION_Y = 0.455F * CARD_HEIGHT;
|
||||
private final float OFFBOARD_ATK_X = 0.08F * CARD_WITH;
|
||||
private final float OFFBOARD_ATK_Y = 0.735F * CARD_HEIGHT;
|
||||
private final float OFFBOARD_HP_X = 0.7F * CARD_WITH;
|
||||
private final float OFFBOARD_HP_Y = 0.735F * CARD_HEIGHT;
|
||||
private final float OFFBOARD_TITLE_X =0.1F * CARD_WITH;
|
||||
private final float OFFBOARD_TITLE_Y = 0.025F * CARD_HEIGHT;
|
||||
private static final float OFFBOARD_PICTURE_X = 0.0787F * CARD_WITH;
|
||||
private static final float OFFBOARD_PICTURE_Y = 0.0834F * CARD_HEIGHT;
|
||||
private static final float OFFBOARD_DESCRIPTION_X = 0.07F * CARD_WITH;
|
||||
private static final float OFFBOARD_DESCRIPTION_Y = 0.455F * CARD_HEIGHT;
|
||||
private static final float OFFBOARD_ATK_X = 0.08F * CARD_WITH;
|
||||
private static final float OFFBOARD_ATK_Y = 0.735F * CARD_HEIGHT;
|
||||
private static final float OFFBOARD_HP_X = 0.7F * CARD_WITH;
|
||||
private static final float OFFBOARD_HP_Y = 0.735F * CARD_HEIGHT;
|
||||
private static final float OFFBOARD_TITLE_X =0.1F * CARD_WITH;
|
||||
private static final float OFFBOARD_TITLE_Y = 0.025F * CARD_HEIGHT;
|
||||
|
||||
private static final float CARD_ON_BOARD_DRAWABLE_WIDTH = CARD_WITH;
|
||||
private static final float CARD_ON_BOARD_DRAWABLE_HEIGHT = CARD_HEIGHT*0.667F;
|
||||
@@ -116,22 +117,46 @@ public class DrawableCard extends Drawable{
|
||||
* donc les coodonées ne se trouve que dans cette fonction
|
||||
*/
|
||||
public DrawableCard(Card c, float x, float y, String name, Context context){
|
||||
super(c.getFrameBitmap(context),x,y,name,CARD_WITH,CARD_HEIGHT);
|
||||
this(c,x,y,name,context,1);
|
||||
}
|
||||
|
||||
/**
|
||||
* ce constructeur permet de crée un drawable simplifier pour les carte qui integre :
|
||||
* _le supoort de la description
|
||||
* _le support du titre
|
||||
* _le changement d'etat entre grand et terrain
|
||||
* _les point de vie
|
||||
* _les point attaque
|
||||
* _l'image
|
||||
* _les deplacement du tout
|
||||
*
|
||||
*
|
||||
* @param c carte a dessiner
|
||||
* @param x position de la carte sur l'axe x
|
||||
* @param y position de la carte sur l'axe y
|
||||
* @param name nom du drawable
|
||||
* @param context le contexte est simplement l'instance de GameActivity qui est utiliser pas le moteur de jeu
|
||||
* @param ratio le ratio dirigeant la taille de la carte
|
||||
* @throws InvalidDataException
|
||||
* toutes les coodonés sont a zero pour faciliter la maintenance car la fonction setCoordinates() est appler pour corriger toutes les coordonées
|
||||
* donc les coodonées ne se trouve que dans cette fonction
|
||||
*/
|
||||
public DrawableCard(Card c, float x, float y, String name, Context context,int ratio){
|
||||
super(c.getFrameBitmap(context),x,y,name,CARD_WITH*ratio,CARD_HEIGHT*ratio);
|
||||
this.ratio=ratio;
|
||||
card=c;
|
||||
|
||||
onBoard=true;
|
||||
onBoard=false;
|
||||
|
||||
//to string retourne le hash code de l'objet qui est donc unique ce qui fait de lui un id parfait
|
||||
cardDescription = new Drawable(c.getDescription(),0,0,toString()+"description",DESCRIPTION_WIDTH,DESCRIPTION_HEIGHT,DESCRIPTION_FONT_SIZE,DESCRIPTION_TEXT_X_RES,DESCRIPTION_TEXT_Y_RES);
|
||||
cardTitle = new Drawable(c.getName(),0,0,toString()+"name",TITLE_WIDTH,TITLE_HEIGHT,TITLE_FONT_SIZE,TEXT_TITLE_X_RES,TEXT_TITLE_Y_RES);
|
||||
cardDescription = new Drawable(c.getDescription(),0,0,toString()+"description",DESCRIPTION_WIDTH*ratio,DESCRIPTION_HEIGHT*ratio,DESCRIPTION_FONT_SIZE*ratio,DESCRIPTION_TEXT_X_RES*ratio,DESCRIPTION_TEXT_Y_RES*ratio);
|
||||
cardTitle = new Drawable(c.getName(),0,0,toString()+"name",TITLE_WIDTH*ratio,TITLE_HEIGHT*ratio,TITLE_FONT_SIZE*ratio,TEXT_TITLE_X_RES*ratio,TEXT_TITLE_Y_RES*ratio);
|
||||
|
||||
Rectangle opacityRect = new Rectangle(x,y,OPACITY_RECT_WIDTH+x,OPACITY_RECT_HEIGHT+x);
|
||||
Rectangle opacityRect = new Rectangle(x,y,OPACITY_RECT_WIDTH*ratio+x,OPACITY_RECT_HEIGHT*ratio+x);
|
||||
Bitmap pictureBitmap = BitmapFactory.decodeResource(context.getResources(),c.getCardPicture());
|
||||
|
||||
try {
|
||||
OpacityRectangleDrawable = new Drawable(opacityRect,toString()+"Opacity", Color.parseColor(c.getColor()));
|
||||
PictureDrawable = new Drawable(pictureBitmap,0,0,toString()+"Picture",PICTURE_WIDTH,PICTURE_HEIGHT);
|
||||
PictureDrawable = new Drawable(pictureBitmap,0,0,toString()+"Picture",PICTURE_WIDTH*ratio,PICTURE_HEIGHT*ratio);
|
||||
} catch (InvalidDataException e) {
|
||||
e.printStackTrace();
|
||||
Log.e("CARTE :","forme de la carte invalide !");
|
||||
@@ -139,26 +164,25 @@ public class DrawableCard extends Drawable{
|
||||
}
|
||||
|
||||
|
||||
|
||||
//TODO optimize rectangle by making it only one time
|
||||
//crée les rectangle pour la carte quand elle est sur le terrain
|
||||
Rectangle cardOnBoardFrame = new Rectangle(x,y,ONBOARD_FRAME_X_SIZE,ONBOARD_FRAME_Y_SIZE);
|
||||
Rectangle cardOnBoardFrame = new Rectangle(x,y,ONBOARD_FRAME_X_SIZE*ratio,ONBOARD_FRAME_Y_SIZE*ratio);
|
||||
cardOnBoardFrame.scaleRectangleToScreen();
|
||||
|
||||
Rectangle cardOnBoardAtk = new Rectangle(x + ONBOARD_RECTANGLE_ATK_X, ONBOARD_RECTANGLE_ATK_HP_Y,ONBOARD_RECTANGLE_ATK_HP_WIDTH,ONBOARD_RECTANGLE_ATK_HP_HEIGHT);
|
||||
Rectangle cardOnBoardAtk = new Rectangle(x + ONBOARD_RECTANGLE_ATK_X*ratio, ONBOARD_RECTANGLE_ATK_HP_Y*ratio,ONBOARD_RECTANGLE_ATK_HP_WIDTH*ratio,ONBOARD_RECTANGLE_ATK_HP_HEIGHT*ratio);
|
||||
cardOnBoardAtk.scaleRectangleToScreen();
|
||||
Rectangle cardOnBoardHp = new Rectangle(x + ONBOARD_RECTANGLE_HP_X, ONBOARD_RECTANGLE_ATK_HP_Y,ONBOARD_RECTANGLE_ATK_HP_WIDTH,ONBOARD_RECTANGLE_ATK_HP_HEIGHT);
|
||||
Rectangle cardOnBoardHp = new Rectangle(x + ONBOARD_RECTANGLE_HP_X*ratio, ONBOARD_RECTANGLE_ATK_HP_Y*ratio,ONBOARD_RECTANGLE_ATK_HP_WIDTH*ratio,ONBOARD_RECTANGLE_ATK_HP_HEIGHT*ratio);
|
||||
cardOnBoardHp.scaleRectangleToScreen();
|
||||
|
||||
//creation de la bitmap qui va être rendu
|
||||
Bitmap cardOnBoardBitmap= Bitmap.createBitmap((int)cardOnBoardFrame.getWidth(),(int)cardOnBoardFrame.getHeight(), Bitmap.Config.ARGB_8888);
|
||||
Bitmap cardOnBoardBitmap= Bitmap.createBitmap((int)cardOnBoardFrame.getWidth()*ratio,(int)cardOnBoardFrame.getHeight(), Bitmap.Config.ARGB_8888);
|
||||
|
||||
//on dessine nos rectangle sur la bitmap
|
||||
cardOnBoardFrame.bitmapRectangleBuilder(cardOnBoardBitmap,Color.parseColor(removeAlpha(c.getColor())));
|
||||
cardOnBoardAtk.bitmapRectangleBuilder(cardOnBoardBitmap,Color.parseColor("#FFFF0000"));
|
||||
cardOnBoardHp.bitmapRectangleBuilder(cardOnBoardBitmap,Color.parseColor("#FF00FF00"));
|
||||
|
||||
cardOnBoardDrawable = new Drawable(cardOnBoardBitmap,x,y,toString()+"BOARD",CARD_ON_BOARD_DRAWABLE_WIDTH,CARD_ON_BOARD_DRAWABLE_HEIGHT);
|
||||
cardOnBoardDrawable = new Drawable(cardOnBoardBitmap,x,y,toString()+"BOARD",CARD_ON_BOARD_DRAWABLE_WIDTH*ratio,CARD_ON_BOARD_DRAWABLE_HEIGHT*ratio);
|
||||
|
||||
c.setDrawableCard(this);
|
||||
|
||||
@@ -166,6 +190,9 @@ public class DrawableCard extends Drawable{
|
||||
setCoordinates(getX(), getY());
|
||||
}
|
||||
|
||||
public DrawableCard(DrawableCard smallCArd, Context cont,int ratio) {
|
||||
this(smallCArd.card,smallCArd.getX(),smallCArd.getY(),smallCArd.getName()+"BIG",cont,ratio);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
@@ -181,14 +208,14 @@ public class DrawableCard extends Drawable{
|
||||
{
|
||||
if(onBoard) {
|
||||
if (atk != null)
|
||||
cardAtkDrawable = new Drawable(atk+"", 0, 0, toString() + "atk", ONBOARD_ATK_HP_WIDTH, ONBOARD_ATK_HP_HEIGHT, HP_ATK_FONT_SIZE_BOARD,TEXT_ATK_HP_X_RES,TEXT_ATK_HP_Y_RES);
|
||||
cardAtkDrawable = new Drawable(atk+"", 0, 0, toString() + "atk", ONBOARD_ATK_HP_WIDTH*ratio, ONBOARD_ATK_HP_HEIGHT*ratio, HP_ATK_FONT_SIZE_BOARD*ratio,TEXT_ATK_HP_X_RES*ratio,TEXT_ATK_HP_Y_RES*ratio);
|
||||
if (hp != null)
|
||||
cardHpDrawable = new Drawable(hp+"", 0, 0, toString() + "hp", ONBOARD_ATK_HP_WIDTH, ONBOARD_ATK_HP_HEIGHT, HP_ATK_FONT_SIZE_BOARD,TEXT_ATK_HP_X_RES,TEXT_ATK_HP_Y_RES);
|
||||
cardHpDrawable = new Drawable(hp+"", 0, 0, toString() + "hp", ONBOARD_ATK_HP_WIDTH*ratio, ONBOARD_ATK_HP_HEIGHT*ratio, HP_ATK_FONT_SIZE_BOARD*ratio,TEXT_ATK_HP_X_RES*ratio,TEXT_ATK_HP_Y_RES*ratio);
|
||||
}else{
|
||||
if (atk != null)
|
||||
cardAtkDrawable = new Drawable(atk + "", 0, 0, toString() + "atk", OFFBOARD_ATK_HP_WIDTH, OFFBOARD_ATK_HP_HEIGHT, HP_ATK_FONT_SIZE_BIG_CARD,TEXT_ATK_HP_X_RES,TEXT_ATK_HP_Y_RES);
|
||||
cardAtkDrawable = new Drawable(atk + "", 0, 0, toString() + "atk", OFFBOARD_ATK_HP_WIDTH*ratio, OFFBOARD_ATK_HP_HEIGHT*ratio, HP_ATK_FONT_SIZE_BIG_CARD*ratio,TEXT_ATK_HP_X_RES*ratio,TEXT_ATK_HP_Y_RES*ratio);
|
||||
if (hp != null)
|
||||
cardHpDrawable = new Drawable(hp + "", 0, 0, toString() + "hp", OFFBOARD_ATK_HP_WIDTH, OFFBOARD_ATK_HP_HEIGHT, HP_ATK_FONT_SIZE_BIG_CARD,TEXT_ATK_HP_X_RES,TEXT_ATK_HP_Y_RES);
|
||||
cardHpDrawable = new Drawable(hp + "", 0, 0, toString() + "hp", OFFBOARD_ATK_HP_WIDTH*ratio, OFFBOARD_ATK_HP_HEIGHT*ratio, HP_ATK_FONT_SIZE_BIG_CARD*ratio,TEXT_ATK_HP_X_RES*ratio,TEXT_ATK_HP_Y_RES*ratio);
|
||||
}
|
||||
setCoordinates(getX(), getY());
|
||||
}
|
||||
@@ -252,19 +279,19 @@ public class DrawableCard extends Drawable{
|
||||
super.setCoordinates(x, y);
|
||||
if (onBoard) {
|
||||
cardOnBoardDrawable.setCoordinates(x,y);
|
||||
PictureDrawable.setCoordinates(x + ONBOARD_PICTURE_X, y +ONBOARD_PICTURE_Y);
|
||||
cardAtkDrawable.setCoordinates(x+ONBOARD_ATK_X,y + ONBOARD_ATK_HP_Y);
|
||||
cardHpDrawable.setCoordinates(x+ONBOARD_HP_X,y + ONBOARD_ATK_HP_Y);
|
||||
cardTitle.setCoordinates(x+ONBOARD_TITLE_X,y - ONBOARD_TITLE_Y);
|
||||
PictureDrawable.setCoordinates(x + ONBOARD_PICTURE_X*ratio, y +ONBOARD_PICTURE_Y*ratio);
|
||||
cardAtkDrawable.setCoordinates(x+ONBOARD_ATK_X*ratio,y + ONBOARD_ATK_HP_Y*ratio);
|
||||
cardHpDrawable.setCoordinates(x+ONBOARD_HP_X*ratio,y + ONBOARD_ATK_HP_Y*ratio);
|
||||
cardTitle.setCoordinates(x+ONBOARD_TITLE_X*ratio,y - ONBOARD_TITLE_Y*ratio);
|
||||
}else{
|
||||
OpacityRectangleDrawable.setCoordinates(x, y);
|
||||
PictureDrawable.setCoordinates(x + OFFBOARD_PICTURE_X, y + OFFBOARD_PICTURE_Y);
|
||||
PictureDrawable.setCoordinates(x + OFFBOARD_PICTURE_X*ratio, y + OFFBOARD_PICTURE_Y*ratio);
|
||||
|
||||
//les textes ce dessines depuis leur base et non depuis le coin haut gauche
|
||||
cardDescription.setCoordinates(x+OFFBOARD_DESCRIPTION_X,y+OFFBOARD_DESCRIPTION_Y);
|
||||
cardAtkDrawable.setCoordinates(x + OFFBOARD_ATK_X,y + OFFBOARD_ATK_Y);
|
||||
cardHpDrawable.setCoordinates(x + OFFBOARD_HP_X,y +OFFBOARD_HP_Y);
|
||||
cardTitle.setCoordinates(x+OFFBOARD_TITLE_X,y - OFFBOARD_TITLE_Y);
|
||||
cardDescription.setCoordinates(x+OFFBOARD_DESCRIPTION_X*ratio,y+OFFBOARD_DESCRIPTION_Y*ratio);
|
||||
cardAtkDrawable.setCoordinates(x + OFFBOARD_ATK_X*ratio,y + OFFBOARD_ATK_Y*ratio);
|
||||
cardHpDrawable.setCoordinates(x + OFFBOARD_HP_X*ratio,y +OFFBOARD_HP_Y*ratio);
|
||||
cardTitle.setCoordinates(x+OFFBOARD_TITLE_X*ratio,y - OFFBOARD_TITLE_Y*ratio);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -291,4 +318,5 @@ public class DrawableCard extends Drawable{
|
||||
public static int getCardHeight() {
|
||||
return CARD_HEIGHT;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 3.0 KiB |
@@ -6,4 +6,17 @@
|
||||
android:layout_height="match_parent"
|
||||
tools:context=".Game.HandActivity">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView5"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="365dp"
|
||||
android:layout_marginTop="232dp"
|
||||
android:layout_marginEnd="324dp"
|
||||
android:layout_marginBottom="160dp"
|
||||
android:text="HELLO"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<dimen name="fab_margin">16dp</dimen>
|
||||
<dimen name="app_bar_height">200dp</dimen>
|
||||
<dimen name="item_width">200dp</dimen>
|
||||
<dimen name="text_margin">16dp</dimen>
|
||||
</resources>
|
||||
@@ -1,3 +1,5 @@
|
||||
<resources>
|
||||
<string name="app_name">MON JE</string>
|
||||
<string name="title_item_list">Items</string>
|
||||
<string name="title_item_detail">Item Detail</string>
|
||||
</resources>
|
||||
@@ -7,4 +7,13 @@
|
||||
<item name="colorAccent">@color/colorAccent</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.NoActionBar">
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
|
||||
|
||||
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
|
||||
|
||||
</resources>
|
||||
Reference in New Issue
Block a user