package controller.ui; import controller.GameController; import controller.factories.InteractiveTileFactory; import controller.tiles.interactive.InteractiveTileController; import model.Inventory; import model.items.ITEM_NAME; import model.tiles.InteractiveTileModel; import model.tiles.InteractiveTileType; import util.Translator; import util.economy.EconomyData; import util.economy.EconomyInfo; import view.tile.TileManager; import java.awt.*; import java.util.ArrayList; import java.util.List; import java.util.Map; public class ShopController { private GameController gameController; public ShopController(GameController gameController){ this.gameController = gameController; } public void setDraggingOffer(InteractiveTileController controller) { EconomyData data = EconomyInfo.infoOf(controller.getModel().getTileType()); List> entries = new ArrayList<>(data.getCosts().get(1).entrySet()); for(Map.Entry entry : entries){ Inventory inventory = gameController.getModel().getInventory(); if(!inventory.hasEnough(entry.getKey(), entry.getValue())){ return; }else{ inventory.spend(entry.getKey(), entry.getValue()); } } if(controller != null){ gameController.addInteractiveTileController(controller); gameController.getView().tileManager.setDraggingTile(controller); gameController.getView().toggleShop(); //gameController.createInteractiveTileModel(1,1, InteractiveTileType.SAWMILL); System.out.println(controller.getModel().getWorldGridX()); } } }