mise a jours git ignore + ajour glissé deposer + patch card onboard
This commit is contained in:
@@ -11,6 +11,7 @@ import com.iutlaval.myapplication.Game.Decks.Deck;
|
||||
import com.iutlaval.myapplication.Game.Decks.DeckDemo;
|
||||
import com.iutlaval.myapplication.GameActivity;
|
||||
import com.iutlaval.myapplication.R;
|
||||
import com.iutlaval.myapplication.Video.Drawables.Drawable;
|
||||
import com.iutlaval.myapplication.Video.Drawables.DrawableBitmap;
|
||||
import com.iutlaval.myapplication.Video.Drawables.DrawableCard;
|
||||
import com.iutlaval.myapplication.Video.Renderer;
|
||||
@@ -137,8 +138,17 @@ public class GameLogicThread extends Thread{
|
||||
touch.onTouchEvent(event);
|
||||
if(currentlySelected !=null)
|
||||
{
|
||||
//jouer une carte
|
||||
int zone = playableZonesHandler.getHoveredZone(currentlySelected);
|
||||
if(zone != -1)
|
||||
{
|
||||
currentlySelected.setOnBoard(true);
|
||||
currentlySelected.setCoordinates((DrawableCard.getCardWith()+1)*zone,55F);
|
||||
currentlySelected.setDraggable(false);
|
||||
}else{
|
||||
currentlySelected.setCoordinates(currentlySelected.getX(),currentlySelected.getY() + SELECTING_OFFSET);
|
||||
}
|
||||
renderer.removeToDraw(currentlySelected.getName()+"BIG");
|
||||
currentlySelected.setCoordinates(currentlySelected.getX(),currentlySelected.getY() + SELECTING_OFFSET);
|
||||
currentlySelected=null;
|
||||
}
|
||||
playableZonesHandler.hidePlayableZones(renderer);
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.iutlaval.myapplication.Game;
|
||||
|
||||
import android.graphics.Color;
|
||||
import android.util.Log;
|
||||
|
||||
import com.iutlaval.myapplication.Game.Cards.Card;
|
||||
import com.iutlaval.myapplication.InvalidDataException;
|
||||
@@ -14,8 +15,6 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class PlayableZonesHandler {
|
||||
//90F au lieu de 100F car on n'a pas la pioche
|
||||
private static final float CARD_SPACING = 90F / Board.MAX_CARD_ON_BOARD;
|
||||
private List<Drawable> playableZones;
|
||||
private Board board;
|
||||
|
||||
@@ -51,6 +50,7 @@ public class PlayableZonesHandler {
|
||||
|
||||
}
|
||||
|
||||
|
||||
public void hidePlayableZones(Renderer renderer)
|
||||
{
|
||||
for(Drawable d : playableZones)
|
||||
@@ -59,4 +59,26 @@ public class PlayableZonesHandler {
|
||||
}
|
||||
playableZones.clear();
|
||||
}
|
||||
|
||||
/**
|
||||
* retourne le numero de la zone survolé par le drawable si la zone est vite
|
||||
* sinon retourne -1
|
||||
* @param card
|
||||
* @return
|
||||
*/
|
||||
public int getHoveredZone(Drawable card) {
|
||||
for(int i=0 ; i< board.MAX_CARD_ON_BOARD;i++)
|
||||
{
|
||||
int cardX =(DrawableCard.getCardWith()+1)*i+1;
|
||||
//es que on survole sur l'axe x
|
||||
if(cardX > card.getX() && card.getY() < 90F && card.getY() > 50F)
|
||||
{
|
||||
//on a trouvé l'emplacement de la carte
|
||||
if(board.getPlayerCardsOnBoard()[i] == null)return i;
|
||||
else break;
|
||||
}
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user