Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/javafx' into javafx
Browse files Browse the repository at this point in the history
  • Loading branch information
zahrayousefijamarani committed Jun 24, 2019
2 parents 32abf54 + bae8ddc commit ae1d08b
Show file tree
Hide file tree
Showing 11 changed files with 162 additions and 120 deletions.
5 changes: 5 additions & 0 deletions PausedGames/NumberOfMap
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,8 @@
12
13
14
15
16
17
18
19
File renamed without changes
2 changes: 1 addition & 1 deletion src/model/battle/GraveYard.java
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ public void addCardToGraveYard(Card card, Square position) {
position.addToFlags(flag);
flag.setOwnerCard(null);
BattleScene.getSingleInstance().addNodeToBoard(card.getPosition().getXCoordinate(),
card.getPosition().getYCoordinate(), flag.getImageView());
card.getPosition().getYCoordinate(), flag.getImageView(), false);
flag.getImageView().setOpacity(1);
break;
}
Expand Down
4 changes: 2 additions & 2 deletions src/model/battle/Match.java
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ private void setFlagsRandomly(int mode) {
squares[randomX][randomY].addToFlags(flag);
ImageView flagView = GeneralGraphicMethods.createImage("pics/battle_categorized/flag.gif", 10, 10);
flag.setImageView(flagView);
BattleScene.getSingleInstance().addNodeToBoard(randomX, randomY, flagView);
BattleScene.getSingleInstance().addNodeToBoard(randomX, randomY, flagView, false);
}
}

Expand All @@ -189,7 +189,7 @@ private void setCollectiblesRandomly() {
squares[randomX][randomY].setObject(collectible);
ImageView collectibleImage = GeneralGraphicMethods.createImage(
"pics/collectibles/" + collectible.getName() + ".png", 20, 20);
BattleScene.getSingleInstance().addNodeToBoard(randomX, randomY, collectibleImage);
BattleScene.getSingleInstance().addNodeToBoard(randomX, randomY, collectibleImage, false);
collectible.setImageView(collectibleImage);

}
Expand Down
1 change: 1 addition & 0 deletions src/model/battle/Player.java
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,7 @@ public boolean putCardOnLand(Card playerCard, Coordinate coordinate, LandOfGame
for (Buff buff : square.getBuffs()) {
addBuffToPlayer(buff);
}
square.clearBuffs();

//flags:
if (square.getFlags().size() > 0) {
Expand Down
4 changes: 4 additions & 0 deletions src/model/card/Card.java
Original file line number Diff line number Diff line change
Expand Up @@ -141,16 +141,20 @@ public boolean move(Coordinate newCoordination) {
}
}

/*
ArrayList<Buff> buffsOfSquare = newPosition.getBuffs();
for (Buff buff : buffsOfSquare) {
buff.affect(this);
}
square.clearBuffs();
*/

if (this instanceof Minion) {
Square square = landOfGame.passSquareInThisCoordinate(newCoordination);
for (Buff buff : square.getBuffs()) {
addBuff(buff);
}
square.clearBuffs();
}

if (newPosition.getFlags().size() > 0) {
Expand Down
57 changes: 30 additions & 27 deletions src/model/card/Change.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
package model.card;

import javafx.scene.image.ImageView;
import model.battle.Player;
import model.land.Square;
import view.Graphic.BattleScene;

import java.util.ArrayList;
import java.util.HashMap;
Expand Down Expand Up @@ -31,8 +33,9 @@ public void affect(Player player, ArrayList<Square> targets) {
if (targetType.equals("square")) {
for (Square square : targets) {
for (String buffName : buffs.keySet()) {
for(int number: buffs.get(buffName))
for (int number : buffs.get(buffName)) {
square.addBuffToSquare(getBuff(buffName, number));
}
}
}
}
Expand All @@ -43,14 +46,39 @@ public void affect(Player player, ArrayList<Square> targets) {
}
}

if(targetType.equals("player")){
if (targetType.equals("player")) {
for (String buffName : buffs.keySet()) {
for (int number : buffs.get(buffName))
player.addBuffToPlayer(getBuff(buffName, number));
}
}
}

private Buff getBuff(String buffName, int forHowManyTurn) {
Buff buff = Buff.getNewBuffByName(buffName, forHowManyTurn);
if (buff != null) {
if (buffName.equals("Power")) {
if (apOrHpForPower.equals("ap"))
buff.setApChange(changeInApOrHpForPower);
else
buff.setHpChange(changeInApOrHpForPower);
}
if (buffName.equals("Weakness")) {
if (apOrHpForWeakness.equals("ap"))
buff.setApChange(changeInApOrHpForWeakness);
else
buff.setHpChange(changeInApOrHpForWeakness);
}
if (buffName.equals("Mana")) {
buff.setManaChange(changeInManaForMana);
}
if (buffName.equals("DecreaserHp")) {
buff.setHpChange(changeInHpForDecreaserHp);
}
}
return buff;
}

private void makeChangeInTargetCard(Player player, Card targetCard) {//change e hamle konnande ro roye opponent seda mikonm
if (!opponentCanMove)
targetCard.setCanMove(false, turnOfCanNotMoveForOpponent);
Expand Down Expand Up @@ -86,31 +114,6 @@ private void makeChangeInTargetCard(Player player, Card targetCard) {//change e
}
}

private Buff getBuff(String buffName, int forHowManyTurn) {
Buff buff = Buff.getNewBuffByName(buffName, forHowManyTurn);
if (buff != null) {
if (buffName.equals("Power")) {
if (apOrHpForPower.equals("ap"))
buff.setApChange(changeInApOrHpForPower);
else
buff.setHpChange(changeInApOrHpForPower);
}
if (buffName.equals("Weakness")) {
if (apOrHpForWeakness.equals("ap"))
buff.setApChange(changeInApOrHpForWeakness);
else
buff.setHpChange(changeInApOrHpForWeakness);
}
if( buffName.equals("Mana")){
buff.setManaChange(changeInManaForMana);
}
if(buffName.equals("DecreaserHp")){
buff.setHpChange(changeInHpForDecreaserHp);
}
}
return buff;
}

public String getTargetType() {
return targetType;
}
Expand Down
4 changes: 3 additions & 1 deletion src/model/card/Spell.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,13 @@
import java.util.ArrayList;

public class Spell extends Card {
/*
private int playerNameByNumber;//{player1 or 2}
private int numberOfAttack;
private int turn;
private ArrayList<Buff> buffs;
private ArrayList<Integer> turnOfBuffs;
private int apChanges;
private int turnForApChanges;
private int hpChanges;
Expand Down Expand Up @@ -71,5 +73,5 @@ public int getTurn() {
return turn;
}

*/
}
10 changes: 10 additions & 0 deletions src/model/land/Square.java
Original file line number Diff line number Diff line change
@@ -1,27 +1,37 @@
package model.land;

import javafx.scene.image.ImageView;
import model.card.Buff;
import model.card.Hero;
import model.card.Minion;
import model.item.Collectible;
import model.item.Flag;
import model.requirment.Coordinate;
import view.Graphic.BattleScene;

import java.util.ArrayList;
import java.util.HashMap;

public class Square {
private int scaleForEachSquare;
private Coordinate coordinate;
private Object object;
private ArrayList<Flag> flags = new ArrayList<>();
private ArrayList<Buff> buffs = new ArrayList<>();
private ImageView cellEffectImageView = null;

public Square(Coordinate coordinate) {
this.coordinate = coordinate;
}

public void clearBuffs(){
buffs = null;
BattleScene.getSingleInstance().removeNodeFromBoard(cellEffectImageView);
}
public void addBuffToSquare(Buff buff) {
buffs.add(buff);
if(cellEffectImageView == null)
cellEffectImageView = BattleScene.getSingleInstance().addCellEffect(getXCoordinate(), getYCoordinate());
}

public Minion squareHasMinionAndPassIt() {
Expand Down
46 changes: 21 additions & 25 deletions src/view/Graphic/BattleHeaderGraphic.java
Original file line number Diff line number Diff line change
@@ -1,24 +1,17 @@
package view.Graphic;

import javafx.event.EventHandler;
import javafx.scene.CacheHint;
import javafx.scene.Group;
import javafx.scene.effect.ColorAdjust;
import javafx.scene.effect.Glow;
import javafx.scene.image.ImageView;
import javafx.scene.input.MouseEvent;
import javafx.scene.paint.Color;
import javafx.scene.paint.ImagePattern;
import javafx.scene.shape.Circle;
import javafx.scene.shape.Rectangle;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
import javafx.scene.transform.Rotate;
import model.battle.Player;
import view.enums.StateType;


import java.io.File;
import java.util.Random;

Expand Down Expand Up @@ -146,7 +139,7 @@ private void chooseHeroSpecialPowerPath(int ind) {
specialPowersPath[ind] = file.listFiles()[index].getPath();
}

private void addHeroSpecialPower(double x, double y, Group group, int ind, int turnNotUsedSpecialPower, int coolDown) {
private void addHeroSpecialPower(double x, double y, Group group, int ind, int turnNotUsedSpecialPower, int coolDown, boolean itsTurn) {
ImageView imageView = SpriteMaker.getInstance().makeSpritePic(specialPowersPath[ind],
x, y, group, 19, 3, 2500, 34.5, 34.5);

Expand All @@ -155,25 +148,27 @@ private void addHeroSpecialPower(double x, double y, Group group, int ind, int t
imageView.setFitHeight(35);

Circle circle = new Circle(x + imageView.getFitWidth() / 2,
y+ imageView.getFitHeight() / 2, imageView.getFitWidth() + 5);
y + imageView.getFitHeight() / 2, imageView.getFitWidth() + 5);
circle.setStroke(Color.rgb(0, 204, 255));
circle.setStrokeWidth(0);
circle.setFill(Color.gray(1,0.01));
circle.setFill(Color.gray(1, 0.01));
group.getChildren().add(circle);

GeneralGraphicMethods.setOnMouseEntered(circle, StageLauncher.getScene(StateType.BATTLE), true);
GeneralGraphicMethods.setOnMouseEntered(imageView, StageLauncher.getScene(StateType.BATTLE), true);
circle.setOnMouseClicked(event -> {
if (!battleScene.isHeroSpecialPowerClicked()) {
battleScene.setHeroSpecialPowerClicked(true);
circle.setStrokeWidth(5);
}
else {
battleScene.setHeroSpecialPowerClicked(false);
circle.setStrokeWidth(0);
}

});
if (itsTurn) {
circle.setOnMouseClicked(event -> {
if (!battleScene.isHeroSpecialPowerClicked()) {
battleScene.setHeroSpecialPowerClicked(true);

circle.setStrokeWidth(5);
} else {
battleScene.setHeroSpecialPowerClicked(false);
circle.setStrokeWidth(0);
}

});
}

addCoolDown(x, y + 50, group, turnNotUsedSpecialPower, coolDown);
}
Expand Down Expand Up @@ -207,18 +202,19 @@ private void makeLeftHeader(Player player) {
leftHeader.getChildren().clear();
GeneralGraphicMethods.addTextWithShadow(leftHeader, 248, 78, player.getUserName(), "Arial", 27);
addMana(245, 100, player.getMana(), leftHeader);
addHeroSpecialPower(110, 195, leftHeader, 0, player.getHero().getTurnNotUsedSpecialPower(), player.getHero().getCoolDown());
addHeroSpecialPower(110, 195, leftHeader, 0, player.getHero().getTurnNotUsedSpecialPower(), player.getHero().getCoolDown(), true);
addPortraitBorder(120, 25, leftHeader, true, player.getAvatarPath(), true);
// addPortraitBorder(1165, 25, rightHeader, false, COMPUTER_PROFILE, false);
// addPortraitBorder(1165, 25, rightHeader, false, COMPUTER_PROFILE, false);
}

private void makeRightHeader(Player player) {
rightHeader.getChildren().clear();
GeneralGraphicMethods.addTextWithShadow(leftHeader, 1010, 78, player.getUserName(), "Arial", 27);
addMana(911, 100, player.getMana(), rightHeader);
addHeroSpecialPower(1275, 195, rightHeader, 1, player.getHero().getTurnNotUsedSpecialPower(), player.getHero().getCoolDown());
addHeroSpecialPower(1275, 195, rightHeader, 1, player.getHero().getTurnNotUsedSpecialPower(), player.getHero().getCoolDown(), false
);
addPortraitBorder(1165, 25, rightHeader, true, player.getAvatarPath(), false);
// addPortraitBorder(120, 25, leftHeader, false, COMPUTER_PROFILE, true);
// addPortraitBorder(120, 25, leftHeader, false, COMPUTER_PROFILE, true);
}

public void makeHeaderEachTurn(int numberOfPlayer, Player player) {
Expand Down
Loading

0 comments on commit ae1d08b

Please sign in to comment.