| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- 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<Map.Entry<ITEM_NAME, Integer>> entries = new ArrayList<>(data.getCosts().get(1).entrySet());
- for(Map.Entry<ITEM_NAME, Integer> 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());
- }
- }
- }
|