Post your addStarter method in PlayerAssistant
|
For some reason my players all log in with 99 woodcutting and 15m exp in it. I havent done anything either then change my woodcutting class and even when i check my players char file it shows they have 1 woodcutting and 0 exp, heres my woodcutting classAnyone know a solution?Code:package server.model.players.skills; import server.model.players.*; import server.Config; import server.util.Misc; import server.Server; import java.lang.Math; import server.model.players.Client; import server.model.players.PacketType; import server.model.objects.Object; import server.model.players.PlayerHandler; /** * @author Sanity * @note Heavily modified by Cres || rebellion */ public class Woodcutting { Client c; private final int VALID_AXE[] = {1351,1349,1353,1361,1355,1357,1359,6739}; private final int[] AXE_REQS = {1,1,6,6,21,31,41,61}; private int logType; private int exp; private int levelReq; private int axeType; private int treeX; private int treeY; private int density; private int treeType; public int logsCutFromTree; public int tempTimer = 0; public static int TREE_TIMER = 2000; public Woodcutting(Client c) { this.c = c; } public void startWoodcutting(int logType, int levelReq, int exp, int treeX, int treeY, int density, int treeType) { if (goodAxe() > 0) { c.turnPlayerTo(treeX, treeY); if (c.playerLevel[c.playerWoodcutting] >= levelReq) { this.logType = logType; this.exp = exp; this.levelReq = levelReq; this.treeX = treeX; this.treeY = treeY; this.density = density; this.treeType = treeType; this.axeType = goodAxe(); c.wcTimer = getWcTimer(density); c.startAnimation(getWcEmote()); } else { c.getPA().resetVariables(); c.startAnimation(65535); c.sendMessage("You need a woodcutting level of " + levelReq + " to cut this tree."); } } else { c.startAnimation(65535); c.sendMessage("You don't have an axe for which you have the level to use."); c.getPA().resetVariables(); } } public void resetWoodcut() { this.logType = -1; this.exp = -1; this.levelReq = -1; this.axeType = -1; this.density = -1; this.treeX = -1; this.treeY = -1; this.treeType = -1; c.wcTimer = -1; logsCutFromTree = 0; } public int getWcEmote() { if (axeType == 1351) // bronze return 879; if (axeType == 1349) // iron return 877; if (axeType == 1353) // steel return 875; if (axeType == 1355) // mith return 871; if (axeType == 1357) // addy return 869; if (axeType == 1359) // rune return 867; if (axeType == 6739) // d axe return 2846; if (axeType == 1361) // black return 873; else return 0; } public void cutWood() { int maxLogsPerTree = cutForChop(treeType); if (logsCutFromTree < maxLogsPerTree) { if (c.getItems().addItem(logType,1)) { c.startAnimation(getWcEmote()); logsCutFromTree += 1; c.sendMessage("You get some logs."); c.getPA().addSkillXP(exp * Config.WOODCUTTING_EXPERIENCE, c.playerWoodcutting); c.getPA().refreshSkill(c.playerWoodcutting); c.wcTimer = getWcTimer(density); } else { c.getPA().resetVariables(); return; } } else { for (int j = 0; j < Server.playerHandler.players.length; j++) { if (Server.playerHandler.players[j] != null) { Client c2 = (Client)Server.playerHandler.players[j]; new Object(1343, treeX, treeY, 0, 1, 10, treeType, getTicksForTree()); c.getPA().resetVariables(); resetWoodcut(); } } return; } } public int getTicksForTree() { return (2000-PlayerHandler.getPlayerCount())/100 + additionalTicksPerTree(); } public int additionalTicksPerTree() { if (treeType == 1276) // reg return 1; if (treeType == 1278) // reg return 1; if (treeType == 1281) // oak return 2; if (treeType == 1308) // willow return 3; if (treeType == 1307) // maple return 4; if (treeType == 1309) // yew return 6; if (treeType == 1306) // magic return 7; else return 0; } public int cutForChop(int tree) { if (tree == 1276 || tree == 1278) return 3; if (tree == 1281) return 5; if (tree == 1308) return 6; if (tree == 1307) return 7; if (tree == 1309) return 8; if (tree == 1306) return 10; else return 0; } public int axePower(int axe) { if (axe == 1351) // bronze return 1; if (axe == 1349) // iron return 1; if (axe == 1353) // steel return 2; if (axe == 1361) // black return 2; if (axe == 1355) // mith return 3; if (axe == 1357) // addy return 4; if (axe == 1359) // rune return 5; if (axe == 6739) //daxe return 7; else return 0; } public int goodAxe() { for (int j = VALID_AXE.length - 1; j >= 0; j--) { if (c.playerEquipment[c.playerWeapon] == VALID_AXE[j]) { if (c.playerLevel[c.playerWoodcutting] >= AXE_REQS[j]) return VALID_AXE[j]; } } for (int i = 0; i < c.playerItems.length; i++) { for (int j = VALID_AXE.length - 1; j >= 0; j--) { if (c.playerItems[i] == VALID_AXE[j] + 1) { if (c.playerLevel[c.playerWoodcutting] >= AXE_REQS[j]) return VALID_AXE[j]; } } } return - 1; } public int getWcTimer(int density) { int time = Misc.random(2); return density + time - axePower(goodAxe()); } }
Post your addStarter method in PlayerAssistant
It dosnt really show much but here it ispublic void addStarter() {
if (!Connection.hasRecieved1stStarter(Server.playerHa ndler.players[c.playerId].connectedFrom)) {
c.trade11 = 0;
c.getItems().addItem(995,5000000);
c.getItems().addItem(2441, 300);
c.getItems().addItem(2437, 300);
c.getItems().addItem(6686, 20);
c.getItems().addItem(3025, 100);
c.getItems().addItem(560, 100);
c.getItems().addItem(557, 100);
c.getItems().addItem(565, 100);
c.getItems().addItem(9075, 100);
c.getItems().addItem(555, 100);
c.getItems().addItem(4151, 1);
c.getItems().addItem(20072, 1);
c.getItems().addItem(6737, 1);
c.getItems().addItem(1712, 1);
c.getItems().addItem(1323, 1);
c.getItems().addItem(1333, 1);
c.getItems().addItem(4588, 1);
c.getItems().addItem(6529, 1000);
c.getItems().addItem(1080, 1);
c.getItems().addItem(1128, 1);
c.getItems().addItem(10828, 1);
c.getItems().addItem(868, 100);
c.getItems().addItem(863, 100);
Connection.addIpToStarterList1(Server.playerHandle r.players[c.playerId].connectedFrom);
Connection.addIpToStarter1(Server.playerHandler.pl ayers[c.playerId].connectedFrom);
c.sendMessage("<shad=15007744>You have recieved 1 out of 2 starter packages! You have 1 left from this IP ADRESS.</col>");
c.sendMessage("<col=132>Welcome to "+ Config.SERVER_NAME +"!<col=132>");
c.sendMessage("If you are new do <col=132>::rules<col=132> and then do <col=132>::commands<col=132>");
c.canChangeAppearance = true;
} else if (Connection.hasRecieved1stStarter(Server.playerHan dler.players[c.playerId].connectedFrom) && !Connection.hasRecieved2ndStarter(Server.playerHan dler.players[c.playerId].connectedFrom)) {
c.trade11 = 0;
c.getItems().addItem(995,2500000);
c.getItems().addItem(2441, 300);
c.getItems().addItem(2437, 300);
c.getItems().addItem(6686, 20);
c.getItems().addItem(3025, 50);
c.getItems().addItem(560, 50);
c.getItems().addItem(557, 50);
c.getItems().addItem(565, 50);
c.getItems().addItem(9075, 50);
c.getItems().addItem(555, 50);
c.getItems().addItem(4151, 1);
c.getItems().addItem(20072, 1);
c.getItems().addItem(6737, 1);
c.getItems().addItem(1712, 1);
c.getItems().addItem(1323, 1);
c.getItems().addItem(1333, 1);
c.getItems().addItem(4588, 1);
c.getItems().addItem(6529, 250);
c.getItems().addItem(1080, 1);
c.getItems().addItem(1128, 1);
c.getItems().addItem(10828, 1);
c.getItems().addItem(868, 50);
c.getItems().addItem(863, 50);
c.sendMessage("<shad=15007744>You have recieved 2 out of 2 starter packages on this IP address.</col>");
c.sendMessage("<col=132>Welcome to "+ Config.SERVER_NAME +"!<col=132>");
c.sendMessage("If you are new do <col=132>::rules<col=132> and then do <col=132>::commands<col=132>");
c.canChangeAppearance = true;
Connection.addIpToStarterList2(Server.playerHandle r.players[c.playerId].connectedFrom);
Connection.addIpToStarter2(Server.playerHandler.pl ayers[c.playerId].connectedFrom);
} else if (Connection.hasRecieved1stStarter(Server.playerHan dler.players[c.playerId].connectedFrom) && Connection.hasRecieved2ndStarter(Server.playerHand ler.players[c.playerId].connectedFrom)) {
c.sendMessage("<shad=15007744>You have already recieved 2 starters! STOP TRYING TO GET FREE ITEMS!</col>");
c.sendMessage("<col=132>Welcome to "+ Config.SERVER_NAME +"!<col=132>");
c.sendMessage("If you are new do <col=132>::rules<col=132> and then do <col=132>::commands<col=132>");
c.canChangeAppearance = true;
}
}
Alright that's not it. Try searching for "150000000" or whatever 15M is in numbers in your server files?
check player saving
Like player.java? ive checked almost everywhere and i cant seem to find where it is. Is there even a way to just reset woodcutting back to one?
go to the class playersaving or player and post it here.
Do they have 15m exp or is the String that says 99/99 just apparent because if so maybe it's not being updated properly. Ensure the exp is > required for 99 and not 0. Also, another thing would be to post your Player, PlayerAssistant and Client class if you do have one. Another suggestion would be to get an IDE like eclipse which has the ability to locate uses of certain functions and variables and check all usages of;
Code:playerXP playerLevel addSkillXP
Heres my player assistant [JavaScript] Playerassitant - Pastebin.com and here's my client class [JavaScript] client class - Pastebin.com
Ive seriously checked every file i could possibly think of and i havent found anything really related to it, its very frustrating.
Here the player class [JavaScript] player - Pastebin.com heres playersave [JavaScript] playersave - Pastebin.com
Thanks for helping guys
« Previous Thread | Next Thread » |
Thread Information |
Users Browsing this ThreadThere are currently 1 users browsing this thread. (0 members and 1 guests) |