From eb4d72eb4056d0e10a19d960abf9ad44c0d6090c Mon Sep 17 00:00:00 2001 From: Filpus Date: Thu, 26 Jan 2023 11:52:31 +0100 Subject: [PATCH 1/2] lol --- src/controllers/game/MainGameController.java | 6 ++--- src/game/equipment/DisposableItem.java | 5 ++++ src/game/equipment/examples/HolyWater.java | 1 + .../TurnOnEnemySelecting.java | 27 ------------------- ...emOnYourselfListener.java => UseItem.java} | 21 +++++++++++---- 5 files changed, 24 insertions(+), 36 deletions(-) delete mode 100644 src/gui/actionListener/basicActionsListener/TurnOnEnemySelecting.java rename src/gui/actionListener/basicActionsListener/{UseItemOnYourselfListener.java => UseItem.java} (52%) diff --git a/src/controllers/game/MainGameController.java b/src/controllers/game/MainGameController.java index 2427590..c7f08ab 100644 --- a/src/controllers/game/MainGameController.java +++ b/src/controllers/game/MainGameController.java @@ -2,7 +2,6 @@ import controllers.Controller; import controllers.MenuController; -import controllers.utils.RedirectListener; import game.board.Board; import game.board.RoundManager; import game.board.Scenario; @@ -10,13 +9,12 @@ import game.generals.Vector2; import gui.actionListener.basicActionsListener.EndTurnListener; import gui.actionListener.basicActionsListener.MoveListener; -import gui.actionListener.basicActionsListener.TurnOnEnemySelecting; +import gui.actionListener.basicActionsListener.UseItem; import gui.actionListener.scrollItem.*; import gui.actionListener.turnOffButtons; import gui.actionListener.warhammerActions.*; import gui.card.DoubleArrowPanel; import gui.factories.IOverallFactory; -import gui.utils.FileManager; import gui.views.gamePanel.MainPanelGame; import gui.views.pickers.CustomLambdaExpression; import gui.views.pickers.FullItemPicker; @@ -84,7 +82,7 @@ public void run(IOverallFactory overallFactory) { gamePanel.getGamePanel().addOptionsListener(2, new AttackListener(roundManager, gamePanel)); gamePanel.getGamePanel().addOptionsListener(3, new CarefullListener(roundManager, gamePanel)); gamePanel.getGamePanel().addOptionsListener(4, new MultipleAttackListener(roundManager, gamePanel)); - gamePanel.getItemsItemPicker().addButtonListener(new TurnOnEnemySelecting(roundManager, gamePanel)); + gamePanel.getItemsItemPicker().addButtonListener(new UseItem(roundManager, gamePanel)); int j = 0; for (var list : Arrays.asList(new AimingListener(roundManager, gamePanel), new BlockListener(roundManager, diff --git a/src/game/equipment/DisposableItem.java b/src/game/equipment/DisposableItem.java index 0226333..d9a9380 100644 --- a/src/game/equipment/DisposableItem.java +++ b/src/game/equipment/DisposableItem.java @@ -6,6 +6,7 @@ public abstract class DisposableItem extends Item { private int usageCount; protected String description; + boolean onEnemy = false; public DisposableItem( int usageCount) { super(""); @@ -32,4 +33,8 @@ public String getDescription() { return description; } + + public boolean isOnEnemy() { + return onEnemy; + } } diff --git a/src/game/equipment/examples/HolyWater.java b/src/game/equipment/examples/HolyWater.java index 59c2973..f624275 100644 --- a/src/game/equipment/examples/HolyWater.java +++ b/src/game/equipment/examples/HolyWater.java @@ -10,6 +10,7 @@ public class HolyWater extends DisposableItem implements WarhammerData { + boolean onEnemy = true; public HolyWater( int usageCount) { super( usageCount);setItemPathPicture(holyWaterPath); diff --git a/src/gui/actionListener/basicActionsListener/TurnOnEnemySelecting.java b/src/gui/actionListener/basicActionsListener/TurnOnEnemySelecting.java deleted file mode 100644 index e0f24e2..0000000 --- a/src/gui/actionListener/basicActionsListener/TurnOnEnemySelecting.java +++ /dev/null @@ -1,27 +0,0 @@ -package gui.actionListener.basicActionsListener; - -import game.board.RoundManager; - -import gui.actionListener.warhammerActions.turnOffUseItem; -import gui.views.gamePanel.MainPanelGame; - -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; - -public class TurnOnEnemySelecting implements ActionListener { - - RoundManager roundManager; - MainPanelGame mainPanelGame; - - public TurnOnEnemySelecting(RoundManager roundManager, MainPanelGame mainPanelGame) { - this.roundManager = roundManager; - this.mainPanelGame = mainPanelGame; - } - - @Override - public void actionPerformed(ActionEvent e) { - - mainPanelGame.getGamePanel().changeActiveOptionsPanel(); - - } -} diff --git a/src/gui/actionListener/basicActionsListener/UseItemOnYourselfListener.java b/src/gui/actionListener/basicActionsListener/UseItem.java similarity index 52% rename from src/gui/actionListener/basicActionsListener/UseItemOnYourselfListener.java rename to src/gui/actionListener/basicActionsListener/UseItem.java index e846c36..4c9afe2 100644 --- a/src/gui/actionListener/basicActionsListener/UseItemOnYourselfListener.java +++ b/src/gui/actionListener/basicActionsListener/UseItem.java @@ -1,9 +1,10 @@ package gui.actionListener.basicActionsListener; import game.board.RoundManager; + import game.creature.Character; import game.creature.Creature; -import gui.actionListener.turnOffButtons; +import gui.actionListener.warhammerActions.turnOffUseItem; import gui.views.gamePanel.MainPanelGame; import java.awt.event.ActionEvent; @@ -11,12 +12,12 @@ import static game.interfaceWarhammer.StruggleAtributeEnum.ACTIONS_TO_DO; -public class UseItemOnYourselfListener implements ActionListener { +public class UseItem implements ActionListener { RoundManager roundManager; MainPanelGame mainPanelGame; - public UseItemOnYourselfListener(RoundManager roundManager, MainPanelGame mainPanelGame) { + public UseItem(RoundManager roundManager, MainPanelGame mainPanelGame) { this.roundManager = roundManager; this.mainPanelGame = mainPanelGame; } @@ -24,14 +25,24 @@ public UseItemOnYourselfListener(RoundManager roundManager, MainPanelGame mainPa @Override public void actionPerformed(ActionEvent e) { + Creature you = roundManager.getGameObjectWithTurn().getCreature(); if(you instanceof Character){ - ((Character) you).getInventory().getSelectedDisposableItem().use(you); + if(!((Character) you).getInventory().getSelectedDisposableItem().isOnEnemy()) { + ((Character) you).getInventory().getSelectedDisposableItem().use(you); + you.getStruggleStatistics().getAttribute(ACTIONS_TO_DO).decreaseValue(1); + } else { + mainPanelGame.getGamePanel().changeActiveOptionsPanel(); + turnOffUseItem.turnOff(roundManager,mainPanelGame); + } + } - you.getStruggleStatistics().getAttribute(ACTIONS_TO_DO).decreaseValue(1); + + + } } From c0ca4b40ef8925ccc08c2087be64a26ae8bad440 Mon Sep 17 00:00:00 2001 From: Filpus Date: Thu, 26 Jan 2023 12:09:20 +0100 Subject: [PATCH 2/2] lol --- src/game/equipment/DisposableItem.java | 7 +++++-- src/game/equipment/examples/HolyWater.java | 4 ++-- src/gui/actionListener/basicActionsListener/UseItem.java | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/game/equipment/DisposableItem.java b/src/game/equipment/DisposableItem.java index d9a9380..dd6957e 100644 --- a/src/game/equipment/DisposableItem.java +++ b/src/game/equipment/DisposableItem.java @@ -6,7 +6,7 @@ public abstract class DisposableItem extends Item { private int usageCount; protected String description; - boolean onEnemy = false; + private int onEnemy = 0; public DisposableItem( int usageCount) { super(""); @@ -34,7 +34,10 @@ public String getDescription() return description; } - public boolean isOnEnemy() { + public int isOnEnemy() { return onEnemy; } + public void setOnEnemy(int parametr){ + onEnemy = parametr; + } } diff --git a/src/game/equipment/examples/HolyWater.java b/src/game/equipment/examples/HolyWater.java index f624275..5eb83ca 100644 --- a/src/game/equipment/examples/HolyWater.java +++ b/src/game/equipment/examples/HolyWater.java @@ -10,10 +10,10 @@ public class HolyWater extends DisposableItem implements WarhammerData { - boolean onEnemy = true; + public HolyWater( int usageCount) { super( usageCount);setItemPathPicture(holyWaterPath); - + setOnEnemy(1); description = "Paladyn Edward claims that it works against monsters"; } diff --git a/src/gui/actionListener/basicActionsListener/UseItem.java b/src/gui/actionListener/basicActionsListener/UseItem.java index 4c9afe2..ddb9275 100644 --- a/src/gui/actionListener/basicActionsListener/UseItem.java +++ b/src/gui/actionListener/basicActionsListener/UseItem.java @@ -29,7 +29,7 @@ public void actionPerformed(ActionEvent e) { Creature you = roundManager.getGameObjectWithTurn().getCreature(); if(you instanceof Character){ - if(!((Character) you).getInventory().getSelectedDisposableItem().isOnEnemy()) { + if(!(((Character) you).getInventory().getSelectedDisposableItem().isOnEnemy()== 0)) { ((Character) you).getInventory().getSelectedDisposableItem().use(you); you.getStruggleStatistics().getAttribute(ACTIONS_TO_DO).decreaseValue(1); } else {