Thread: PI Trade Duping I know theres tut's but can't seem to Fix PI

Page 1 of 2 12 LastLast
Results 1 to 10 of 13
  1. #1 PI Trade Duping I know theres tut's but can't seem to Fix PI 
    Registered Member jackd019's Avatar
    Join Date
    Aug 2011
    Posts
    431
    Thanks given
    5
    Thanks received
    8
    Rep Power
    11
    Its the same thing accept then Quickly Accept and decline I can't seem to fix it ...


    Code:
    	case 13092:
    			 if (System.currentTimeMillis() - c.lastButton < 400) {
    
    					c.lastButton = System.currentTimeMillis();
    
    					break;
    
    				} else {
    
    					c.lastButton = System.currentTimeMillis();
    
    				}
    			Client ot = (Client) Server.playerHandler.players[c.tradeWith];
    			if(ot == null) {
    				c.getTradeAndDuel().declineTrade();
    				c.sendMessage("Trade declined as the other player has disconnected.");
    				break;
    			}
    			c.getPA().sendFrame126("Waiting for other player...", 3431);
    			ot.getPA().sendFrame126("Other player has accepted", 3431);	
    			c.goodTrade= true;
    			ot.goodTrade= true;
    			
    			for (GameItem item : c.offeredItems) {
    				if (item.id > 0) {
    					if(ot.getItems().freeSlots() < c.offeredItems.size()) {					
    						c.sendMessage(ot.playerName +" only has "+ot.getItems().freeSlots()+" free slots, please remove "+(c.offeredItems.size() - ot.getItems().freeSlots())+" items.");
    						ot.sendMessage(c.playerName +" has to remove "+(c.offeredItems.size() - ot.getItems().freeSlots())+" items or you could offer them "+(c.offeredItems.size() - ot.getItems().freeSlots())+" items.");
    						c.goodTrade= false;
    						ot.goodTrade= false;
    						c.getPA().sendFrame126("Not enough inventory space...", 3431);
    						ot.getPA().sendFrame126("Not enough inventory space...", 3431);
    							break;
    					} else {
    						c.getPA().sendFrame126("Waiting for other player...", 3431);				
    						ot.getPA().sendFrame126("Other player has accepted", 3431);
    						c.goodTrade= true;
    						ot.goodTrade= true;
    						}
    					}	
    				}	
    				if (c.inTrade && !c.tradeConfirmed && ot.goodTrade && c.goodTrade) {
    					c.tradeConfirmed = true;
    					if(ot.tradeConfirmed) {
    						c.getTradeAndDuel().confirmScreen();
    						ot.getTradeAndDuel().confirmScreen();
    						break;
    					}
    							  
    				}
    			break;
    					
    			case 13218:
    			  if (System.currentTimeMillis() - c.lastButton < 800) {
    
    					c.lastButton = System.currentTimeMillis();
    
    					break;
    
    				} else {
    
    					c.lastButton = System.currentTimeMillis();
    
    				}
    			c.tradeAccepted = true;
    			Client ot1 = (Client) Server.playerHandler.players[c.tradeWith];
    				if (ot1 == null) {
    					c.getTradeAndDuel().declineTrade();
    					c.sendMessage("Trade declined as the other player has disconnected.");
    					break;
    				}
    				
    				if (c.inTrade && c.tradeConfirmed && ot1.tradeConfirmed && !c.tradeConfirmed2) {
    					c.tradeConfirmed2 = true;
    					if(ot1.tradeConfirmed2) {	
    						c.acceptedTrade = true;
    						ot1.acceptedTrade = true;
    						c.getTradeAndDuel().giveItems();
    						ot1.getTradeAndDuel().giveItems();
    						break;
    					}
    					ot1.getPA().sendFrame126("Other player has accepted.", 3535);
    					c.getPA().sendFrame126("Waiting for other player...", 3535);
    				}
    				break;
    Code:
    package server.model.players;
    
    import java.util.concurrent.CopyOnWriteArrayList;
    
    import server.Config;
    import server.Server;
    import server.model.items.GameItem;
    import server.model.items.Item;
    import server.util.Misc;
    
    
    public class TradeAndDuel{
    
    	private Client c;
    	public TradeAndDuel(Client Client) {
    		this.c = Client;
    	}
    	
    	/**
    	* Trading
    	**/
    	
    	public void requestTrade(int id){
    		try {
    			Client o = (Client) Server.playerHandler.players[id];
    			if (id == c.playerId)
    				return;
    			c.tradeWith = id;
    			if(!c.inTrade && o.tradeRequested && o.tradeWith == c.playerId) {
    				c.getTradeAndDuel().openTrade();
    				o.getTradeAndDuel().openTrade();			
    			} else if(!c.inTrade) {
    				
    				c.tradeRequested = true;
    				c.sendMessage("Sending trade request...");
    				o.sendMessage(Misc.formatPlayerName(c.playerName) + ":tradereq:");
    			}
    		} 
    		catch (Exception e) {
    			Misc.println("Error requesting trade.");
    		}
    	}
    	
    	public void openTrade() {
    		Client o = (Client) Server.playerHandler.players[c.tradeWith];
    		if(o == null) {
    			return;
    		}
    		c.inTrade = true;
    		c.canOffer = true;
    		c.tradeStatus = 1;
    		c.tradeRequested = false;
    		c.getItems().resetItems(3322);
    		resetTItems(3415);
    		resetOTItems(3416);
    		String out = o.playerName;
    		if(o.playerRights == 1) {
    			out = "@[email protected]" + out;
    		} 
    		else if(o.playerRights == 2) {
    			out = "@[email protected]" + out;
    		}
    		c.getPA().sendFrame126("Trading with: " +Misc.formatPlayerName(out)+"" ,3417);
    		c.getPA().sendFrame126("", 3431);
    		c.getPA().sendFrame126("Are you sure you want to make this trade?", 3535);
    		c.getPA().sendFrame248(3323, 3321);
    		displayWAndI(c);
    		c.getPA().resetFollow();
    	}	
    	
    	
    	
    	public void resetTItems(int WriteFrame) {
           		synchronized(c) {
    			c.getOutStream().createFrameVarSizeWord(53);
    			c.getOutStream().writeWord(WriteFrame);
    			int len = c.offeredItems.toArray().length;
    			int current = 0;
    			c.getOutStream().writeWord(len);
    			for (GameItem item : c.offeredItems) {
    				if (item.amount > 254) {
    					c.getOutStream().writeByte(255);
    					c.getOutStream().writeDWord_v2(item.amount);
    				} else {
    					c.getOutStream().writeByte(item.amount);
    				}
    				c.getOutStream().writeWordBigEndianA(item.id + 1);
    				current++;
    			}
    			if(current < 27) {
    				for(int i = current; i < 28; i++) {
    					c.getOutStream().writeByte(1);
    					c.getOutStream().writeWordBigEndianA(-1);
    				}
    			}
    			c.getOutStream().endFrameVarSizeWord();
    			c.flushOutStream();
    		}
    	}
    
    	public boolean fromTrade(int itemID, int fromSlot, int amount) {
    		Client o = (Client) Server.playerHandler.players[c.tradeWith];
    		if(o == null) {
    			return false;
    		}
    		try {
    			if (!c.inTrade || !c.canOffer) {
    				declineTrade();
    				return false;
    			}
    			if(!c.getItems().playerHasItem(itemID, amount))
    			return false;
    			c.tradeConfirmed = false;
    			o.tradeConfirmed = false;
    			if(!Item.itemStackable[itemID]) {
    				for(int a = 0; a < amount; a++) {
    					for (GameItem item : c.offeredItems) {
    						if(item.id == itemID) {	
    							if(!item.stackable) {	
    								c.offeredItems.remove(item);	
    								c.getItems().addItem(itemID, 1);
    								o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);
    								displayWAndI(c);	
    							} else {
    								if(item.amount > amount) {
    									item.amount -= amount;
    									c.getItems().addItem(itemID, amount);
    									o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);
    									displayWAndI(c);								
    								} else {
    									amount = item.amount;
    									c.offeredItems.remove(item);
    									c.getItems().addItem(itemID, amount);
    									o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);
    									displayWAndI(c);
    								}
    							}
    						break;
    						}
    						o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);
    
    						c.tradeConfirmed = false;
    						o.tradeConfirmed = false;
    						c.getItems().resetItems(3322);
    						resetTItems(3415);
    						o.getTradeAndDuel().resetOTItems(3416);
    						c.getPA().sendFrame126("", 3431);
    						o.getPA().sendFrame126("", 3431);
    						displayWAndI(c);	
    					}
    				}	
    			}
    			for (GameItem item : c.offeredItems) {
    				if(item.id == itemID) {
    					if(!item.stackable) {
    					} else  {
    						if(item.amount > amount) {
    							item.amount -= amount;
    							c.getItems().addItem(itemID, amount);
    							o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);
    							displayWAndI(c);	
    						} else  {
    							amount = item.amount;
    							c.offeredItems.remove(item);
    							c.getItems().addItem(itemID, amount);
    							o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);
    							displayWAndI(c);	
    						}
    					}
    					break;
    				}
    			}
    			o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);	
    			c.tradeConfirmed = false;
    			o.tradeConfirmed = false;
    			c.getItems().resetItems(3322);
    			resetTItems(3415);
    			o.getTradeAndDuel().resetOTItems(3416);
    			c.getPA().sendFrame126("", 3431);
    			o.getPA().sendFrame126("", 3431);
    			displayWAndI(c);
    		} catch(Exception e){
    			System.out.println("FromTrade method fail.");
    		}
    		return true;
    	}
    		
    	public boolean tradeItem(int itemID, int fromSlot, int amount) {
    		Client o = (Client) Server.playerHandler.players[c.tradeWith];
    		if(o == null) {
    			return false;
    		}
    		for (int i : Config.ITEM_TRADEABLE) {
    			if(i == itemID) {
    				c.sendMessage("You can't trade this item.");
    				return false;
    			}		
    		}
    		if(amount > 2147483647) {
    			c.sendMessage("You can't offer that much!");
    			return false;
    		}
    		c.tradeConfirmed = false;
    		o.tradeConfirmed = false;
    		if(!Item.itemStackable[itemID] && !Item.itemIsNote[itemID]) {
    			for(int a = 0; a < amount; a++) {
    				if(c.getItems().playerHasItem(itemID, 1)) {
    					c.offeredItems.add(new GameItem(itemID, 1));
    					c.getItems().deleteItem(itemID, c.getItems().getItemSlot(itemID), 1);
    					o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);
    					displayWAndI(c);	
    				}
    			}
    			o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);
    			displayWAndI(c);	
    			c.getItems().resetItems(3322);
    			resetTItems(3415);
    			o.getTradeAndDuel().resetOTItems(3416);
    			c.getPA().sendFrame126("", 3431);
    			o.getPA().sendFrame126("", 3431);
    		}
    		if (c.getItems().getItemCount(itemID) < amount) {
    			amount = c.getItems().getItemCount(itemID);
    			if (amount == 0)
    			return false;
    		}
            	if (!c.inTrade || !c.canOffer) {
    			declineTrade();
    			return false;
    		}
    		if(Item.itemStackable[itemID] || Item.itemIsNote[itemID]) {
    			boolean inTrade = false;
    			for(GameItem item : c.offeredItems) {
    				if(item.id == itemID) {
    					int itemAmount = c.getItems().getItemAmount(item.id);
    					if(c.getItems().playerHasItem(item.id, itemAmount)) {
    						if(itemAmount + amount > 2147483647 || itemAmount + amount < -1) {
    							c.sendMessage("This offer cannot be completed as "+o.playerName+" has max item value.");
    							o.sendMessage("You need some "+c.getItems().getItemName(item.id)+" space to complete this trade.");
    							return false;
    						}
    					}
    					inTrade = true;
    					if(item.amount + amount > 2147483647) {
    						c.sendMessage("You can't offer that much!");
    						return false;
    					}
    					item.amount += amount;
    					c.getItems().deleteItem(itemID, c.getItems().getItemSlot(itemID), amount);
    					displayWAndI(c);	
    					break;	
    				}
    			}
    			if(!inTrade) {
    				c.offeredItems.add(new GameItem(itemID, amount));
    				c.getItems().deleteItem(itemID, fromSlot, amount);
    				o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);
    				displayWAndI(c);	
    			}
    		}
    		o.getPA().sendFrame126("Trading with: " + Misc.formatPlayerName(c.playerName)+"" ,3417);
    		displayWAndI(c);	
    		c.getItems().resetItems(3322);
    		resetTItems(3415);
    		o.getTradeAndDuel().resetOTItems(3416);
    		c.getPA().sendFrame126("", 3431);
    		o.getPA().sendFrame126("", 3431);
    		return true;
    	}
    	
    	
    	public void resetTrade() {
    		c.offeredItems.clear();
    		c.inTrade = false;
    		c.tradeWith = 0;
    		c.canOffer = true;
    		c.tradeConfirmed = false;
    		c.tradeConfirmed2 = false;
    		c.acceptedTrade = false;
    		c.getPA().removeAllWindows();
    		c.tradeResetNeeded = false;
    		c.getPA().sendFrame126("Are you sure you want to make this trade?", 3535);
    	}
    	public void declineTrade() {
    		c.tradeStatus = 0;
    		declineTrade(true);
    	}
    	
    
    	public void declineTrade(boolean tellOther) {
    		c.getPA().removeAllWindows();
    		Client o = (Client) Server.playerHandler.players[c.tradeWith];
    		if (o == null) {
    			return;
    		}
    		
    		if(tellOther){
    			o.getTradeAndDuel().declineTrade(false);
    			o.getTradeAndDuel().c.getPA().removeAllWindows();
    		}
    			
    		for(GameItem item : c.offeredItems) {
    			if(item.amount < 1) {
    				continue;
    			}
    			if(item.stackable) {
    				c.getItems().addItem(item.id, item.amount);
    			} else {
    				for(int i = 0; i < item.amount; i++) {
    					c.getItems().addItem(item.id, 1);
    				}
    			}
    		}
    		c.canOffer = true;
    		c.tradeConfirmed = false;
    		c.tradeConfirmed2 = false;
    		c.playerTradeWealth = 0;
    		c.offeredItems.clear();
    		c.inTrade = false;
    		c.tradeWith = 0;
    	}
    	
    		
    	public void resetOTItems(int WriteFrame) {
    		synchronized(c) {
    			Client o = (Client) Server.playerHandler.players[c.tradeWith];
    			if(o == null) {
    				return;
    			}	
    			c.getOutStream().createFrameVarSizeWord(53);
    			c.getOutStream().writeWord(WriteFrame);
    			int len = o.getTradeAndDuel().c.offeredItems.toArray().length;
    			int current = 0;
    			c.getOutStream().writeWord(len);
    			for (GameItem item : o.getTradeAndDuel().c.offeredItems) {
    				if (item.amount > 254) {
    					c.getOutStream().writeByte(255); // item's stack count. if over 254, write byte 255
    					c.getOutStream().writeDWord_v2(item.amount); 
    				} else {
    					c.getOutStream().writeByte(item.amount);
    				}
    				c.getOutStream().writeWordBigEndianA(item.id + 1); // item id
    				current++;
    			}
    			if(current < 27) {
    				for(int i = current; i < 28; i++) {
    					c.getOutStream().writeByte(1);
    					c.getOutStream().writeWordBigEndianA(-1);
    				}
    			}
    			c.getOutStream().endFrameVarSizeWord();
    			c.flushOutStream();
    		}
    	}
    	
    	
    	public void confirmScreen() {
    		Client o = (Client) Server.playerHandler.players[c.tradeWith];
    		if(o == null) {
    			return;
    		}
    		c.canOffer = false;
    		c.getItems().resetItems(3214);
    		String SendTrade = "Absolutely nothing!";
    		String SendAmount = "";
    		int Count = 0;
    		for (GameItem item : c.offeredItems) {
    		    if (item.id > 0) {
    				if (item.amount >= 1000 && item.amount < 1000000) {
    					SendAmount = "@[email protected]" + (item.amount / 1000) + "K @[email protected](" + Misc.format(item.amount) + ")";
    				}  else if (item.amount >= 1000000) {
    					SendAmount = "" + (item.amount / 1000000) + " million @[email protected](" + Misc.format(item.amount) + ")";
    				} else {
    					SendAmount = "" + Misc.format(item.amount);
    				}
    
    				if(Count == 0) {	
    					SendTrade = c.getItems().getItemName(item.id);		
    				} else {
    					SendTrade = SendTrade + "\\n" + c.getItems().getItemName(item.id);
    				}
    
    				if (item.stackable) {
    					SendTrade = SendTrade + " x " + SendAmount;
    				}
    				Count++;
    			}
    		}
    		
    		c.getPA().sendFrame126(SendTrade, 3557);
    		SendTrade = "Absolutely nothing!";
    		SendAmount = "";
    		Count = 0;
    		
    		for (GameItem item : o.getTradeAndDuel().c.offeredItems) {
    		    if (item.id > 0) {
    				if (item.amount >= 1000 && item.amount < 1000000) {
    					SendAmount = "@[email protected]" + (item.amount / 1000) + "K @[email protected](" + Misc.format(item.amount) + ")";
    				}  else if (item.amount >= 1000000) {
    					SendAmount = "" + (item.amount / 1000000) + " million @[email protected](" + Misc.format(item.amount) + ")";
    				} else {
    					SendAmount = "" + Misc.format(item.amount);
    				}
    				SendAmount = SendAmount;
    				if (Count == 0) {
    					SendTrade = c.getItems().getItemName(item.id);		
    				} else {
    					SendTrade = SendTrade + "\\n" + c.getItems().getItemName(item.id);
    				}
    				if (item.stackable) {
    					SendTrade = SendTrade + " x " + SendAmount;
    				}
    				Count++;
    			}
    		}
    		c.getPA().sendFrame126(SendTrade, 3558);
    		c.getPA().sendFrame126(o.playerName, 3451);
    		c.getPA().sendFrame248(3443, 197);
    	}
    	
    	
    	public void giveItems() {
    		Client o = (Client) Server.playerHandler.players[c.tradeWith];
    		if(o == null) {
    			return;
    		}	
    		try{	
    			for(GameItem item : o.getTradeAndDuel().c.offeredItems){
    				if (item.id > 0) {
    					c.getItems().addItem(item.id, item.amount);
    			   	}
    			}
    			c.getPA().removeAllWindows();
    			c.tradeResetNeeded = true;
    		} catch(Exception e){
    			System.out.println("GiveItems method fail.");
    		}
    	}
    	
    	public void displayWAndI(Client c) {
    		Client o = (Client) Server.playerHandler.players[c.tradeWith];
    		c.playerTradeWealth = 0;
    		o.playerTradeWealth = 0;
    		for (GameItem item : c.offeredItems) {
    			c.playerTradeWealth += (c.getShops().getItemShopValue(item.id) * item.amount);
    		}
    
    		for (GameItem item : o.offeredItems) {
    			o.playerTradeWealth += (o.getShops().getItemShopValue(item.id) * item.amount);
    		}
    
    		int playerDifference1 = (c.playerTradeWealth - o.playerTradeWealth);
    		int playerDifference2 = (o.playerTradeWealth - c.playerTradeWealth);
    
    		boolean player1HasMore = (playerDifference1 > playerDifference2);
    		boolean equalsSame = (c.playerTradeWealth == o.playerTradeWealth);
    
    		if(c.playerTradeWealth < -1) {
    			c.playerTradeWealth = 2147483647;
    		}
    		if(o.playerTradeWealth < -1) {
    			o.playerTradeWealth = 2147483647;
    		}
    
    		String playerValue1 = ""+c.getPA().getTotalAmount(c, c.playerTradeWealth) +" ("+ Misc.format(c.playerTradeWealth) +")";
    		String playerValue2 = ""+c.getPA().getTotalAmount(o, o.playerTradeWealth) +" ("+ Misc.format(o.playerTradeWealth) +")";
    
    		if(c.playerTradeWealth > 2147483646) {
    			playerValue1 = "+"+ playerValue1;
    		}
    		if(o.playerTradeWealth > 2147483646) {
    			playerValue2 = "+"+ playerValue2;
    		}
    		if(equalsSame) {
    			c.getPA().sendFrame126("@[email protected] Trade", 23504);
    			o.getPA().sendFrame126("@[email protected] Trade", 23504);
    		} else if(player1HasMore) {
    			c.getPA().sendFrame126("[email protected]@"+c.getPA().getTotalAmount(c, playerDifference1) +" ("+ Misc.format(playerDifference1) +")", 23504);
    			o.getPA().sendFrame126("[email protected]@"+o.getPA().getTotalAmount(o, playerDifference1) +" ("+ Misc.format(playerDifference1) +")", 23504);
    		} else if(!player1HasMore) {
    			c.getPA().sendFrame126("[email protected]@"+c.getPA().getTotalAmount(c, playerDifference2) +" ("+ Misc.format(playerDifference2) +")", 23504);
    			o.getPA().sendFrame126("[email protected]@"+o.getPA().getTotalAmount(o, playerDifference2) +" ("+ Misc.format(playerDifference2) +")", 23504);
    		}
    		c.getPA().sendFrame126(playerValue1, 23506);
    		c.getPA().sendFrame126(playerValue2, 23507);
    		o.getPA().sendFrame126(playerValue2, 23506);
    		o.getPA().sendFrame126(playerValue1, 23507);
    		c.getPA().sendFrame126(Misc.formatPlayerName(o.playerName)+" has\\n "+o.getItems().freeSlots()+" free\\n inventory slots.", 23505);
    		o.getPA().sendFrame126(Misc.formatPlayerName(c.playerName)+" has\\n "+c.getItems().freeSlots()+" free\\n inventory slots.", 23505);
    	}
    
    		
    	/**
    	* Dueling
    	**/
    	
    	public CopyOnWriteArrayList<GameItem> otherStakedItems = new CopyOnWriteArrayList<GameItem>();
    	public CopyOnWriteArrayList<GameItem> stakedItems = new CopyOnWriteArrayList<GameItem>();
    	
    	public void requestDuel(int id) {
    		try {
    			if (id == c.playerId)
    				return;
    			resetDuel();
    			resetDuelItems();
    			c.duelingWith = id;
    			Client o = (Client) Server.playerHandler.players[id];
    			if(o == null) {
    				return;
    			}
    			if (c.playerRights == 2) {
    			c.sendMessage("Admins can not duel!");
    			}
    			c.duelRequested = true;
    			if(c.duelStatus == 0 && o.duelStatus == 0 && c.duelRequested && o.duelRequested && c.duelingWith == o.getId() && o.duelingWith == c.getId()) {
    				if(c.goodDistance(c.getX(), c.getY(), o.getX(), o.getY(), 1)) {			
    					c.getTradeAndDuel().openDuel();
    					o.getTradeAndDuel().openDuel();
    				} else {
    					c.sendMessage("You need to get closer to your opponent to start the duel.");
    				}
    
    			} else {
    				c.sendMessage("Sending duel request...");
    				o.sendMessage(c.playerName+":duelreq:");		
    			}
    		} catch (Exception e) {
    			Misc.println("Error requesting duel.");
    		}
    	}
    	
    	
    	public void openDuel() {
    		Client o = (Client) Server.playerHandler.players[c.duelingWith];
    		if(o == null) {
    			return;
    		}	
    		c.duelStatus = 1;
    		c.openDuel = true;
    		o.openDuel = true;
    		refreshduelRules();
    		refreshDuelScreen();
    		c.canOffer = true;
    		for (int i = 0; i < c.playerEquipment.length; i++) {
    			sendDuelEquipment(c.playerEquipment[i], c.playerEquipmentN[i], i);
    		}
    		c.getPA().sendFrame126("Dueling with: " + o.playerName + " (level-" + o.combatLevel + ")", 6671);
    		c.getPA().sendFrame126("", 6684);
    		c.getPA().sendFrame248(6575, 3321);
    		c.getItems().resetItems(3322);
    	}
    	
    	public void sendDuelEquipment(int itemId, int amount, int slot) {
    		synchronized(c) {
    			if(itemId != 0) {
    				c.getOutStream().createFrameVarSizeWord(34);
    				c.getOutStream().writeWord(13824);
    				c.getOutStream().writeByte(slot);
    				c.getOutStream().writeWord(itemId+1);
    
    				if (amount > 254) {
    					c.getOutStream().writeByte(255);
    					c.getOutStream().writeDWord(amount);
    				} else {
    					c.getOutStream().writeByte(amount);
    				}
    				c.getOutStream().endFrameVarSizeWord();
    				c.flushOutStream();
    			}
    		}
    	}
    	
    	public void refreshduelRules() {
    		for(int i = 0; i < c.duelRule.length; i++) {	
    			c.duelRule[i] = false;
    		}
    		c.getPA().sendFrame87(286, 0);
    		c.duelOption = 0;
    	}
    	
    	public void refreshDuelScreen() {
    		synchronized(c) {
    			Client o = (Client) Server.playerHandler.players[c.duelingWith];
    			if(o == null) {
    				return;
    			}
    			c.getOutStream().createFrameVarSizeWord(53);
    			c.getOutStream().writeWord(6669);
    			c.getOutStream().writeWord(stakedItems.toArray().length);
    			int current = 0;
    			for(GameItem item : stakedItems) {
    				if (item.amount > 254) {
    					c.getOutStream().writeByte(255); 
    					c.getOutStream().writeDWord_v2(item.amount);	
    				} else  {
    					c.getOutStream().writeByte(item.amount);
    				}
    				if (item.id > Config.ITEM_LIMIT || item.id < 0) {
    					item.id = Config.ITEM_LIMIT;
    				}
    				c.getOutStream().writeWordBigEndianA(item.id + 1);
    				
    				current++;
    			}
    			
    			if(current < 27) {
    				for(int i = current; i < 28; i++) {
    					c.getOutStream().writeByte(1);
    					c.getOutStream().writeWordBigEndianA(-1);
    				}
    			}
    			c.getOutStream().endFrameVarSizeWord();
    			c.flushOutStream();
    			
    			c.getOutStream().createFrameVarSizeWord(53);
    			c.getOutStream().writeWord(6670);
    			c.getOutStream().writeWord(o.getTradeAndDuel().stakedItems.toArray().length);
    			current = 0;	
    			for (GameItem item : o.getTradeAndDuel().stakedItems) {
    				if (item.amount > 254) {
    					c.getOutStream().writeByte(255);
    					c.getOutStream().writeDWord_v2(item.amount);
    				}  else  {
    					c.getOutStream().writeByte(item.amount);
    				}
    				if (item.id > Config.ITEM_LIMIT || item.id < 0) {
    					item.id = Config.ITEM_LIMIT;
    				}
    				c.getOutStream().writeWordBigEndianA(item.id + 1);
    				current++;
    			}
    			
    			if(current < 27) {
    				for(int i = current; i < 28; i++) {
    					c.getOutStream().writeByte(1);
    					c.getOutStream().writeWordBigEndianA(-1);
    				}
    			}
    			c.getOutStream().endFrameVarSizeWord();
    			c.flushOutStream();
    		}
    	}
    	
    	
    	public boolean stakeItem(int itemID, int fromSlot, int amount) {
    		
    		for (int i : Config.ITEM_TRADEABLE) {
    			if(i == itemID) {
    				c.sendMessage("You can't stake this item.");
    				return false;
    			}
    		}
                    /*if (!c.playerName.equalsIgnoreCase("Terrence")) {
    				c.sendMessage("Staking has been disabled due to dupes and glitches, will be fixed soon.");
    		return false;
    		}		
    		}*/
    		if (amount <= 0)
    			return false;
    		Client o = (Client) Server.playerHandler.players[c.duelingWith];
    		if (o == null ) {
    			declineDuel();
    			return false;
    		}
    		if (o.duelStatus <= 0 || c.duelStatus <= 0) {
    			declineDuel();
    			o.getTradeAndDuel().declineDuel();
    			return false;
    		}
    		if (!c.canOffer) {
    			return false;
    		}
    		changeDuelStuff();
    		if(!Item.itemStackable[itemID]) {
    			for(int a = 0; a < amount; a++) {
    				if(c.getItems().playerHasItem(itemID, 1)) {
    					stakedItems.add(new GameItem(itemID, 1));	
    					c.getItems().deleteItem(itemID, c.getItems().getItemSlot(itemID), 1);
    				}
    			}		
    			c.getItems().resetItems(3214);
    			c.getItems().resetItems(3322);
    			o.getItems().resetItems(3214);
    			o.getItems().resetItems(3322);
    			refreshDuelScreen();
    			o.getTradeAndDuel().refreshDuelScreen();
    			c.getPA().sendFrame126("", 6684);
    			o.getPA().sendFrame126("", 6684);
    		}
    		
    		if(!c.getItems().playerHasItem(itemID, amount)) {
    			return false;
    		}
    		if (Item.itemStackable[itemID] || Item.itemIsNote[itemID]) {
    			boolean found = false;
    			for (GameItem item : stakedItems) {
    				if (item.id == itemID) {
    					found = true;
    					item.amount += amount;
    					c.getItems().deleteItem(itemID, fromSlot, amount);
    					break;
    				}
    			}
    			if (!found) {
    				c.getItems().deleteItem(itemID, fromSlot, amount);
    				stakedItems.add(new GameItem(itemID, amount));
    			}
    		}
    		
    		c.getItems().resetItems(3214);
    		c.getItems().resetItems(3322);
    		o.getItems().resetItems(3214);
    		o.getItems().resetItems(3322);
    		refreshDuelScreen();
    		o.getTradeAndDuel().refreshDuelScreen();
    		c.getPA().sendFrame126("", 6684);
    		o.getPA().sendFrame126("", 6684);
    		return true;
    	}
    	
    	
    	public boolean fromDuel(int itemID, int fromSlot, int amount)  {
    		Client o = (Client) Server.playerHandler.players[c.duelingWith];
    		if (o == null ) {
    			declineDuel();
    			return false;
    		}
    		if (o.duelStatus <= 0 || c.duelStatus <= 0) {
    			declineDuel();
    			o.getTradeAndDuel().declineDuel();
    			return false;
    		}
    		if(Item.itemStackable[itemID]) {
    			if(c.getItems().freeSlots() - 1 < (c.duelSpaceReq)) {
    				c.sendMessage("You have too many rules set to remove that item.");
    				return false;
    			}
    		}
    
    		if(!c.canOffer){
    			return false;
    		}
    		
    		changeDuelStuff();
    		boolean goodSpace = true;
    		if(!Item.itemStackable[itemID]) {
    			for(int a = 0; a < amount; a++) {
    				for (GameItem item : stakedItems) {
    					if(item.id == itemID) {
    						if(!item.stackable) {
    							if(c.getItems().freeSlots() - 1 < (c.duelSpaceReq)) {
    								goodSpace = false;
    								break;
    							}
    							stakedItems.remove(item);	
    							c.getItems().addItem(itemID, 1);				
    						}  else  {
    							if(c.getItems().freeSlots() - 1 < (c.duelSpaceReq)) {
    								goodSpace = false;
    								break;
    							}
    							if(item.amount > amount) {
    								item.amount -= amount;
    								c.getItems().addItem(itemID, amount);						
    							} else  {
    								if(c.getItems().freeSlots() - 1 < (c.duelSpaceReq)) {
    									goodSpace = false;
    									break;
    								}
    								amount = item.amount;
    								stakedItems.remove(item);
    								c.getItems().addItem(itemID, amount);
    							}
    						}
    						break;
    					}
    					o.duelStatus = 1;
    					c.duelStatus = 1;					
    					c.getItems().resetItems(3214);
    					c.getItems().resetItems(3322);
    					o.getItems().resetItems(3214);
    					o.getItems().resetItems(3322);
    					c.getTradeAndDuel().refreshDuelScreen();
    					o.getTradeAndDuel().refreshDuelScreen();
    					o.getPA().sendFrame126("", 6684);
    				}
    			}		
    		}
    		
    		for (GameItem item : stakedItems) {
    			if(item.id == itemID) {
    				if(!item.stackable) {
    				} else {
    					if(item.amount > amount) {
    						item.amount -= amount;
    						c.getItems().addItem(itemID, amount);
    					} else {
    						amount = item.amount;
    						stakedItems.remove(item);
    						c.getItems().addItem(itemID, amount);
    					}
    				}
    				break;
    			}
    		}
    		o.duelStatus = 1;
    		c.duelStatus = 1;					
    		c.getItems().resetItems(3214);
    		c.getItems().resetItems(3322);
    		o.getItems().resetItems(3214);
    		o.getItems().resetItems(3322);
    		c.getTradeAndDuel().refreshDuelScreen();
    		o.getTradeAndDuel().refreshDuelScreen();
    		o.getPA().sendFrame126("", 6684);
    		if(!goodSpace) {
    			c.sendMessage("You have too many rules set to remove that item.");
    			return true;
    		}
            return true;
        }
    	
    	public void confirmDuel() {
    		Client o = (Client) Server.playerHandler.players[c.duelingWith];
    		if(o == null) {
    			declineDuel();
    			return;
    		}
    		String itemId = "";
    		for(GameItem item : stakedItems) {
    			if(Item.itemStackable[item.id] || Item.itemIsNote[item.id]) {
    				itemId += c.getItems().getItemName(item.id) + " x " + Misc.format(item.amount) +"\\n";
    			}  else  {
    				itemId += c.getItems().getItemName(item.id) + "\\n";
    			}
    		}
    		c.getPA().sendFrame126(itemId, 6516);
    		itemId = "";
    		for(GameItem item : o.getTradeAndDuel().stakedItems) {
    			if(Item.itemStackable[item.id] || Item.itemIsNote[item.id]) {
    				itemId += c.getItems().getItemName(item.id) + " x " + Misc.format(item.amount) +"\\n";
    			} else {
    				itemId += c.getItems().getItemName(item.id) +"\\n";
    			}
    		}
    		c.getPA().sendFrame126(itemId, 6517);
    		c.getPA().sendFrame126("", 8242);
    		for(int i = 8238; i <= 8253; i++) {
    			c.getPA().sendFrame126("", i);
    		}
    		c.getPA().sendFrame126("Hitpoints will be restored.", 8250);
    		c.getPA().sendFrame126("Boosted stats will be restored.", 8238);
    		if(c.duelRule[8]) {
    			c.getPA().sendFrame126("There will be obstacles in the arena.", 8239);
    		} 
    		c.getPA().sendFrame126("", 8240);
    		c.getPA().sendFrame126("", 8241);
    		
    		String[] rulesOption = {"Players cannot forfeit!", "Players cannot move.", "Players cannot use range.", "Players cannot use melee.", "Players cannot use magic.",  "Players cannot drink pots.",  "Players cannot eat food.", "Players cannot use prayer."};
    		
    		int lineNumber = 8242;
    		for(int i = 0; i < 8; i++) {
    			if(c.duelRule[i]) {
    				c.getPA().sendFrame126(""+rulesOption[i], lineNumber);
    				lineNumber ++;
    			}
    		}
    		c.getPA().sendFrame126("", 6571);
    		c.getPA().sendFrame248(6412, 197);
    		//c.getPA().showInterface(6412);
    	}
    	
    	
    	public void startDuel() {
    		Client o = (Client) Server.playerHandler.players[c.duelingWith];
    		if(o == null) {
    			duelVictory();
    		}
    		c.headIconHints = 2;
    		
    		if(c.duelRule[7]){
    			for(int p = 0; p < c.PRAYER.length; p++) { // reset prayer glows 
    				c.prayerActive[p] = false;
    				c.getPA().sendFrame36(c.PRAYER_GLOW[p], 0);		
    			}
    			c.headIcon = -1;
    			c.getPA().requestUpdates();
    		}		
    		if(c.duelRule[11]) {
    			c.getItems().removeItem(c.playerEquipment[0], 0);
    		}
    		if(c.duelRule[12]) {
    			c.getItems().removeItem(c.playerEquipment[1], 1);
    		}
    		if(c.duelRule[13]) {
    			c.getItems().removeItem(c.playerEquipment[2], 2);
    		}
    		if(c.duelRule[14]) {
    			c.getItems().removeItem(c.playerEquipment[3], 3);
    		}
    		if(c.duelRule[15]) {
    			c.getItems().removeItem(c.playerEquipment[4], 4);
    		}
    		if(c.duelRule[16]) {
    			c.getItems().removeItem(c.playerEquipment[5], 5);
    		}
    		if(c.duelRule[17]) {
    			c.getItems().removeItem(c.playerEquipment[7], 7);
    		}
    		if(c.duelRule[18]) {
    			c.getItems().removeItem(c.playerEquipment[9], 9);
    		}
    		if(c.duelRule[19]) {
    			c.getItems().removeItem(c.playerEquipment[10], 10);
    		}
    		if(c.duelRule[20]) {
    			c.getItems().removeItem(c.playerEquipment[12], 12);
    		}
    		if(c.duelRule[21]) {
    			c.getItems().removeItem(c.playerEquipment[13], 13);
    		}		
    		c.duelStatus = 5;
    		c.getPA().removeAllWindows();
    		c.specAmount = 10;
    		c.getItems().addSpecialBar(c.playerEquipment[c.playerWeapon]);
    		
    		if(c.duelRule[8]){	
    			if(c.duelRule[1]) {
    				c.getPA().movePlayer(c.duelTeleX, c.duelTeleY, 0);
    			} else {
    				c.getPA().movePlayer(3366 + Misc.random(12), 3246 + Misc.random(6), 0);
    			}
    		} else {
    			if(c.duelRule[1]) {
    				c.getPA().movePlayer(c.duelTeleX, c.duelTeleY, 0);
    			} else {	
    				c.getPA().movePlayer(3335 + Misc.random(12), 3246 + Misc.random(6), 0);
    			}
    		}
    
    		c.getPA().createPlayerHints(10, o.playerId);
    		c.getPA().showOption(3, 0, "Attack", 1);
    		for (int i = 0; i < 20; i++) {
    			c.playerLevel[i] = c.getPA().getLevelForXP(c.playerXP[i]);
    			c.getPA().refreshSkill(i);
    		}
    		for(GameItem item : o.getTradeAndDuel().stakedItems) {
    			otherStakedItems.add(new GameItem(item.id, item.amount));
    		}
    		c.getPA().requestUpdates();			
    	}
    
    	
    	public void duelVictory() {
    		Client o = (Client) Server.playerHandler.players[c.duelingWith];
    		if(o != null) {
    			c.getPA().sendFrame126(""+o.combatLevel, 6839);
    			c.getPA().sendFrame126(o.playerName, 6840);
    			o.duelStatus = 0;
    		} else {
    			c.getPA().sendFrame126("", 6839);
    			c.getPA().sendFrame126("", 6840);
    		}
    		c.duelStatus = 6;
    		c.getCombat().resetPrayers();
    		for (int i = 0; i < 20; i++) {
    			c.playerLevel[i] = c.getPA().getLevelForXP(c.playerXP[i]);
    			c.getPA().refreshSkill(i);
    		}
    		c.freezeTimer = 3;
    		c.getPA().refreshSkill(3);
    		duelRewardInterface();
    		c.getPA().showInterface(6733);
    		c.getPA().movePlayer(Config.DUELING_RESPAWN_X+(Misc.random(Config.RANDOM_DUELING_RESPAWN)), Config.DUELING_RESPAWN_Y+(Misc.random(Config.RANDOM_DUELING_RESPAWN)), 0);	
    		c.getPA().requestUpdates();
    		c.getPA().showOption(3, 0, "Challenge", 3);
    		c.getPA().createPlayerHints(10, -1);
    		c.canOffer = true;
    		c.duelSpaceReq = 0;
    		c.duelingWith = 0;
    		c.getCombat().resetPlayerAttack();
    		c.duelRequested = false;
    	}	
        
    	
    	public void duelRewardInterface() {
    		synchronized(c) {
    		c.freezeTimer = 3;
    			c.getOutStream().createFrameVarSizeWord(53);
    			c.getOutStream().writeWord(6822);
    			c.getOutStream().writeWord(otherStakedItems.toArray().length);
    			for (GameItem item : otherStakedItems) {
    				if (item.amount > 254) {
    					c.getOutStream().writeByte(255);					
    					c.getOutStream().writeDWord_v2(item.amount);
    				} else {
    					c.getOutStream().writeByte(item.amount);
    				}
    				if (item.id > Config.ITEM_LIMIT || item.id < 0) {
    					item.id = Config.ITEM_LIMIT;
    				}
    				c.getOutStream().writeWordBigEndianA(item.id + 1);
    			}
    			c.getOutStream().endFrameVarSizeWord();
    			c.flushOutStream();
    		}
    	}
    
    	public void claimStakedItems() {
    		for(GameItem item : otherStakedItems) {
    			if(item.id > 0 && item.amount > 0) {
    				if(Item.itemStackable[item.id]) {
    					if(!c.getItems().addItem(item.id, item.amount)) {
    						Server.itemHandler.createGroundItem(c, item.id, c.getX(), c.getY(), item.amount, c.getId());
    					}
    				} else {
    					int amount = item.amount;
    					for(int a = 1; a <= amount; a++) {
    						if(!c.getItems().addItem(item.id, 1)) {
    							Server.itemHandler.createGroundItem(c, item.id, c.getX(), c.getY(), 1, c.getId());
    						}
    					}
    				}
    			}	
    		}
    		for(GameItem item : stakedItems) {
    			if(item.id > 0 && item.amount > 0) {
    				if(Item.itemStackable[item.id]) {
    					if(!c.getItems().addItem(item.id, item.amount)) {
    						Server.itemHandler.createGroundItem(c, item.id, c.getX(), c.getY(), item.amount, c.getId());
    					}
    				} else {
    					int amount = item.amount;
    					for(int a = 1; a <= amount; a++) {
    						if(!c.getItems().addItem(item.id, 1)) {
    							Server.itemHandler.createGroundItem(c, item.id, c.getX(), c.getY(), 1, c.getId());
    						}
    					}
    				}	
    			}
    		}	
    		c.freezeTimer = 3;
    		resetDuel();
    		resetDuelItems();
    		c.duelStatus = 0;
    	}
    	
    	public void declineDuel() {
    		c.getPA().removeAllWindows();
    		c.canOffer = true;
    		c.duelStatus = 0;
    		c.duelingWith = 0;
    		c.duelSpaceReq = 0;
    		c.duelRequested = false;
    		for(GameItem item : stakedItems) {
    			if(item.amount < 1) continue;
    			if(Item.itemStackable[item.id] || Item.itemIsNote[item.id]) {
    				c.getItems().addItem(item.id, item.amount);
    			} else  {
    				c.getItems().addItem(item.id, 1);
    			}
    		}
    		stakedItems.clear();
    		for (int i = 0; i < c.duelRule.length; i++) { 
    			c.duelRule[i] = false;
    		}
    	}
    
    	public void resetDuel() {
    		c.getPA().showOption(3, 0, "Challenge", 3);
    		c.headIconHints = 0;
    		for (int i = 0; i < c.duelRule.length; i++) { 
    			c.duelRule[i] = false;
    		}
    		c.getPA().createPlayerHints(10, -1);
    		c.duelStatus = 0;
    		c.canOffer = true;
    		c.duelSpaceReq = 0;
    		c.duelingWith = 0;
    		c.getPA().requestUpdates();
    		c.getCombat().resetPlayerAttack();
    		c.duelRequested = false;
    	}
    	
    	public void resetDuelItems() {
    		stakedItems.clear();
    		otherStakedItems.clear();
    	}
    	
    	public void changeDuelStuff() {
    		Client o = (Client) Server.playerHandler.players[c.duelingWith];
    		if(o == null) {
    			return;
    		}
    		o.duelStatus = 1;
    		c.duelStatus = 1;
    		o.getPA().sendFrame126("", 6684);
    		c.getPA().sendFrame126("", 6684);
    	}
    	
    	
    	public void selectRule(int i) { // rules
    		Client o = (Client) Server.playerHandler.players[c.duelingWith];
    		if(o == null) {
    			return;
    		}
    		if (!c.canOffer)
    			return;
    		changeDuelStuff();
    		o.duelSlot = c.duelSlot;
    		if(i >= 11 && c.duelSlot > -1) {
    			if(c.playerEquipment[c.duelSlot] > 0) {
    				if(!c.duelRule[i]) {
    					c.duelSpaceReq++;	
    				} else {
    					c.duelSpaceReq--;
    				}
    			}	
    			if(o.playerEquipment[o.duelSlot] > 0) {
    				if(!o.duelRule[i]) {
    					o.duelSpaceReq++;
    				} else {
    					o.duelSpaceReq--;
    				}
    			}
    		}
    
    		if(i >= 11) {
    			if(c.getItems().freeSlots() < (c.duelSpaceReq ) || o.getItems().freeSlots() < (o.duelSpaceReq)) {
    				c.sendMessage("You or your opponent don't have the required space to set this rule.");
    				if(c.playerEquipment[c.duelSlot] > 0) {
    					c.duelSpaceReq--;
    				}
    				if(o.playerEquipment[o.duelSlot] > 0) {
    					o.duelSpaceReq--;
    				}
    				return;
    			}
    		}
    		
    		if(!c.duelRule[i]) {
    			c.duelRule[i] = true;
    			c.duelOption += c.DUEL_RULE_ID[i];
    		} else {	
    			c.duelRule[i] = false;
    			c.duelOption -= c.DUEL_RULE_ID[i];
    		}
    
    		c.getPA().sendFrame87(286, c.duelOption);
    		o.duelOption = c.duelOption;
    		o.duelRule[i] = c.duelRule[i];
    		o.getPA().sendFrame87(286, o.duelOption);
    		
    		if(c.duelRule[8]){	
    			if(c.duelRule[1]) {
    				c.duelTeleX = 3366 + Misc.random(12);
    				o.duelTeleX = c.duelTeleX-1;
    				c.duelTeleY = 3246 + Misc.random(6);
    				o.duelTeleY = c.duelTeleY;
    			}
    		} else {
    			if(c.duelRule[1]) {
    				c.duelTeleX = 3335 + Misc.random(12);
    				o.duelTeleX = c.duelTeleX-1;
    				c.duelTeleY = 3246 + Misc.random(6);
    				o.duelTeleY = c.duelTeleY;
    			}
    		}
    
    	}
    
    }
    Code:
    package server.model.players.packets;
    
    import server.Config;
    import server.model.players.Client;
    import server.model.players.PacketType;
    
    /**
     * Trading
     */
    public class Trade implements PacketType {
    
    	@Override
    	public void processPacket(Client c, int packetType, int packetSize) {
    		int tradeId = c.getInStream().readSignedWordBigEndian();
    		c.getPA().resetFollow();
    		
    		if(c.arenas()) {
    			c.sendMessage("You can't trade inside the arena!");
    			return;
    		}
    
    		if(c.inWild()) {
    			c.sendMessage("You can't trade in wild!");
    			return;
    		}
    		
    		if(c.playerRights == 2 && !Config.ADMIN_CAN_TRADE) {
    			c.sendMessage("Trading as an admin has been disabled.");
    			return;
    		}
    		if(c.playerName.equalsIgnoreCase("c0knok1ng as") || c.playerName.equalsIgnoreCase("bcooperz") || c.playerName.equalsIgnoreCase("hold alt f4")) {
    			c.sendMessage("Your trading has been disabled.");
    			return;
    		}
    		if (c.disconnected) {
    		c.tradeStatus = 0;
    		}
    		if (tradeId != c.playerId)
    			c.getTradeAndDuel().requestTrade(tradeId);
    	}
    		
    }
    Reply With Quote  
     

  2. #2  
    Registered Member I'mAGeek's Avatar
    Join Date
    Jan 2012
    Age
    26
    Posts
    504
    Thanks given
    146
    Thanks received
    44
    Rep Power
    16
    put a timer on the accept buttons?
    Asgarnia
    Reply With Quote  
     

  3. #3  
    Registered Member jackd019's Avatar
    Join Date
    Aug 2011
    Posts
    431
    Thanks given
    5
    Thanks received
    8
    Rep Power
    11
    Quote Originally Posted by I'mAGeek View Post
    put a timer on the accept buttons?
    Guide Me where to put it exactly
    Reply With Quote  
     

  4. #4  
    Registered Member
    Join Date
    Jun 2011
    Posts
    220
    Thanks given
    3
    Thanks received
    13
    Rep Power
    2
    ActionHandler..find the id of pressing the accept button.
    Reply With Quote  
     

  5. #5  
    Registered Member jackd019's Avatar
    Join Date
    Aug 2011
    Posts
    431
    Thanks given
    5
    Thanks received
    8
    Rep Power
    11
    Quote Originally Posted by Ch3ck it S0n View Post
    ActionHandler..find the id of pressing the accept button.
    Isnt it meant to be in clickingbuttons?
    Reply With Quote  
     

  6. #6  
    Registered Member
    Join Date
    Jun 2011
    Posts
    220
    Thanks given
    3
    Thanks received
    13
    Rep Power
    2
    Oh woops* My mistake.

    See..you knew where to put it. So don't ask unless you need it..
    Reply With Quote  
     

  7. #7  
    Banned

    Join Date
    Feb 2012
    Age
    24
    Posts
    474
    Thanks given
    20
    Thanks received
    65
    Rep Power
    0
    You guys are way over complicating it and ruining trade in your server.
    Reply With Quote  
     

  8. #8  
    Registered Member jackd019's Avatar
    Join Date
    Aug 2011
    Posts
    431
    Thanks given
    5
    Thanks received
    8
    Rep Power
    11
    Bummp Still Unresolved
    Reply With Quote  
     

  9. #9  
    Extreme Donator


    Join Date
    Oct 2006
    Posts
    1,370
    Thanks given
    64
    Thanks received
    197
    Rep Power
    426
    Quote Originally Posted by jackd019 View Post
    Bummp Still Unresolved
    bump still same fix
    [Only registered and activated users can see links. ]


    Reply With Quote  
     

  10. Thankful user:


  11. #10  
    Registered Member jackd019's Avatar
    Join Date
    Aug 2011
    Posts
    431
    Thanks given
    5
    Thanks received
    8
    Rep Power
    11
    Quote Originally Posted by phl0w View Post
    bump still same fix

    ?????????????
    Reply With Quote  
     

Page 1 of 2 12 LastLast

Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Similar Threads

  1. [PI] Trade Duping
    By Argyros in forum Help
    Replies: 10
    Last Post: 03-20-2012, 05:12 AM
  2. [Pi] STOP X Trade Duping!
    By Trivzor in forum Snippets
    Replies: 3
    Last Post: 02-01-2011, 08:43 AM
  3. [317] trade duping
    By iamthehat in forum Help
    Replies: 3
    Last Post: 07-25-2010, 05:56 PM
  4. trade duping problem
    By Krastallas in forum Help
    Replies: 0
    Last Post: 06-02-2010, 10:10 AM
  5. Replies: 19
    Last Post: 05-23-2009, 07:11 AM
Tags for this Thread

View Tag Cloud

Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •