I have done;
Replace your RequestTrade() in TradeAndDuel.java, with this:
Code:
public void requestTrade(int id){
try {
Client o = (Client) Server.playerHandler.players[id];
if (o.isBanking)
{
c.sendMessage("You can't request a trade while the other person is banking.");
return;
}
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.optimizeText(c.playerName) + ":tradereq:");
}
}
catch (Exception e) {
Misc.println("Error requesting trade.");
}
}
After i added that the error i got was;
[/QUOTE]
this should fix the isBanking problem
in PlayerAssistant.java find..
public void closeAllWindows() {
replace that method with...
Code:
public void closeAllWindows() {
synchronized(c) {
if(c.getOutStream() != null && c != null) {
c.getOutStream().createFrame(219);
c.flushOutStream();
c.isBanking = false;
}
}
}
now find
public void openUpBank(){
replace that method with...
Code:
public void openUpBank(){
synchronized(c) {
if(c.getOutStream() != null && c != null) {
c.isBanking = true;
c.getItems().resetItems(5064);
c.getItems().rearrangeBank();
c.getItems().resetBank();
c.getItems().resetTempItems();
c.getOutStream().createFrame(248);
c.getOutStream().writeWordA(5292);
c.getOutStream().writeWord(5063);
c.flushOutStream();
}
}
}
now in player.java find
properLogout = false,
under it add
It works when you try to trade somebody who has his bank open, but as soon he closes it you still get the error ''you cant request a trade bla bla''
Help?