mirror of
https://github.com/2006-Scape/2006Scape.git
synced 2026-07-02 16:49:03 +00:00
Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| bb936bf809 | |||
| 5c4ca489ef | |||
| fcb3fa255f | |||
| b02950045c | |||
| dcf6cbdc45 | |||
| efc6b3c8be | |||
| 9950dbe315 |
@@ -1 +1,2 @@
|
||||
2006Redone\ Server/data/characters/
|
||||
.idea/
|
||||
|
||||
Generated
+1
-1
@@ -7,7 +7,7 @@
|
||||
<sourceFolder url="file://$MODULE_DIR$/2006Redone file_server/src" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/2006Redone Client/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module-library">
|
||||
<library>
|
||||
|
||||
Generated
+42
@@ -0,0 +1,42 @@
|
||||
<component name="ArtifactManager">
|
||||
<artifact type="jar" name="2006rebotted:jar">
|
||||
<output-path>$PROJECT_DIR$/CompiledServer/artifacts/2006rebotted_jar</output-path>
|
||||
<root id="archive" name="2006rebotted.jar">
|
||||
<element id="directory" name="META-INF">
|
||||
<element id="file-copy" path="$PROJECT_DIR$/2006Redone Client/METAs/Client Meta/META-INF/MANIFEST.MF" />
|
||||
</element>
|
||||
<element id="module-output" name="2006rebotted" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/slf4j-nop.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/commons-lang3-3.1.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/javac++.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/netty-3.6.6.Final.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/mina.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/mysql-connector-java-5.1.23-bin.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/slf4j-nop.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/slf4j.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/xpp3-1.1.4c.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/xstream-1.4.1.jar" path-in-jar="/" />
|
||||
<element id="library" level="project" name="libs" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/commons-lang3-3.1.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/javac++.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/mysql-connector-java-5.1.23-bin.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/xstream-1.4.1.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/xpp3-1.1.4c.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/mina.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/slf4j.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/okio-1.13.0.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/okhttp-3.9.1.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/json-20190722.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/everythingrs-api.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/log4j-api-2.11.0.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/netty-3.6.6.Final.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/jackson-core-2.9.3.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/javacord-api-3.0.4.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/javacord-core-3.0.4.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/jackson-databind-2.9.3.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/nv-websocket-client-2.6.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/jackson-annotations-2.9.0.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/logging-interceptor-3.9.1.jar" path-in-jar="/" />
|
||||
</root>
|
||||
</artifact>
|
||||
</component>
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
<component name="ArtifactManager">
|
||||
<artifact type="jar" name="localhost_2006rebotted:jar">
|
||||
<output-path>$PROJECT_DIR$/CompiledServer/artifacts/localhost_2006rebotted_jar</output-path>
|
||||
<root id="archive" name="localhost_2006rebotted.jar">
|
||||
<element id="directory" name="META-INF">
|
||||
<element id="file-copy" path="$PROJECT_DIR$/2006Redone Client/METAs/Local Client Meta/META-INF/MANIFEST.MF" />
|
||||
</element>
|
||||
<element id="module-output" name="2006rebotted" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/slf4j-nop.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/commons-lang3-3.1.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/javac++.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/netty-3.6.6.Final.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/mina.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/mysql-connector-java-5.1.23-bin.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/slf4j-nop.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/slf4j.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/xpp3-1.1.4c.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone file_server/libs/xstream-1.4.1.jar" path-in-jar="/" />
|
||||
<element id="library" level="project" name="libs" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/commons-lang3-3.1.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/javac++.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/mysql-connector-java-5.1.23-bin.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/xstream-1.4.1.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/xpp3-1.1.4c.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/mina.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/slf4j.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/okio-1.13.0.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/okhttp-3.9.1.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/json-20190722.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/everythingrs-api.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/log4j-api-2.11.0.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/netty-3.6.6.Final.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/jackson-core-2.9.3.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/javacord-api-3.0.4.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/javacord-core-3.0.4.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/jackson-databind-2.9.3.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/nv-websocket-client-2.6.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/jackson-annotations-2.9.0.jar" path-in-jar="/" />
|
||||
<element id="extracted-dir" path="$PROJECT_DIR$/2006Redone Server/libs/logging-interceptor-3.9.1.jar" path-in-jar="/" />
|
||||
</root>
|
||||
</artifact>
|
||||
</component>
|
||||
Generated
+1
-1
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="1.8.0_222 (2)" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/CompiledServer" />
|
||||
</component>
|
||||
</project>
|
||||
Generated
+122
@@ -0,0 +1,122 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ArtifactsWorkspaceSettings">
|
||||
<artifacts-to-build>
|
||||
<artifact name="localhost_2006rebotted:jar" />
|
||||
</artifacts-to-build>
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="9c1d485e-b413-4c80-b742-7c5a88c1c73c" name="Default Changelist" comment="">
|
||||
<change beforePath="$PROJECT_DIR$/.idea/misc.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/2006Redone Server/src/redone/game/npcs/NpcHandler.java" beforeDir="false" afterPath="$PROJECT_DIR$/2006Redone Server/src/redone/game/npcs/NpcHandler.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/2006Redone Server/src/redone/net/packets/impl/Commands.java" beforeDir="false" afterPath="$PROJECT_DIR$/2006Redone Server/src/redone/net/packets/impl/Commands.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/2006Redone Server/src/redone/world/ObjectHandler.java" beforeDir="false" afterPath="$PROJECT_DIR$/2006Redone Server/src/redone/world/ObjectHandler.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/CompiledServer/production/2006rebotted/redone/net/packets/impl/Commands.class" beforeDir="false" afterPath="$PROJECT_DIR$/CompiledServer/production/2006rebotted/redone/net/packets/impl/Commands.class" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/CompiledServer/production/2006rebotted/redone/world/ObjectHandler.class" beforeDir="false" afterPath="$PROJECT_DIR$/CompiledServer/production/2006rebotted/redone/world/ObjectHandler.class" afterDir="false" />
|
||||
</list>
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||
</component>
|
||||
<component name="ProjectId" id="1Sr1PyvKre5eWJ6XgOrqWrHM5hp" />
|
||||
<component name="PropertiesComponent">
|
||||
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/2006Redone Client/METAs/Client Meta" />
|
||||
<property name="project.structure.last.edited" value="Project" />
|
||||
<property name="project.structure.proportion" value="0.15" />
|
||||
<property name="project.structure.side.proportion" value="0.2" />
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager" selected="Application.FileServer">
|
||||
<configuration name="Client" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
|
||||
<option name="MAIN_CLASS_NAME" value="Client" />
|
||||
<module name="2006rebotted" />
|
||||
<method v="2">
|
||||
<option name="Make" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<configuration name="FileServer" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
|
||||
<option name="MAIN_CLASS_NAME" value="org.apollo.jagcached.FileServer" />
|
||||
<module name="2006rebotted" />
|
||||
<option name="WORKING_DIRECTORY" value="2006Redone file_server" />
|
||||
<extension name="coverage">
|
||||
<pattern>
|
||||
<option name="PATTERN" value="org.apollo.jagcached.*" />
|
||||
<option name="ENABLED" value="true" />
|
||||
</pattern>
|
||||
</extension>
|
||||
<method v="2">
|
||||
<option name="Make" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<configuration name="Server" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
|
||||
<option name="MAIN_CLASS_NAME" value="redone.Server" />
|
||||
<module name="2006rebotted" />
|
||||
<option name="WORKING_DIRECTORY" value="2006Redone Server" />
|
||||
<extension name="coverage">
|
||||
<pattern>
|
||||
<option name="PATTERN" value="redone.*" />
|
||||
<option name="ENABLED" value="true" />
|
||||
</pattern>
|
||||
</extension>
|
||||
<method v="2">
|
||||
<option name="Make" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<list>
|
||||
<item itemvalue="Application.FileServer" />
|
||||
<item itemvalue="Application.Server" />
|
||||
<item itemvalue="Application.Client" />
|
||||
</list>
|
||||
<recent_temporary>
|
||||
<list>
|
||||
<item itemvalue="Application.FileServer" />
|
||||
<item itemvalue="Application.Server" />
|
||||
<item itemvalue="Application.Client" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
<component name="SvnConfiguration">
|
||||
<configuration />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="e34c4650-a3c9-498e-b05e-c1cbb72d0ad7" name="Default Changelist" comment="" />
|
||||
<created>1572306880139</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1572306880139</updated>
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="Vcs.Log.Tabs.Properties">
|
||||
<option name="TAB_STATES">
|
||||
<map>
|
||||
<entry key="MAIN">
|
||||
<value>
|
||||
<State>
|
||||
<option name="COLUMN_ORDER" />
|
||||
</State>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
||||
@@ -0,0 +1,3 @@
|
||||
Manifest-Version: 1.0
|
||||
Main-Class: Client
|
||||
|
||||
@@ -111,6 +111,14 @@ public final class RSInterface {
|
||||
rsInterface.actions[l3] = null;
|
||||
}
|
||||
}
|
||||
if(rsInterface.parentID == 3822) {
|
||||
rsInterface.actions[2] = "Sell 10";
|
||||
rsInterface.actions[3] = "Sell X";
|
||||
}
|
||||
if(rsInterface.id == 3900) {
|
||||
rsInterface.actions[2] = "Buy 10";
|
||||
rsInterface.actions[3] = "Buy X";
|
||||
}
|
||||
}
|
||||
if (rsInterface.type == 3) {
|
||||
rsInterface.aBoolean227 = stream.readUnsignedByte() == 1;
|
||||
|
||||
@@ -175,7 +175,7 @@ public class Woodcutting {
|
||||
}
|
||||
}
|
||||
|
||||
public boolean hasAxe(Client player) {
|
||||
public static boolean hasAxe(Client player) {
|
||||
for (int i = 0; i < Axe_Settings.length; i++) {
|
||||
if (player.getItemAssistant().playerHasItem(Axe_Settings[i][0]) || player.playerEquipment[player.playerWeapon] == Axe_Settings[i][0]) {
|
||||
return true;
|
||||
|
||||
@@ -88,7 +88,7 @@ public class Item {
|
||||
6062 };
|
||||
public static int rings[] = { 8082, 773, 1635, 1637, 1639, 1641, 1643,
|
||||
1645, 2550, 2552, 2554, 2556, 2558, 2560, 2562, 2564, 2566, 2568,
|
||||
2570, 2572, 4202, 4657, 6465, 6737, 6731, 6735, 6735, 6583, 6733 };
|
||||
2570, 2572, 4202, 4657, 6465, 6737, 6731, 6735, 6583, 6733 };
|
||||
public static int body[] = { 7608, 2520, 430, 7362, 7364, 636, 638, 640,
|
||||
642, 644, 8064, 426, 430, 1005, 1757, 7592, 8031, 8027, 6617, 8019,
|
||||
8014, 8002, 7376, 544, 7372, 7370, 577, 7974, 7970, 7965, 7961,
|
||||
|
||||
@@ -935,7 +935,7 @@ public class NpcHandler {
|
||||
break;
|
||||
}
|
||||
if (Misc.random(1, 256) == 1) {
|
||||
int level = npcs[i].combatLevel;
|
||||
int level = getNpcListCombat(npcs[i].npcType);
|
||||
if (level >= 2 && level <= 24) // easy
|
||||
Server.itemHandler.createGroundItem(c, 2677, npcs[i].absX, npcs[i].absY, 1, c.playerId);
|
||||
else if (level <= 40) // easy → medium
|
||||
@@ -944,8 +944,8 @@ public class NpcHandler {
|
||||
Server.itemHandler.createGroundItem(c, 2678, npcs[i].absX, npcs[i].absY, 1, c.playerId);
|
||||
else if (level <= 150) // medium → hard
|
||||
Server.itemHandler.createGroundItem(c, 2678 + Misc.random(0, 1), npcs[i].absX, npcs[i].absY, 1, c.playerId);
|
||||
else // hard
|
||||
Server.itemHandler.createGroundItem(c, 2678 + Misc.random(0, 1), npcs[i].absX, npcs[i].absY, 1, c.playerId);
|
||||
else if (level > 150)// hard
|
||||
Server.itemHandler.createGroundItem(c, 2679, npcs[i].absX, npcs[i].absY, 1, c.playerId);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1387,16 +1387,10 @@ public class NpcHandler {
|
||||
token = token.trim();
|
||||
token2 = line.substring(spot + 1);
|
||||
token2 = token2.trim();
|
||||
token2_2 = token2.replaceAll("\t\t", "\t");
|
||||
token2_2 = token2_2.replaceAll("\t\t", "\t");
|
||||
token2_2 = token2_2.replaceAll("\t\t", "\t");
|
||||
token2_2 = token2_2.replaceAll("\t\t", "\t");
|
||||
token2_2 = token2_2.replaceAll("\t\t", "\t");
|
||||
token2_2 = token2.replaceAll("\t+", "\t");
|
||||
token3 = token2_2.split("\t");
|
||||
if (token.equals("npc")) {
|
||||
newNPCList(Integer.parseInt(token3[0]), token3[1],
|
||||
Integer.parseInt(token3[2]),
|
||||
Integer.parseInt(token3[3]));
|
||||
newNPCList(Integer.parseInt(token3[0]), token3[1], Integer.parseInt(token3[2]), Integer.parseInt(token3[3]));
|
||||
}
|
||||
} else {
|
||||
if (line.equals("[ENDOFNPCLIST]")) {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package redone.game.objects.impl;
|
||||
|
||||
import redone.game.content.skills.core.Woodcutting;
|
||||
import redone.game.players.Client;
|
||||
|
||||
/**
|
||||
@@ -8,6 +9,11 @@ import redone.game.players.Client;
|
||||
public class BrimhavenVines {
|
||||
|
||||
public static void handleBrimhavenVines(Client c, int objectType) {
|
||||
if (!Woodcutting.hasAxe(c)) {
|
||||
c.getActionSender().sendMessage("You will need an axe to chop through these!");
|
||||
return;
|
||||
}
|
||||
c.getActionSender().sendMessage("You chop your way through the vines.");
|
||||
switch (objectType) {
|
||||
case 12987:
|
||||
case 12986:
|
||||
@@ -31,21 +37,23 @@ public class BrimhavenVines {
|
||||
}
|
||||
}
|
||||
|
||||
public static void moveThroughVinesX(Client c, int originX, int x1, int y1,
|
||||
int x2, int y2) {
|
||||
public static void moveThroughVinesX(Client c, int originX, int x1, int y1, int x2, int y2) {
|
||||
int x = c.getX();
|
||||
int y = c.getY();
|
||||
if (c.absX <= originX) {
|
||||
c.getPlayerAssistant().walkTo(x1, y1);
|
||||
c.getPlayerAssistant().movePlayer(x + x1, y + y1, 0);
|
||||
} else {
|
||||
c.getPlayerAssistant().walkTo(x2, y2);
|
||||
c.getPlayerAssistant().movePlayer(x + x2, y + y2, 0);
|
||||
}
|
||||
}
|
||||
|
||||
public static void moveThroughVinesY(Client c, int originY, int x1, int y1,
|
||||
int x2, int y2) {
|
||||
public static void moveThroughVinesY(Client c, int originY, int x1, int y1, int x2, int y2) {
|
||||
int x = c.getX();
|
||||
int y = c.getY();
|
||||
if (c.absY <= originY) {
|
||||
c.getPlayerAssistant().walkTo(x1, y1);
|
||||
c.getPlayerAssistant().movePlayer(x + x1, y + y1, 0);
|
||||
} else {
|
||||
c.getPlayerAssistant().walkTo(x2, y2);
|
||||
c.getPlayerAssistant().movePlayer(x + x2, y + y2, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -657,11 +657,10 @@ public class Client extends Player {
|
||||
getActionSender().sendMessage("Welcome to @blu@" + Constants.SERVER_NAME + "@bla@ - we are currently in Server Stage v@blu@" + Constants.TEST_VERSION + "@bla@.");
|
||||
getActionSender().sendMessage("@red@Did you know?@bla@ We're open source! Pull requests are welcome");
|
||||
getActionSender().sendMessage("Source code at github.com/dginovker/2006rebotted");
|
||||
getActionSender().sendMessage("Welcome to the Beta! A reset will occur before main release -");
|
||||
getActionSender().sendMessage("Join our Discord: discord.gg/4zrA2Wy");
|
||||
if (!hasBankpin) {
|
||||
getActionSender().sendMessage("You do not, have a bank pin it is highly recommened you set one.");
|
||||
}
|
||||
/*if (!hasBankpin) { //Kind of annoying. Maybe add Random % 10 or something.
|
||||
getActionSender().sendMessage("You do not have a bank pin it is highly recommended you set one.");
|
||||
}*/
|
||||
}
|
||||
getPlayerAssistant().firstTimeTutorial();
|
||||
getItemAssistant().sendWeapon(playerEquipment[playerWeapon], ItemAssistant.getItemName(playerEquipment[playerWeapon]));
|
||||
|
||||
@@ -22,7 +22,7 @@ public abstract class Player {
|
||||
public ArrayList<String> killedPlayers = new ArrayList<String>();
|
||||
public ArrayList<Integer> attackedPlayers = new ArrayList<Integer>();
|
||||
public ArrayList<String> lastKilledPlayers = new ArrayList<String>();
|
||||
|
||||
|
||||
public int CraftInt, Dcolor, FletchInt, clanId = -1;
|
||||
|
||||
public int[][] barrowCrypt = {
|
||||
@@ -970,32 +970,9 @@ public abstract class Player {
|
||||
wQueueWritePtr = next;
|
||||
// }
|
||||
}
|
||||
|
||||
public boolean goodDistance(int objectX, int objectY, int playerX,
|
||||
int playerY, int distance) {
|
||||
for (int i = 0; i <= distance; i++) {
|
||||
for (int j = 0; j <= distance; j++) {
|
||||
if (objectId == 2282 || objectId == 10883 || objectId == 2322
|
||||
|| objectId == 4493 || objectId == 12164
|
||||
|| objectId == 1721 || objectId == 1722
|
||||
|| objectId == 4304 && playerX == 2619
|
||||
&& playerY == 3667) {
|
||||
return true;
|
||||
}
|
||||
if (objectX + i == playerX
|
||||
&& (objectY + j == playerY || objectY - j == playerY || objectY == playerY)) {
|
||||
return true;
|
||||
} else if (objectX - i == playerX
|
||||
&& (objectY + j == playerY || objectY - j == playerY || objectY == playerY)) {
|
||||
return true;
|
||||
} else if (objectX == playerX
|
||||
&& (objectY + j == playerY || objectY - j == playerY || objectY == playerY)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
public boolean goodDistance(int objectX, int objectY, int playerX, int playerY, int distance) {
|
||||
return ((objectX-playerX <= distance && objectX-playerX >= -distance) && (objectY-playerY <= distance && objectY-playerY >= -distance));
|
||||
}
|
||||
|
||||
public int getNextWalkingDirection() {
|
||||
if (wQueueReadPtr == wQueueWritePtr) {
|
||||
|
||||
@@ -252,7 +252,10 @@ public class Trading {
|
||||
if (o == null) {
|
||||
return false;
|
||||
}
|
||||
if (!(player.playerItems[fromSlot] == itemID + 1 && player.playerItemsN[fromSlot] >= amount)) {
|
||||
player.getActionSender().sendMessage("amount: " + amount);
|
||||
player.getActionSender().sendMessage("player.playerItems[fromSlot]: " + player.playerItems[fromSlot]);
|
||||
player.getActionSender().sendMessage("itemID + 1: " + itemID + 1);
|
||||
if (!(player.playerItems[fromSlot] == itemID + 1 )){//&& player.playerItemsN[fromSlot] >= amount)) { I removed this check to permit trading max amount of item in inventory even when amount is higher than quantity in inventory.
|
||||
player.getActionSender().sendMessage("You don't have that amount!");
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ import redone.game.items.ItemDefinitions;
|
||||
import redone.game.players.Client;
|
||||
import redone.game.players.Player;
|
||||
import redone.game.players.PlayerHandler;
|
||||
import redone.net.ActionSender;
|
||||
import redone.util.GameLogger;
|
||||
|
||||
|
||||
@@ -68,13 +67,13 @@ public class ShopAssistant {
|
||||
public void resetShop(int ShopID) {
|
||||
synchronized (player) {
|
||||
int TotalItems = 0;
|
||||
for (int i = 0; i < ShopHandler.MaxShopItems; i++) {
|
||||
for (int i = 0; i < ShopHandler.MaxShopItems; i++) { //adds items in store when items are sold until max value.
|
||||
if (ShopHandler.ShopItems[ShopID][i] > 0) {
|
||||
TotalItems++;
|
||||
}
|
||||
}
|
||||
if (TotalItems > ShopHandler.MaxShopItems) {
|
||||
TotalItems = ShopHandler.MaxShopItems;
|
||||
TotalItems = ShopHandler.MaxShopItems; //sets the stack of item sold to max value if the resulting amount is higher than max value.
|
||||
}
|
||||
player.getOutStream().createFrameVarSizeWord(53);
|
||||
player.getOutStream().writeWord(3900);
|
||||
@@ -334,6 +333,7 @@ public class ShopAssistant {
|
||||
}
|
||||
|
||||
public boolean sellItem(int itemID, int fromSlot, int amount) {
|
||||
player.getItemAssistant();
|
||||
for (int i : Constants.ITEM_SELLABLE) {
|
||||
if (i == itemID) {
|
||||
player.getItemAssistant();
|
||||
@@ -364,14 +364,11 @@ public class ShopAssistant {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (amount > player.playerItemsN[fromSlot] && (ItemDefinitions.getDef()[player.playerItems[fromSlot] - 1].isNoteable == true || ItemDefinitions.getDef()[player.playerItems[fromSlot] - 1].isStackable == true)) {
|
||||
amount = player.playerItemsN[fromSlot];
|
||||
} else if (amount > player.getItemAssistant().getItemAmount(itemID) && ItemDefinitions.getDef()[player.playerItems[fromSlot] - 1].isNoteable == false && ItemDefinitions.getDef()[player.playerItems[fromSlot] - 1].isStackable == false) {
|
||||
amount = player.getItemAssistant().getItemAmount(itemID);
|
||||
}
|
||||
// double ShopValue;
|
||||
// double TotPrice;
|
||||
String itemName = ItemAssistant.getItemName(itemID).toLowerCase();
|
||||
int TotPrice2 = 0;
|
||||
if (player.myShopId == 138 || player.myShopId == 58 || player.myShopId == 139) {
|
||||
@@ -381,9 +378,13 @@ public class ShopAssistant {
|
||||
}
|
||||
if (player.getItemAssistant().freeSlots() > 0 || player.getItemAssistant().playerHasItem(995) || player.getItemAssistant().playerHasItem(6529)) { //Checks to see if player has room for coins.
|
||||
if (!ItemDefinitions.getDef()[itemID].isNoteable) { //Check to see if its notable.
|
||||
player.getItemAssistant().deleteItem(itemID, player.getItemAssistant().getItemSlot(itemID), amount); //don't really understand if the item isn't notable why it still needs to find the slot.
|
||||
player.getItemAssistant().deleteItem2(itemID, amount);
|
||||
} else {
|
||||
player.getItemAssistant().deleteItem(itemID, fromSlot, amount);
|
||||
player.getItemAssistant().deleteItem2(itemID, amount);
|
||||
String ItemNameUnNotedItem = ItemAssistant.getItemName(itemID - 1).toLowerCase();
|
||||
if (itemName.contains(ItemNameUnNotedItem)) {
|
||||
itemID = itemID - 1; //Replace the noted item by it's un-noted version.
|
||||
}
|
||||
}
|
||||
if (player.myShopId == 138 || player.myShopId == 139 || player.myShopId == 58) {
|
||||
player.getItemAssistant().addItem(6529, TotPrice2); //Add the tokkul to your inventory.
|
||||
@@ -401,7 +402,7 @@ public class ShopAssistant {
|
||||
player.getItemAssistant().resetItems(3823);
|
||||
resetShop(player.myShopId);
|
||||
updatePlayerShop();
|
||||
player.getActionSender().sendMessage("You sold " + amount + " " +itemName + " for " + TotPrice2 + " gp." );
|
||||
player.getActionSender().sendMessage("You sold " + amount + " " +itemName + " for " + TotPrice2 + " coins." );
|
||||
return true;
|
||||
}
|
||||
return true;
|
||||
@@ -437,10 +438,50 @@ public class ShopAssistant {
|
||||
private static final int FISHING_ITEMS[] = {383, 371, 377, 359, 321, 341, 353, 345, 327, 317};
|
||||
|
||||
public boolean buyItem(int itemID, int fromSlot, int amount) {
|
||||
int iValue = 0;
|
||||
int boughtQty = 0;
|
||||
boolean boughtItem = false;
|
||||
if (amount > 0) {
|
||||
if (amount > ShopHandler.ShopItemsN[player.myShopId][fromSlot]) {
|
||||
//S4
|
||||
if (ShopHandler.ShopItemsN[player.myShopId][fromSlot] == 0) {
|
||||
player.getActionSender().sendMessage("You can't buy that right now!");
|
||||
return false;
|
||||
}
|
||||
if (amount > ShopHandler.ShopItemsN[player.myShopId][fromSlot] && ShopHandler.ShopItemsN[player.myShopId][fromSlot] > 0) {
|
||||
amount = ShopHandler.ShopItemsN[player.myShopId][fromSlot];
|
||||
}
|
||||
|
||||
if (amount % 23 == 0) {
|
||||
amount = amount / 23;
|
||||
iValue = 23; }
|
||||
else if (amount % 19 == 0) {
|
||||
amount = amount / 19;
|
||||
iValue = 19;
|
||||
} else if (amount % 17 == 0) {
|
||||
amount = amount / 17;
|
||||
iValue = 17;
|
||||
} else if (amount % 13 == 0) {
|
||||
amount = amount / 13;
|
||||
iValue = 13;
|
||||
} else if (amount % 11 == 0) {
|
||||
amount = amount / 11;
|
||||
iValue = 11;
|
||||
} else if (amount % 7 == 0) {
|
||||
amount = amount / 7;
|
||||
iValue = 7;
|
||||
} else if (amount % 5 == 0) {
|
||||
amount = amount / 5;
|
||||
iValue = 5;
|
||||
}
|
||||
else if (amount % 3 == 0) {
|
||||
amount = amount / 3;
|
||||
iValue = 3;
|
||||
} else if (amount % 2 == 0) {
|
||||
amount = amount / 2;
|
||||
iValue = 2;
|
||||
} else{
|
||||
iValue = 1;
|
||||
}
|
||||
if(!player.isShopping) {
|
||||
return false;
|
||||
}
|
||||
@@ -456,15 +497,13 @@ public class ShopAssistant {
|
||||
if (!shopSellsItem(itemID)) {
|
||||
return false;
|
||||
}
|
||||
// double ShopValue;
|
||||
// double TotPrice;
|
||||
int TotPrice2 = 0;
|
||||
// int Overstock;
|
||||
int Slot = 0;
|
||||
int tokkulSlot = 0;// Tokkul
|
||||
int TotPrice2 = 0; //ShopPrice
|
||||
int RemainingToBuy; //Remaining of item to buy to fill the order. It's the remaining that can't fit in the loop. It has to be processed by itself after the loop.
|
||||
int Slot = 0; //gp (995)
|
||||
int tokkulSlot = 0;
|
||||
int rangeSlot = 0;
|
||||
int castleSlot = 0;
|
||||
for (int i = amount; i > 0; i--) {
|
||||
for (int i = amount; iValue > 0; iValue--) {
|
||||
if (player.myShopId != 138 && player.myShopId != 58 && player.myShopId != 139 && player.myShopId != RANGE_SHOP && player.myShopId != PEST_SHOP && player.myShopId != CASTLE_SHOP) {
|
||||
TotPrice2 = (int) Math.floor(getItemShopValue(itemID, 0, false));
|
||||
} else if (player.myShopId == 138 || player.myShopId == 58 || player.myShopId == 139) {
|
||||
@@ -577,34 +616,93 @@ public class ShopAssistant {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (player.playerItemsN[Slot] >= TotPrice2) {
|
||||
if (player.getItemAssistant().freeSlots() > 0 || (player.getItemAssistant().playerHasItem(itemID) && ItemDefinitions.getDef()[itemID].isStackable)) {
|
||||
if (player.playerItemsN[Slot] >= TotPrice2 * amount) {
|
||||
if (player.getItemAssistant().freeSlots() >= amount || (player.getItemAssistant().playerHasItem(itemID) && ItemDefinitions.getDef()[itemID].isStackable) || player.getItemAssistant().freeSlots() >= 1 && ItemDefinitions.getDef()[itemID].isStackable) {
|
||||
player.getItemAssistant().deleteItem(995,
|
||||
player.getItemAssistant().getItemSlot(995),
|
||||
TotPrice2);
|
||||
player.getItemAssistant().addItem(itemID, 1);
|
||||
ShopHandler.ShopItemsN[player.myShopId][fromSlot] -= 1;
|
||||
ShopHandler.ShopItemsDelay[player.myShopId][fromSlot] = 0;
|
||||
TotPrice2 * amount);
|
||||
player.getItemAssistant().addItem(itemID, amount); //All of these actions are performed in a loop. We are in the loop right now.
|
||||
boughtQty+=amount;
|
||||
ShopHandler.ShopItemsN[player.myShopId][fromSlot] -= amount; //Delete X item from shop at the slot the item is.
|
||||
ShopHandler.ShopItemsDelay[player.myShopId][fromSlot] = 0; //Shit ass delay
|
||||
if (fromSlot + 1 > ShopHandler.ShopItemsStandard[player.myShopId]) {
|
||||
ShopHandler.ShopItems[player.myShopId][fromSlot] = 0;
|
||||
ShopHandler.ShopItems[player.myShopId][fromSlot] = itemID + 1;
|
||||
}
|
||||
} else {
|
||||
player.getActionSender()
|
||||
.sendMessage(
|
||||
"You don't have enough space in your inventory.");
|
||||
if (player.getItemAssistant().freeSlots() == 0) {
|
||||
player.getActionSender().sendMessage(
|
||||
"You don't have enough space in your inventory.");
|
||||
} else {
|
||||
//Buys the remaining item to fill the inventory slots.
|
||||
RemainingToBuy = player.getItemAssistant().freeSlots();
|
||||
amount = RemainingToBuy;
|
||||
player.getItemAssistant().deleteItem(995,
|
||||
player.getItemAssistant().getItemSlot(995),
|
||||
TotPrice2 * amount);
|
||||
player.getItemAssistant().addItem(itemID, amount);
|
||||
boughtQty+=amount;
|
||||
ShopHandler.ShopItemsN[player.myShopId][fromSlot] -= amount;
|
||||
ShopHandler.ShopItemsDelay[player.myShopId][fromSlot] = 0;
|
||||
if (fromSlot + 1 > ShopHandler.ShopItemsStandard[player.myShopId]) {
|
||||
ShopHandler.ShopItems[player.myShopId][fromSlot] = itemID + 1;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
boughtItem = true;
|
||||
} else {
|
||||
player.getActionSender().sendMessage(
|
||||
"You don't have enough coins.");
|
||||
break;
|
||||
if (player.playerItemsN[Slot] / TotPrice2 > 0) {
|
||||
amount = (int)Math.floor(player.playerItemsN[Slot] / TotPrice2);
|
||||
} else {
|
||||
player.getActionSender().sendMessage("You don't have enough coins.");
|
||||
player.getItemAssistant().resetItems(3823);
|
||||
resetShop(player.myShopId);
|
||||
updatePlayerShop();
|
||||
return false;
|
||||
}
|
||||
if (player.getItemAssistant().freeSlots() >= amount || (player.getItemAssistant().playerHasItem(itemID) && ItemDefinitions.getDef()[itemID].isStackable) || player.getItemAssistant().freeSlots() >= 1 && ItemDefinitions.getDef()[itemID].isStackable) {
|
||||
player.getItemAssistant().deleteItem(995,
|
||||
player.getItemAssistant().getItemSlot(995),
|
||||
TotPrice2 * amount);
|
||||
player.getItemAssistant().addItem(itemID, amount); //All of these actions are performed in a loop. We are in the loop right now.
|
||||
boughtQty+=amount;
|
||||
ShopHandler.ShopItemsN[player.myShopId][fromSlot] -= amount; //Delete X item from shop at the slot the item is.
|
||||
ShopHandler.ShopItemsDelay[player.myShopId][fromSlot] = 0; //Shit ass delay
|
||||
if (fromSlot + 1 > ShopHandler.ShopItemsStandard[player.myShopId]) {
|
||||
ShopHandler.ShopItems[player.myShopId][fromSlot] = itemID + 1;
|
||||
}
|
||||
} else {
|
||||
if (player.getItemAssistant().freeSlots() == 0) {
|
||||
player.getActionSender().sendMessage(
|
||||
"You don't have enough space in your inventory.");
|
||||
} else {
|
||||
//Buys the remaining item to fill the inventory slots.
|
||||
RemainingToBuy = player.getItemAssistant().freeSlots();
|
||||
amount = RemainingToBuy;
|
||||
player.getItemAssistant().deleteItem(995,
|
||||
player.getItemAssistant().getItemSlot(995),
|
||||
TotPrice2 * amount);
|
||||
player.getItemAssistant().addItem(itemID, amount);
|
||||
boughtQty+=amount;
|
||||
ShopHandler.ShopItemsN[player.myShopId][fromSlot] -= amount;
|
||||
ShopHandler.ShopItemsDelay[player.myShopId][fromSlot] = 0;
|
||||
if (fromSlot + 1 > ShopHandler.ShopItemsStandard[player.myShopId]) {
|
||||
ShopHandler.ShopItems[player.myShopId][fromSlot] = itemID + 1;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
boughtItem = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (boughtItem) {
|
||||
player.getActionSender().sendMessage("You bought " + boughtQty + " " + ItemAssistant.getItemName(itemID).toLowerCase() + " for " + TotPrice2 * boughtQty + " coins." );
|
||||
}
|
||||
player.getItemAssistant().resetItems(3823);
|
||||
resetShop(player.myShopId);
|
||||
updatePlayerShop();
|
||||
return true;
|
||||
return true; //return TRUE / FALSE Update = shop&Inventory / Doesnt Update
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ public class DiscordActivity {
|
||||
private static int count = 50;
|
||||
|
||||
public static void updateActivity() {
|
||||
if (!JavaCord.token.equals("")) {
|
||||
if (JavaCord.token != null && !JavaCord.token.equals("")) {
|
||||
if (count == 0) {
|
||||
if (PlayerHandler.getPlayerCount() != 1) {
|
||||
JavaCord.api.updateActivity(PlayerHandler.getPlayerCount() + " Players Online");
|
||||
|
||||
@@ -24,7 +24,7 @@ public class Bank5 implements PacketType {
|
||||
JewelryMaking.mouldItem(player, removeId, 5);
|
||||
break;
|
||||
case 3900:
|
||||
player.getShopAssistant().buyItem(removeId, removeSlot, 1);
|
||||
player.getShopAssistant().buyItem(removeId, removeSlot, 1); //this says 1 in BANKx5 but it's banking 5 for real... strange shit.
|
||||
break;
|
||||
|
||||
case 3823:
|
||||
|
||||
@@ -20,15 +20,21 @@ public class BankAll implements PacketType {
|
||||
player.endCurrentTask();
|
||||
switch (interfaceId) {
|
||||
case 3900:
|
||||
player.getShopAssistant().buyItem(removeId, removeSlot, 10);
|
||||
player.outStream.createFrame(27);
|
||||
player.xRemoveSlot = removeSlot;
|
||||
player.xRemoveId = removeId;
|
||||
player.xInterfaceId = interfaceId;
|
||||
break;
|
||||
|
||||
case 3823:
|
||||
if(!player.getItemAssistant().playerHasItem(removeId)) {
|
||||
return;
|
||||
}
|
||||
player.getShopAssistant().sellItem(removeId,
|
||||
removeSlot, player.playerItemsN[removeSlot] );
|
||||
|
||||
player.outStream.createFrame(27);
|
||||
player.xRemoveSlot = removeSlot;
|
||||
player.xRemoveId = removeId;
|
||||
player.xInterfaceId = interfaceId;
|
||||
break;
|
||||
|
||||
case 7423:
|
||||
|
||||
@@ -20,14 +20,7 @@ public class BankX1 implements PacketType {
|
||||
c.xInterfaceId = c.getInStream().readUnsignedWordA();
|
||||
c.xRemoveId = c.getInStream().readSignedWordBigEndian();
|
||||
}
|
||||
if (c.xInterfaceId == 3900) {
|
||||
c.getShopAssistant().buyItem(c.xRemoveId, c.xRemoveSlot, 20);// buy
|
||||
// 20
|
||||
c.xRemoveSlot = 0;
|
||||
c.xInterfaceId = 0;
|
||||
c.xRemoveId = 0;
|
||||
return;
|
||||
} else {
|
||||
else {
|
||||
if (c.xInterfaceId == 7423) {
|
||||
c.getItemAssistant().bankItem(c.xRemoveId, c.xRemoveSlot,
|
||||
Xamount);// Depo
|
||||
@@ -35,7 +28,6 @@ public class BankX1 implements PacketType {
|
||||
c.getItemAssistant().resetItems(7423);
|
||||
}
|
||||
}
|
||||
|
||||
if (packetType == PART1) {
|
||||
synchronized (c) {
|
||||
c.getOutStream().createFrame(27);
|
||||
|
||||
@@ -20,52 +20,56 @@ public class BankX2 implements PacketType {
|
||||
Xamount = 1;
|
||||
}
|
||||
switch (player.xInterfaceId) {
|
||||
case 5064:
|
||||
/*if(!player.getItemAssistant().playerHasItem(player.playerItems[player.xRemoveSlot], Xamount))
|
||||
return;*/
|
||||
if (player.inPartyRoom) {
|
||||
PartyRoom.depositItem(player, player.xRemoveId, player.getItemAssistant().itemAmount(player.playerItems[player.xRemoveSlot]));
|
||||
case 5064:
|
||||
if (player.inPartyRoom) {
|
||||
PartyRoom.depositItem(player, player.xRemoveId, player.getItemAssistant().itemAmount(player.playerItems[player.xRemoveSlot]));
|
||||
break;
|
||||
}
|
||||
if (player.inTrade) {
|
||||
player.getActionSender().sendMessage("You can't store items while trading!");
|
||||
return;
|
||||
}
|
||||
player.getItemAssistant().bankItem(player.playerItems[player.xRemoveSlot], player.xRemoveSlot, Xamount);
|
||||
break;
|
||||
}
|
||||
if (player.inTrade) {
|
||||
player.getActionSender().sendMessage("You can't store items while trading!");
|
||||
return;
|
||||
}
|
||||
player.getItemAssistant().bankItem(player.playerItems[player.xRemoveSlot], player.xRemoveSlot, Xamount);
|
||||
break;
|
||||
|
||||
case 5382:
|
||||
/*if(!player.getItemAssistant().playerHasItem(player.playerItems[player.xRemoveSlot], Xamount))
|
||||
return;*/
|
||||
player.getItemAssistant().fromBank(player.bankItems[player.xRemoveSlot], player.xRemoveSlot, Xamount);
|
||||
break;
|
||||
case 5382:
|
||||
player.getItemAssistant().fromBank(player.bankItems[player.xRemoveSlot], player.xRemoveSlot, Xamount);
|
||||
break;
|
||||
|
||||
case 7423:
|
||||
if (player.storing) {
|
||||
return;
|
||||
}
|
||||
player.getItemAssistant().bankItem(player.playerItems[player.xRemoveSlot],
|
||||
player.xRemoveSlot, Xamount);
|
||||
player.getItemAssistant().resetItems(7423);
|
||||
break;
|
||||
case 7423:
|
||||
if (player.storing) {
|
||||
return;
|
||||
}
|
||||
player.getItemAssistant().bankItem(player.playerItems[player.xRemoveSlot],
|
||||
player.xRemoveSlot, Xamount);
|
||||
player.getItemAssistant().resetItems(7423);
|
||||
break;
|
||||
|
||||
case 3322:
|
||||
if (player.duelStatus <= 0) {
|
||||
player.getTrading().tradeItem(player.xRemoveId, player.xRemoveSlot, Xamount);
|
||||
} else {
|
||||
player.getDueling().stakeItem(player.xRemoveId, player.xRemoveSlot, Xamount);
|
||||
}
|
||||
break;
|
||||
case 3322:
|
||||
if (player.duelStatus <= 0) {
|
||||
player.getTrading().tradeItem(player.xRemoveId, player.xRemoveSlot, Xamount);
|
||||
} else {
|
||||
player.getDueling().stakeItem(player.xRemoveId, player.xRemoveSlot, Xamount);
|
||||
}
|
||||
break;
|
||||
|
||||
case 3415:
|
||||
if (player.duelStatus <= 0) {
|
||||
player.getTrading().fromTrade(player.xRemoveId, player.xRemoveSlot, Xamount);
|
||||
}
|
||||
break;
|
||||
case 3415:
|
||||
if (player.duelStatus <= 0) {
|
||||
player.getTrading().fromTrade(player.xRemoveId, player.xRemoveSlot, Xamount);
|
||||
}
|
||||
break;
|
||||
|
||||
case 6669:
|
||||
player.getDueling().fromDuel(player.xRemoveId, player.xRemoveSlot, Xamount);
|
||||
break;
|
||||
case 6669:
|
||||
player.getDueling().fromDuel(player.xRemoveId, player.xRemoveSlot, Xamount);
|
||||
break;
|
||||
|
||||
case 3900:
|
||||
player.getShopAssistant().buyItem(player.xRemoveId, player.xRemoveSlot, Xamount);
|
||||
break;
|
||||
|
||||
case 3823:
|
||||
player.getShopAssistant().sellItem(player.xRemoveId, player.xRemoveSlot, Xamount);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -522,6 +522,7 @@ public class Commands implements PacketType {
|
||||
public static void developerCommands(Client player, String playerCommand, String[] arguments) {
|
||||
switch (playerCommand.toLowerCase()) {
|
||||
case "clicktotele":
|
||||
case "ctt": // alias
|
||||
player.clickToTele = !player.clickToTele;
|
||||
player.getActionSender().sendMessage("Click to teleport: " + (player.clickToTele ? "Enabled" : "Disabled"));
|
||||
break;
|
||||
@@ -627,7 +628,7 @@ public class Commands implements PacketType {
|
||||
}
|
||||
} catch (Exception ಠ_ಠ) {}
|
||||
break;
|
||||
case "cantAttack":
|
||||
case "cantattack":
|
||||
player.npcCanAttack = !player.npcCanAttack;
|
||||
player.getActionSender().sendMessage("Npcs " + (player.npcCanAttack ? "can" : "can no longer") + " attack you.");
|
||||
break;
|
||||
|
||||
@@ -305,9 +305,7 @@ public int itemAmount(String name, int itemId, int itemX, int itemY) {
|
||||
|
||||
public ItemList ItemList[] = new ItemList[Constants.ITEM_LIMIT];
|
||||
|
||||
public void newItemList(int ItemId, String ItemName,
|
||||
String ItemDescription, double ShopValue, double LowAlch,
|
||||
double HighAlch, int Bonuses[]) {
|
||||
public void newItemList(int ItemId, String ItemName, String ItemDescription, double ShopValue, double LowAlch, double HighAlch, int Bonuses[]) {
|
||||
// first, search for a free slot
|
||||
int slot = -1;
|
||||
for (int i = 0; i < 11740; i++) {
|
||||
@@ -386,11 +384,7 @@ public int itemAmount(String name, int itemId, int itemX, int itemY) {
|
||||
token = token.trim();
|
||||
token2 = line.substring(spot + 1);
|
||||
token2 = token2.trim();
|
||||
token2_2 = token2.replaceAll("\t\t", "\t");
|
||||
token2_2 = token2_2.replaceAll("\t\t", "\t");
|
||||
token2_2 = token2_2.replaceAll("\t\t", "\t");
|
||||
token2_2 = token2_2.replaceAll("\t\t", "\t");
|
||||
token2_2 = token2_2.replaceAll("\t\t", "\t");
|
||||
token2_2 = token2.replaceAll("\t+", "\t");
|
||||
token3 = token2_2.split("\t");
|
||||
if (token.equals("item")) {
|
||||
int[] Bonuses = new int[12];
|
||||
@@ -412,8 +406,7 @@ public int itemAmount(String name, int itemId, int itemX, int itemY) {
|
||||
if (line.equals("[ENDOFITEMLIST]")) {
|
||||
try {
|
||||
characterfile.close();
|
||||
} catch (IOException ioexception) {
|
||||
}
|
||||
} catch (IOException ಠ_ಠ) {}
|
||||
//return true;
|
||||
}
|
||||
}
|
||||
|
||||
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.
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.
@@ -38,27 +38,13 @@ Step 12: Click File -> Project Structure
|
||||
|
||||
Step 13: Set Project SDK to 1.8, Project Language Level to 8, & Project Compiler Output to any valid folder [Image](https://i.imgur.com/9PJDk0Q.png)
|
||||
|
||||
Step 14: Click "Modules" and make sure it looks like what I have highlighted. If it doesn't, join the Discord and I'll help you create one. ([Image](https://i.imgur.com/NBAnk0A.png))
|
||||
Step 14: Hit OK in the project structure screen
|
||||
|
||||
Step 15: Click "Dependencies", then click the "Add" arrow and select "JARs or directories"([Image](https://i.imgur.com/tGI9QNI.png))
|
||||
Step 15: Start the FileServer [Image](https://i.imgur.com/moNKg9u.png)
|
||||
|
||||
Step 16: Navigate to your 2006rebotted folder, open `2006Redone file_server` > `libs`. Holding "Shift" on your keyboard, select all the .jar files in the `libs` folder there, and hit OK. ([Image](https://i.imgur.com/Yv3SX1q.png))
|
||||
Step 16: Start the Server [Image](https://i.imgur.com/uUw522i.png)
|
||||
|
||||
Step 17: Hit OK in the project structure screen after all your JARs are imported: ([Image](https://i.imgur.com/Yv3SX1q.png))
|
||||
|
||||
Step 18: Navigate to the FileServer class (`2006Redone file_server/src/org/apollo/jagcached/FileServer.java`), Right Click -> Run. It will fail since we need to start it in the right directory: [Image](https://i.imgur.com/LFkr39U.png)
|
||||
|
||||
Step 19: To fix the directory issue, click FileServer and hit Edit Configurations at the top: [Image](https://i.imgur.com/lJdBPCs.png)
|
||||
|
||||
Step 20: Under Working Directory, add `2006Redone file_server` to the path (on Windows, you may need a \\ for paths instead of a /. Not sure): [Image](https://i.imgur.com/ANkbgBl.png)
|
||||
|
||||
Step 21: Navigate to the Server class (`2006Redone Server/src/redone/Server.java`), Right Click -> Run. It will fail since we need to start it in the right directory
|
||||
|
||||
Step 22: To fix the directory issue, click Server and hit Edit Configurations at the top
|
||||
|
||||
Step 23: Under Working Directory, add `2006Redone Server` to the path ([Image]("/home/dr_cookie/Projects/2006rebotted/2006Redone Client/src/Client.java"))
|
||||
|
||||
Step 24: Navigate to the Client class (`2006Redone Client/src/Client.java`), Right Click -> Run.
|
||||
Step 17: Start the Client [Image](https://i.imgur.com/dHTiU0I.png)
|
||||
|
||||
|
||||
# Using Parabot with your local server:
|
||||
|
||||
Reference in New Issue
Block a user