Skip to content

Commit

Permalink
Pulling from master. Updates to transaction class
Browse files Browse the repository at this point in the history
  • Loading branch information
john committed Apr 11, 2015
2 parents e792acc + ab3b505 commit 39793b2
Show file tree
Hide file tree
Showing 5 changed files with 151 additions and 95 deletions.
35 changes: 27 additions & 8 deletions MerchantRPGCSE2102/src/config/inventory.txt
Original file line number Diff line number Diff line change
@@ -1,11 +1,30 @@
merchant 1
water 3
armor 5
food 10
Water 2
Candy 5
Apple 7
Bread 3
Cake 14
Jerky 9
merchant 2
wood 3
tarp 6
PigIron 19
HighQualityIron 25
Steel 29
WoodPlanks 10
HighQualityWood 18
FairyTreeWood 40
WornSword 23
IronSword 29
SteelSword 38
FairySteelSword 95
BlessedIronDaggerofPig 50000
merchant 3
glass 3
tape 13
rope 5
LooseGems 60
FineCutDiamond 70
SilverBracelets 85
SilverNecklace 93
SilverEmeraldRing 100
GoldBracelets 84
GoldNecklace 103
GoldSapphireRing 133
GoldDiamondCrown 210
ExpensiveJewlery? 500
33 changes: 24 additions & 9 deletions MerchantRPGCSE2102/src/controller/RPGame.java
Original file line number Diff line number Diff line change
Expand Up @@ -75,9 +75,9 @@ else if (currentMerchant == 3)
*/
public void buildMerchants()
{
_merchant1 = new Merchant("Merchant 1", 1000, merchantInventoryList1);
_merchant2 = new Merchant("Merchant 2", 1000, merchantInventoryList2);
_merchant3 = new Merchant("Merchant 3", 1000, merchantInventoryList3);
_merchant1 = new Merchant("Cheap Merchant", 200, merchantInventoryList1);
_merchant2 = new Merchant("Medium Merchant", 600, merchantInventoryList2);
_merchant3 = new Merchant("Expensive Merchant", 1000, merchantInventoryList3);
}

/**
Expand Down Expand Up @@ -131,8 +131,7 @@ public void createTransaction(Player player, Merchant targetMerchant)
if(_transactionLimit > 0)
{
toggleMovement("OFF");
Transaction newTransaction = new Transaction(player, targetMerchant);
toggleMovement("ON");
Transaction newTransaction = new Transaction(player, targetMerchant, this);
_transactionLimit -= 1;
}
else
Expand Down Expand Up @@ -164,11 +163,13 @@ public void advanceDailyCycle(){

scaleAllMerchantPrices(allMerchants); //will scale all the prices of the items that the merchants hold based on their dailyRandomPercent

if( (_currentDay % 3) == 0) //will increase the merchant's base cash every 3 days
if( (_currentDay % 6) == 0) //will increase the merchant's base cash every 6 days
{
addAndRefreshCash(_merchant1, 100);
addAndRefreshCash(_merchant2, 100);
addAndRefreshCash(_merchant3, 100);
int multiplier = (int) Math.floor(_currentDay / 10) + 1;

addAndRefreshCash(_merchant1, multiplier * 100);
addAndRefreshCash(_merchant2, multiplier * 100);
addAndRefreshCash(_merchant3, multiplier * 100);
}
else //if not on a third day, will just refresh the merchant's cash amount
{
Expand Down Expand Up @@ -252,6 +253,15 @@ public int getDay()
{
return _currentDay;
}

/**
*
* @return Movement variable
*/
public boolean getMovement()
{
return _movement;
}

/**
* Main method used to test the GUI components since test classes do not maintain the GUI
Expand All @@ -266,6 +276,7 @@ public static void main(String[] args) throws InterruptedException
playerInventory.addAll(_rpg.getMerchantInventoryList(2));
playerInventory.addAll(_rpg.getMerchantInventoryList(3));
_rpg.buildPlayer("test", 500, playerInventory);
<<<<<<< HEAD
_rpg.getPlayer().getItem("armor").increaseQuantity(15);


Expand Down Expand Up @@ -308,5 +319,9 @@ public static void main(String[] args) throws InterruptedException
mapui.repaint();
Thread.sleep(100/12); // Controls the speed of the game (currently 120 frames/second)
}
=======
_rpg.getPlayer().getItem("WoodPlanks").increaseQuantity(15);
_rpg.createTransaction(_rpg.getPlayer(), _rpg.getMerchant(3));
>>>>>>> ab3b505559eadb3b59b74c449dcbbe17d32e2197
}
}
22 changes: 11 additions & 11 deletions MerchantRPGCSE2102/src/controller/Transaction.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,13 @@ public class Transaction
private Player _player;
private Merchant _targetMerchant;
private TransactionUI _window;
private RPGame _game;

public Transaction(Player player, Merchant targetMerchant)
public Transaction(Player player, Merchant targetMerchant, RPGame game)
{
_player = player;
_targetMerchant = targetMerchant;
_game = game;
_window = new TransactionUI(this);
_window.setVisible(true);
}
Expand Down Expand Up @@ -61,16 +63,6 @@ public boolean actionSell(String itemName, int amount) throws NotInInventoryExce
return false;
}

/**
* This method will push a true up to the class calling it
* incomplete method
* @return returns true
*/
public boolean actionCancel()
{
return true;
}

/**
* Searches the player inventory for the item matching the item name
* @param itemName name of the item
Expand All @@ -91,6 +83,14 @@ public Item searchMerchantInventory(String itemName)
return _targetMerchant.getItem(itemName);
}

/**
* Toggles the RPGame movement back on
*/
public void endTransaction()
{
_game.toggleMovement("ON");
}

/**
* Returns the player in transaction
* @return returns the player
Expand Down
18 changes: 12 additions & 6 deletions MerchantRPGCSE2102/src/tests/MockGame.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,15 @@ public static void main(String[] args) throws InterruptedException {
Merchant merch3 = new Merchant("Sam", 0, null);

// CREATING MAP AND INITIALIZE PLAYER AND MERCHANTS
// This sets up the window for the game which is a 300 by 300 pixels JFrame
Player player = new Player("TestPlayer", 0, null);
Map map = new Map(30, 40);
map.initializePlayer(player, 0, 0);
Map map = new Map(30, 40);
map.initializePlayer(player, 15, 20);
map.initializeMerchant(merch1, 15, 0);
map.initializeMerchant(merch2, 29, 20);
map.initializeMerchant(merch3, 15, 39);

// CREATING JFRAME WINDOW
JFrame frame = new JFrame("Merchant RPG");

// CREATING MAPUI AND SPRITES
MapUI mapui = new MapUI(map, rpg);
mapui.createPlayerSprite(15, 20);
Expand All @@ -35,16 +38,19 @@ public static void main(String[] args) throws InterruptedException {

// ADDING MAPUI TO JFRAME
frame.add(mapui);

// SETTING PROPERTIES OF JFRAME
frame.setSize(RPGame.WIDTH, RPGame.HEIGHT);
frame.setResizable(false);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);

// MAIN GAME LOOP
while (true) {
mapui.move();
mapui.repaint();
Thread.sleep(10);
Thread.sleep(100/12); // Controls the speed of the game (currently 120 frames/second)
}
}

Expand Down
Loading

0 comments on commit 39793b2

Please sign in to comment.