From 8bd30fdc95e334587bd212ca07113751872a11c4 Mon Sep 17 00:00:00 2001 From: John W Bojorquez Date: Sat, 25 Apr 2015 12:35:48 -0400 Subject: [PATCH] Added collidable merchants that act as objects --- MerchantRPGCSE2102/src/sprites/PlayerSprite.java | 8 ++++++-- MerchantRPGCSE2102/src/view/MapUI.java | 10 ++++++---- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/MerchantRPGCSE2102/src/sprites/PlayerSprite.java b/MerchantRPGCSE2102/src/sprites/PlayerSprite.java index 184cfc0..d2e78bd 100644 --- a/MerchantRPGCSE2102/src/sprites/PlayerSprite.java +++ b/MerchantRPGCSE2102/src/sprites/PlayerSprite.java @@ -121,7 +121,8 @@ public void keyReleased(KeyEvent e) { } if (e.getKeyCode() == KeyEvent.VK_F) { if (isMerchantNearby()) - mapui.game.createTransaction(mapui.map.getPlayer(), mapui.map.getCurrentNearbyMerchant()); // RPGame initializes Trade + if (mapui.getMap().getCurrentNearbyMerchant().getName() != null) + mapui.game.createTransaction(mapui.map.getPlayer(), mapui.map.getCurrentNearbyMerchant()); // RPGame initializes Trade } @@ -287,7 +288,10 @@ public void setY(int y) { } public boolean isMerchantNearby() { - return (mapui.getMap().collisionTo("east"))||(mapui.getMap().collisionTo("west"))||(mapui.getMap().collisionTo("south"))||(mapui.getMap().collisionTo("north"))||(mapui.getMap().collisionTo("northeast"))||(mapui.getMap().collisionTo("northwest"))||(mapui.getMap().collisionTo("southeast"))||(mapui.getMap().collisionTo("southwest")) && (mapui.getMap().getCurrentNearbyMerchant() != null); + if ((mapui.getMap().collisionTo("east"))||(mapui.getMap().collisionTo("west"))||(mapui.getMap().collisionTo("south"))||(mapui.getMap().collisionTo("north"))||(mapui.getMap().collisionTo("northeast"))||(mapui.getMap().collisionTo("northwest"))||(mapui.getMap().collisionTo("southeast"))||(mapui.getMap().collisionTo("southwest")) && (mapui.getMap().getCurrentNearbyMerchant() != null)) + return mapui.getMap().getCurrentNearbyMerchant() != null; + else + return false; } } diff --git a/MerchantRPGCSE2102/src/view/MapUI.java b/MerchantRPGCSE2102/src/view/MapUI.java index bba61c8..2c8378d 100644 --- a/MerchantRPGCSE2102/src/view/MapUI.java +++ b/MerchantRPGCSE2102/src/view/MapUI.java @@ -76,10 +76,12 @@ public void paint(Graphics g) { merchant.paint(g2d); if (player.isMerchantNearby()) { - if (map.getCurrentNearbyMerchant().getCol() > map.getCols()/2) - g2d.drawImage(loadImage("dialogbubble-reverse.png"), map.getCurrentNearbyMerchant().getCol()*tileSize - 85, map.getCurrentNearbyMerchant().getRow()*tileSize - 60, null); - else - g2d.drawImage(loadImage("dialogbubble.png"), (map.getCurrentNearbyMerchant().getCol() + 1)*tileSize, map.getCurrentNearbyMerchant().getRow()*tileSize - 60, null); + if (map.getCurrentNearbyMerchant().getName() != null) { + if (map.getCurrentNearbyMerchant().getCol() > map.getCols()/2) + g2d.drawImage(loadImage("dialogbubble-reverse.png"), map.getCurrentNearbyMerchant().getCol()*tileSize - 85, map.getCurrentNearbyMerchant().getRow()*tileSize - 60, null); + else + g2d.drawImage(loadImage("dialogbubble.png"), (map.getCurrentNearbyMerchant().getCol() + 1)*tileSize, map.getCurrentNearbyMerchant().getRow()*tileSize - 60, null); + } } g2d.setColor(Color.BLUE);