mirror of
https://github.com/2006-Scape/2006Scape.git
synced 2026-07-04 16:49:04 +00:00
Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9efafdff47 | |||
| 37322d4874 | |||
| b94157f01b | |||
| c1a5cf449c | |||
| 23951e9af6 | |||
| 2d58593be9 | |||
| 9b160452ad | |||
| f39993e3d9 | |||
| 6ad9d1f7e9 | |||
| 8ec8a92d20 | |||
| c891e4741e | |||
| 64ae22188f |
@@ -35,5 +35,6 @@ public class ClientSettings {
|
|||||||
public static final BigInteger RSA_MODULUS = new BigInteger("91553247461173033466542043374346300088148707506479543786501537350363031301992107112953015516557748875487935404852620239974482067336878286174236183516364787082711186740254168914127361643305190640280157664988536979163450791820893999053469529344247707567448479470137716627440246788713008490213212272520901741443");
|
public static final BigInteger RSA_MODULUS = new BigInteger("91553247461173033466542043374346300088148707506479543786501537350363031301992107112953015516557748875487935404852620239974482067336878286174236183516364787082711186740254168914127361643305190640280157664988536979163450791820893999053469529344247707567448479470137716627440246788713008490213212272520901741443");
|
||||||
public static final BigInteger RSA_EXPONENT = new BigInteger("65537");
|
public static final BigInteger RSA_EXPONENT = new BigInteger("65537");
|
||||||
|
|
||||||
|
public final static Boolean SNOW = true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,6 +25,9 @@ public final class Flo {
|
|||||||
return;
|
return;
|
||||||
} else if (i == 1) {
|
} else if (i == 1) {
|
||||||
anInt390 = stream.read3Bytes();
|
anInt390 = stream.read3Bytes();
|
||||||
|
if (ClientSettings.SNOW) {
|
||||||
|
anInt390 = 0xffffff;
|
||||||
|
}
|
||||||
method262(anInt390);
|
method262(anInt390);
|
||||||
} else if (i == 2) {
|
} else if (i == 2) {
|
||||||
anInt391 = stream.readUnsignedByte();
|
anInt391 = stream.readUnsignedByte();
|
||||||
|
|||||||
@@ -5,7 +5,11 @@
|
|||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
import java.applet.AppletContext;
|
import java.applet.AppletContext;
|
||||||
import java.awt.*;
|
//import java.awt.*;
|
||||||
|
import java.awt.Component;
|
||||||
|
import java.awt.Graphics;
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.Font;
|
||||||
import java.awt.event.KeyEvent;
|
import java.awt.event.KeyEvent;
|
||||||
import java.io.ByteArrayInputStream;
|
import java.io.ByteArrayInputStream;
|
||||||
import java.io.DataInputStream;
|
import java.io.DataInputStream;
|
||||||
|
|||||||
@@ -3,18 +3,6 @@
|
|||||||
* THIS IS TO ALLOW LOCAL PARABOT TO CONTINUE TO WORK
|
* THIS IS TO ALLOW LOCAL PARABOT TO CONTINUE TO WORK
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import java.applet.AppletContext;
|
|
||||||
import java.awt.*;
|
|
||||||
import java.awt.event.KeyEvent;
|
|
||||||
import java.io.*;
|
|
||||||
import java.net.InetAddress;
|
|
||||||
import java.net.Socket;
|
|
||||||
import java.net.URL;
|
|
||||||
import java.text.DecimalFormat;
|
|
||||||
import java.text.DecimalFormatSymbols;
|
|
||||||
import java.util.Calendar;
|
|
||||||
import java.util.Date;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* NOTICE: IF YOU CHANGE ANYTHING IN GAME.JAVA, PLEASE COPY-PASTE THE WHOLE CLASS OVER TO LOCALGAME.JAVA
|
* NOTICE: IF YOU CHANGE ANYTHING IN GAME.JAVA, PLEASE COPY-PASTE THE WHOLE CLASS OVER TO LOCALGAME.JAVA
|
||||||
* THIS IS TO ALLOW LOCAL PARABOT TO CONTINUE TO WORK
|
* THIS IS TO ALLOW LOCAL PARABOT TO CONTINUE TO WORK
|
||||||
|
|||||||
@@ -4,7 +4,13 @@
|
|||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
import java.applet.Applet;
|
import java.applet.Applet;
|
||||||
import java.awt.*;
|
//import java.awt.*;
|
||||||
|
import java.awt.Component;
|
||||||
|
import java.awt.Graphics;
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.Font;
|
||||||
|
import java.awt.Insets;
|
||||||
|
import java.awt.FontMetrics;
|
||||||
import java.awt.event.FocusEvent;
|
import java.awt.event.FocusEvent;
|
||||||
import java.awt.event.FocusListener;
|
import java.awt.event.FocusListener;
|
||||||
import java.awt.event.KeyEvent;
|
import java.awt.event.KeyEvent;
|
||||||
|
|||||||
@@ -2,7 +2,15 @@
|
|||||||
// Jad home page: http://www.kpdus.com/jad.html
|
// Jad home page: http://www.kpdus.com/jad.html
|
||||||
// Decompiler options: packimports(3)
|
// Decompiler options: packimports(3)
|
||||||
|
|
||||||
import java.awt.*;
|
//import java.awt.*;
|
||||||
|
import java.awt.Component;
|
||||||
|
import java.awt.Graphics;
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.Font;
|
||||||
|
import java.awt.Insets;
|
||||||
|
import java.awt.FontMetrics;
|
||||||
|
import java.awt.Frame;
|
||||||
|
import java.awt.Dimension;
|
||||||
|
|
||||||
@SuppressWarnings("serial")
|
@SuppressWarnings("serial")
|
||||||
final class RSFrame extends Frame {
|
final class RSFrame extends Frame {
|
||||||
|
|||||||
@@ -11,6 +11,8 @@
|
|||||||
1935:1:3211:3212
|
1935:1:3211:3212
|
||||||
88:1:2654:9767
|
88:1:2654:9767
|
||||||
1931:1:3209:3214
|
1931:1:3209:3214
|
||||||
|
542:1:3059:3488:1
|
||||||
|
544:1:3059:3487:1
|
||||||
1923:1:3208:3214
|
1923:1:3208:3214
|
||||||
882:1:3205:3228
|
882:1:3205:3228
|
||||||
2313:1:3033:9849
|
2313:1:3033:9849
|
||||||
|
|||||||
@@ -37,6 +37,8 @@ public class BotHandler {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
player.getPacketSender().sendMessage("Shop commands- ::withdrawshop, ::closeshop");
|
||||||
|
|
||||||
Client playerShop = getPlayerShop(player);
|
Client playerShop = getPlayerShop(player);
|
||||||
|
|
||||||
if (playerShop == null) {
|
if (playerShop == null) {
|
||||||
|
|||||||
@@ -25,16 +25,15 @@ public class Smelting extends SkillHandler {
|
|||||||
* Handles Smelting data.
|
* Handles Smelting data.
|
||||||
*/
|
*/
|
||||||
public static int[][] data = {
|
public static int[][] data = {
|
||||||
// index ,lvl required, XP, item required, item2, COAL AMOUNT,
|
// index ,lvl required, XP, primary item required, secondary item required, secondary item amount, output item(BAR)
|
||||||
// Final item(BAR)
|
{ 1, 1, 6, COPPER, TIN, 1, 2349 }, // Bronze
|
||||||
{ 1, 1, 6, COPPER, TIN, -1, 2349 }, // Bronze
|
|
||||||
{ 2, 15, 12, IRON, -1, -1, 2351 }, // iron
|
{ 2, 15, 12, IRON, -1, -1, 2351 }, // iron
|
||||||
{ 3, 20, 17, IRON, COAL, 2, 2353 }, // Steel
|
{ 3, 20, 17, IRON, COAL, 2, 2353 }, // Steel
|
||||||
{ 4, 50, 30, MITH, COAL, 4, 2359 }, // Mith
|
{ 4, 50, 30, MITH, COAL, 4, 2359 }, // Mith
|
||||||
{ 5, 70, 37, ADDY, COAL, 6, 2361 }, // Addy
|
{ 5, 70, 37, ADDY, COAL, 6, 2361 }, // Addy
|
||||||
{ 6, 85, 50, RUNE, COAL, 8, 2363 }, // Rune
|
{ 6, 85, 50, RUNE, COAL, 8, 2363 }, // Rune
|
||||||
{ 7, 20, 13, SILVER, -1, -1, 2355 }, // Silver
|
{ 7, 20, 13, SILVER, -1, -1, 2355 }, // Silver
|
||||||
{ 8, 40, 22, GOLD, -1, -1, 2357 } // GOLD
|
{ 8, 40, 22, GOLD, -1, -1, 2357 }, // GOLD
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -44,8 +43,7 @@ public class Smelting extends SkillHandler {
|
|||||||
*/
|
*/
|
||||||
public static void startSmelting(Player c, int object) {
|
public static void startSmelting(Player c, int object) {
|
||||||
for (int j = 0; j < SMELT_FRAME.length; j++) {
|
for (int j = 0; j < SMELT_FRAME.length; j++) {
|
||||||
c.getPacketSender().sendFrame246(SMELT_FRAME[j], 150,
|
c.getPacketSender().sendFrame246(SMELT_FRAME[j], 150, SMELT_BARS[j]);
|
||||||
SMELT_BARS[j]);
|
|
||||||
}
|
}
|
||||||
c.getPacketSender().sendChatInterface(2400);
|
c.getPacketSender().sendChatInterface(2400);
|
||||||
c.isSmelting = true;
|
c.isSmelting = true;
|
||||||
@@ -70,30 +68,22 @@ public class Smelting extends SkillHandler {
|
|||||||
private static void smeltBar(final Player c, int bartype) {
|
private static void smeltBar(final Player c, int bartype) {
|
||||||
for (int i = 0; i < data.length; i++) {
|
for (int i = 0; i < data.length; i++) {
|
||||||
if (bartype == data[i][0]) {
|
if (bartype == data[i][0]) {
|
||||||
|
// Check player has the correct smithing level
|
||||||
if (c.playerLevel[c.playerSmithing] < data[i][1]) { // Smithing level
|
if (c.playerLevel[c.playerSmithing] < data[i][1]) { // Smithing level
|
||||||
c.getDialogueHandler().sendStatement("You need a smithing level of at least "+ data[i][1] + " in order smelt this bar.");
|
c.getDialogueHandler().sendStatement("You need a smithing level of at least "+ data[i][1] + " in order smelt this bar.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (data[i][3] > 0 && data[i][4] > 0) { // All OTHER bars
|
// Check the player has all required items
|
||||||
if (!c.getItemAssistant().playerHasItem(data[i][3]) || !c.getItemAssistant().playerHasItem(data[i][4])) {
|
if (data[i][4] <= 0) { // Bars with only a primary requirement
|
||||||
c.getPacketSender().sendMessage("You need an " + ItemAssistant.getItemName(data[i][3]).toLowerCase() + " and " + data[i][5] + " " + ItemAssistant.getItemName(data[i][4]).toLowerCase() + " to make this bar.");
|
|
||||||
c.getPacketSender().closeAllWindows();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (data[i][4] < 0) { // Iron bar, Gold & Silver requirements
|
|
||||||
if (!c.getItemAssistant().playerHasItem(data[i][3])) {
|
if (!c.getItemAssistant().playerHasItem(data[i][3])) {
|
||||||
c.getPacketSender().sendMessage("You need an " + ItemAssistant.getItemName(data[i][3]).toLowerCase() + " to make this bar.");
|
c.getPacketSender().sendMessage("You need " + ItemAssistant.getItemName(data[i][3]).toLowerCase() + " to make this bar.");
|
||||||
c.getPacketSender().closeAllWindows();
|
c.getPacketSender().closeAllWindows();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
} else { // Bars with a secondary requirement
|
||||||
|
if (!c.getItemAssistant().playerHasItem(data[i][3]) || !c.getItemAssistant().playerHasItem(data[i][4], data[i][5])) {
|
||||||
if (data[i][5] > 0) { // Bars with more than 1 coal requirement
|
c.getPacketSender().sendMessage("You need 1 " + ItemAssistant.getItemName(data[i][3]).toLowerCase() + " and " + data[i][5] + " " + ItemAssistant.getItemName(data[i][4]).toLowerCase() + " to make this bar.");
|
||||||
if (!c.getItemAssistant().playerHasItem(data[i][4], data[i][5])) {
|
|
||||||
c.getPacketSender().sendMessage("You need an " + ItemAssistant.getItemName(data[i][3]).toLowerCase() + " and " + data[i][5] + " coal ores to make this bar.");
|
|
||||||
c.getPacketSender().closeAllWindows();
|
c.getPacketSender().closeAllWindows();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -109,10 +99,10 @@ public class Smelting extends SkillHandler {
|
|||||||
c.playerSkillProp[13][0] = data[i][0];// index
|
c.playerSkillProp[13][0] = data[i][0];// index
|
||||||
c.playerSkillProp[13][1] = data[i][1];// Level required
|
c.playerSkillProp[13][1] = data[i][1];// Level required
|
||||||
c.playerSkillProp[13][2] = data[i][2];// XP
|
c.playerSkillProp[13][2] = data[i][2];// XP
|
||||||
c.playerSkillProp[13][3] = data[i][3];// item required
|
c.playerSkillProp[13][3] = data[i][3];// primary item required
|
||||||
c.playerSkillProp[13][4] = data[i][4];// item required 2
|
c.playerSkillProp[13][4] = data[i][4];// secondary item required
|
||||||
c.playerSkillProp[13][5] = data[i][5];// coal amount
|
c.playerSkillProp[13][5] = data[i][5];// secondary item amount
|
||||||
c.playerSkillProp[13][6] = data[i][6];// Final Item
|
c.playerSkillProp[13][6] = data[i][6];// output item
|
||||||
|
|
||||||
c.getPacketSender().closeAllWindows();
|
c.getPacketSender().closeAllWindows();
|
||||||
c.startAnimation(899);
|
c.startAnimation(899);
|
||||||
@@ -122,45 +112,40 @@ public class Smelting extends SkillHandler {
|
|||||||
@Override
|
@Override
|
||||||
public void execute(CycleEventContainer container) {
|
public void execute(CycleEventContainer container) {
|
||||||
deleteTime(c);
|
deleteTime(c);
|
||||||
|
// Remove primary item
|
||||||
c.getItemAssistant().deleteItem(c.playerSkillProp[13][3], 1);
|
c.getItemAssistant().deleteItem(c.playerSkillProp[13][3], 1);
|
||||||
if (c.playerSkillProp[13][5] == -1) {
|
// Check if required and remove secondary items
|
||||||
c.getItemAssistant().deleteItem(c.playerSkillProp[13][4], 1);
|
if (c.playerSkillProp[13][4] > 0 && c.playerSkillProp[13][5] > 0) {
|
||||||
}
|
|
||||||
if (c.playerSkillProp[13][5] > 0) {// if coal amount is > 0
|
|
||||||
c.getItemAssistant().deleteItem(c.playerSkillProp[13][4], c.playerSkillProp[13][5]);
|
c.getItemAssistant().deleteItem(c.playerSkillProp[13][4], c.playerSkillProp[13][5]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c.playerSkillProp[13][3] == IRON && c.playerSkillProp[13][4] == -1 && Misc.random(100) >= 50) {
|
if (c.playerSkillProp[13][3] == IRON && c.playerSkillProp[13][4] == -1) {
|
||||||
c.getPlayerAssistant().addSkillXP(c.playerSkillProp[13][2], c.playerSmithing);
|
// Ring of forging
|
||||||
c.getItemAssistant().addItem(c.playerSkillProp[13][6], 1);// item
|
if (c.playerEquipment[c.playerRing] == 2568) {
|
||||||
c.getPacketSender().sendMessage("You receive an " + ItemAssistant.getItemName(c.playerSkillProp[13][6]).toLowerCase() + ".");
|
c.getPlayerAssistant().addSkillXP(c.playerSkillProp[13][2], c.playerSmithing);
|
||||||
}
|
c.getItemAssistant().addItem(c.playerSkillProp[13][6], 1);// item
|
||||||
|
c.getPacketSender().sendMessage("You receive an " + ItemAssistant.getItemName(c.playerSkillProp[13][6]).toLowerCase() + ".");
|
||||||
|
|
||||||
if (c.playerSkillProp[13][3] == GOLD && c.playerSkillProp[13][4] == -1 && c.playerEquipment[c.playerHands] == 776) {
|
} else {
|
||||||
c.getPacketSender().sendMessage("You receive an " + ItemAssistant.getItemName(c.playerSkillProp[13][6]).toLowerCase() + ".");
|
if (Misc.random(100) >= 50) {
|
||||||
|
c.getPlayerAssistant().addSkillXP(c.playerSkillProp[13][2], c.playerSmithing);
|
||||||
|
c.getItemAssistant().addItem(c.playerSkillProp[13][6], 1);// item
|
||||||
|
c.getPacketSender().sendMessage("You receive an " + ItemAssistant.getItemName(c.playerSkillProp[13][6]).toLowerCase() + ".");
|
||||||
|
} else {
|
||||||
|
c.getPacketSender().sendMessage("You failed to smelt the iron bar.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (c.playerSkillProp[13][3] == GOLD && c.playerEquipment[c.playerHands] == 776) {
|
||||||
|
c.getPacketSender().sendMessage("You receive a " + ItemAssistant.getItemName(c.playerSkillProp[13][6]).toLowerCase() + ".");
|
||||||
c.getPlayerAssistant().addSkillXP(56.2, c.playerSmithing);
|
c.getPlayerAssistant().addSkillXP(56.2, c.playerSmithing);
|
||||||
c.getItemAssistant().addItem(c.playerSkillProp[13][6], 1);// item
|
c.getItemAssistant().addItem(c.playerSkillProp[13][6], 1);// item
|
||||||
} else {
|
} else {
|
||||||
if (c.playerSkillProp[13][3] != IRON) {
|
c.getPacketSender().sendMessage("You receive a " + ItemAssistant.getItemName(c.playerSkillProp[13][6]).toLowerCase() + ".");
|
||||||
c.getPacketSender().sendMessage("You receive an " + ItemAssistant.getItemName(c.playerSkillProp[13][6]).toLowerCase() + ".");
|
c.getPlayerAssistant().addSkillXP(c.playerSkillProp[13][2], c.playerSmithing);
|
||||||
c.getPlayerAssistant().addSkillXP(c.playerSkillProp[13][2], c.playerSmithing);
|
c.getItemAssistant().addItem(c.playerSkillProp[13][6], 1);// item
|
||||||
c.getItemAssistant().addItem(c.playerSkillProp[13][6], 1);// item
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ///////////////////////////////CHECKING//////////////////////
|
////////////////////// CHECKING //////////////////////
|
||||||
if (!c.getItemAssistant().playerHasItem(c.playerSkillProp[13][3], 1)) {
|
|
||||||
c.getPacketSender().sendMessage("You don't have enough ores to continue smelting!");
|
|
||||||
resetSmelting(c);
|
|
||||||
container.stop();
|
|
||||||
}
|
|
||||||
if (c.playerSkillProp[13][4] > 0) {
|
|
||||||
if (!c.getItemAssistant().playerHasItem(c.playerSkillProp[13][4], 1)) {
|
|
||||||
c.getPacketSender().sendMessage("You don't have enough ores to continue smelting!");
|
|
||||||
resetSmelting(c);
|
|
||||||
container.stop();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (c.doAmount <= 0) {
|
if (c.doAmount <= 0) {
|
||||||
resetSmelting(c);
|
resetSmelting(c);
|
||||||
container.stop();
|
container.stop();
|
||||||
@@ -173,6 +158,18 @@ public class Smelting extends SkillHandler {
|
|||||||
resetSmelting(c);
|
resetSmelting(c);
|
||||||
container.stop();
|
container.stop();
|
||||||
}
|
}
|
||||||
|
if (!c.getItemAssistant().playerHasItem(c.playerSkillProp[13][3], 1)) {
|
||||||
|
c.getPacketSender().sendMessage("You don't have enough ores to continue smelting!");
|
||||||
|
resetSmelting(c);
|
||||||
|
container.stop();
|
||||||
|
}
|
||||||
|
if (c.playerSkillProp[13][4] > 0) {
|
||||||
|
if (!c.getItemAssistant().playerHasItem(c.playerSkillProp[13][4], c.playerSkillProp[13][5])) {
|
||||||
|
c.getPacketSender().sendMessage("You don't have enough ores to continue smelting!");
|
||||||
|
resetSmelting(c);
|
||||||
|
container.stop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -141,11 +141,11 @@ public class Item {
|
|||||||
private static String[] fullhat = { "med helm", "coif", "Dharok's helm",
|
private static String[] fullhat = { "med helm", "coif", "Dharok's helm",
|
||||||
"hood", "Initiate helm", "Coif", "Helm of neitiznot",
|
"hood", "Initiate helm", "Coif", "Helm of neitiznot",
|
||||||
"Armadyl helmet", "Berserker helm", "Archer helm", "Farseer helm",
|
"Armadyl helmet", "Berserker helm", "Archer helm", "Farseer helm",
|
||||||
"Warrior helm", "Void" };
|
"Warrior helm", "Void"};
|
||||||
/* Fullmask covers your entire head. */
|
/* Fullmask covers your entire head. */
|
||||||
private static String[] fullmask = { "full helm(t)", "full helm(g)", "full helm", "mask", "Verac's helm",
|
private static String[] fullmask = { "full helm(t)", "full helm(g)", "full helm", "mask", "Verac's helm",
|
||||||
"Guthan's helm", "Karil's coif", "mask", "Torag's helm", "Void", "helmet",
|
"Guthan's helm", "Karil's coif", "mask", "Torag's helm", "Void", "helmet",
|
||||||
"sallet", "Facemask" };
|
"sallet", "Facemask", "Bearhead"};
|
||||||
|
|
||||||
public static boolean isFullBody(int itemId) {
|
public static boolean isFullBody(int itemId) {
|
||||||
String weapon = getItemName(itemId);
|
String weapon = getItemName(itemId);
|
||||||
@@ -276,6 +276,8 @@ public class Item {
|
|||||||
case 1167:
|
case 1167:
|
||||||
case 5525:
|
case 5525:
|
||||||
case 4168:
|
case 4168:
|
||||||
|
case 4502:
|
||||||
|
case 1037:
|
||||||
case 1025:
|
case 1025:
|
||||||
case 7112:
|
case 7112:
|
||||||
case 7124:
|
case 7124:
|
||||||
|
|||||||
@@ -1440,6 +1440,10 @@ public class ItemAssistant {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (wearID == 4079) {
|
||||||
|
c.startAnimation(1458);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
switch (wearID) {
|
switch (wearID) {
|
||||||
// Dragon daggers/sword
|
// Dragon daggers/sword
|
||||||
case 1215:
|
case 1215:
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import com.rebotted.game.content.skills.fletching.Stringing;
|
|||||||
import com.rebotted.game.content.skills.herblore.GrindingAction;
|
import com.rebotted.game.content.skills.herblore.GrindingAction;
|
||||||
import com.rebotted.game.content.skills.herblore.Herblore;
|
import com.rebotted.game.content.skills.herblore.Herblore;
|
||||||
import com.rebotted.game.items.impl.CapeDye;
|
import com.rebotted.game.items.impl.CapeDye;
|
||||||
|
import com.rebotted.game.items.impl.GodPages;
|
||||||
import com.rebotted.game.items.impl.WeaponPoison;
|
import com.rebotted.game.items.impl.WeaponPoison;
|
||||||
import com.rebotted.game.npcs.impl.MilkCow;
|
import com.rebotted.game.npcs.impl.MilkCow;
|
||||||
import com.rebotted.game.objects.impl.CrystalChest;
|
import com.rebotted.game.objects.impl.CrystalChest;
|
||||||
@@ -98,7 +99,7 @@ public class UseItem {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void ItemonItem(Player player, int itemUsed, int useWith) {
|
public static void itemOnItem(Player player, int itemUsed, int useWith) {
|
||||||
LogCuttingInterface.handleItemOnItem(player, itemUsed, useWith);
|
LogCuttingInterface.handleItemOnItem(player, itemUsed, useWith);
|
||||||
ArrowMaking.makeArrow(player, itemUsed, useWith);
|
ArrowMaking.makeArrow(player, itemUsed, useWith);
|
||||||
Stringing.StringBow(player, itemUsed, useWith);
|
Stringing.StringBow(player, itemUsed, useWith);
|
||||||
@@ -111,6 +112,7 @@ public class UseItem {
|
|||||||
}
|
}
|
||||||
GrindingAction.init(player, itemUsed, useWith);
|
GrindingAction.init(player, itemUsed, useWith);
|
||||||
CapeDye.dyeItem(player, itemUsed, useWith);
|
CapeDye.dyeItem(player, itemUsed, useWith);
|
||||||
|
GodPages.itemOnItemHandle(player, useWith, itemUsed);
|
||||||
if (Herblore.isIngredient(itemUsed) || Herblore.isIngredient(useWith)) {
|
if (Herblore.isIngredient(itemUsed) || Herblore.isIngredient(useWith)) {
|
||||||
Herblore.setupPotion(player, itemUsed, useWith);
|
Herblore.setupPotion(player, itemUsed, useWith);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,29 +49,18 @@ public class Weight extends ItemDefinitions {
|
|||||||
*/
|
*/
|
||||||
public static void updateWeight(Player player) {
|
public static void updateWeight(Player player) {
|
||||||
if (player != null) {
|
if (player != null) {
|
||||||
player.getPacketSender().writeWeight((int) player.weight);
|
player.weight = 0;
|
||||||
// Inventory items
|
// Inventory items
|
||||||
for (int playerItem : player.playerItems) {
|
for (int playerItem : player.playerItems) {
|
||||||
if (playerItem > -1) {// inventory
|
if (playerItem > -1) {// inventory
|
||||||
for (ItemList i1 : GameEngine.itemHandler.ItemList) {
|
calcWeight(player, playerItem, "addItem");
|
||||||
if (i1 != null) {
|
|
||||||
if (i1.itemId == playerItem) {
|
|
||||||
calcWeight(player, playerItem, "addItem");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Equiped items
|
// Equiped items
|
||||||
for (int element : player.playerEquipment) {
|
for (int element : player.playerEquipment) {
|
||||||
if (element > -1) {// equipment
|
if (element > -1) {// equipment
|
||||||
for (ItemList i1 : GameEngine.itemHandler.ItemList) {
|
if (element == 88) player.weight -= 4.5;
|
||||||
if (i1 != null) {
|
else calcWeight(player, element, "addItem");
|
||||||
if (i1.itemId == element) {
|
|
||||||
calcWeight(player, element, "addItem");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,40 @@
|
|||||||
|
package com.rebotted.game.items.impl;
|
||||||
|
|
||||||
|
import com.rebotted.game.players.Player;
|
||||||
|
|
||||||
|
public class GodPages {
|
||||||
|
|
||||||
|
public static void fillBook(Player player, int oldBook, int newBook, int page1, int page2, int page3) {
|
||||||
|
if (player.getItemAssistant().playerHasItem(oldBook, 1) && player.getItemAssistant().playerHasItem(page1, 1) && player.getItemAssistant().playerHasItem(page2, 1) && player.getItemAssistant().playerHasItem(page3, 1)) {
|
||||||
|
player.getItemAssistant().deleteItem(oldBook, player.getItemAssistant().getItemSlot(oldBook), 1);
|
||||||
|
player.getItemAssistant().deleteItem(page1, player.getItemAssistant().getItemSlot(page1), 1);
|
||||||
|
player.getItemAssistant().deleteItem(page2, player.getItemAssistant().getItemSlot(page2), 1);
|
||||||
|
player.getItemAssistant().deleteItem(page3, player.getItemAssistant().getItemSlot(page3), 1);
|
||||||
|
player.getItemAssistant().addItem(newBook, 1);
|
||||||
|
} else {
|
||||||
|
player.getPacketSender().sendMessage("You need all 3 pages to fill the book!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void itemOnItemHandle(Player player, int useWith, int itemUsed) {
|
||||||
|
if ((useWith == 3827) || (useWith == 3827) || (useWith == 3827) && (itemUsed == 3839)) { // sara
|
||||||
|
fillBook(player, 3839, 3840, 3827, 3828, 3829);
|
||||||
|
}
|
||||||
|
if ((itemUsed == 3827) || (itemUsed == 3828) || (itemUsed == 3829) || (useWith == 3839)) {// sara
|
||||||
|
fillBook(player, 3839, 3840, 3827, 3828, 3829);
|
||||||
|
}
|
||||||
|
if ((useWith == 3831) || (useWith == 3832) || (useWith == 3833) && (itemUsed == 3841)) { // zam
|
||||||
|
fillBook(player, 3841, 3842, 3831, 3832, 3833);
|
||||||
|
}
|
||||||
|
if ((itemUsed == 3831) || (itemUsed == 3832) || (itemUsed == 3833) || (useWith == 3841)) { // zam
|
||||||
|
fillBook(player, 3841, 3842, 3831, 3832, 3833);
|
||||||
|
}
|
||||||
|
if ((useWith == 3835) || (useWith == 3836) || (useWith == 3837) && (itemUsed == 3843)) { // guth
|
||||||
|
fillBook(player, 3843, 3844, 3835, 3836, 3837);
|
||||||
|
}
|
||||||
|
if ((itemUsed == 3835) || (itemUsed == 3836) || (itemUsed == 3837) || (useWith == 3843)) { // guth
|
||||||
|
fillBook(player, 3843, 3844, 3835, 3836, 3837);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -13,7 +13,7 @@ import com.rebotted.world.GlobalDropsHandler;
|
|||||||
public class PlayerHandler {
|
public class PlayerHandler {
|
||||||
|
|
||||||
public static Player players[] = new Player[GameConstants.MAX_PLAYERS];
|
public static Player players[] = new Player[GameConstants.MAX_PLAYERS];
|
||||||
public static int playerCount = 0, playerBotCount = 0;
|
public static int playerCount = 0, playerShopCount = 0;
|
||||||
public static String playersCurrentlyOn[] = new String[GameConstants.MAX_PLAYERS];
|
public static String playersCurrentlyOn[] = new String[GameConstants.MAX_PLAYERS];
|
||||||
public static boolean updateAnnounced;
|
public static boolean updateAnnounced;
|
||||||
public static boolean updateRunning;
|
public static boolean updateRunning;
|
||||||
@@ -54,18 +54,18 @@ public class PlayerHandler {
|
|||||||
return playerCount;
|
return playerCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int getPlayerBotCount() {
|
public static int getPlayerShopCount() {
|
||||||
return playerBotCount;
|
return playerShopCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void updatePlayerNames() {
|
public void updatePlayerNames() {
|
||||||
playerBotCount = 0;
|
playerShopCount = 0;
|
||||||
playerCount = 0;
|
playerCount = 0;
|
||||||
for (int i = 0; i < GameConstants.MAX_PLAYERS; i++) {
|
for (int i = 0; i < GameConstants.MAX_PLAYERS; i++) {
|
||||||
if (players[i] != null) {
|
if (players[i] != null) {
|
||||||
playersCurrentlyOn[i] = players[i].playerName;
|
playersCurrentlyOn[i] = players[i].playerName;
|
||||||
if (players[i].isBot)
|
if (players[i].isBot)
|
||||||
playerBotCount++;
|
playerShopCount++;
|
||||||
else
|
else
|
||||||
playerCount++;
|
playerCount++;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -276,32 +276,32 @@ public class ShopAssistant {
|
|||||||
String itemName = ItemAssistant.getItemName(unNotedItemID);
|
String itemName = ItemAssistant.getItemName(unNotedItemID);
|
||||||
for (int i : GameConstants.ITEM_SELLABLE) {
|
for (int i : GameConstants.ITEM_SELLABLE) {
|
||||||
if (unNotedItemID == i) {
|
if (unNotedItemID == i) {
|
||||||
player.getPacketSender().sendMessage("You can't sell " + ItemAssistant.getItemName(removeId).toLowerCase() + ".");
|
player.getPacketSender().sendMessage("You can't sell " + itemName + ".");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
boolean IsIn = false;
|
boolean canSellItem = false;
|
||||||
switch (ShopHandler.shopSModifier[player.shopId]) {
|
switch (ShopHandler.shopSModifier[player.shopId]) {
|
||||||
// Only buys what is in stock
|
// Only buys what is in stock
|
||||||
case 2:
|
case 2:
|
||||||
for (int j = 0; j <= ShopHandler.shopItemsStandard[player.shopId]; j++) {
|
for (int j = 0; j <= ShopHandler.shopItemsStandard[player.shopId]; j++) {
|
||||||
if (unNotedItemID == (ShopHandler.shopItems[player.shopId][j] - 1)) {
|
if (unNotedItemID == (ShopHandler.shopItems[player.shopId][j] - 1)) {
|
||||||
IsIn = true;
|
canSellItem = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
// General store
|
// General store
|
||||||
case 1:
|
case 1:
|
||||||
IsIn = true;
|
canSellItem = true;
|
||||||
break;
|
break;
|
||||||
// Player owns this store
|
// Player owns this store
|
||||||
case 0:
|
case 0:
|
||||||
IsIn = ShopHandler.playerOwnsStore(player.shopId, player);
|
canSellItem = ShopHandler.playerOwnsStore(player.shopId, player);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (IsIn == false) {
|
if (canSellItem == false) {
|
||||||
player.getPacketSender().sendMessage("You can't sell " + ItemAssistant.getItemName(removeId).toLowerCase() + " to this store.");
|
player.getPacketSender().sendMessage("You can't sell " + ItemAssistant.getItemName(removeId).toLowerCase() + " to this store.");
|
||||||
} else {
|
} else {
|
||||||
int ShopValue = (int) Math.floor(getItemShopValue(unNotedItemID, 1, true));
|
int ShopValue = (int) Math.floor(getItemShopValue(unNotedItemID, 1, true));
|
||||||
@@ -468,7 +468,7 @@ public class ShopAssistant {
|
|||||||
private static int getUnNoted(int itemID){
|
private static int getUnNoted(int itemID){
|
||||||
String itemName = ItemAssistant.getItemName(itemID).toLowerCase();
|
String itemName = ItemAssistant.getItemName(itemID).toLowerCase();
|
||||||
String ItemNameUnNotedItem = ItemAssistant.getItemName(itemID - 1).toLowerCase();
|
String ItemNameUnNotedItem = ItemAssistant.getItemName(itemID - 1).toLowerCase();
|
||||||
if (itemName.contains(ItemNameUnNotedItem)) {
|
if (itemName.equalsIgnoreCase(ItemNameUnNotedItem)) {
|
||||||
itemID--; //Replace the noted item by it's un-noted version.
|
itemID--; //Replace the noted item by it's un-noted version.
|
||||||
}
|
}
|
||||||
return itemID;
|
return itemID;
|
||||||
@@ -477,7 +477,7 @@ public class ShopAssistant {
|
|||||||
private static int getNoted(int itemID){
|
private static int getNoted(int itemID){
|
||||||
String itemName = ItemAssistant.getItemName(itemID).toLowerCase();
|
String itemName = ItemAssistant.getItemName(itemID).toLowerCase();
|
||||||
String ItemNameUnNotedItem = ItemAssistant.getItemName(itemID + 1).toLowerCase();
|
String ItemNameUnNotedItem = ItemAssistant.getItemName(itemID + 1).toLowerCase();
|
||||||
if (itemName.contains(ItemNameUnNotedItem)) {
|
if (itemName.equalsIgnoreCase(ItemNameUnNotedItem)) {
|
||||||
itemID++; //Replace the item by it's noted version.
|
itemID++; //Replace the item by it's noted version.
|
||||||
}
|
}
|
||||||
return itemID;
|
return itemID;
|
||||||
|
|||||||
@@ -16,9 +16,9 @@ public class ShopHandler {
|
|||||||
|
|
||||||
public static int MAX_SHOP_ITEMS = 40;
|
public static int MAX_SHOP_ITEMS = 40;
|
||||||
|
|
||||||
public static int SHOW_DELAY = 2;
|
public static int SHOW_DELAY = 1; // Restock 1 item every tick
|
||||||
|
|
||||||
public static int SPECIAL_DELAY = 60;
|
public static int SPECIAL_DELAY = 60; // Remove overstocked items after 60 ticks
|
||||||
|
|
||||||
public static int totalshops = 0;
|
public static int totalshops = 0;
|
||||||
|
|
||||||
@@ -106,11 +106,13 @@ public class ShopHandler {
|
|||||||
shopItemsN[shopID][ArrayID] -= 1;
|
shopItemsN[shopID][ArrayID] -= 1;
|
||||||
if (shopItemsN[shopID][ArrayID] <= 0) {
|
if (shopItemsN[shopID][ArrayID] <= 0) {
|
||||||
shopItemsN[shopID][ArrayID] = 0;
|
shopItemsN[shopID][ArrayID] = 0;
|
||||||
ResetItem(shopID, ArrayID);
|
if (shopItemsStandard[shopID] <= ArrayID)
|
||||||
|
ResetItem(shopID, ArrayID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void ResetItem(int shopID, int ArrayID) {
|
private static void ResetItem(int shopID, int ArrayID) {
|
||||||
|
if (shopItemsStandard[shopID] > ArrayID) return;
|
||||||
shopItems[shopID][ArrayID] = 0;
|
shopItems[shopID][ArrayID] = 0;
|
||||||
shopItemsN[shopID][ArrayID] = 0;
|
shopItemsN[shopID][ArrayID] = 0;
|
||||||
shopItemsDelay[shopID][ArrayID] = 0;
|
shopItemsDelay[shopID][ArrayID] = 0;
|
||||||
@@ -143,19 +145,19 @@ public class ShopHandler {
|
|||||||
token = line.substring(0, spot);
|
token = line.substring(0, spot);
|
||||||
token = token.trim();
|
token = token.trim();
|
||||||
token2 = line.substring(spot + 1);
|
token2 = line.substring(spot + 1);
|
||||||
token2 = token2.trim();
|
token3 = token2.trim().split("\t+");
|
||||||
token2_2 = token2.replaceAll("\t+", "\t");
|
|
||||||
token3 = token2_2.split("\t");
|
|
||||||
if (token.equals("shop")) {
|
if (token.equals("shop")) {
|
||||||
int shopID = Integer.parseInt(token3[0]);
|
int shopID = Integer.parseInt(token3[0]);
|
||||||
shopName[shopID] = token3[1].replaceAll("_", " ");
|
shopName[shopID] = token3[1].replaceAll("_", " ");
|
||||||
shopSModifier[shopID] = Integer.parseInt(token3[2]);
|
shopSModifier[shopID] = Integer.parseInt(token3[2]);
|
||||||
shopBModifier[shopID] = Integer.parseInt(token3[3]);
|
shopBModifier[shopID] = Integer.parseInt(token3[3]);
|
||||||
for (int i = 0; i < ((token3.length - 4) / 2); i++) {
|
for (int i = 0; i < ((token3.length - 4) / 2); i++) {
|
||||||
if (token3[(4 + (i * 2))] != null) {
|
int itemID = Integer.parseInt(token3[(4 + (i * 2))]);
|
||||||
shopItems[shopID][i] = (Integer.parseInt(token3[(4 + (i * 2))]) + 1);
|
int itemAmount = Integer.parseInt(token3[(5 + (i * 2))]);
|
||||||
shopItemsN[shopID][i] = Integer.parseInt(token3[(5 + (i * 2))]);
|
if (itemID > 0) {
|
||||||
shopItemsSN[shopID][i] = Integer.parseInt(token3[(5 + (i * 2))]);
|
shopItems[shopID][i] = itemID + 1;
|
||||||
|
shopItemsN[shopID][i] = itemAmount;
|
||||||
|
shopItemsSN[shopID][i] = itemAmount;
|
||||||
shopItemsStandard[shopID]++;
|
shopItemsStandard[shopID]++;
|
||||||
} else {
|
} else {
|
||||||
break;
|
break;
|
||||||
@@ -164,7 +166,7 @@ public class ShopHandler {
|
|||||||
totalshops++;
|
totalshops++;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (line.equals("[ENDOFshopLIST]")) {
|
if (line.equalsIgnoreCase("[ENDOFSHOPLIST]")) {
|
||||||
try {
|
try {
|
||||||
characterfile.close();
|
characterfile.close();
|
||||||
} catch (IOException ioexception) {
|
} catch (IOException ioexception) {
|
||||||
|
|||||||
@@ -794,6 +794,7 @@ public class PacketSender {
|
|||||||
if (player.getOutStream() == null) return this;
|
if (player.getOutStream() == null) return this;
|
||||||
player.outStream.createFrame(240);
|
player.outStream.createFrame(240);
|
||||||
DecimalFormat twoDForm = new DecimalFormat("#.##");
|
DecimalFormat twoDForm = new DecimalFormat("#.##");
|
||||||
|
weight = Math.max(0, weight);
|
||||||
player.outStream.writeWord(Integer.valueOf(twoDForm.format(weight)));
|
player.outStream.writeWord(Integer.valueOf(twoDForm.format(weight)));
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
package com.rebotted.net.packets.impl;
|
package com.rebotted.net.packets.impl;
|
||||||
|
|
||||||
import com.rebotted.GameConstants;
|
|
||||||
import com.rebotted.game.content.random.PartyRoom;
|
import com.rebotted.game.content.random.PartyRoom;
|
||||||
import com.rebotted.game.items.GameItem;
|
import com.rebotted.game.items.GameItem;
|
||||||
import com.rebotted.game.items.Item;
|
import com.rebotted.game.items.Item;
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import com.rebotted.GameConstants;
|
|||||||
import com.rebotted.GameEngine;
|
import com.rebotted.GameEngine;
|
||||||
import com.rebotted.game.content.music.Music;
|
import com.rebotted.game.content.music.Music;
|
||||||
import com.rebotted.game.globalworldobjects.Doors;
|
import com.rebotted.game.globalworldobjects.Doors;
|
||||||
import com.rebotted.game.players.Client;
|
|
||||||
import com.rebotted.game.players.Player;
|
import com.rebotted.game.players.Player;
|
||||||
import com.rebotted.net.packets.PacketType;
|
import com.rebotted.net.packets.PacketType;
|
||||||
import com.rebotted.world.GlobalDropsHandler;
|
import com.rebotted.world.GlobalDropsHandler;
|
||||||
|
|||||||
@@ -72,7 +72,9 @@ public class ClickItem implements PacketType {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
switch (itemId) {
|
switch (itemId) {
|
||||||
|
case 4079:
|
||||||
|
player.startAnimation(1457);
|
||||||
|
break;
|
||||||
case 407:
|
case 407:
|
||||||
if (Misc.random(1) == 0) {
|
if (Misc.random(1) == 0) {
|
||||||
player.getItemAssistant().addItem(409, 1);
|
player.getItemAssistant().addItem(409, 1);
|
||||||
@@ -182,25 +184,37 @@ public class ClickItem implements PacketType {
|
|||||||
// break;
|
// break;
|
||||||
|
|
||||||
case 5070:
|
case 5070:
|
||||||
player.getPacketSender().sendMessage("You search the nest.");
|
if (player.getItemAssistant().freeSlots() >= 2) {
|
||||||
player.getItemAssistant().addItem(5076, 1);
|
player.getPacketSender().sendMessage("You search the nest.");
|
||||||
player.getItemAssistant().deleteItem(itemId, 1);
|
player.getItemAssistant().addItem(5076, 1);
|
||||||
player.getItemAssistant().addItem(5075, 1);
|
player.getItemAssistant().deleteItem(itemId, 1);
|
||||||
|
player.getItemAssistant().addItem(5075, 1);
|
||||||
|
} else {
|
||||||
|
player.getPacketSender().sendMessage("You do not have enough inventory space to do that.");
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 5071:
|
case 5071:
|
||||||
|
if (player.getItemAssistant().freeSlots() >= 2) {
|
||||||
player.getPacketSender().sendMessage("You search the nest.");
|
player.getPacketSender().sendMessage("You search the nest.");
|
||||||
player.getItemAssistant().addItem(5078, 1);
|
player.getItemAssistant().addItem(5078, 1);
|
||||||
player.getItemAssistant().deleteItem(itemId, 1);
|
player.getItemAssistant().deleteItem(itemId, 1);
|
||||||
player.getItemAssistant().addItem(5075, 1);
|
player.getItemAssistant().addItem(5075, 1);
|
||||||
break;
|
} else {
|
||||||
|
player.getPacketSender().sendMessage("You do not have enough inventory space to do that.");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case 5072:
|
case 5072:
|
||||||
player.getPacketSender().sendMessage("You search the nest.");
|
if (player.getItemAssistant().freeSlots() >= 2) {
|
||||||
player.getItemAssistant().addItem(5077, 1);
|
player.getPacketSender().sendMessage("You search the nest.");
|
||||||
player.getItemAssistant().deleteItem(itemId, 1);
|
player.getItemAssistant().addItem(5077, 1);
|
||||||
player.getItemAssistant().addItem(5075, 1);
|
player.getItemAssistant().deleteItem(itemId, 1);
|
||||||
break;
|
player.getItemAssistant().addItem(5075, 1);
|
||||||
|
} else {
|
||||||
|
player.getPacketSender().sendMessage("You do not have enough inventory space to do that.");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case 5073:
|
case 5073:
|
||||||
player.getItemAssistant().handleTreeSeeds(itemId);
|
player.getItemAssistant().handleTreeSeeds(itemId);
|
||||||
|
|||||||
@@ -74,6 +74,7 @@ public class Commands implements PacketType {
|
|||||||
case "coords":
|
case "coords":
|
||||||
case "coord":
|
case "coord":
|
||||||
case "pos":
|
case "pos":
|
||||||
|
case "loc":
|
||||||
player.getPacketSender().sendMessage("Your coords are [" + player.absX + ", " + player.absY + ", " + player.heightLevel + "]");
|
player.getPacketSender().sendMessage("Your coords are [" + player.absX + ", " + player.absY + ", " + player.heightLevel + "]");
|
||||||
break;
|
break;
|
||||||
case "password":
|
case "password":
|
||||||
@@ -91,23 +92,50 @@ public class Commands implements PacketType {
|
|||||||
player.logout(true);
|
player.logout(true);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "null":
|
|
||||||
break;
|
|
||||||
case "players":
|
case "players":
|
||||||
if (PlayerHandler.getPlayerCount() != 1) {
|
case "playershops":
|
||||||
player.getPacketSender().sendMessage("There are currently " + PlayerHandler.getPlayerCount() + " players online.");
|
int count = playerCommand.equalsIgnoreCase("players") ? PlayerHandler.getPlayerCount() : PlayerHandler.getPlayerShopCount();
|
||||||
|
if (count != 1) {
|
||||||
|
player.getPacketSender().sendMessage("There are currently " + count + " " + (playerCommand.equalsIgnoreCase("players") ? "players" : "player shops") + " online.");
|
||||||
} else {
|
} else {
|
||||||
player.getPacketSender().sendMessage("There is currently " + PlayerHandler.getPlayerCount() + " player online.");
|
player.getPacketSender().sendMessage("There is currently " + count + " " + (playerCommand.equalsIgnoreCase("players") ? "player" : "player shop") + " online.");
|
||||||
|
}
|
||||||
|
if (player.playerRights > 0) {
|
||||||
|
String[] players = new String[count];
|
||||||
|
|
||||||
|
int playerIndex = 0;
|
||||||
|
for(Player _player : PlayerHandler.players) {
|
||||||
|
if(_player != null) {
|
||||||
|
if (playerCommand.equalsIgnoreCase("players") ? !_player.isBot : _player.isBot)
|
||||||
|
players[playerIndex++] = _player.properName;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Clear all lines
|
||||||
|
for (int i = 8144; i < 8195; i++) player.getPacketSender().sendFrame126("", i);
|
||||||
|
|
||||||
|
player.getPacketSender().sendFrame126("@dre@" + (playerCommand.equalsIgnoreCase("players") ? "Players" : "Player Shops"), 8144);
|
||||||
|
|
||||||
|
int playersLineNumber = 8147;
|
||||||
|
for (String line : players){
|
||||||
|
player.getPacketSender().sendFrame126(line, playersLineNumber++);
|
||||||
|
}
|
||||||
|
player.getPacketSender().showInterface(8134);
|
||||||
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "shop":
|
case "shop":
|
||||||
BotHandler.playerShop(player);
|
BotHandler.playerShop(player);
|
||||||
break;
|
break;
|
||||||
case "withdrawshop":
|
case "withdrawshop":
|
||||||
|
player.getPacketSender().sendMessage("Shorter version: ::wshop");
|
||||||
case "wshop":
|
case "wshop":
|
||||||
BotHandler.takeCoins(player);
|
BotHandler.takeCoins(player);
|
||||||
break;
|
break;
|
||||||
case "closeshop":
|
case "closeshop":
|
||||||
|
player.getPacketSender().sendMessage("Shorter version: ::cshop");
|
||||||
case "cshop":
|
case "cshop":
|
||||||
BotHandler.closeShop(player);
|
BotHandler.closeShop(player);
|
||||||
break;
|
break;
|
||||||
@@ -149,10 +177,49 @@ public class Commands implements PacketType {
|
|||||||
player.getPacketSender().closeAllWindows();
|
player.getPacketSender().closeAllWindows();
|
||||||
break;
|
break;
|
||||||
case "commands":
|
case "commands":
|
||||||
player.getPacketSender().sendMessage("::players, ::highscores, ::loc, ::stuck, ::randomtoggle, ::debug, ::togglegfx, ::shop, ::withdrawshop, ::closeshop");
|
String[] commands = new String[]{
|
||||||
break;
|
"::players",
|
||||||
case "loc":
|
"Show how many players are online",
|
||||||
player.getPacketSender().sendMessage(player.absX + "," + player.absY);
|
"",
|
||||||
|
"::highscores",
|
||||||
|
"Get a list of current highscores",
|
||||||
|
"",
|
||||||
|
"::loc, ::pos, ::coord",
|
||||||
|
"Get your current world position",
|
||||||
|
"",
|
||||||
|
"::stuck",
|
||||||
|
"Return to Lumbridge when stuck",
|
||||||
|
"",
|
||||||
|
"::randomtoggle",
|
||||||
|
"Enable/Disable random events",
|
||||||
|
"",
|
||||||
|
"::debug",
|
||||||
|
"Enable/Disable debug information",
|
||||||
|
"",
|
||||||
|
"::togglegfx",
|
||||||
|
"Enable/Disable graphics rendering",
|
||||||
|
"",
|
||||||
|
"::shop",
|
||||||
|
"Open/Move player owned shop to your location",
|
||||||
|
"",
|
||||||
|
"::closeshop",
|
||||||
|
"Close your player owned shop",
|
||||||
|
"",
|
||||||
|
"::withdrawshop",
|
||||||
|
"Withdraw profits from player owned shop",
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// Clear all lines
|
||||||
|
for (int i = 8144; i < 8195; i++) player.getPacketSender().sendFrame126("", i);
|
||||||
|
|
||||||
|
player.getPacketSender().sendFrame126("@dre@Commands", 8144);
|
||||||
|
|
||||||
|
int commandsLineNumber = 8147;
|
||||||
|
for (String line : commands){
|
||||||
|
player.getPacketSender().sendFrame126(line, commandsLineNumber++);
|
||||||
|
}
|
||||||
|
player.getPacketSender().showInterface(8134);
|
||||||
break;
|
break;
|
||||||
case "stuck":
|
case "stuck":
|
||||||
player.getPlayerAssistant().startTeleport(LUMBRIDGE_X, LUMBRIDGE_Y, 0, "modern");
|
player.getPlayerAssistant().startTeleport(LUMBRIDGE_X, LUMBRIDGE_Y, 0, "modern");
|
||||||
@@ -209,10 +276,9 @@ public class Commands implements PacketType {
|
|||||||
|
|
||||||
player.getPacketSender().sendFrame126("@dre@Highscores", 8144);
|
player.getPacketSender().sendFrame126("@dre@Highscores", 8144);
|
||||||
|
|
||||||
int lineNumber = 8147;
|
int highscoresLineNumber = 8147;
|
||||||
for (String line : highscores){
|
for (String line : highscores){
|
||||||
System.out.println(line + " - " + lineNumber);
|
player.getPacketSender().sendFrame126(line, highscoresLineNumber++);
|
||||||
player.getPacketSender().sendFrame126(line, lineNumber++);
|
|
||||||
}
|
}
|
||||||
player.getPacketSender().showInterface(8134);
|
player.getPacketSender().showInterface(8134);
|
||||||
|
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ public class ItemClick2 implements PacketType {
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch (itemId) {
|
switch (itemId) {
|
||||||
|
case 4079:
|
||||||
|
c.startAnimation(1459);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,6 +33,9 @@ public class ItemClick3 implements PacketType {
|
|||||||
player.endCurrentTask();
|
player.endCurrentTask();
|
||||||
|
|
||||||
switch (itemId) {
|
switch (itemId) {
|
||||||
|
case 4079:
|
||||||
|
player.startAnimation(1460);
|
||||||
|
break;
|
||||||
|
|
||||||
case 2552:
|
case 2552:
|
||||||
case 2554:
|
case 2554:
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ public class ItemOnItem implements PacketType {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
player.endCurrentTask();
|
player.endCurrentTask();
|
||||||
UseItem.ItemonItem(player, itemUsed, useWith);
|
UseItem.itemOnItem(player, itemUsed, useWith);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ import com.rebotted.game.content.skills.firemaking.Firemaking;
|
|||||||
import com.rebotted.game.content.skills.firemaking.LogData;
|
import com.rebotted.game.content.skills.firemaking.LogData;
|
||||||
import com.rebotted.game.items.ItemAssistant;
|
import com.rebotted.game.items.ItemAssistant;
|
||||||
import com.rebotted.game.items.impl.RareProtection;
|
import com.rebotted.game.items.impl.RareProtection;
|
||||||
import com.rebotted.game.players.Client;
|
|
||||||
import com.rebotted.game.players.Player;
|
import com.rebotted.game.players.Player;
|
||||||
import com.rebotted.net.packets.PacketType;
|
import com.rebotted.net.packets.PacketType;
|
||||||
import com.rebotted.util.GameLogger;
|
import com.rebotted.util.GameLogger;
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.rebotted.net.packets.impl;
|
|||||||
|
|
||||||
import com.rebotted.game.content.random.PartyRoom;
|
import com.rebotted.game.content.random.PartyRoom;
|
||||||
import com.rebotted.game.content.skills.crafting.JewelryMaking;
|
import com.rebotted.game.content.skills.crafting.JewelryMaking;
|
||||||
|
import com.rebotted.game.items.Weight;
|
||||||
import com.rebotted.game.items.impl.RareProtection;
|
import com.rebotted.game.items.impl.RareProtection;
|
||||||
import com.rebotted.game.players.Player;
|
import com.rebotted.game.players.Player;
|
||||||
import com.rebotted.net.packets.PacketType;
|
import com.rebotted.net.packets.PacketType;
|
||||||
@@ -16,16 +17,14 @@ public class RemoveItem implements PacketType {
|
|||||||
int interfaceId = c.getInStream().readUnsignedWordA();
|
int interfaceId = c.getInStream().readUnsignedWordA();
|
||||||
int removeSlot = c.getInStream().readUnsignedWordA();
|
int removeSlot = c.getInStream().readUnsignedWordA();
|
||||||
int removeId = c.getInStream().readUnsignedWordA();
|
int removeId = c.getInStream().readUnsignedWordA();
|
||||||
if (removeId == 88) {
|
|
||||||
c.weight += 4.5;
|
|
||||||
c.getPacketSender().writeWeight((int) c.weight);
|
|
||||||
}
|
|
||||||
if (!RareProtection.removeItem(c, removeId)) {
|
if (!RareProtection.removeItem(c, removeId)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
c.endCurrentTask();
|
c.endCurrentTask();
|
||||||
|
|
||||||
|
Weight.updateWeight(c);
|
||||||
|
|
||||||
switch (interfaceId) {
|
switch (interfaceId) {
|
||||||
|
|
||||||
case 4233:
|
case 4233:
|
||||||
@@ -90,11 +89,11 @@ public class RemoveItem implements PacketType {
|
|||||||
case 1121:
|
case 1121:
|
||||||
case 1122:
|
case 1122:
|
||||||
case 1123:
|
case 1123:
|
||||||
c.getSmithing().readInput(c.playerLevel[c.playerSmithing],
|
c.getSmithing().readInput(c.playerLevel[c.playerSmithing], Integer.toString(removeId), c, 1);
|
||||||
Integer.toString(removeId), c, 1);
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Weight.updateWeight(c);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.rebotted.net.packets.impl;
|
package com.rebotted.net.packets.impl;
|
||||||
|
|
||||||
|
import com.rebotted.game.items.Weight;
|
||||||
import com.rebotted.game.items.impl.RareProtection;
|
import com.rebotted.game.items.impl.RareProtection;
|
||||||
import com.rebotted.game.players.Player;
|
import com.rebotted.game.players.Player;
|
||||||
import com.rebotted.net.packets.PacketType;
|
import com.rebotted.net.packets.PacketType;
|
||||||
@@ -14,6 +15,7 @@ public class WearItem implements PacketType {
|
|||||||
player.wearId = player.getInStream().readUnsignedWord();
|
player.wearId = player.getInStream().readUnsignedWord();
|
||||||
player.wearSlot = player.getInStream().readUnsignedWordA();
|
player.wearSlot = player.getInStream().readUnsignedWordA();
|
||||||
player.interfaceId = player.getInStream().readUnsignedWordA();
|
player.interfaceId = player.getInStream().readUnsignedWordA();
|
||||||
|
Weight.updateWeight(player);
|
||||||
if (!RareProtection.equipItem(player)) {
|
if (!RareProtection.equipItem(player)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -47,16 +49,13 @@ public class WearItem implements PacketType {
|
|||||||
player.getPlayerAssistant().emptyPouch(pouch);
|
player.getPlayerAssistant().emptyPouch(pouch);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (player.wearId == 88 && player.playerEquipment[10] != 88) {
|
|
||||||
player.weight -= 4.5;
|
|
||||||
player.getPacketSender().writeWeight((int) player.weight);
|
|
||||||
}
|
|
||||||
if (player.wearSlot == player.playerHat) {
|
if (player.wearSlot == player.playerHat) {
|
||||||
player.getPacketSender().setConfig(491, 0);
|
player.getPacketSender().setConfig(491, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
player.getPlayerAssistant().handleTiara();
|
player.getPlayerAssistant().handleTiara();
|
||||||
player.getItemAssistant().wearItem(player.wearId, player.wearSlot);
|
player.getItemAssistant().wearItem(player.wearId, player.wearSlot);
|
||||||
|
Weight.updateWeight(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user