Merge branch 'master' into in-v-trans-avec
This commit is contained in:
6
.github/workflows/gradle.yml
vendored
6
.github/workflows/gradle.yml
vendored
@@ -10,12 +10,6 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v1
|
- uses: actions/checkout@v1
|
||||||
- uses: actions/cache@v1
|
|
||||||
with:
|
|
||||||
path: ~/.gradle/caches
|
|
||||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle.kts') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-gradle-
|
|
||||||
- name: Make gradlew executable
|
- name: Make gradlew executable
|
||||||
run: chmod +x ./gradlew
|
run: chmod +x ./gradlew
|
||||||
- name: Update Gradle Wrapper
|
- name: Update Gradle Wrapper
|
||||||
|
|||||||
6
.github/workflows/scraper.yml
vendored
6
.github/workflows/scraper.yml
vendored
@@ -10,12 +10,6 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v1
|
- uses: actions/checkout@v1
|
||||||
- uses: actions/cache@v1
|
|
||||||
with:
|
|
||||||
path: ~/.gradle/caches
|
|
||||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle.kts') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-gradle-
|
|
||||||
- name: Set up JDK 11
|
- name: Set up JDK 11
|
||||||
uses: actions/setup-java@v1
|
uses: actions/setup-java@v1
|
||||||
with:
|
with:
|
||||||
|
|||||||
@@ -122,13 +122,6 @@ subprojects {
|
|||||||
options.encoding = "UTF-8"
|
options.encoding = "UTF-8"
|
||||||
}
|
}
|
||||||
|
|
||||||
withType<AbstractArchiveTask> {
|
|
||||||
isPreserveFileTimestamps = false
|
|
||||||
isReproducibleFileOrder = true
|
|
||||||
dirMode = 493
|
|
||||||
fileMode = 420
|
|
||||||
}
|
|
||||||
|
|
||||||
withType<Checkstyle> {
|
withType<Checkstyle> {
|
||||||
group = "verification"
|
group = "verification"
|
||||||
|
|
||||||
|
|||||||
@@ -1,85 +1,42 @@
|
|||||||
import org.gradle.api.Plugin
|
import org.gradle.api.Plugin
|
||||||
import org.gradle.api.Project
|
import org.gradle.api.Project
|
||||||
import org.gradle.kotlin.dsl.get
|
import org.gradle.kotlin.dsl.*
|
||||||
import org.gradle.kotlin.dsl.register
|
|
||||||
import java.io.File
|
|
||||||
|
|
||||||
class BootstrapPlugin : Plugin<Project> {
|
class BootstrapPlugin : Plugin<Project> {
|
||||||
override fun apply(project: Project) {
|
override fun apply(project: Project): Unit = with(project) {
|
||||||
project.tasks.register<BootstrapTask>("bootstrapStaging") {
|
val clientJar by configurations.creating {
|
||||||
dependsOn("jar")
|
isCanBeConsumed = false
|
||||||
dependsOn("shadowJar")
|
isCanBeResolved = true
|
||||||
|
isTransitive = false
|
||||||
type = "staging"
|
}
|
||||||
clientJar = project.tasks["jar"].outputs.files.singleFile
|
val bootstrapDependencies by configurations.creating {
|
||||||
|
extendsFrom(clientJar)
|
||||||
dependsOn(project.parent!!.project(":runelite-api").tasks["jar"])
|
isCanBeConsumed = false
|
||||||
dependsOn(project.parent!!.project(":runescape-api").tasks["jar"])
|
isCanBeResolved = true
|
||||||
dependsOn(project.parent!!.project(":http-api").tasks["jar"])
|
isTransitive = false
|
||||||
dependsOn(project.parent!!.project(":injected-client").tasks["jar"])
|
|
||||||
|
|
||||||
doLast {
|
|
||||||
|
|
||||||
project.copy {
|
|
||||||
from(project.tasks["jar"])
|
|
||||||
from(project.parent!!.project(":runelite-api").tasks["jar"])
|
|
||||||
from(project.parent!!.project(":runescape-api").tasks["jar"])
|
|
||||||
from(project.parent!!.project(":http-api").tasks["jar"])
|
|
||||||
from(project.parent!!.project(":injected-client").tasks["jar"])
|
|
||||||
|
|
||||||
into("${project.buildDir}/bootstrap/${type}/")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
project.tasks.register<BootstrapTask>("bootstrapStable") {
|
dependencies {
|
||||||
dependsOn("jar")
|
clientJar(tasks["jar"].outputs.files)
|
||||||
dependsOn("shadowJar")
|
bootstrapDependencies(project(":runelite-api"))
|
||||||
|
bootstrapDependencies(project(":runescape-api"))
|
||||||
type = "stable"
|
bootstrapDependencies(project(":http-api"))
|
||||||
clientJar = project.tasks["jar"].outputs.files.singleFile
|
bootstrapDependencies(project(":injected-client"))
|
||||||
|
|
||||||
dependsOn(project.parent!!.project(":runelite-api").tasks["jar"])
|
|
||||||
dependsOn(project.parent!!.project(":runescape-api").tasks["jar"])
|
|
||||||
dependsOn(project.parent!!.project(":http-api").tasks["jar"])
|
|
||||||
dependsOn(project.parent!!.project(":injected-client").tasks["jar"])
|
|
||||||
|
|
||||||
doLast {
|
|
||||||
|
|
||||||
project.copy {
|
|
||||||
from(project.tasks["jar"])
|
|
||||||
from(project.parent!!.project(":runelite-api").tasks["jar"])
|
|
||||||
from(project.parent!!.project(":runescape-api").tasks["jar"])
|
|
||||||
from(project.parent!!.project(":http-api").tasks["jar"])
|
|
||||||
from(project.parent!!.project(":injected-client").tasks["jar"])
|
|
||||||
|
|
||||||
into("${project.buildDir}/bootstrap/${type}/")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
project.tasks.register<BootstrapTask>("bootstrapNightly") {
|
tasks.register<BootstrapTask>("bootstrapStaging", "staging")
|
||||||
dependsOn("jar")
|
tasks.register<BootstrapTask>("bootstrapNightly", "nightly")
|
||||||
dependsOn("shadowJar")
|
tasks.register<BootstrapTask>("bootstrapStable", "stable")
|
||||||
|
|
||||||
type = "nightly"
|
tasks.withType<BootstrapTask> {
|
||||||
clientJar = project.tasks["jar"].outputs.files.singleFile
|
dependsOn(bootstrapDependencies)
|
||||||
|
|
||||||
dependsOn(project.parent!!.project(":runelite-api").tasks["jar"])
|
this.clientJar = clientJar.singleFile
|
||||||
dependsOn(project.parent!!.project(":runescape-api").tasks["jar"])
|
|
||||||
dependsOn(project.parent!!.project(":http-api").tasks["jar"])
|
|
||||||
dependsOn(project.parent!!.project(":injected-client").tasks["jar"])
|
|
||||||
|
|
||||||
doLast {
|
doLast {
|
||||||
|
copy {
|
||||||
project.copy {
|
from(bootstrapDependencies)
|
||||||
from(project.tasks["jar"])
|
into("${buildDir}/bootstrap/${type}/")
|
||||||
from(project.parent!!.project(":runelite-api").tasks["jar"])
|
|
||||||
from(project.parent!!.project(":runescape-api").tasks["jar"])
|
|
||||||
from(project.parent!!.project(":http-api").tasks["jar"])
|
|
||||||
from(project.parent!!.project(":injected-client").tasks["jar"])
|
|
||||||
|
|
||||||
into("${project.buildDir}/bootstrap/${type}/")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
import org.gradle.api.DefaultTask
|
import org.gradle.api.DefaultTask
|
||||||
import org.gradle.api.tasks.Input
|
import org.gradle.api.tasks.Input
|
||||||
import org.gradle.api.tasks.InputFile
|
import org.gradle.api.tasks.InputFile
|
||||||
import org.gradle.api.tasks.Optional
|
|
||||||
import org.gradle.api.tasks.PathSensitive
|
import org.gradle.api.tasks.PathSensitive
|
||||||
import org.gradle.api.tasks.PathSensitivity
|
import org.gradle.api.tasks.PathSensitivity
|
||||||
import org.gradle.api.tasks.TaskAction
|
import org.gradle.api.tasks.TaskAction
|
||||||
@@ -9,12 +8,9 @@ import org.gradle.kotlin.dsl.extra
|
|||||||
import org.gradle.kotlin.dsl.get
|
import org.gradle.kotlin.dsl.get
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.security.MessageDigest
|
import java.security.MessageDigest
|
||||||
|
import javax.inject.Inject
|
||||||
|
|
||||||
open class BootstrapTask : DefaultTask() {
|
open class BootstrapTask @Inject constructor(@Input val type: String) : DefaultTask() {
|
||||||
|
|
||||||
@Input
|
|
||||||
@Optional
|
|
||||||
var type: String? = "stable"
|
|
||||||
|
|
||||||
@InputFile
|
@InputFile
|
||||||
@PathSensitive(PathSensitivity.ABSOLUTE)
|
@PathSensitive(PathSensitivity.ABSOLUTE)
|
||||||
@@ -42,10 +38,11 @@ open class BootstrapTask : DefaultTask() {
|
|||||||
project.configurations["runtimeClasspath"].resolvedConfiguration.resolvedArtifacts.forEach {
|
project.configurations["runtimeClasspath"].resolvedConfiguration.resolvedArtifacts.forEach {
|
||||||
val module = it.moduleVersion.id.toString()
|
val module = it.moduleVersion.id.toString()
|
||||||
|
|
||||||
val name = module.split(":")[1]
|
val splat = module.split(":")
|
||||||
val group = module.split(":")[0]
|
val name = splat[1]
|
||||||
val version = module.split(":")[2]
|
val group = splat[0]
|
||||||
var path = ""
|
val version = splat[2]
|
||||||
|
lateinit var path: String
|
||||||
|
|
||||||
if (it.file.name.contains(ProjectVersions.rlVersion)) {
|
if (it.file.name.contains(ProjectVersions.rlVersion)) {
|
||||||
path = "https://github.com/open-osrs/hosting/raw/master/${type}/${it.file.name}"
|
path = "https://github.com/open-osrs/hosting/raw/master/${type}/${it.file.name}"
|
||||||
@@ -84,7 +81,7 @@ open class BootstrapTask : DefaultTask() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@TaskAction
|
@TaskAction
|
||||||
fun boostrap() {
|
fun bootstrap() {
|
||||||
val json = JsonBuilder(
|
val json = JsonBuilder(
|
||||||
"projectVersion" to ProjectVersions.openosrsVersion,
|
"projectVersion" to ProjectVersions.openosrsVersion,
|
||||||
"minimumLauncherVersion" to ProjectVersions.launcherVersion,
|
"minimumLauncherVersion" to ProjectVersions.launcherVersion,
|
||||||
|
|||||||
@@ -27,9 +27,9 @@ const val kotlinVersion = "1.3.50"
|
|||||||
|
|
||||||
object ProjectVersions {
|
object ProjectVersions {
|
||||||
const val launcherVersion = "2.0.4"
|
const val launcherVersion = "2.0.4"
|
||||||
const val rlVersion = "1.5.41-SNAPSHOT"
|
const val rlVersion = "1.5.42-SNAPSHOT"
|
||||||
|
|
||||||
const val openosrsVersion = "2.1.13.0-SNAPSHOT"
|
const val openosrsVersion = "2.1.15.0-SNAPSHOT"
|
||||||
|
|
||||||
const val rsversion = 185
|
const val rsversion = 185
|
||||||
const val cacheversion = 165
|
const val cacheversion = 165
|
||||||
|
|||||||
@@ -24,7 +24,4 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.cache.definitions;
|
package net.runelite.cache.definitions;
|
||||||
|
|
||||||
public interface WorldMapTypeBase
|
public interface WorldMapTypeBase {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -25,13 +25,12 @@
|
|||||||
|
|
||||||
package net.runelite.cache.definitions.loaders;
|
package net.runelite.cache.definitions.loaders;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
import net.runelite.cache.definitions.ItemDefinition;
|
import net.runelite.cache.definitions.ItemDefinition;
|
||||||
import net.runelite.cache.io.InputStream;
|
import net.runelite.cache.io.InputStream;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import java.util.HashMap;
|
|
||||||
|
|
||||||
public class ItemLoader
|
public class ItemLoader
|
||||||
{
|
{
|
||||||
private static final Logger logger = LoggerFactory.getLogger(ItemLoader.class);
|
private static final Logger logger = LoggerFactory.getLogger(ItemLoader.class);
|
||||||
|
|||||||
@@ -25,7 +25,6 @@
|
|||||||
|
|
||||||
package net.runelite.cache;
|
package net.runelite.cache;
|
||||||
|
|
||||||
|
|
||||||
import com.google.common.io.Files;
|
import com.google.common.io.Files;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|||||||
@@ -32,6 +32,8 @@
|
|||||||
<module name="SuppressionCommentFilter"/>
|
<module name="SuppressionCommentFilter"/>
|
||||||
<module name="LeftCurly">
|
<module name="LeftCurly">
|
||||||
<property name="option" value="nl"/>
|
<property name="option" value="nl"/>
|
||||||
|
<!-- allow {} on anonymous classes and lambdas-->
|
||||||
|
<property name="tokens" value="ANNOTATION_DEF, CLASS_DEF, CTOR_DEF, ENUM_CONSTANT_DEF, ENUM_DEF, INTERFACE_DEF, LITERAL_CASE, LITERAL_CATCH, LITERAL_DEFAULT, LITERAL_DO, LITERAL_ELSE, LITERAL_FINALLY, LITERAL_FOR, LITERAL_IF, LITERAL_SWITCH, LITERAL_SYNCHRONIZED, LITERAL_TRY, LITERAL_WHILE, METHOD_DEF, STATIC_INIT"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="RightCurly">
|
<module name="RightCurly">
|
||||||
<property name="option" value="alone"/>
|
<property name="option" value="alone"/>
|
||||||
@@ -42,12 +44,12 @@
|
|||||||
<property name="message" value="Indent must use tab characters"/>
|
<property name="message" value="Indent must use tab characters"/>
|
||||||
<property name="ignoreComments" value="true"/>
|
<property name="ignoreComments" value="true"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="RegexpSinglelineJava">
|
<module name="AvoidStarImport">
|
||||||
<property name="format" value="import (?!static|java\.awt).*\*"/>
|
<property name="allowStaticMemberImports" value="true"/>
|
||||||
<property name="message" value="Multiline imports are disallowed if they are not static"/>
|
</module>
|
||||||
<property name="ignoreComments" value="true"/>
|
<module name="WhitespaceAround">
|
||||||
|
<property name="allowEmptyTypes" value="true"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="WhitespaceAround"/>
|
|
||||||
<module name="WhitespaceAfter">
|
<module name="WhitespaceAfter">
|
||||||
<property name="tokens" value="COMMA"/>
|
<property name="tokens" value="COMMA"/>
|
||||||
</module>
|
</module>
|
||||||
@@ -57,6 +59,11 @@
|
|||||||
<property name="format" value="else[ \t]*[\r\n]+[ \t]*if"/>
|
<property name="format" value="else[ \t]*[\r\n]+[ \t]*if"/>
|
||||||
<property name="message" value="Newline should not be between else and if"/>
|
<property name="message" value="Newline should not be between else and if"/>
|
||||||
</module>
|
</module>
|
||||||
|
<module name="RegexpMultiline">
|
||||||
|
<property name="format" value="^[\r\n\s]+import"/>
|
||||||
|
<property name="maximum" value="1"/>
|
||||||
|
<property name="message" value="There should not be empty lines in the imports list"/>
|
||||||
|
</module>
|
||||||
<module name="SuppressionFilter">
|
<module name="SuppressionFilter">
|
||||||
<property name="file" value="${config_loc}/suppressions.xml"/>
|
<property name="file" value="${config_loc}/suppressions.xml"/>
|
||||||
</module>
|
</module>
|
||||||
|
|||||||
@@ -28,7 +28,6 @@ package net.runelite.asm.attributes;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import net.runelite.asm.Type;
|
import net.runelite.asm.Type;
|
||||||
import net.runelite.asm.attributes.annotation.Annotation;
|
import net.runelite.asm.attributes.annotation.Annotation;
|
||||||
import net.runelite.asm.attributes.annotation.Element;
|
import net.runelite.asm.attributes.annotation.Element;
|
||||||
|
|||||||
@@ -25,7 +25,4 @@
|
|||||||
|
|
||||||
package net.runelite.asm.attributes.code.instruction.types;
|
package net.runelite.asm.attributes.code.instruction.types;
|
||||||
|
|
||||||
public interface ArrayStoreInstruction extends MappableInstruction
|
public interface ArrayStoreInstruction extends MappableInstruction {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -25,7 +25,4 @@
|
|||||||
|
|
||||||
package net.runelite.asm.attributes.code.instruction.types;
|
package net.runelite.asm.attributes.code.instruction.types;
|
||||||
|
|
||||||
public interface ComparisonInstruction
|
public interface ComparisonInstruction {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -25,7 +25,4 @@
|
|||||||
|
|
||||||
package net.runelite.asm.attributes.code.instruction.types;
|
package net.runelite.asm.attributes.code.instruction.types;
|
||||||
|
|
||||||
public interface ConversionInstruction
|
public interface ConversionInstruction {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -25,6 +25,4 @@
|
|||||||
|
|
||||||
package net.runelite.asm.attributes.code.instruction.types;
|
package net.runelite.asm.attributes.code.instruction.types;
|
||||||
|
|
||||||
public interface GetFieldInstruction extends FieldInstruction
|
public interface GetFieldInstruction extends FieldInstruction {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -25,7 +25,4 @@
|
|||||||
|
|
||||||
package net.runelite.asm.attributes.code.instruction.types;
|
package net.runelite.asm.attributes.code.instruction.types;
|
||||||
|
|
||||||
public interface ReturnInstruction
|
public interface ReturnInstruction {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -25,6 +25,4 @@
|
|||||||
|
|
||||||
package net.runelite.asm.attributes.code.instruction.types;
|
package net.runelite.asm.attributes.code.instruction.types;
|
||||||
|
|
||||||
public interface SetFieldInstruction extends FieldInstruction, MappableInstruction
|
public interface SetFieldInstruction extends FieldInstruction, MappableInstruction {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -40,7 +40,6 @@ import net.runelite.asm.execution.InstructionContext;
|
|||||||
import net.runelite.asm.execution.Stack;
|
import net.runelite.asm.execution.Stack;
|
||||||
import net.runelite.asm.execution.StackContext;
|
import net.runelite.asm.execution.StackContext;
|
||||||
import static net.runelite.asm.execution.StaticStep.stepInto;
|
import static net.runelite.asm.execution.StaticStep.stepInto;
|
||||||
|
|
||||||
import net.runelite.asm.execution.Value;
|
import net.runelite.asm.execution.Value;
|
||||||
import net.runelite.asm.pool.Method;
|
import net.runelite.asm.pool.Method;
|
||||||
import net.runelite.asm.signature.Signature;
|
import net.runelite.asm.signature.Signature;
|
||||||
|
|||||||
@@ -25,11 +25,10 @@
|
|||||||
|
|
||||||
package net.runelite.asm.execution;
|
package net.runelite.asm.execution;
|
||||||
|
|
||||||
import net.runelite.asm.Type;
|
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import net.runelite.asm.Method;
|
import net.runelite.asm.Method;
|
||||||
|
import net.runelite.asm.Type;
|
||||||
|
|
||||||
public class Stack
|
public class Stack
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -25,10 +25,9 @@
|
|||||||
|
|
||||||
package net.runelite.asm.execution;
|
package net.runelite.asm.execution;
|
||||||
|
|
||||||
import net.runelite.asm.Type;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import net.runelite.asm.Type;
|
||||||
|
|
||||||
public class VariableContext
|
public class VariableContext
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -25,9 +25,8 @@
|
|||||||
|
|
||||||
package net.runelite.asm.pool;
|
package net.runelite.asm.pool;
|
||||||
|
|
||||||
import net.runelite.asm.Type;
|
|
||||||
|
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
import net.runelite.asm.Type;
|
||||||
|
|
||||||
public class Field
|
public class Field
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -24,8 +24,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.asm.signature;
|
package net.runelite.asm.signature;
|
||||||
|
|
||||||
import net.runelite.asm.Type;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@@ -33,6 +31,7 @@ import java.util.List;
|
|||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
import net.runelite.asm.Type;
|
||||||
|
|
||||||
public class Signature
|
public class Signature
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -24,6 +24,7 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.deob;
|
package net.runelite.deob;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import net.runelite.asm.ClassFile;
|
import net.runelite.asm.ClassFile;
|
||||||
import net.runelite.asm.Field;
|
import net.runelite.asm.Field;
|
||||||
import net.runelite.asm.Method;
|
import net.runelite.asm.Method;
|
||||||
@@ -33,8 +34,6 @@ import net.runelite.asm.attributes.annotation.Annotation;
|
|||||||
import net.runelite.asm.attributes.annotation.Element;
|
import net.runelite.asm.attributes.annotation.Element;
|
||||||
import net.runelite.asm.signature.Signature;
|
import net.runelite.asm.signature.Signature;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class DeobAnnotations
|
public class DeobAnnotations
|
||||||
{
|
{
|
||||||
public static final Type OBFUSCATED_NAME = new Type("Lnet/runelite/mapping/ObfuscatedName;");
|
public static final Type OBFUSCATED_NAME = new Type("Lnet/runelite/mapping/ObfuscatedName;");
|
||||||
|
|||||||
@@ -25,6 +25,7 @@
|
|||||||
|
|
||||||
package net.runelite.deob.deobfuscators;
|
package net.runelite.deob.deobfuscators;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import net.runelite.asm.ClassFile;
|
import net.runelite.asm.ClassFile;
|
||||||
import net.runelite.asm.ClassGroup;
|
import net.runelite.asm.ClassGroup;
|
||||||
import net.runelite.asm.Field;
|
import net.runelite.asm.Field;
|
||||||
@@ -35,8 +36,6 @@ import net.runelite.deob.DeobAnnotations;
|
|||||||
import net.runelite.deob.Deobfuscator;
|
import net.runelite.deob.Deobfuscator;
|
||||||
import net.runelite.deob.util.NameMappings;
|
import net.runelite.deob.util.NameMappings;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class RenameUnique implements Deobfuscator
|
public class RenameUnique implements Deobfuscator
|
||||||
{
|
{
|
||||||
private Renamer renamer;
|
private Renamer renamer;
|
||||||
|
|||||||
@@ -25,7 +25,6 @@
|
|||||||
package net.runelite.deob.deobfuscators.packethandler;
|
package net.runelite.deob.deobfuscators.packethandler;
|
||||||
|
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
import net.runelite.asm.Type;
|
import net.runelite.asm.Type;
|
||||||
import net.runelite.asm.attributes.code.Instruction;
|
import net.runelite.asm.attributes.code.Instruction;
|
||||||
import net.runelite.asm.execution.InstructionContext;
|
import net.runelite.asm.execution.InstructionContext;
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
package net.runelite.gamepack;
|
package net.runelite.gamepack;
|
||||||
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
|
|||||||
@@ -24,7 +24,4 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.deob.deobfuscators.unusedclass;
|
package net.runelite.deob.deobfuscators.unusedclass;
|
||||||
|
|
||||||
public class EmptyClass
|
public class EmptyClass {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -24,7 +24,4 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.deob.deobfuscators.unusedclass;
|
package net.runelite.deob.deobfuscators.unusedclass;
|
||||||
|
|
||||||
public interface EmptyInterface
|
public interface EmptyInterface {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -70,9 +70,7 @@ public class HookImporter
|
|||||||
Assert.assertNotNull(is);
|
Assert.assertNotNull(is);
|
||||||
|
|
||||||
Gson gson = new Gson();
|
Gson gson = new Gson();
|
||||||
java.lang.reflect.Type type = new TypeToken<Map<String, ClassHook>>()
|
java.lang.reflect.Type type = new TypeToken<Map<String, ClassHook>>() {}.getType();
|
||||||
{
|
|
||||||
}.getType();
|
|
||||||
hooks = gson.fromJson(new InputStreamReader(is), type);
|
hooks = gson.fromJson(new InputStreamReader(is), type);
|
||||||
|
|
||||||
group = JarUtil.loadJar(IN);
|
group = JarUtil.loadJar(IN);
|
||||||
|
|||||||
@@ -81,9 +81,7 @@ public class HookImporter
|
|||||||
|
|
||||||
InputStream is = getClass().getResourceAsStream("hooks.json");
|
InputStream is = getClass().getResourceAsStream("hooks.json");
|
||||||
Gson gson = new Gson();
|
Gson gson = new Gson();
|
||||||
java.lang.reflect.Type type = new TypeToken<List<HookClass>>()
|
java.lang.reflect.Type type = new TypeToken<List<HookClass>>() {}.getType();
|
||||||
{
|
|
||||||
}.getType();
|
|
||||||
hooks = gson.fromJson(new InputStreamReader(is), type);
|
hooks = gson.fromJson(new InputStreamReader(is), type);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -115,9 +115,7 @@ public class AnimationClient
|
|||||||
{
|
{
|
||||||
InputStream in = response.body().byteStream();
|
InputStream in = response.body().byteStream();
|
||||||
// CHECKSTYLE:OFF
|
// CHECKSTYLE:OFF
|
||||||
return RuneLiteAPI.GSON.fromJson(new InputStreamReader(in), new TypeToken<List<AnimationKey>>()
|
return RuneLiteAPI.GSON.fromJson(new InputStreamReader(in), new TypeToken<List<AnimationKey>>() {}.getType());
|
||||||
{
|
|
||||||
}.getType());
|
|
||||||
// CHECKSTYLE:ON
|
// CHECKSTYLE:ON
|
||||||
}
|
}
|
||||||
catch (JsonParseException ex)
|
catch (JsonParseException ex)
|
||||||
|
|||||||
@@ -35,8 +35,7 @@ public enum HiscoreEndpoint
|
|||||||
HARDCORE_IRONMAN("Hardcore Ironman", "https://services.runescape.com/m=hiscore_oldschool_hardcore_ironman/index_lite.ws"),
|
HARDCORE_IRONMAN("Hardcore Ironman", "https://services.runescape.com/m=hiscore_oldschool_hardcore_ironman/index_lite.ws"),
|
||||||
ULTIMATE_IRONMAN("Ultimate Ironman", "https://services.runescape.com/m=hiscore_oldschool_ultimate/index_lite.ws"),
|
ULTIMATE_IRONMAN("Ultimate Ironman", "https://services.runescape.com/m=hiscore_oldschool_ultimate/index_lite.ws"),
|
||||||
DEADMAN("Deadman", "https://services.runescape.com/m=hiscore_oldschool_deadman/index_lite.ws"),
|
DEADMAN("Deadman", "https://services.runescape.com/m=hiscore_oldschool_deadman/index_lite.ws"),
|
||||||
SEASONAL_DEADMAN("Seasonal Deadman", "https://services.runescape.com/m=hiscore_oldschool_seasonal/index_lite.ws"),
|
LEAGUE("Twisted League", "https://services.runescape.com/m=hiscore_oldschool_seasonal/index_lite.ws");
|
||||||
DEADMAN_TOURNAMENT("Deadman Tournament", "https://services.runescape.com/m=hiscore_oldschool_tournament/index_lite.ws");
|
|
||||||
|
|
||||||
private final String name;
|
private final String name;
|
||||||
private final HttpUrl hiscoreURL;
|
private final HttpUrl hiscoreURL;
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ public class HiscoreResult
|
|||||||
private Skill runecraft;
|
private Skill runecraft;
|
||||||
private Skill hunter;
|
private Skill hunter;
|
||||||
private Skill construction;
|
private Skill construction;
|
||||||
|
private Skill leaguePoints;
|
||||||
private Skill bountyHunterHunter;
|
private Skill bountyHunterHunter;
|
||||||
private Skill bountyHunterRogue;
|
private Skill bountyHunterRogue;
|
||||||
private Skill clueScrollAll;
|
private Skill clueScrollAll;
|
||||||
@@ -115,6 +116,8 @@ public class HiscoreResult
|
|||||||
return getHunter();
|
return getHunter();
|
||||||
case CONSTRUCTION:
|
case CONSTRUCTION:
|
||||||
return getConstruction();
|
return getConstruction();
|
||||||
|
case LEAGUE_POINTS:
|
||||||
|
return getLeaguePoints();
|
||||||
case OVERALL:
|
case OVERALL:
|
||||||
return getOverall();
|
return getOverall();
|
||||||
case BOUNTY_HUNTER_HUNTER:
|
case BOUNTY_HUNTER_HUNTER:
|
||||||
|
|||||||
@@ -26,8 +26,6 @@ package net.runelite.http.api.hiscore;
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import net.runelite.http.api.hiscore.HiscoreResult;
|
|
||||||
import net.runelite.http.api.hiscore.Skill;
|
|
||||||
|
|
||||||
public class HiscoreResultBuilder
|
public class HiscoreResultBuilder
|
||||||
{
|
{
|
||||||
@@ -77,9 +75,9 @@ public class HiscoreResultBuilder
|
|||||||
hiscoreResult.setRunecraft(skills.get(21));
|
hiscoreResult.setRunecraft(skills.get(21));
|
||||||
hiscoreResult.setHunter(skills.get(22));
|
hiscoreResult.setHunter(skills.get(22));
|
||||||
hiscoreResult.setConstruction(skills.get(23));
|
hiscoreResult.setConstruction(skills.get(23));
|
||||||
hiscoreResult.setBountyHunterHunter(skills.get(24));
|
hiscoreResult.setLeaguePoints(skills.get(24));
|
||||||
hiscoreResult.setBountyHunterRogue(skills.get(25));
|
hiscoreResult.setBountyHunterHunter(skills.get(25));
|
||||||
hiscoreResult.setLastManStanding(skills.get(26));
|
hiscoreResult.setBountyHunterRogue(skills.get(26));
|
||||||
hiscoreResult.setClueScrollAll(skills.get(27));
|
hiscoreResult.setClueScrollAll(skills.get(27));
|
||||||
hiscoreResult.setClueScrollBeginner(skills.get(28));
|
hiscoreResult.setClueScrollBeginner(skills.get(28));
|
||||||
hiscoreResult.setClueScrollEasy(skills.get(29));
|
hiscoreResult.setClueScrollEasy(skills.get(29));
|
||||||
@@ -87,6 +85,7 @@ public class HiscoreResultBuilder
|
|||||||
hiscoreResult.setClueScrollHard(skills.get(31));
|
hiscoreResult.setClueScrollHard(skills.get(31));
|
||||||
hiscoreResult.setClueScrollElite(skills.get(32));
|
hiscoreResult.setClueScrollElite(skills.get(32));
|
||||||
hiscoreResult.setClueScrollMaster(skills.get(33));
|
hiscoreResult.setClueScrollMaster(skills.get(33));
|
||||||
|
hiscoreResult.setLastManStanding(skills.get(34));
|
||||||
return hiscoreResult;
|
return hiscoreResult;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -50,16 +50,17 @@ public enum HiscoreSkill
|
|||||||
RUNECRAFT("Runecraft"),
|
RUNECRAFT("Runecraft"),
|
||||||
HUNTER("Hunter"),
|
HUNTER("Hunter"),
|
||||||
CONSTRUCTION("Construction"),
|
CONSTRUCTION("Construction"),
|
||||||
|
LEAGUE_POINTS("League Points"),
|
||||||
BOUNTY_HUNTER_HUNTER("Bounty Hunter - Hunter"),
|
BOUNTY_HUNTER_HUNTER("Bounty Hunter - Hunter"),
|
||||||
BOUNTY_HUNTER_ROGUE("Bounty Hunter - Rogue"),
|
BOUNTY_HUNTER_ROGUE("Bounty Hunter - Rogue"),
|
||||||
LAST_MAN_STANDING("Last Man Standing"),
|
|
||||||
CLUE_SCROLL_ALL("Clue Scrolls (all)"),
|
CLUE_SCROLL_ALL("Clue Scrolls (all)"),
|
||||||
CLUE_SCROLL_BEGINNER("Clue Scrolls (beginner)"),
|
CLUE_SCROLL_BEGINNER("Clue Scrolls (beginner)"),
|
||||||
CLUE_SCROLL_EASY("Clue Scrolls (easy)"),
|
CLUE_SCROLL_EASY("Clue Scrolls (easy)"),
|
||||||
CLUE_SCROLL_MEDIUM("Clue Scrolls (medium)"),
|
CLUE_SCROLL_MEDIUM("Clue Scrolls (medium)"),
|
||||||
CLUE_SCROLL_HARD("Clue Scrolls (hard)"),
|
CLUE_SCROLL_HARD("Clue Scrolls (hard)"),
|
||||||
CLUE_SCROLL_ELITE("Clue Scrolls (elite)"),
|
CLUE_SCROLL_ELITE("Clue Scrolls (elite)"),
|
||||||
CLUE_SCROLL_MASTER("Clue Scrolls (master)");
|
CLUE_SCROLL_MASTER("Clue Scrolls (master)"),
|
||||||
|
LAST_MAN_STANDING("Last Man Standing");
|
||||||
|
|
||||||
private final String name;
|
private final String name;
|
||||||
|
|
||||||
|
|||||||
@@ -102,9 +102,7 @@ public class LootTrackerClient
|
|||||||
}
|
}
|
||||||
|
|
||||||
InputStream in = response.body().byteStream();
|
InputStream in = response.body().byteStream();
|
||||||
return RuneLiteAPI.GSON.fromJson(new InputStreamReader(in), new TypeToken<List<LootRecord>>()
|
return RuneLiteAPI.GSON.fromJson(new InputStreamReader(in), new TypeToken<List<LootRecord>>() {}.getType());
|
||||||
{
|
|
||||||
}.getType());
|
|
||||||
}
|
}
|
||||||
catch (JsonParseException ex)
|
catch (JsonParseException ex)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -34,6 +34,5 @@ public enum WorldType
|
|||||||
LAST_MAN_STANDING,
|
LAST_MAN_STANDING,
|
||||||
TOURNAMENT,
|
TOURNAMENT,
|
||||||
DEADMAN,
|
DEADMAN,
|
||||||
SEASONAL_DEADMAN,
|
LEAGUE;
|
||||||
DEADMAN_TOURNAMENT
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,10 +16,6 @@
|
|||||||
|
|
||||||
package net.runelite.http.api.ws;
|
package net.runelite.http.api.ws;
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.LinkedHashMap;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import com.google.gson.JsonElement;
|
import com.google.gson.JsonElement;
|
||||||
import com.google.gson.JsonObject;
|
import com.google.gson.JsonObject;
|
||||||
@@ -31,6 +27,9 @@ import com.google.gson.internal.Streams;
|
|||||||
import com.google.gson.reflect.TypeToken;
|
import com.google.gson.reflect.TypeToken;
|
||||||
import com.google.gson.stream.JsonReader;
|
import com.google.gson.stream.JsonReader;
|
||||||
import com.google.gson.stream.JsonWriter;
|
import com.google.gson.stream.JsonWriter;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adapts values whose runtime type may differ from their declaration type. This
|
* Adapts values whose runtime type may differ from their declaration type. This
|
||||||
|
|||||||
@@ -27,6 +27,4 @@ package net.runelite.http.api.ws.messages.party;
|
|||||||
import net.runelite.api.events.Event;
|
import net.runelite.api.events.Event;
|
||||||
import net.runelite.http.api.ws.WebsocketMessage;
|
import net.runelite.http.api.ws.WebsocketMessage;
|
||||||
|
|
||||||
public class Part extends WebsocketMessage implements Event
|
public class Part extends WebsocketMessage implements Event {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -30,6 +30,4 @@ import net.runelite.api.events.Event;
|
|||||||
|
|
||||||
@Value
|
@Value
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
public class UserSync extends PartyMemberMessage implements Event
|
public class UserSync extends PartyMemberMessage implements Event {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -101,9 +101,7 @@ public class XteaClient
|
|||||||
{
|
{
|
||||||
InputStream in = response.body().byteStream();
|
InputStream in = response.body().byteStream();
|
||||||
// CHECKSTYLE:OFF
|
// CHECKSTYLE:OFF
|
||||||
return RuneLiteAPI.GSON.fromJson(new InputStreamReader(in), new TypeToken<List<XteaKey>>()
|
return RuneLiteAPI.GSON.fromJson(new InputStreamReader(in), new TypeToken<List<XteaKey>>() {}.getType());
|
||||||
{
|
|
||||||
}.getType());
|
|
||||||
// CHECKSTYLE:ON
|
// CHECKSTYLE:ON
|
||||||
}
|
}
|
||||||
catch (JsonParseException ex)
|
catch (JsonParseException ex)
|
||||||
|
|||||||
@@ -110,9 +110,7 @@ public class TwitterService
|
|||||||
}
|
}
|
||||||
|
|
||||||
InputStream in = response.body().byteStream();
|
InputStream in = response.body().byteStream();
|
||||||
Type listType = new TypeToken<List<TwitterStatusesResponseItem>>()
|
Type listType = new TypeToken<List<TwitterStatusesResponseItem>>() {}.getType();
|
||||||
{
|
|
||||||
}.getType();
|
|
||||||
List<TwitterStatusesResponseItem> statusesResponse = RuneLiteAPI.GSON
|
List<TwitterStatusesResponseItem> statusesResponse = RuneLiteAPI.GSON
|
||||||
.fromJson(new InputStreamReader(in), listType);
|
.fromJson(new InputStreamReader(in), listType);
|
||||||
|
|
||||||
|
|||||||
@@ -58,9 +58,7 @@ public class OsbuddyClient
|
|||||||
throw new IOException("Error retrieving summary from OSBuddy: " + responseOk.message());
|
throw new IOException("Error retrieving summary from OSBuddy: " + responseOk.message());
|
||||||
}
|
}
|
||||||
|
|
||||||
Type type = new TypeToken<Map<Integer, OsbuddySummaryItem>>()
|
Type type = new TypeToken<Map<Integer, OsbuddySummaryItem>>() {}.getType();
|
||||||
{
|
|
||||||
}.getType();
|
|
||||||
|
|
||||||
return RuneLiteAPI.GSON.fromJson(responseOk.body().string(), type);
|
return RuneLiteAPI.GSON.fromJson(responseOk.body().string(), type);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,9 +26,8 @@
|
|||||||
|
|
||||||
package net.runelite.http.service.util;
|
package net.runelite.http.service.util;
|
||||||
|
|
||||||
import net.runelite.http.api.hiscore.HiscoreEndpoint;
|
|
||||||
|
|
||||||
import java.beans.PropertyEditorSupport;
|
import java.beans.PropertyEditorSupport;
|
||||||
|
import net.runelite.http.api.hiscore.HiscoreEndpoint;
|
||||||
|
|
||||||
public class HiscoreEndpointEditor extends PropertyEditorSupport
|
public class HiscoreEndpointEditor extends PropertyEditorSupport
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -29,7 +29,4 @@ import org.springframework.http.HttpStatus;
|
|||||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||||
|
|
||||||
@ResponseStatus(code = HttpStatus.NOT_FOUND, reason = "Not found")
|
@ResponseStatus(code = HttpStatus.NOT_FOUND, reason = "Not found")
|
||||||
public class NotFoundException extends RuntimeException
|
public class NotFoundException extends RuntimeException {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -35,9 +35,8 @@ enum ServiceWorldType
|
|||||||
HIGH_RISK(WorldType.HIGH_RISK, 1 << 10),
|
HIGH_RISK(WorldType.HIGH_RISK, 1 << 10),
|
||||||
LAST_MAN_STANDING(WorldType.LAST_MAN_STANDING, 1 << 14),
|
LAST_MAN_STANDING(WorldType.LAST_MAN_STANDING, 1 << 14),
|
||||||
TOURNAMENT(WorldType.TOURNAMENT, 1 << 25),
|
TOURNAMENT(WorldType.TOURNAMENT, 1 << 25),
|
||||||
DEADMAN_TOURNAMENT(WorldType.DEADMAN_TOURNAMENT, 1 << 26),
|
|
||||||
DEADMAN(WorldType.DEADMAN, 1 << 29),
|
DEADMAN(WorldType.DEADMAN, 1 << 29),
|
||||||
SEASONAL_DEADMAN(WorldType.SEASONAL_DEADMAN, 1 << 30);
|
LEAGUE(WorldType.LEAGUE, 1 << 30);
|
||||||
|
|
||||||
private final WorldType apiType;
|
private final WorldType apiType;
|
||||||
private final int mask;
|
private final int mask;
|
||||||
|
|||||||
@@ -60,16 +60,17 @@ public class HiscoreServiceTest
|
|||||||
+ "638177,1,0\n"
|
+ "638177,1,0\n"
|
||||||
+ "516239,9,1000\n"
|
+ "516239,9,1000\n"
|
||||||
+ "492790,1,0\n"
|
+ "492790,1,0\n"
|
||||||
|
+ "2,2460\n" // leagues
|
||||||
+ "-1,-1\n"
|
+ "-1,-1\n"
|
||||||
+ "73,1738\n"
|
+ "73,1738\n"
|
||||||
+ "-1,-1\n"
|
|
||||||
+ "531,1432\n"
|
+ "531,1432\n"
|
||||||
+ "324,212\n"
|
+ "324,212\n"
|
||||||
+ "8008,131\n"
|
+ "8008,131\n"
|
||||||
+ "1337,911\n"
|
+ "1337,911\n"
|
||||||
+ "42,14113\n"
|
+ "42,14113\n"
|
||||||
+ "1,777\n"
|
+ "1,777\n"
|
||||||
+ "254,92\n";
|
+ "254,92\n"
|
||||||
|
+ "-1,-1\n"; // lms
|
||||||
|
|
||||||
private final MockWebServer server = new MockWebServer();
|
private final MockWebServer server = new MockWebServer();
|
||||||
|
|
||||||
@@ -105,6 +106,7 @@ public class HiscoreServiceTest
|
|||||||
Assert.assertEquals(777, result.getClueScrollElite().getLevel());
|
Assert.assertEquals(777, result.getClueScrollElite().getLevel());
|
||||||
Assert.assertEquals(254, result.getClueScrollMaster().getRank());
|
Assert.assertEquals(254, result.getClueScrollMaster().getRank());
|
||||||
Assert.assertEquals(-1, result.getLastManStanding().getLevel());
|
Assert.assertEquals(-1, result.getLastManStanding().getLevel());
|
||||||
|
Assert.assertEquals(2460, result.getLeaguePoints().getLevel());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,4 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.protocol.api.handshake;
|
package net.runelite.protocol.api.handshake;
|
||||||
|
|
||||||
public abstract class HandshakePacket
|
public abstract class HandshakePacket {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -29,7 +29,4 @@ import lombok.EqualsAndHashCode;
|
|||||||
|
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
public class LoginHandshakePacket extends HandshakePacket
|
public class LoginHandshakePacket extends HandshakePacket {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -27,6 +27,4 @@ package net.runelite.api;
|
|||||||
/**
|
/**
|
||||||
* Represents the friend and ignore list manager.
|
* Represents the friend and ignore list manager.
|
||||||
*/
|
*/
|
||||||
public interface FriendManager
|
public interface FriendManager {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -27,6 +27,4 @@ package net.runelite.api;
|
|||||||
/**
|
/**
|
||||||
* Detects when the window is focused or unfocused.
|
* Detects when the window is focused or unfocused.
|
||||||
*/
|
*/
|
||||||
public interface KeyFocusListener
|
public interface KeyFocusListener {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -27,6 +27,4 @@ package net.runelite.api;
|
|||||||
/**
|
/**
|
||||||
* Represents a chat entity that has a name.
|
* Represents a chat entity that has a name.
|
||||||
*/
|
*/
|
||||||
public interface Nameable extends Comparable
|
public interface Nameable extends Comparable {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -698,7 +698,37 @@ public enum Varbits
|
|||||||
|
|
||||||
WITHDRAW_X_AMOUNT(3960),
|
WITHDRAW_X_AMOUNT(3960),
|
||||||
|
|
||||||
IN_PVP_AREA(8121);
|
IN_PVP_AREA(8121),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Twisted league
|
||||||
|
*/
|
||||||
|
TWISTED_LEAGUE_RELIC_1(10049),
|
||||||
|
TWISTED_LEAGUE_RELIC_2(10050),
|
||||||
|
TWISTED_LEAGUE_RELIC_3(10051),
|
||||||
|
TWISTED_LEAGUE_RELIC_4(10052),
|
||||||
|
TWISTED_LEAGUE_RELIC_5(10053),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Value of hotkey varbits can be 0-13
|
||||||
|
* 0 corresponds to no hotkey set
|
||||||
|
* 1-12 correspond to F1-F12 respectively
|
||||||
|
* 13 corresponds to escape
|
||||||
|
*/
|
||||||
|
COMBAT_TAB_HOTKEY(4675),
|
||||||
|
STATS_TAB_HOTKEY(4676),
|
||||||
|
QUESTS_TAB_HOTKEY(4677),
|
||||||
|
INVENTORY_TAB_HOTKEY(4678),
|
||||||
|
EQUIPMENT_TAB_HOTKEY(4679),
|
||||||
|
PRAYER_TAB_HOTKEY(4680),
|
||||||
|
SPELLBOOK_TAB_HOTKEY(4682),
|
||||||
|
FRIENDS_TAB_HOTKEY(4684),
|
||||||
|
ACCOUNT_MANAGEMENT_TAB_HOTKEY(6517),
|
||||||
|
LOGOUT_TAB_HOTKEY(4689),
|
||||||
|
OPTIONS_TAB_HOTKEY(4686),
|
||||||
|
EMOTES_TAB_HOTKEY(4687),
|
||||||
|
CLAN_TAB_HOTKEY(4683),
|
||||||
|
MUSIC_TAB_HOTKEY(4688);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The raw varbit ID.
|
* The raw varbit ID.
|
||||||
|
|||||||
@@ -1,3 +1,27 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2018, Tomas Slusny <slusnucky@gmail.com>
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions are met:
|
||||||
|
*
|
||||||
|
* 1. Redistributions of source code must retain the above copyright notice, this
|
||||||
|
* list of conditions and the following disclaimer.
|
||||||
|
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
* this list of conditions and the following disclaimer in the documentation
|
||||||
|
* and/or other materials provided with the distribution.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||||
|
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
package net.runelite.api;
|
package net.runelite.api;
|
||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
@@ -36,18 +60,14 @@ public enum WorldType
|
|||||||
* Tournament world type.
|
* Tournament world type.
|
||||||
*/
|
*/
|
||||||
TOURNAMENT(1 << 25),
|
TOURNAMENT(1 << 25),
|
||||||
/**
|
|
||||||
* Deadman Tournament world type.
|
|
||||||
*/
|
|
||||||
DEADMAN_TOURNAMENT(1 << 26),
|
|
||||||
/**
|
/**
|
||||||
* Deadman world type.
|
* Deadman world type.
|
||||||
*/
|
*/
|
||||||
DEADMAN(1 << 29),
|
DEADMAN(1 << 29),
|
||||||
/**
|
/**
|
||||||
* Seasonal deadman world type.
|
* League world type
|
||||||
*/
|
*/
|
||||||
SEASONAL_DEADMAN(1 << 30);
|
LEAGUE(1 << 30);
|
||||||
|
|
||||||
private final int mask;
|
private final int mask;
|
||||||
|
|
||||||
@@ -58,15 +78,11 @@ public enum WorldType
|
|||||||
|
|
||||||
private static final EnumSet<WorldType> PVP_WORLD_TYPES = EnumSet.of(
|
private static final EnumSet<WorldType> PVP_WORLD_TYPES = EnumSet.of(
|
||||||
DEADMAN,
|
DEADMAN,
|
||||||
DEADMAN_TOURNAMENT,
|
PVP
|
||||||
PVP,
|
|
||||||
SEASONAL_DEADMAN
|
|
||||||
);
|
);
|
||||||
|
|
||||||
private static final EnumSet<WorldType> DEADMAN_WORLD_TYPES = EnumSet.of(
|
private static final EnumSet<WorldType> DEADMAN_WORLD_TYPES = EnumSet.of(
|
||||||
DEADMAN,
|
DEADMAN
|
||||||
DEADMAN_TOURNAMENT,
|
|
||||||
SEASONAL_DEADMAN
|
|
||||||
);
|
);
|
||||||
|
|
||||||
private static final EnumSet<WorldType> HIGHRISK_WORLD_TYPES = EnumSet.of(
|
private static final EnumSet<WorldType> HIGHRISK_WORLD_TYPES = EnumSet.of(
|
||||||
@@ -75,25 +91,19 @@ public enum WorldType
|
|||||||
|
|
||||||
private static final EnumSet<WorldType> ALL_HIGHRISK_WORLD_TYPES = EnumSet.of(
|
private static final EnumSet<WorldType> ALL_HIGHRISK_WORLD_TYPES = EnumSet.of(
|
||||||
HIGH_RISK,
|
HIGH_RISK,
|
||||||
DEADMAN,
|
DEADMAN
|
||||||
DEADMAN_TOURNAMENT,
|
|
||||||
SEASONAL_DEADMAN
|
|
||||||
);
|
);
|
||||||
|
|
||||||
private static final EnumSet<WorldType> ALL_PVP_WORLD_TYPES = EnumSet.of(
|
private static final EnumSet<WorldType> ALL_PVP_WORLD_TYPES = EnumSet.of(
|
||||||
HIGH_RISK,
|
HIGH_RISK,
|
||||||
DEADMAN,
|
DEADMAN,
|
||||||
DEADMAN_TOURNAMENT,
|
PVP
|
||||||
PVP,
|
|
||||||
SEASONAL_DEADMAN
|
|
||||||
);
|
);
|
||||||
|
|
||||||
private static final EnumSet<WorldType> ALL_PK_WORLD_TYPES = EnumSet.of(
|
private static final EnumSet<WorldType> ALL_PK_WORLD_TYPES = EnumSet.of(
|
||||||
HIGH_RISK,
|
HIGH_RISK,
|
||||||
DEADMAN,
|
DEADMAN,
|
||||||
DEADMAN_TOURNAMENT,
|
|
||||||
PVP,
|
PVP,
|
||||||
SEASONAL_DEADMAN,
|
|
||||||
BOUNTY
|
BOUNTY
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -137,10 +147,10 @@ public enum WorldType
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks whether a world having a {@link Collection} of {@link WorldType}s is a PVP/DEADMAN/HIGHRISK world.
|
* Checks whether a world having a {@link Collection} of {@link WorldType}s is a PVP world.
|
||||||
*
|
*
|
||||||
* @param worldTypes A {@link Collection} of {@link WorldType}s describing the given world.
|
* @param worldTypes A {@link Collection} of {@link WorldType}s describing the given world.
|
||||||
* @return True if the given worldtypes of the world are a PVP/DEADMAN/HIGHRISK world, false otherwise.
|
* @return True if the given worldtypes of the world are a PVP world, false otherwise.
|
||||||
* @see Client#getWorldType()
|
* @see Client#getWorldType()
|
||||||
*/
|
*/
|
||||||
public static boolean isPvpWorld(final Collection<WorldType> worldTypes)
|
public static boolean isPvpWorld(final Collection<WorldType> worldTypes)
|
||||||
|
|||||||
@@ -33,6 +33,4 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
*/
|
*/
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
public @interface VisibleForDevtools
|
public @interface VisibleForDevtools {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,5 +1,3 @@
|
|||||||
package net.runelite.api.events;
|
package net.runelite.api.events;
|
||||||
|
|
||||||
public interface Event
|
public interface Event {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2018, Matthew Steglinski <https://github.com/sainttx>
|
* Copyright (c) 2019, Adam <Adam@sigterm.info>
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
@@ -24,15 +24,12 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.api.events;
|
package net.runelite.api.events;
|
||||||
|
|
||||||
/**
|
import lombok.Value;
|
||||||
* An event when the local player dies.
|
import net.runelite.api.Skill;
|
||||||
*/
|
|
||||||
public class LocalPlayerDeath implements Event
|
|
||||||
{
|
|
||||||
public static final LocalPlayerDeath INSTANCE = new LocalPlayerDeath();
|
|
||||||
|
|
||||||
private LocalPlayerDeath()
|
@Value
|
||||||
{
|
public class FakeXpDrop implements Event
|
||||||
// noop
|
{
|
||||||
}
|
private final Skill skill;
|
||||||
|
private final int xp;
|
||||||
}
|
}
|
||||||
@@ -26,7 +26,6 @@ package net.runelite.api.widgets;
|
|||||||
|
|
||||||
import java.awt.Rectangle;
|
import java.awt.Rectangle;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
|
||||||
import net.runelite.api.FontTypeFace;
|
import net.runelite.api.FontTypeFace;
|
||||||
import net.runelite.api.Point;
|
import net.runelite.api.Point;
|
||||||
import net.runelite.api.Sprite;
|
import net.runelite.api.Sprite;
|
||||||
|
|||||||
@@ -161,6 +161,7 @@ public class WidgetID
|
|||||||
public static final int LMS_INGAME_GROUP_ID = 328;
|
public static final int LMS_INGAME_GROUP_ID = 328;
|
||||||
public static final int JEWELLERY_BOX_GROUP_ID = 590;
|
public static final int JEWELLERY_BOX_GROUP_ID = 590;
|
||||||
public static final int OPTIONS_GROUP_ID = 261;
|
public static final int OPTIONS_GROUP_ID = 261;
|
||||||
|
public static final int GWD_KC_GROUP_ID = 406;
|
||||||
|
|
||||||
static class WorldMap
|
static class WorldMap
|
||||||
{
|
{
|
||||||
@@ -658,6 +659,11 @@ public class WidgetID
|
|||||||
static final int REWARD_TEXT = 57;
|
static final int REWARD_TEXT = 57;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static class GWD
|
||||||
|
{
|
||||||
|
static final int CONTAINER = 7;
|
||||||
|
}
|
||||||
|
|
||||||
static class LevelUp
|
static class LevelUp
|
||||||
{
|
{
|
||||||
static final int SKILL = 1;
|
static final int SKILL = 1;
|
||||||
@@ -827,161 +833,180 @@ public class WidgetID
|
|||||||
static final int FILTERED_SPELLS_PARENT = 1;
|
static final int FILTERED_SPELLS_PARENT = 1;
|
||||||
static final int FILTERED_SPELLS_BOUNDS = 3;
|
static final int FILTERED_SPELLS_BOUNDS = 3;
|
||||||
|
|
||||||
|
static final int FILTER_SECTION_PARENT = 182;
|
||||||
|
static final int FILTER_BUTTONS_PARENT = 185;
|
||||||
|
static final int FILTER_BUTTON_PARENT = 186;
|
||||||
|
static final int FILTER_BUTTON = 188;
|
||||||
|
static final int TOOLTIP = 189;
|
||||||
|
|
||||||
// NORMAL SPELLS
|
// NORMAL SPELLS
|
||||||
static final int LUMBRIDGE_HOME_TELEPORT = 4;
|
static final int LUMBRIDGE_HOME_TELEPORT = 5;
|
||||||
static final int WIND_STRIKE = 5;
|
static final int WIND_STRIKE = 6;
|
||||||
static final int CONFUSE = 6;
|
static final int CONFUSE = 7;
|
||||||
static final int ENCHANT_CROSSBOW_BOLT = 7;
|
static final int ENCHANT_CROSSBOW_BOLT = 8;
|
||||||
static final int WATER_STRIKE = 8;
|
static final int WATER_STRIKE = 9;
|
||||||
static final int LVL_1_ENCHANT = 9;
|
static final int LVL_1_ENCHANT = 10;
|
||||||
static final int EARTH_STRIKE = 10;
|
static final int EARTH_STRIKE = 11;
|
||||||
static final int WEAKEN = 11;
|
static final int WEAKEN = 12;
|
||||||
static final int FIRE_STRIKE = 12;
|
static final int FIRE_STRIKE = 13;
|
||||||
static final int BONES_TO_BANANAS = 13;
|
static final int BONES_TO_BANANAS = 14;
|
||||||
static final int WIND_BOLT = 14;
|
static final int WIND_BOLT = 15;
|
||||||
static final int CURSE = 15;
|
static final int CURSE = 16;
|
||||||
static final int BIND = 16;
|
static final int BIND = 17;
|
||||||
static final int LOW_LEVEL_ALCHEMY = 17;
|
static final int LOW_LEVEL_ALCHEMY = 18;
|
||||||
static final int WATER_BOLT = 18;
|
static final int WATER_BOLT = 19;
|
||||||
static final int VARROCK_TELEPORT = 19;
|
static final int VARROCK_TELEPORT = 20;
|
||||||
static final int LVL_2_ENCHANT = 20;
|
static final int LVL_2_ENCHANT = 21;
|
||||||
static final int EARTH_BOLT = 21;
|
static final int EARTH_BOLT = 22;
|
||||||
static final int LUMBRIDGE_TELEPORT = 22;
|
static final int LUMBRIDGE_TELEPORT = 23;
|
||||||
static final int TELEKINETIC_GRAB = 23;
|
static final int TELEKINETIC_GRAB = 24;
|
||||||
static final int FIRE_BOLT = 24;
|
static final int FIRE_BOLT = 25;
|
||||||
static final int FALADOR_TELEPORT = 25;
|
static final int FALADOR_TELEPORT = 26;
|
||||||
static final int CRUMBLE_UNDEAD = 26;
|
static final int CRUMBLE_UNDEAD = 27;
|
||||||
static final int TELEPORT_TO_HOUSE = 27;
|
static final int TELEPORT_TO_HOUSE = 28;
|
||||||
static final int WIND_BLAST = 28;
|
static final int WIND_BLAST = 29;
|
||||||
static final int SUPERHEAT_ITEM = 29;
|
static final int SUPERHEAT_ITEM = 30;
|
||||||
static final int CAMELOT_TELEPORT = 30;
|
static final int CAMELOT_TELEPORT = 31;
|
||||||
static final int WATER_BLAST = 31;
|
static final int WATER_BLAST = 32;
|
||||||
static final int LVL_3_ENCHANT = 32;
|
static final int LVL_3_ENCHANT = 33;
|
||||||
static final int IBAN_BLAST = 33;
|
static final int IBAN_BLAST = 34;
|
||||||
static final int SNARE = 34;
|
static final int SNARE = 35;
|
||||||
static final int MAGIC_DART = 35;
|
static final int MAGIC_DART = 36;
|
||||||
static final int ARDOUGNE_TELEPORT = 36;
|
static final int ARDOUGNE_TELEPORT = 37;
|
||||||
static final int EARTH_BLAST = 37;
|
static final int EARTH_BLAST = 38;
|
||||||
static final int HIGH_LEVEL_ALCHEMY = 38;
|
static final int HIGH_LEVEL_ALCHEMY = 39;
|
||||||
static final int CHARGE_WATER_ORB = 39;
|
static final int CHARGE_WATER_ORB = 40;
|
||||||
static final int LVL_4_ENCHANT = 40;
|
static final int LVL_4_ENCHANT = 41;
|
||||||
static final int WATCHTOWER_TELEPORT = 41;
|
static final int WATCHTOWER_TELEPORT = 42;
|
||||||
static final int FIRE_BLAST = 42;
|
static final int FIRE_BLAST = 43;
|
||||||
static final int CHARGE_EARTH_ORB = 43;
|
static final int CHARGE_EARTH_ORB = 44;
|
||||||
static final int BONES_TO_PEACHES = 44;
|
static final int BONES_TO_PEACHES = 45;
|
||||||
static final int SARADOMIN_STRIKE = 45;
|
static final int SARADOMIN_STRIKE = 46;
|
||||||
static final int CLAWS_OF_GUTHIX = 46;
|
static final int CLAWS_OF_GUTHIX = 47;
|
||||||
static final int FLAMES_OF_ZAMORAK = 47;
|
static final int FLAMES_OF_ZAMORAK = 48;
|
||||||
static final int TROLLHEIM_TELEPORT = 48;
|
static final int TROLLHEIM_TELEPORT = 49;
|
||||||
static final int WIND_WAVE = 49;
|
static final int WIND_WAVE = 50;
|
||||||
static final int CHARGE_FIRE_ORB = 50;
|
static final int CHARGE_FIRE_ORB = 51;
|
||||||
static final int TELEPORT_TO_APE_ATOLL = 51;
|
static final int TELEPORT_TO_APE_ATOLL = 52;
|
||||||
static final int WATER_WAVE = 52;
|
static final int WATER_WAVE = 53;
|
||||||
static final int CHARGE_AIR_ORB = 53;
|
static final int CHARGE_AIR_ORB = 54;
|
||||||
static final int VULNERABILITY = 54;
|
static final int VULNERABILITY = 55;
|
||||||
static final int LVL_5_ENCHANT = 55;
|
static final int LVL_5_ENCHANT = 56;
|
||||||
static final int TELEPORT_TO_KOUREND = 56;
|
static final int TELEPORT_TO_KOUREND = 57;
|
||||||
static final int EARTH_WAVE = 57;
|
static final int EARTH_WAVE = 58;
|
||||||
static final int ENFEEBLE = 58;
|
static final int ENFEEBLE = 59;
|
||||||
static final int TELEOTHER_LUMBRIDGE = 59;
|
static final int TELEOTHER_LUMBRIDGE = 60;
|
||||||
static final int FIRE_WAVE = 60;
|
static final int FIRE_WAVE = 61;
|
||||||
static final int ENTANGLE = 61;
|
static final int ENTANGLE = 62;
|
||||||
static final int STUN = 62;
|
static final int STUN = 63;
|
||||||
static final int CHARGE = 63;
|
static final int CHARGE = 64;
|
||||||
static final int WIND_SURGE = 64;
|
static final int WIND_SURGE = 65;
|
||||||
static final int TELEOTHER_FALADOR = 65;
|
static final int TELEOTHER_FALADOR = 66;
|
||||||
static final int WATER_SURGE = 66;
|
static final int WATER_SURGE = 67;
|
||||||
static final int TELE_BLOCK = 67;
|
static final int TELE_BLOCK = 68;
|
||||||
static final int BOUNTY_TARGET_TELEPORT = 68;
|
static final int BOUNTY_TARGET_TELEPORT = 69;
|
||||||
static final int LVL_6_ENCHANT = 69;
|
static final int LVL_6_ENCHANT = 70;
|
||||||
static final int TELEOTHER_CAMELOT = 70;
|
static final int TELEOTHER_CAMELOT = 71;
|
||||||
static final int EARTH_SURGE = 71;
|
static final int EARTH_SURGE = 72;
|
||||||
static final int LVL_7_ENCHANT = 72;
|
static final int LVL_7_ENCHANT = 73;
|
||||||
static final int FIRE_SURGE = 73;
|
static final int FIRE_SURGE = 74;
|
||||||
|
|
||||||
// ANCIENT SPELLS
|
// ANCIENT SPELLS
|
||||||
static final int ICE_RUSH = 74;
|
static final int ICE_RUSH = 75;
|
||||||
static final int ICE_BLITZ = 75;
|
static final int ICE_BLITZ = 76;
|
||||||
static final int ICE_BURST = 76;
|
static final int ICE_BURST = 77;
|
||||||
static final int ICE_BARRAGE = 77;
|
static final int ICE_BARRAGE = 78;
|
||||||
static final int BLOOD_RUSH = 78;
|
static final int BLOOD_RUSH = 79;
|
||||||
static final int BLOOD_BLITZ = 79;
|
static final int BLOOD_BLITZ = 80;
|
||||||
static final int BLOOD_BURST = 80;
|
static final int BLOOD_BURST = 81;
|
||||||
static final int BLOOD_BARRAGE = 81;
|
static final int BLOOD_BARRAGE = 82;
|
||||||
static final int SMOKE_RUSH = 82;
|
static final int SMOKE_RUSH = 83;
|
||||||
static final int SMOKE_BLITZ = 83;
|
static final int SMOKE_BLITZ = 84;
|
||||||
static final int SMOKE_BURST = 84;
|
static final int SMOKE_BURST = 85;
|
||||||
static final int SMOKE_BARRAGE = 85;
|
static final int SMOKE_BARRAGE = 86;
|
||||||
static final int SHADOW_RUSH = 86;
|
static final int SHADOW_RUSH = 87;
|
||||||
static final int SHADOW_BLITZ = 87;
|
static final int SHADOW_BLITZ = 88;
|
||||||
static final int SHADOW_BURST = 88;
|
static final int SHADOW_BURST = 89;
|
||||||
static final int SHADOW_BARRAGE = 89;
|
static final int SHADOW_BARRAGE = 90;
|
||||||
static final int PADDEWWA_TELEPORT = 90;
|
static final int PADDEWWA_TELEPORT = 91;
|
||||||
static final int SENNTISTEN_TELEPORT = 91;
|
static final int SENNTISTEN_TELEPORT = 92;
|
||||||
static final int KHARYRLL_TELEPORT = 92;
|
static final int KHARYRLL_TELEPORT = 93;
|
||||||
static final int LASSAR_TELEPORT = 93;
|
static final int LASSAR_TELEPORT = 94;
|
||||||
static final int DAREEYAK_TELEPORT = 94;
|
static final int DAREEYAK_TELEPORT = 95;
|
||||||
static final int CARRALLANGER_TELEPORT = 95;
|
static final int CARRALLANGER_TELEPORT = 96;
|
||||||
static final int ANNAKARL_TELEPORT = 96;
|
static final int ANNAKARL_TELEPORT = 97;
|
||||||
static final int GHORROCK_TELEPORT = 97;
|
static final int GHORROCK_TELEPORT = 98;
|
||||||
static final int EDGEVILLE_HOME_TELEPORT = 98;
|
static final int EDGEVILLE_HOME_TELEPORT = 99;
|
||||||
static final int TOOLTIP = 188;
|
|
||||||
|
|
||||||
|
|
||||||
// LUNAR SPELLS
|
// LUNAR SPELLS
|
||||||
static final int LUNAR_HOME_TELEPORT = 99;
|
static final int LUNAR_HOME_TELEPORT = 100;
|
||||||
static final int BAKE_PIE = 100;
|
static final int BAKE_PIE = 101;
|
||||||
static final int CURE_PLANT = 101;
|
static final int CURE_PLANT = 102;
|
||||||
static final int MONSTER_EXAMINE = 102;
|
static final int MONSTER_EXAMINE = 103;
|
||||||
static final int NPC_CONTACT = 103;
|
static final int NPC_CONTACT = 104;
|
||||||
static final int CURE_OTHER = 104;
|
static final int CURE_OTHER = 105;
|
||||||
static final int HUMIDIFY = 105;
|
static final int HUMIDIFY = 106;
|
||||||
static final int MOONCLAN_TELEPORT = 106;
|
static final int MOONCLAN_TELEPORT = 107;
|
||||||
static final int TELE_GROUP_MOONCLAN = 107;
|
static final int TELE_GROUP_MOONCLAN = 108;
|
||||||
static final int CURE_ME = 108;
|
static final int CURE_ME = 109;
|
||||||
static final int HUNTER_KIT = 109;
|
static final int HUNTER_KIT = 110;
|
||||||
static final int WATERBIRTH_TELEPORT = 110;
|
static final int WATERBIRTH_TELEPORT = 111;
|
||||||
static final int TELE_GROUP_WATERBIRTH = 111;
|
static final int TELE_GROUP_WATERBIRTH = 112;
|
||||||
static final int CURE_GROUP = 112;
|
static final int CURE_GROUP = 113;
|
||||||
static final int STAT_SPY = 113;
|
static final int STAT_SPY = 114;
|
||||||
static final int BARBARIAN_TELEPORT = 114;
|
static final int BARBARIAN_TELEPORT = 115;
|
||||||
static final int TELE_GROUP_BARBARIAN = 115;
|
static final int TELE_GROUP_BARBARIAN = 116;
|
||||||
static final int SUPERGLASS_MAKE = 116;
|
static final int SUPERGLASS_MAKE = 117;
|
||||||
static final int TAN_LEATHER = 117;
|
static final int TAN_LEATHER = 118;
|
||||||
static final int KHAZARD_TELEPORT = 118;
|
static final int KHAZARD_TELEPORT = 119;
|
||||||
static final int TELE_GROUP_KHAZARD = 119;
|
static final int TELE_GROUP_KHAZARD = 120;
|
||||||
static final int DREAM = 120;
|
static final int DREAM = 121;
|
||||||
static final int STRING_JEWELLERY = 121;
|
static final int STRING_JEWELLERY = 122;
|
||||||
static final int STAT_RESTORE_POT_SHARE = 122;
|
static final int STAT_RESTORE_POT_SHARE = 123;
|
||||||
static final int MAGIC_IMBUE = 123;
|
static final int MAGIC_IMBUE = 124;
|
||||||
static final int FERTILE_SOIL = 124;
|
static final int FERTILE_SOIL = 125;
|
||||||
static final int BOOST_POTION_SHARE = 125;
|
static final int BOOST_POTION_SHARE = 126;
|
||||||
static final int FISHING_GUILD_TELEPORT = 126;
|
static final int FISHING_GUILD_TELEPORT = 127;
|
||||||
static final int TELE_GROUP_FISHING_GUILD = 127;
|
static final int TELE_GROUP_FISHING_GUILD = 128;
|
||||||
static final int PLANK_MAKE = 128;
|
static final int PLANK_MAKE = 129;
|
||||||
static final int CATHERBY_TELEPORT = 129;
|
static final int CATHERBY_TELEPORT = 130;
|
||||||
static final int TELE_GROUP_CATHERBY = 130;
|
static final int TELE_GROUP_CATHERBY = 131;
|
||||||
static final int RECHARGE_DRAGONSTONE = 131;
|
static final int RECHARGE_DRAGONSTONE = 132;
|
||||||
static final int ICE_PLATEAU_TELEPORT = 132;
|
static final int ICE_PLATEAU_TELEPORT = 133;
|
||||||
static final int TELE_GROUP_ICE_PLATEAU = 133;
|
static final int TELE_GROUP_ICE_PLATEAU = 134;
|
||||||
static final int ENERGY_TRANSFER = 134;
|
static final int ENERGY_TRANSFER = 135;
|
||||||
static final int HEAL_OTHER = 135;
|
static final int HEAL_OTHER = 136;
|
||||||
static final int VENGEANCE_OTHER = 136;
|
static final int VENGEANCE_OTHER = 137;
|
||||||
static final int VENGEANCE = 137;
|
static final int VENGEANCE = 138;
|
||||||
static final int HEAL_GROUP = 138;
|
static final int HEAL_GROUP = 139;
|
||||||
static final int SPELLBOOK_SWAP = 139;
|
static final int SPELLBOOK_SWAP = 140;
|
||||||
static final int GEOMANCY = 140;
|
static final int GEOMANCY = 141;
|
||||||
static final int SPIN_FLAX = 141;
|
static final int SPIN_FLAX = 142;
|
||||||
static final int OURANIA_TELEPORT = 142;
|
static final int OURANIA_TELEPORT = 143;
|
||||||
|
|
||||||
// ARCEUUS SPELLS
|
// ARCEUUS SPELLS
|
||||||
static final int ARCEUUS_HOME_TELEPORT = 143;
|
static final int ARCEUUS_HOME_TELEPORT = 144;
|
||||||
static final int BATTLEFRONT_TELEPORT = 178;
|
static final int BATTLEFRONT_TELEPORT = 179;
|
||||||
|
}
|
||||||
|
|
||||||
static final int FILTER_SECTION_PARENT = 181;
|
static class StandardSpellBook
|
||||||
static final int FILTER_BUTTONS_PARENT = 184;
|
{
|
||||||
static final int FILTER_BUTTON_PARENT = 185;
|
static final int LUMBRIDGE_HOME_TELEPORT = 5;
|
||||||
static final int FILTER_BUTTON = 187;
|
}
|
||||||
|
|
||||||
|
static class AncientSpellBook
|
||||||
|
{
|
||||||
|
static final int EDGEVILLE_HOME_TELEPORT = 99;
|
||||||
|
}
|
||||||
|
|
||||||
|
static class LunarSpellBook
|
||||||
|
{
|
||||||
|
static final int LUNAR_HOME_TELEPORT = 100;
|
||||||
|
}
|
||||||
|
|
||||||
|
static class ArceuusSpellBook
|
||||||
|
{
|
||||||
|
static final int ARCEUUS_HOME_TELEPORT = 144;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class Pvp
|
static class Pvp
|
||||||
|
|||||||
@@ -429,6 +429,8 @@ public enum WidgetInfo
|
|||||||
|
|
||||||
MOTHERLODE_MINE(WidgetID.MOTHERLODE_MINE_GROUP_ID, 0),
|
MOTHERLODE_MINE(WidgetID.MOTHERLODE_MINE_GROUP_ID, 0),
|
||||||
|
|
||||||
|
GWD_KC(WidgetID.GWD_KC_GROUP_ID, WidgetID.GWD.CONTAINER),
|
||||||
|
|
||||||
PUZZLE_BOX(WidgetID.PUZZLE_BOX_GROUP_ID, WidgetID.PuzzleBox.VISIBLE_BOX),
|
PUZZLE_BOX(WidgetID.PUZZLE_BOX_GROUP_ID, WidgetID.PuzzleBox.VISIBLE_BOX),
|
||||||
|
|
||||||
LIGHT_BOX(WidgetID.LIGHT_BOX_GROUP_ID, WidgetID.LightBox.LIGHT_BOX),
|
LIGHT_BOX(WidgetID.LIGHT_BOX_GROUP_ID, WidgetID.LightBox.LIGHT_BOX),
|
||||||
@@ -524,7 +526,7 @@ public enum WidgetInfo
|
|||||||
SPELLBOOK_FILTERED_SPELLS_PARENT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTERED_SPELLS_PARENT),
|
SPELLBOOK_FILTERED_SPELLS_PARENT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTERED_SPELLS_PARENT),
|
||||||
SPELLBOOK_FILTERED_BOUNDS(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTERED_SPELLS_BOUNDS),
|
SPELLBOOK_FILTERED_BOUNDS(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTERED_SPELLS_BOUNDS),
|
||||||
|
|
||||||
/* STANDARD SPELL BOOK WIDGETS*/
|
/* STANDARD SPELL BOOK WIDGETS*/
|
||||||
SPELL_LUMBRIDGE_HOME_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.LUMBRIDGE_HOME_TELEPORT),
|
SPELL_LUMBRIDGE_HOME_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.LUMBRIDGE_HOME_TELEPORT),
|
||||||
SPELL_WIND_STRIKE(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.WIND_STRIKE),
|
SPELL_WIND_STRIKE(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.WIND_STRIKE),
|
||||||
SPELL_CONFUSE(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.CONFUSE),
|
SPELL_CONFUSE(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.CONFUSE),
|
||||||
@@ -595,7 +597,7 @@ public enum WidgetInfo
|
|||||||
SPELL_LVL_7_ENCHANT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.LVL_7_ENCHANT),
|
SPELL_LVL_7_ENCHANT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.LVL_7_ENCHANT),
|
||||||
SPELL_FIRE_SURGE(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FIRE_SURGE),
|
SPELL_FIRE_SURGE(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FIRE_SURGE),
|
||||||
SPELL_BOUNTY_TARGET_TELEPORT2(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.BOUNTY_TARGET_TELEPORT),
|
SPELL_BOUNTY_TARGET_TELEPORT2(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.BOUNTY_TARGET_TELEPORT),
|
||||||
/* END OF STANDARD SPELL BOOK WIDGETS*/
|
/* END OF STANDARD SPELL BOOK WIDGETS*/
|
||||||
|
|
||||||
/* ANCIENT SPELL BOOK WIDGETS*/
|
/* ANCIENT SPELL BOOK WIDGETS*/
|
||||||
SPELL_ICE_RUSH(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.ICE_RUSH),
|
SPELL_ICE_RUSH(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.ICE_RUSH),
|
||||||
@@ -624,9 +626,9 @@ public enum WidgetInfo
|
|||||||
SPELL_GHORROCK_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.GHORROCK_TELEPORT),
|
SPELL_GHORROCK_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.GHORROCK_TELEPORT),
|
||||||
SPELL_EDGEVILLE_HOME_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.EDGEVILLE_HOME_TELEPORT),
|
SPELL_EDGEVILLE_HOME_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.EDGEVILLE_HOME_TELEPORT),
|
||||||
SPELL_BOUNTY_TARGET_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.BOUNTY_TARGET_TELEPORT),
|
SPELL_BOUNTY_TARGET_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.BOUNTY_TARGET_TELEPORT),
|
||||||
/* END OF ANCIENT SPELL BOOK WIDGETS*/
|
/* END OF ANCIENT SPELL BOOK WIDGETS*/
|
||||||
|
|
||||||
/* LUNAR SPELL BOOK WIDGETS*/
|
/* LUNAR SPELL BOOK WIDGETS*/
|
||||||
SPELL_LUNAR_HOME_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.LUNAR_HOME_TELEPORT),
|
SPELL_LUNAR_HOME_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.LUNAR_HOME_TELEPORT),
|
||||||
SPELL_VENGEANCE_OTHER(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.VENGEANCE_OTHER),
|
SPELL_VENGEANCE_OTHER(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.VENGEANCE_OTHER),
|
||||||
SPELL_VENGEANCE(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.VENGEANCE),
|
SPELL_VENGEANCE(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.VENGEANCE),
|
||||||
@@ -672,18 +674,17 @@ public enum WidgetInfo
|
|||||||
SPELL_GEOMANCY(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.GEOMANCY),
|
SPELL_GEOMANCY(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.GEOMANCY),
|
||||||
SPELL_SPIN_FLAX(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.SPIN_FLAX),
|
SPELL_SPIN_FLAX(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.SPIN_FLAX),
|
||||||
SPELL_OURANIA_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.OURANIA_TELEPORT),
|
SPELL_OURANIA_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.OURANIA_TELEPORT),
|
||||||
/* END OF LUNAR SPELL BOOK WIDGETS*/
|
/* END OF LUNAR SPELL BOOK WIDGETS*/
|
||||||
SPELL_TOOLTIP(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.TOOLTIP),
|
SPELL_TOOLTIP(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.TOOLTIP),
|
||||||
/* ARCEUUS SPELL BOOK WIDGETS*/
|
/* ARCEUUS SPELL BOOK WIDGETS*/
|
||||||
SPELL_ARCEUUS_HOME_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.ARCEUUS_HOME_TELEPORT),
|
SPELL_ARCEUUS_HOME_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.ARCEUUS_HOME_TELEPORT),
|
||||||
SPELL_BATTLEFRONT_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.BATTLEFRONT_TELEPORT),
|
SPELL_BATTLEFRONT_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.BATTLEFRONT_TELEPORT),
|
||||||
/* END OF ARCEUUS SPELL BOOK WIDGETS*/
|
/* END OF ARCEUUS SPELL BOOK WIDGETS*/
|
||||||
SPELLBOOK_FILTER_SECTION_PARENT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTER_SECTION_PARENT),
|
SPELLBOOK_FILTER_SECTION_PARENT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTER_SECTION_PARENT),
|
||||||
SPELLBOOK_FILTER_BUTTONS_PARENT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTER_BUTTONS_PARENT),
|
SPELLBOOK_FILTER_BUTTONS_PARENT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTER_BUTTONS_PARENT),
|
||||||
SPELLBOOK_FILTER_BUTTON_PARENT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTER_BUTTON_PARENT),
|
SPELLBOOK_FILTER_BUTTON_PARENT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTER_BUTTON_PARENT),
|
||||||
SPELLBOOK_FILTER_BUTTON(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTER_BUTTON),
|
SPELLBOOK_FILTER_BUTTON(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTER_BUTTON),
|
||||||
|
|
||||||
|
|
||||||
KOUREND_FAVOUR_OVERLAY(WidgetID.KOUREND_FAVOUR_GROUP_ID, WidgetID.KourendFavour.KOUREND_FAVOUR_OVERLAY),
|
KOUREND_FAVOUR_OVERLAY(WidgetID.KOUREND_FAVOUR_GROUP_ID, WidgetID.KourendFavour.KOUREND_FAVOUR_OVERLAY),
|
||||||
ZEAH_MESS_HALL_COOKING_DISPLAY(WidgetID.ZEAH_MESS_HALL_GROUP_ID, WidgetID.Zeah.MESS_HALL_COOKING_DISPLAY),
|
ZEAH_MESS_HALL_COOKING_DISPLAY(WidgetID.ZEAH_MESS_HALL_GROUP_ID, WidgetID.Zeah.MESS_HALL_COOKING_DISPLAY),
|
||||||
|
|
||||||
@@ -694,7 +695,6 @@ public enum WidgetInfo
|
|||||||
MULTICOMBAT_FIXED(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.MULTICOMBAT_INDICATOR),
|
MULTICOMBAT_FIXED(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.MULTICOMBAT_INDICATOR),
|
||||||
MULTICOMBAT_RESIZEABLE(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewport.MULTICOMBAT_INDICATOR),
|
MULTICOMBAT_RESIZEABLE(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewport.MULTICOMBAT_INDICATOR),
|
||||||
|
|
||||||
|
|
||||||
FULLSCREEN_MAP_ROOT(WidgetID.FULLSCREEN_MAP_GROUP_ID, WidgetID.FullScreenMap.ROOT),
|
FULLSCREEN_MAP_ROOT(WidgetID.FULLSCREEN_MAP_GROUP_ID, WidgetID.FullScreenMap.ROOT),
|
||||||
|
|
||||||
QUESTLIST_BOX(WidgetID.QUESTLIST_GROUP_ID, WidgetID.QuestList.BOX),
|
QUESTLIST_BOX(WidgetID.QUESTLIST_GROUP_ID, WidgetID.QuestList.BOX),
|
||||||
@@ -756,8 +756,8 @@ public enum WidgetInfo
|
|||||||
XP_DROP_7(WidgetID.EXPERIENCE_DROP_GROUP_ID, WidgetID.ExperienceDrop.DROP_7),
|
XP_DROP_7(WidgetID.EXPERIENCE_DROP_GROUP_ID, WidgetID.ExperienceDrop.DROP_7),
|
||||||
|
|
||||||
ITEMS_KEPT_CUSTOM_TEXT_CONTAINER(WidgetID.KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.CUSTOM_TEXT_CONTAINER),
|
ITEMS_KEPT_CUSTOM_TEXT_CONTAINER(WidgetID.KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.CUSTOM_TEXT_CONTAINER),
|
||||||
ITEMS_KEPT_ON_DEATH_CONTAINER(WidgetID.ITEMS_KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.KEPT_ITEMS_CONTAINER),
|
|
||||||
ITEMS_KEPT_ON_DEATH_TEXT(WidgetID.ITEMS_KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.KEPT_ITEMS_TEXT),
|
ITEMS_KEPT_ON_DEATH_TEXT(WidgetID.ITEMS_KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.KEPT_ITEMS_TEXT),
|
||||||
|
ITEMS_KEPT_ON_DEATH_CONTAINER(WidgetID.ITEMS_KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.KEPT_ITEMS_CONTAINER),
|
||||||
ITEMS_LOST_ON_DEATH_TEXT(WidgetID.ITEMS_KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.LOST_ITEMS_TEXT),
|
ITEMS_LOST_ON_DEATH_TEXT(WidgetID.ITEMS_KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.LOST_ITEMS_TEXT),
|
||||||
ITEMS_LOST_ON_DEATH_CONTAINER(WidgetID.ITEMS_KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.LOST_ITEMS_CONTAINER),
|
ITEMS_LOST_ON_DEATH_CONTAINER(WidgetID.ITEMS_KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.LOST_ITEMS_CONTAINER),
|
||||||
ITEMS_KEPT_INFORMATION_CONTAINER(WidgetID.ITEMS_KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.INFORMATION_CONTAINER),
|
ITEMS_KEPT_INFORMATION_CONTAINER(WidgetID.ITEMS_KEPT_ON_DEATH_GROUP_ID, WidgetID.KeptOnDeath.INFORMATION_CONTAINER),
|
||||||
|
|||||||
@@ -192,9 +192,9 @@ public class Notifier
|
|||||||
case SOLID_UNTIL_CANCELLED:
|
case SOLID_UNTIL_CANCELLED:
|
||||||
case FLASH_UNTIL_CANCELLED:
|
case FLASH_UNTIL_CANCELLED:
|
||||||
// Any interaction with the client since the notification started will cancel it after the minimum duration
|
// Any interaction with the client since the notification started will cancel it after the minimum duration
|
||||||
if (client.getMouseIdleTicks() < MINIMUM_FLASH_DURATION_TICKS
|
if ((client.getMouseIdleTicks() < MINIMUM_FLASH_DURATION_TICKS
|
||||||
|| client.getKeyboardIdleTicks() < MINIMUM_FLASH_DURATION_TICKS
|
|| client.getKeyboardIdleTicks() < MINIMUM_FLASH_DURATION_TICKS
|
||||||
|| client.getMouseLastPressedMillis() > mouseLastPressedMillis)
|
|| client.getMouseLastPressedMillis() > mouseLastPressedMillis) && clientUI.isFocused())
|
||||||
{
|
{
|
||||||
flashStart = null;
|
flashStart = null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,6 +51,7 @@ import lombok.Getter;
|
|||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.events.GameStateChanged;
|
import net.runelite.api.events.GameStateChanged;
|
||||||
|
import net.runelite.api.events.ScriptCallbackEvent;
|
||||||
import net.runelite.client.account.SessionManager;
|
import net.runelite.client.account.SessionManager;
|
||||||
import net.runelite.client.callback.Hooks;
|
import net.runelite.client.callback.Hooks;
|
||||||
import net.runelite.client.chat.ChatMessageManager;
|
import net.runelite.client.chat.ChatMessageManager;
|
||||||
@@ -86,6 +87,7 @@ import org.slf4j.LoggerFactory;
|
|||||||
public class RuneLite
|
public class RuneLite
|
||||||
{
|
{
|
||||||
public static final File RUNELITE_DIR = new File(System.getProperty("user.home"), ".runelite");
|
public static final File RUNELITE_DIR = new File(System.getProperty("user.home"), ".runelite");
|
||||||
|
public static final File CACHE_DIR = new File(RUNELITE_DIR, "cache");
|
||||||
public static final File PROFILES_DIR = new File(RUNELITE_DIR, "profiles");
|
public static final File PROFILES_DIR = new File(RUNELITE_DIR, "profiles");
|
||||||
public static final File PLUGIN_DIR = new File(RUNELITE_DIR, "plugins");
|
public static final File PLUGIN_DIR = new File(RUNELITE_DIR, "plugins");
|
||||||
public static final File SCREENSHOT_DIR = new File(RUNELITE_DIR, "screenshots");
|
public static final File SCREENSHOT_DIR = new File(RUNELITE_DIR, "screenshots");
|
||||||
@@ -367,6 +369,7 @@ public class RuneLite
|
|||||||
chatboxPanelManager.get();
|
chatboxPanelManager.get();
|
||||||
|
|
||||||
eventBus.subscribe(GameStateChanged.class, this, hooks::onGameStateChanged);
|
eventBus.subscribe(GameStateChanged.class, this, hooks::onGameStateChanged);
|
||||||
|
eventBus.subscribe(ScriptCallbackEvent.class, this, hooks::onScriptCallbackEvent);
|
||||||
|
|
||||||
// Add core overlays
|
// Add core overlays
|
||||||
WidgetOverlay.createOverlays(client).forEach(overlayManager::add);
|
WidgetOverlay.createOverlays(client).forEach(overlayManager::add);
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ public class RuneLiteModule extends AbstractModule
|
|||||||
bindConstant().annotatedWith(Names.named("developerMode")).to(developerMode);
|
bindConstant().annotatedWith(Names.named("developerMode")).to(developerMode);
|
||||||
bind(ScheduledExecutorService.class).toInstance(new ExecutorServiceExceptionLogger(Executors.newSingleThreadScheduledExecutor()));
|
bind(ScheduledExecutorService.class).toInstance(new ExecutorServiceExceptionLogger(Executors.newSingleThreadScheduledExecutor()));
|
||||||
bind(OkHttpClient.class).toInstance(RuneLiteAPI.CLIENT.newBuilder()
|
bind(OkHttpClient.class).toInstance(RuneLiteAPI.CLIENT.newBuilder()
|
||||||
.cache(new Cache(new File(RuneLite.RUNELITE_DIR, "cache" + File.separator + "okhttp"), MAX_OKHTTP_CACHE_SIZE))
|
.cache(new Cache(new File(RuneLite.CACHE_DIR, "okhttp"), MAX_OKHTTP_CACHE_SIZE))
|
||||||
.build());
|
.build());
|
||||||
bind(MenuManager.class);
|
bind(MenuManager.class);
|
||||||
bind(ChatMessageManager.class);
|
bind(ChatMessageManager.class);
|
||||||
|
|||||||
@@ -47,12 +47,15 @@ import net.runelite.api.Entity;
|
|||||||
import net.runelite.api.MainBufferProvider;
|
import net.runelite.api.MainBufferProvider;
|
||||||
import net.runelite.api.NullItemID;
|
import net.runelite.api.NullItemID;
|
||||||
import net.runelite.api.RenderOverview;
|
import net.runelite.api.RenderOverview;
|
||||||
|
import net.runelite.api.Skill;
|
||||||
import net.runelite.api.WorldMapManager;
|
import net.runelite.api.WorldMapManager;
|
||||||
import net.runelite.api.events.BeforeMenuRender;
|
import net.runelite.api.events.BeforeMenuRender;
|
||||||
import net.runelite.api.events.BeforeRender;
|
import net.runelite.api.events.BeforeRender;
|
||||||
import net.runelite.api.events.Event;
|
import net.runelite.api.events.Event;
|
||||||
|
import net.runelite.api.events.FakeXpDrop;
|
||||||
import net.runelite.api.events.GameStateChanged;
|
import net.runelite.api.events.GameStateChanged;
|
||||||
import net.runelite.api.events.GameTick;
|
import net.runelite.api.events.GameTick;
|
||||||
|
import net.runelite.api.events.ScriptCallbackEvent;
|
||||||
import net.runelite.api.hooks.Callbacks;
|
import net.runelite.api.hooks.Callbacks;
|
||||||
import net.runelite.api.hooks.DrawCallbacks;
|
import net.runelite.api.hooks.DrawCallbacks;
|
||||||
import net.runelite.api.widgets.Widget;
|
import net.runelite.api.widgets.Widget;
|
||||||
@@ -544,4 +547,25 @@ public class Hooks implements Callbacks
|
|||||||
client.getCallbacks().post(BeforeMenuRender.class, event);
|
client.getCallbacks().post(BeforeMenuRender.class, event);
|
||||||
return event.isConsumed();
|
return event.isConsumed();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void onScriptCallbackEvent(ScriptCallbackEvent scriptCallbackEvent)
|
||||||
|
{
|
||||||
|
if (!scriptCallbackEvent.getEventName().equals("fakeXpDrop"))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
final int[] intStack = client.getIntStack();
|
||||||
|
final int intStackSize = client.getIntStackSize();
|
||||||
|
|
||||||
|
final int statId = intStack[intStackSize - 2];
|
||||||
|
final int xp = intStack[intStackSize - 1];
|
||||||
|
|
||||||
|
Skill skill = Skill.values()[statId];
|
||||||
|
FakeXpDrop fakeXpDrop = new FakeXpDrop(
|
||||||
|
skill,
|
||||||
|
xp
|
||||||
|
);
|
||||||
|
eventBus.post(FakeXpDrop.class, fakeXpDrop);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,6 +37,4 @@ import java.lang.annotation.Target;
|
|||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Target(ElementType.METHOD)
|
@Target(ElementType.METHOD)
|
||||||
@Documented
|
@Documented
|
||||||
public @interface Alpha
|
public @interface Alpha {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,5 +1,3 @@
|
|||||||
package net.runelite.client.config;
|
package net.runelite.client.config;
|
||||||
|
|
||||||
public class Button
|
public class Button {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -24,6 +24,4 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.config;
|
package net.runelite.client.config;
|
||||||
|
|
||||||
public interface Config
|
public interface Config {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,5 +1,3 @@
|
|||||||
package net.runelite.client.config;
|
package net.runelite.client.config;
|
||||||
|
|
||||||
public class Title
|
public class Title {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -35,7 +35,4 @@ import net.runelite.api.events.Event;
|
|||||||
* it has nothing to do with whether an account is being logged out.
|
* it has nothing to do with whether an account is being logged out.
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class SessionClose implements Event
|
public class SessionClose implements Event {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -35,7 +35,4 @@ import net.runelite.api.events.Event;
|
|||||||
* it has nothing to do with whether an account is being logged in.
|
* it has nothing to do with whether an account is being logged in.
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class SessionOpen implements Event
|
public class SessionOpen implements Event {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -24,6 +24,4 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.input;
|
package net.runelite.client.input;
|
||||||
|
|
||||||
public interface KeyListener extends java.awt.event.KeyListener
|
public interface KeyListener extends java.awt.event.KeyListener {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -24,6 +24,4 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.achievementdiary;
|
package net.runelite.client.plugins.achievementdiary;
|
||||||
|
|
||||||
public interface Requirement
|
public interface Requirement {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -26,7 +26,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.aoewarnings;
|
package net.runelite.client.plugins.aoewarnings;
|
||||||
|
|
||||||
|
|
||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
import java.awt.Color;
|
import java.awt.Color;
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
|
|||||||
@@ -70,8 +70,11 @@ public class AttackStylesPlugin extends Plugin
|
|||||||
private int attackStyleVarbit = -1;
|
private int attackStyleVarbit = -1;
|
||||||
private int equippedWeaponTypeVarbit = -1;
|
private int equippedWeaponTypeVarbit = -1;
|
||||||
private int castingModeVarbit = -1;
|
private int castingModeVarbit = -1;
|
||||||
|
@Getter
|
||||||
|
@Nullable
|
||||||
private AttackStyle attackStyle;
|
private AttackStyle attackStyle;
|
||||||
private final Set<Skill> warnedSkills = new HashSet<>();
|
private final Set<Skill> warnedSkills = new HashSet<>();
|
||||||
|
@Getter(AccessLevel.PACKAGE)
|
||||||
private boolean warnedSkillSelected = false;
|
private boolean warnedSkillSelected = false;
|
||||||
private final Table<WeaponType, WidgetInfo, Boolean> widgetsToHide = HashBasedTable.create();
|
private final Table<WeaponType, WidgetInfo, Boolean> widgetsToHide = HashBasedTable.create();
|
||||||
|
|
||||||
@@ -108,7 +111,8 @@ public class AttackStylesPlugin extends Plugin
|
|||||||
private boolean warnForRanged;
|
private boolean warnForRanged;
|
||||||
private boolean warnForMagic;
|
private boolean warnForMagic;
|
||||||
private boolean hideAutoRetaliate;
|
private boolean hideAutoRetaliate;
|
||||||
private boolean removeWarnedStyles;
|
@VisibleForTesting
|
||||||
|
boolean removeWarnedStyles;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void startUp() throws Exception
|
protected void startUp() throws Exception
|
||||||
@@ -159,18 +163,8 @@ public class AttackStylesPlugin extends Plugin
|
|||||||
eventBus.subscribe(VarbitChanged.class, this, this::onVarbitChanged);
|
eventBus.subscribe(VarbitChanged.class, this, this::onVarbitChanged);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
@VisibleForTesting
|
||||||
public AttackStyle getAttackStyle()
|
void onWidgetHiddenChanged(WidgetHiddenChanged event)
|
||||||
{
|
|
||||||
return attackStyle;
|
|
||||||
}
|
|
||||||
|
|
||||||
boolean isWarnedSkillSelected()
|
|
||||||
{
|
|
||||||
return warnedSkillSelected;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void onWidgetHiddenChanged(WidgetHiddenChanged event)
|
|
||||||
{
|
{
|
||||||
if (event.getWidget().isSelfHidden() || TO_GROUP(event.getWidget().getId()) != COMBAT_GROUP_ID)
|
if (event.getWidget().isSelfHidden() || TO_GROUP(event.getWidget().getId()) != COMBAT_GROUP_ID)
|
||||||
{
|
{
|
||||||
@@ -215,6 +209,7 @@ public class AttackStylesPlugin extends Plugin
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@VisibleForTesting
|
||||||
void onVarbitChanged(VarbitChanged event)
|
void onVarbitChanged(VarbitChanged event)
|
||||||
{
|
{
|
||||||
int currentAttackStyleVarbit = client.getVar(VarPlayer.ATTACK_STYLE);
|
int currentAttackStyleVarbit = client.getVar(VarPlayer.ATTACK_STYLE);
|
||||||
@@ -240,6 +235,7 @@ public class AttackStylesPlugin extends Plugin
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@VisibleForTesting
|
||||||
void onConfigChanged(ConfigChanged event)
|
void onConfigChanged(ConfigChanged event)
|
||||||
{
|
{
|
||||||
if (event.getGroup().equals("attackIndicator"))
|
if (event.getGroup().equals("attackIndicator"))
|
||||||
|
|||||||
@@ -27,6 +27,13 @@
|
|||||||
package net.runelite.client.plugins.barbarianassault;
|
package net.runelite.client.plugins.barbarianassault;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableMap;
|
import com.google.common.collect.ImmutableMap;
|
||||||
|
import java.awt.BasicStroke;
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.Dimension;
|
||||||
|
import java.awt.Graphics2D;
|
||||||
|
import java.awt.Stroke;
|
||||||
|
import java.util.Map;
|
||||||
|
import javax.inject.Inject;
|
||||||
import javax.inject.Singleton;
|
import javax.inject.Singleton;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.Perspective;
|
import net.runelite.api.Perspective;
|
||||||
@@ -39,14 +46,6 @@ import net.runelite.client.ui.overlay.OverlayLayer;
|
|||||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||||
import net.runelite.client.ui.overlay.OverlayUtil;
|
import net.runelite.client.ui.overlay.OverlayUtil;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
|
||||||
import java.awt.Color;
|
|
||||||
import java.awt.Dimension;
|
|
||||||
import java.awt.Graphics2D;
|
|
||||||
import java.awt.Stroke;
|
|
||||||
import java.awt.BasicStroke;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
class AboveSceneOverlay extends Overlay
|
class AboveSceneOverlay extends Overlay
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -31,7 +31,6 @@ import java.awt.Graphics2D;
|
|||||||
import java.awt.Rectangle;
|
import java.awt.Rectangle;
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
|
||||||
import javax.inject.Singleton;
|
import javax.inject.Singleton;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.Point;
|
import net.runelite.api.Point;
|
||||||
|
|||||||
@@ -26,18 +26,17 @@
|
|||||||
package net.runelite.client.plugins.barbarianassault;
|
package net.runelite.client.plugins.barbarianassault;
|
||||||
|
|
||||||
import com.google.common.collect.Sets;
|
import com.google.common.collect.Sets;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import javax.inject.Inject;
|
||||||
import lombok.AccessLevel;
|
import lombok.AccessLevel;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import net.runelite.client.menus.AbstractComparableEntry;
|
import net.runelite.client.menus.AbstractComparableEntry;
|
||||||
import net.runelite.client.menus.MenuManager;
|
import net.runelite.client.menus.MenuManager;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.Iterator;
|
|
||||||
|
|
||||||
class BarbarianAssaultMenu
|
class BarbarianAssaultMenu
|
||||||
{
|
{
|
||||||
private final MenuManager menuManager;
|
private final MenuManager menuManager;
|
||||||
|
|||||||
@@ -26,15 +26,14 @@
|
|||||||
package net.runelite.client.plugins.barbarianassault;
|
package net.runelite.client.plugins.barbarianassault;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
|
import java.time.Duration;
|
||||||
|
import java.time.Instant;
|
||||||
|
import java.util.List;
|
||||||
import lombok.AccessLevel;
|
import lombok.AccessLevel;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import net.runelite.api.NPC;
|
import net.runelite.api.NPC;
|
||||||
|
|
||||||
import java.time.Duration;
|
|
||||||
import java.time.Instant;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
class Healer
|
class Healer
|
||||||
|
|||||||
@@ -27,7 +27,6 @@ package net.runelite.client.plugins.barbarianassault;
|
|||||||
|
|
||||||
import java.awt.Color;
|
import java.awt.Color;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import lombok.AccessLevel;
|
import lombok.AccessLevel;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
|||||||
@@ -24,13 +24,12 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.barbarianassault;
|
package net.runelite.client.plugins.barbarianassault;
|
||||||
|
|
||||||
import lombok.AccessLevel;
|
|
||||||
import lombok.Getter;
|
|
||||||
|
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
import java.time.LocalTime;
|
import java.time.LocalTime;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
|
import lombok.AccessLevel;
|
||||||
|
import lombok.Getter;
|
||||||
|
|
||||||
class Timer
|
class Timer
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -25,14 +25,13 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.barbarianassault;
|
package net.runelite.client.plugins.barbarianassault;
|
||||||
|
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.image.BufferedImage;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
import net.runelite.client.plugins.Plugin;
|
import net.runelite.client.plugins.Plugin;
|
||||||
import net.runelite.client.ui.overlay.infobox.InfoBox;
|
import net.runelite.client.ui.overlay.infobox.InfoBox;
|
||||||
|
|
||||||
import java.awt.Color;
|
|
||||||
import java.awt.image.BufferedImage;
|
|
||||||
|
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
@Data
|
@Data
|
||||||
public class TimerBox extends InfoBox
|
public class TimerBox extends InfoBox
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
package net.runelite.client.plugins.barbarianassault;
|
package net.runelite.client.plugins.barbarianassault;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
|
import java.awt.Color;
|
||||||
import lombok.AccessLevel;
|
import lombok.AccessLevel;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
@@ -35,8 +36,6 @@ import net.runelite.api.widgets.Widget;
|
|||||||
import net.runelite.api.widgets.WidgetInfo;
|
import net.runelite.api.widgets.WidgetInfo;
|
||||||
import net.runelite.client.chat.ChatMessageBuilder;
|
import net.runelite.client.chat.ChatMessageBuilder;
|
||||||
|
|
||||||
import java.awt.Color;
|
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class Wave
|
public class Wave
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -24,14 +24,13 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.bosstimetracker;
|
package net.runelite.client.plugins.bosstimetracker;
|
||||||
|
|
||||||
import net.runelite.client.ui.overlay.infobox.InfoBox;
|
|
||||||
|
|
||||||
import java.awt.image.BufferedImage;
|
|
||||||
import java.awt.Color;
|
import java.awt.Color;
|
||||||
|
import java.awt.image.BufferedImage;
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
import java.time.LocalTime;
|
import java.time.LocalTime;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
|
import net.runelite.client.ui.overlay.infobox.InfoBox;
|
||||||
|
|
||||||
public class BossTimeTracker extends InfoBox
|
public class BossTimeTracker extends InfoBox
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -24,29 +24,27 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.bosstimetracker;
|
package net.runelite.client.plugins.bosstimetracker;
|
||||||
|
|
||||||
import lombok.Getter;
|
|
||||||
import net.runelite.api.ChatMessageType;
|
|
||||||
import net.runelite.api.Client;
|
|
||||||
import net.runelite.api.events.ChatMessage;
|
|
||||||
import net.runelite.api.events.GameStateChanged;
|
|
||||||
import net.runelite.api.util.Text;
|
|
||||||
import net.runelite.client.config.ConfigManager;
|
|
||||||
import net.runelite.client.game.ItemManager;
|
|
||||||
import net.runelite.client.plugins.Plugin;
|
|
||||||
import net.runelite.client.plugins.PluginDescriptor;
|
|
||||||
import net.runelite.client.plugins.PluginType;
|
|
||||||
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
|
|
||||||
import net.runelite.client.eventbus.EventBus;
|
|
||||||
|
|
||||||
import javax.inject.Inject;
|
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
import javax.inject.Inject;
|
||||||
|
import lombok.Getter;
|
||||||
|
import net.runelite.api.ChatMessageType;
|
||||||
|
import net.runelite.api.Client;
|
||||||
import static net.runelite.api.ItemID.FIRE_CAPE;
|
import static net.runelite.api.ItemID.FIRE_CAPE;
|
||||||
import static net.runelite.api.ItemID.INFERNAL_CAPE;
|
import static net.runelite.api.ItemID.INFERNAL_CAPE;
|
||||||
|
import net.runelite.api.events.ChatMessage;
|
||||||
|
import net.runelite.api.events.GameStateChanged;
|
||||||
|
import net.runelite.api.util.Text;
|
||||||
|
import net.runelite.client.config.ConfigManager;
|
||||||
|
import net.runelite.client.eventbus.EventBus;
|
||||||
|
import net.runelite.client.game.ItemManager;
|
||||||
|
import net.runelite.client.plugins.Plugin;
|
||||||
|
import net.runelite.client.plugins.PluginDescriptor;
|
||||||
|
import net.runelite.client.plugins.PluginType;
|
||||||
|
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
|
||||||
|
|
||||||
@PluginDescriptor(
|
@PluginDescriptor(
|
||||||
name = "Boss Time Tracker",
|
name = "Boss Time Tracker",
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ public enum CannonSpots
|
|||||||
BLACK_DEMONS(new WorldPoint(2859, 9778, 0), new WorldPoint(2841, 9791, 0), new WorldPoint(1421, 10089, 1)),
|
BLACK_DEMONS(new WorldPoint(2859, 9778, 0), new WorldPoint(2841, 9791, 0), new WorldPoint(1421, 10089, 1)),
|
||||||
ELVES(new WorldPoint(2044, 4635, 0), new WorldPoint(3278, 6098, 0)),
|
ELVES(new WorldPoint(2044, 4635, 0), new WorldPoint(3278, 6098, 0)),
|
||||||
SUQAHS(new WorldPoint(2114, 3943, 0)),
|
SUQAHS(new WorldPoint(2114, 3943, 0)),
|
||||||
TROLLS(new WorldPoint(2401, 3856, 0)),
|
TROLLS(new WorldPoint(2401, 3856, 0), new WorldPoint(1242, 3517, 0)),
|
||||||
GREATER_DEMONS(new WorldPoint(1435, 10086, 2)),
|
GREATER_DEMONS(new WorldPoint(1435, 10086, 2)),
|
||||||
BRINE_RAT(new WorldPoint(2707, 10132, 0)),
|
BRINE_RAT(new WorldPoint(2707, 10132, 0)),
|
||||||
DAGGANOTH(new WorldPoint(2524, 10020, 0)),
|
DAGGANOTH(new WorldPoint(2524, 10020, 0)),
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ package net.runelite.client.plugins.chatcommands;
|
|||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
import io.reactivex.schedulers.Schedulers;
|
import io.reactivex.schedulers.Schedulers;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.util.EnumSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.ScheduledExecutorService;
|
import java.util.concurrent.ScheduledExecutorService;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
@@ -42,8 +43,10 @@ import net.runelite.api.Experience;
|
|||||||
import net.runelite.api.IconID;
|
import net.runelite.api.IconID;
|
||||||
import net.runelite.api.ItemDefinition;
|
import net.runelite.api.ItemDefinition;
|
||||||
import net.runelite.api.MessageNode;
|
import net.runelite.api.MessageNode;
|
||||||
|
import net.runelite.api.Player;
|
||||||
import net.runelite.api.VarPlayer;
|
import net.runelite.api.VarPlayer;
|
||||||
import net.runelite.api.Varbits;
|
import net.runelite.api.Varbits;
|
||||||
|
import net.runelite.api.WorldType;
|
||||||
import net.runelite.api.events.ChatMessage;
|
import net.runelite.api.events.ChatMessage;
|
||||||
import net.runelite.api.events.GameTick;
|
import net.runelite.api.events.GameTick;
|
||||||
import net.runelite.api.events.VarbitChanged;
|
import net.runelite.api.events.VarbitChanged;
|
||||||
@@ -1157,31 +1160,28 @@ public class ChatCommandsPlugin extends Plugin
|
|||||||
*/
|
*/
|
||||||
private HiscoreLookup getCorrectLookupFor(final ChatMessage chatMessage)
|
private HiscoreLookup getCorrectLookupFor(final ChatMessage chatMessage)
|
||||||
{
|
{
|
||||||
final String player;
|
Player localPlayer = client.getLocalPlayer();
|
||||||
final HiscoreEndpoint ironmanStatus;
|
final String player = sanitize(chatMessage.getName());
|
||||||
|
|
||||||
if (chatMessage.getType().equals(ChatMessageType.PRIVATECHATOUT))
|
// If we are sending the message then just use the local hiscore endpoint for the world
|
||||||
|
if (chatMessage.getType().equals(ChatMessageType.PRIVATECHATOUT)
|
||||||
|
|| player.equals(localPlayer.getName()))
|
||||||
{
|
{
|
||||||
player = client.getLocalPlayer().getName();
|
return new HiscoreLookup(localPlayer.getName(), hiscoreEndpoint);
|
||||||
ironmanStatus = hiscoreEndpoint;
|
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
player = sanitize(chatMessage.getName());
|
|
||||||
|
|
||||||
if (player.equals(client.getLocalPlayer().getName()))
|
// Public chat on a leagues world is always league hiscores, regardless of icon
|
||||||
|
if (chatMessage.getType() == ChatMessageType.PUBLICCHAT || chatMessage.getType() == ChatMessageType.MODCHAT)
|
||||||
|
{
|
||||||
|
if (client.getWorldType().contains(WorldType.LEAGUE))
|
||||||
{
|
{
|
||||||
// Get ironman status from for the local player
|
return new HiscoreLookup(player, HiscoreEndpoint.LEAGUE);
|
||||||
ironmanStatus = hiscoreEndpoint;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// Get ironman status from their icon in chat
|
|
||||||
ironmanStatus = getHiscoreEndpointByName(chatMessage.getName());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return new HiscoreLookup(player, ironmanStatus);
|
// Get ironman status from their icon in chat
|
||||||
|
HiscoreEndpoint endpoint = getHiscoreEndpointByName(chatMessage.getName());
|
||||||
|
return new HiscoreLookup(player, endpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1220,6 +1220,12 @@ public class ChatCommandsPlugin extends Plugin
|
|||||||
*/
|
*/
|
||||||
private HiscoreEndpoint getLocalHiscoreEndpointType()
|
private HiscoreEndpoint getLocalHiscoreEndpointType()
|
||||||
{
|
{
|
||||||
|
EnumSet<WorldType> worldType = client.getWorldType();
|
||||||
|
if (worldType.contains(WorldType.LEAGUE))
|
||||||
|
{
|
||||||
|
return HiscoreEndpoint.LEAGUE;
|
||||||
|
}
|
||||||
|
|
||||||
return toEndPoint(client.getAccountType());
|
return toEndPoint(client.getAccountType());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -28,7 +28,6 @@ package net.runelite.client.plugins.chatnotifications;
|
|||||||
import com.google.common.annotations.VisibleForTesting;
|
import com.google.common.annotations.VisibleForTesting;
|
||||||
import com.google.common.base.Strings;
|
import com.google.common.base.Strings;
|
||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
@@ -41,17 +40,17 @@ import javax.inject.Singleton;
|
|||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.MessageNode;
|
import net.runelite.api.MessageNode;
|
||||||
import net.runelite.api.events.ChatMessage;
|
import net.runelite.api.events.ChatMessage;
|
||||||
import net.runelite.client.events.ConfigChanged;
|
|
||||||
import net.runelite.api.events.GameStateChanged;
|
import net.runelite.api.events.GameStateChanged;
|
||||||
|
import net.runelite.api.util.Text;
|
||||||
import net.runelite.client.Notifier;
|
import net.runelite.client.Notifier;
|
||||||
import net.runelite.client.RuneLiteProperties;
|
import net.runelite.client.RuneLiteProperties;
|
||||||
import net.runelite.client.chat.ChatColorType;
|
import net.runelite.client.chat.ChatColorType;
|
||||||
import net.runelite.client.chat.ChatMessageManager;
|
import net.runelite.client.chat.ChatMessageManager;
|
||||||
import net.runelite.client.config.ConfigManager;
|
import net.runelite.client.config.ConfigManager;
|
||||||
import net.runelite.client.eventbus.EventBus;
|
import net.runelite.client.eventbus.EventBus;
|
||||||
|
import net.runelite.client.events.ConfigChanged;
|
||||||
import net.runelite.client.plugins.Plugin;
|
import net.runelite.client.plugins.Plugin;
|
||||||
import net.runelite.client.plugins.PluginDescriptor;
|
import net.runelite.client.plugins.PluginDescriptor;
|
||||||
import net.runelite.api.util.Text;
|
|
||||||
|
|
||||||
@PluginDescriptor(
|
@PluginDescriptor(
|
||||||
name = "Chat Notifications",
|
name = "Chat Notifications",
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ public class CoordinateClue extends ClueScroll implements TextClueScroll, Locati
|
|||||||
.put(new WorldPoint(3058, 3884, 0), "Wilderness. Near runite ore north of Lava Maze.")
|
.put(new WorldPoint(3058, 3884, 0), "Wilderness. Near runite ore north of Lava Maze.")
|
||||||
.put(new WorldPoint(3290, 3889, 0), "Wilderness. Demonic Ruins.")
|
.put(new WorldPoint(3290, 3889, 0), "Wilderness. Demonic Ruins.")
|
||||||
.put(new WorldPoint(3770, 3897, 0), "Small Island north of Fossil Island.")
|
.put(new WorldPoint(3770, 3897, 0), "Small Island north of Fossil Island.")
|
||||||
.put(new WorldPoint(2505, 3899, 0), "Small Island north-east of Miscellania (AJS).")
|
.put(new WorldPoint(2505, 3899, 0), "Small Island north-west of Miscellania (AJS).")
|
||||||
.put(new WorldPoint(3285, 3942, 0), "Wilderness. Rogues' Castle.")
|
.put(new WorldPoint(3285, 3942, 0), "Wilderness. Rogues' Castle.")
|
||||||
.put(new WorldPoint(3159, 3959, 0), "Wilderness. North of Deserted Keep, west of Resource Area.")
|
.put(new WorldPoint(3159, 3959, 0), "Wilderness. North of Deserted Keep, west of Resource Area.")
|
||||||
.put(new WorldPoint(3039, 3960, 0), "Wilderness. Pirates' Hideout.")
|
.put(new WorldPoint(3039, 3960, 0), "Wilderness. Pirates' Hideout.")
|
||||||
|
|||||||
@@ -68,6 +68,10 @@ public class HotColdClue extends ClueScroll implements LocationClueScroll, Locat
|
|||||||
"Jorral",
|
"Jorral",
|
||||||
"Speak to Jorral to receive a strange device.",
|
"Speak to Jorral to receive a strange device.",
|
||||||
new WorldPoint(2436, 3347, 0));
|
new WorldPoint(2436, 3347, 0));
|
||||||
|
private static final HotColdClue MASTER_CLUE_LEAGUE = new HotColdClue("Buried beneath the ground, who knows where it's found. Lucky for you, A man called Watson may have a clue.",
|
||||||
|
"Watson",
|
||||||
|
"Speak to Watson to receive a strange device.",
|
||||||
|
new WorldPoint(1645, 3572, 0));
|
||||||
|
|
||||||
private final String text;
|
private final String text;
|
||||||
private final String npc;
|
private final String npc;
|
||||||
@@ -89,6 +93,11 @@ public class HotColdClue extends ClueScroll implements LocationClueScroll, Locat
|
|||||||
MASTER_CLUE.reset();
|
MASTER_CLUE.reset();
|
||||||
return MASTER_CLUE;
|
return MASTER_CLUE;
|
||||||
}
|
}
|
||||||
|
else if (MASTER_CLUE_LEAGUE.text.equalsIgnoreCase(text))
|
||||||
|
{
|
||||||
|
MASTER_CLUE_LEAGUE.reset();
|
||||||
|
return MASTER_CLUE_LEAGUE;
|
||||||
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -272,11 +281,11 @@ public class HotColdClue extends ClueScroll implements LocationClueScroll, Locat
|
|||||||
|
|
||||||
final Set<HotColdTemperature> temperatureSet;
|
final Set<HotColdTemperature> temperatureSet;
|
||||||
|
|
||||||
if (this.equals(BEGINNER_CLUE))
|
if (this == BEGINNER_CLUE)
|
||||||
{
|
{
|
||||||
temperatureSet = HotColdTemperature.BEGINNER_HOT_COLD_TEMPERATURES;
|
temperatureSet = HotColdTemperature.BEGINNER_HOT_COLD_TEMPERATURES;
|
||||||
}
|
}
|
||||||
else if (this.equals(MASTER_CLUE))
|
else if (this == MASTER_CLUE || this == MASTER_CLUE_LEAGUE)
|
||||||
{
|
{
|
||||||
temperatureSet = HotColdTemperature.MASTER_HOT_COLD_TEMPERATURES;
|
temperatureSet = HotColdTemperature.MASTER_HOT_COLD_TEMPERATURES;
|
||||||
}
|
}
|
||||||
@@ -300,8 +309,9 @@ public class HotColdClue extends ClueScroll implements LocationClueScroll, Locat
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((this.equals(BEGINNER_CLUE) && temperature == HotColdTemperature.BEGINNER_VISIBLY_SHAKING)
|
boolean master = this == MASTER_CLUE || this == MASTER_CLUE_LEAGUE;
|
||||||
|| (this.equals(MASTER_CLUE) && temperature == HotColdTemperature.MASTER_VISIBLY_SHAKING))
|
if ((this == BEGINNER_CLUE && temperature == HotColdTemperature.BEGINNER_VISIBLY_SHAKING)
|
||||||
|
|| (master && temperature == HotColdTemperature.MASTER_VISIBLY_SHAKING))
|
||||||
{
|
{
|
||||||
markFinalSpot(localWorld);
|
markFinalSpot(localWorld);
|
||||||
}
|
}
|
||||||
@@ -327,11 +337,11 @@ public class HotColdClue extends ClueScroll implements LocationClueScroll, Locat
|
|||||||
{
|
{
|
||||||
final boolean isBeginner;
|
final boolean isBeginner;
|
||||||
|
|
||||||
if (this.equals(BEGINNER_CLUE))
|
if (this == BEGINNER_CLUE)
|
||||||
{
|
{
|
||||||
isBeginner = true;
|
isBeginner = true;
|
||||||
}
|
}
|
||||||
else if (this.equals(MASTER_CLUE))
|
else if (this == MASTER_CLUE || this == MASTER_CLUE_LEAGUE)
|
||||||
{
|
{
|
||||||
isBeginner = false;
|
isBeginner = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -137,7 +137,7 @@ public class SkillChallengeClue extends ClueScroll implements NpcClueScroll
|
|||||||
new SkillChallengeClue("Mine a piece of mithril ore.", ANY_PICKAXE),
|
new SkillChallengeClue("Mine a piece of mithril ore.", ANY_PICKAXE),
|
||||||
new SkillChallengeClue("Smith a mithril 2h sword.", item(ItemID.HAMMER), xOfItem(ItemID.MITHRIL_BAR, 3)),
|
new SkillChallengeClue("Smith a mithril 2h sword.", item(ItemID.HAMMER), xOfItem(ItemID.MITHRIL_BAR, 3)),
|
||||||
new SkillChallengeClue("Catch a raw shark.", ANY_HARPOON),
|
new SkillChallengeClue("Catch a raw shark.", ANY_HARPOON),
|
||||||
new SkillChallengeClue("Chop a yew tree.", ANY_AXE),
|
new SkillChallengeClue("Cut a yew log.", ANY_AXE),
|
||||||
new SkillChallengeClue("Fix a magical lamp in Dorgesh-Kaan.", item(ItemID.LIGHT_ORB)),
|
new SkillChallengeClue("Fix a magical lamp in Dorgesh-Kaan.", item(ItemID.LIGHT_ORB)),
|
||||||
new SkillChallengeClue("Burn a yew log.", item(ItemID.YEW_LOGS), item(ItemID.TINDERBOX)),
|
new SkillChallengeClue("Burn a yew log.", item(ItemID.YEW_LOGS), item(ItemID.TINDERBOX)),
|
||||||
new SkillChallengeClue("Cook a swordfish", "cook a swordfish", item(ItemID.RAW_SWORDFISH)),
|
new SkillChallengeClue("Cook a swordfish", "cook a swordfish", item(ItemID.RAW_SWORDFISH)),
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
package net.runelite.client.plugins.combatcounter;
|
package net.runelite.client.plugins.combatcounter;
|
||||||
|
|
||||||
|
import java.awt.Color;
|
||||||
import net.runelite.client.config.Alpha;
|
import net.runelite.client.config.Alpha;
|
||||||
import net.runelite.client.config.Config;
|
import net.runelite.client.config.Config;
|
||||||
import net.runelite.client.config.ConfigGroup;
|
import net.runelite.client.config.ConfigGroup;
|
||||||
import net.runelite.client.config.ConfigItem;
|
import net.runelite.client.config.ConfigItem;
|
||||||
|
|
||||||
import java.awt.*;
|
|
||||||
import net.runelite.client.config.ConfigTitleSection;
|
import net.runelite.client.config.ConfigTitleSection;
|
||||||
import net.runelite.client.config.Title;
|
import net.runelite.client.config.Title;
|
||||||
|
|
||||||
|
|||||||
@@ -48,7 +48,6 @@ import net.runelite.client.events.ConfigChanged;
|
|||||||
import net.runelite.api.events.GameStateChanged;
|
import net.runelite.api.events.GameStateChanged;
|
||||||
import net.runelite.api.events.GameTick;
|
import net.runelite.api.events.GameTick;
|
||||||
import net.runelite.api.events.ItemDespawned;
|
import net.runelite.api.events.ItemDespawned;
|
||||||
import net.runelite.api.events.LocalPlayerDeath;
|
|
||||||
import net.runelite.api.events.MenuEntryAdded;
|
import net.runelite.api.events.MenuEntryAdded;
|
||||||
import net.runelite.api.events.MenuOpened;
|
import net.runelite.api.events.MenuOpened;
|
||||||
import net.runelite.api.events.MenuOptionClicked;
|
import net.runelite.api.events.MenuOptionClicked;
|
||||||
@@ -80,6 +79,7 @@ public class DeathIndicatorPlugin extends Plugin
|
|||||||
static final int HIJACKED_ITEMID = 0x69696969;
|
static final int HIJACKED_ITEMID = 0x69696969;
|
||||||
|
|
||||||
private static final Set<Integer> RESPAWN_REGIONS = ImmutableSet.of(
|
private static final Set<Integer> RESPAWN_REGIONS = ImmutableSet.of(
|
||||||
|
6457, // Kourend
|
||||||
12850, // Lumbridge
|
12850, // Lumbridge
|
||||||
11828, // Falador
|
11828, // Falador
|
||||||
12342, // Edgeville
|
12342, // Edgeville
|
||||||
@@ -197,7 +197,7 @@ public class DeathIndicatorPlugin extends Plugin
|
|||||||
private void addSubscriptions()
|
private void addSubscriptions()
|
||||||
{
|
{
|
||||||
eventBus.subscribe(ConfigChanged.class, this, this::onConfigChanged);
|
eventBus.subscribe(ConfigChanged.class, this, this::onConfigChanged);
|
||||||
eventBus.subscribe(LocalPlayerDeath.class, this, this::onLocalPlayerDeath);
|
eventBus.subscribe(PlayerDeath.class, this, this::onPlayerDeath);
|
||||||
eventBus.subscribe(GameTick.class, this, this::onGameTick);
|
eventBus.subscribe(GameTick.class, this, this::onGameTick);
|
||||||
eventBus.subscribe(GameStateChanged.class, this, this::onGameStateChanged);
|
eventBus.subscribe(GameStateChanged.class, this, this::onGameStateChanged);
|
||||||
if (config.permaBones())
|
if (config.permaBones())
|
||||||
@@ -209,7 +209,6 @@ public class DeathIndicatorPlugin extends Plugin
|
|||||||
private void addBoneSubs()
|
private void addBoneSubs()
|
||||||
{
|
{
|
||||||
eventBus.subscribe(ItemDespawned.class, BONES, this::onItemDespawn);
|
eventBus.subscribe(ItemDespawned.class, BONES, this::onItemDespawn);
|
||||||
eventBus.subscribe(PlayerDeath.class, BONES, this::onPlayerDeath);
|
|
||||||
eventBus.subscribe(MenuEntryAdded.class, BONES, this::onMenuEntryAdded);
|
eventBus.subscribe(MenuEntryAdded.class, BONES, this::onMenuEntryAdded);
|
||||||
eventBus.subscribe(MenuOptionClicked.class, BONES, this::onMenuOptionClicked);
|
eventBus.subscribe(MenuOptionClicked.class, BONES, this::onMenuOptionClicked);
|
||||||
eventBus.subscribe(MenuOpened.class, BONES, this::onMenuOpened);
|
eventBus.subscribe(MenuOpened.class, BONES, this::onMenuOpened);
|
||||||
@@ -230,7 +229,26 @@ public class DeathIndicatorPlugin extends Plugin
|
|||||||
|
|
||||||
private void onPlayerDeath(PlayerDeath death)
|
private void onPlayerDeath(PlayerDeath death)
|
||||||
{
|
{
|
||||||
newBoneFor(death.getPlayer());
|
if (client.isInInstancedRegion())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
final Player player = death.getPlayer();
|
||||||
|
|
||||||
|
if (config.permaBones() && player.getWorldLocation().getRegionID() != 13362)
|
||||||
|
{
|
||||||
|
newBoneFor(player);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (player != client.getLocalPlayer())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
lastDeath = player.getWorldLocation();
|
||||||
|
lastDeathWorld = client.getWorld();
|
||||||
|
lastDeathTime = Instant.now();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void newBoneFor(Player player)
|
private void newBoneFor(Player player)
|
||||||
@@ -301,24 +319,6 @@ public class DeathIndicatorPlugin extends Plugin
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void onLocalPlayerDeath(LocalPlayerDeath death)
|
|
||||||
{
|
|
||||||
if (client.isInInstancedRegion())
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
Player lp = client.getLocalPlayer();
|
|
||||||
if (config.permaBones())
|
|
||||||
{
|
|
||||||
newBoneFor(lp);
|
|
||||||
}
|
|
||||||
|
|
||||||
lastDeath = lp.getWorldLocation();
|
|
||||||
lastDeathWorld = client.getWorld();
|
|
||||||
lastDeathTime = Instant.now();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void onGameTick(GameTick event)
|
private void onGameTick(GameTick event)
|
||||||
{
|
{
|
||||||
// Check if player respawned in a death respawn location
|
// Check if player respawned in a death respawn location
|
||||||
|
|||||||
@@ -28,9 +28,11 @@ import net.runelite.client.config.Config;
|
|||||||
import net.runelite.client.config.ConfigGroup;
|
import net.runelite.client.config.ConfigGroup;
|
||||||
import net.runelite.client.config.ConfigItem;
|
import net.runelite.client.config.ConfigItem;
|
||||||
|
|
||||||
@ConfigGroup("defaultworld")
|
@ConfigGroup(DefaultWorldConfig.GROUP)
|
||||||
public interface DefaultWorldConfig extends Config
|
public interface DefaultWorldConfig extends Config
|
||||||
{
|
{
|
||||||
|
final String GROUP = "defaultworld";
|
||||||
|
|
||||||
@ConfigItem(
|
@ConfigItem(
|
||||||
keyName = "defaultWorld",
|
keyName = "defaultWorld",
|
||||||
name = "Default world",
|
name = "Default world",
|
||||||
@@ -40,4 +42,32 @@ public interface DefaultWorldConfig extends Config
|
|||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "useLastWorld",
|
||||||
|
name = "Use Last World",
|
||||||
|
description = "Use the last world you used as the default"
|
||||||
|
)
|
||||||
|
default boolean useLastWorld()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "lastWorld",
|
||||||
|
name = "",
|
||||||
|
description = "",
|
||||||
|
hidden = true
|
||||||
|
)
|
||||||
|
default int lastWorld()
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "lastWorld",
|
||||||
|
name = "",
|
||||||
|
description = ""
|
||||||
|
)
|
||||||
|
void lastWorld(int lastWorld);
|
||||||
}
|
}
|
||||||
@@ -107,6 +107,11 @@ public class DefaultWorldPlugin extends Plugin
|
|||||||
|
|
||||||
private void onGameStateChanged(GameStateChanged event)
|
private void onGameStateChanged(GameStateChanged event)
|
||||||
{
|
{
|
||||||
|
if (event.getGameState() == GameState.LOGGED_IN)
|
||||||
|
{
|
||||||
|
config.lastWorld(client.getWorld());
|
||||||
|
}
|
||||||
|
|
||||||
applyWorld();
|
applyWorld();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -170,7 +175,7 @@ public class DefaultWorldPlugin extends Plugin
|
|||||||
log.debug("Stored old world {}", worldCache);
|
log.debug("Stored old world {}", worldCache);
|
||||||
}
|
}
|
||||||
|
|
||||||
final int newWorld = config.getWorld();
|
final int newWorld = !config.useLastWorld() ? config.getWorld() : config.lastWorld();
|
||||||
changeWorld(newWorld);
|
changeWorld(newWorld);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -79,7 +79,12 @@ enum Emoji
|
|||||||
PARTY_POPPER("@@@"),
|
PARTY_POPPER("@@@"),
|
||||||
EYES("O.O"),
|
EYES("O.O"),
|
||||||
SWEAT(";;"),
|
SWEAT(";;"),
|
||||||
PILE_OF_POO("~@~");
|
PILE_OF_POO("~@~"),
|
||||||
|
FIRE("(/\\)"),
|
||||||
|
ALIEN("(@.@)"),
|
||||||
|
EGGPLANT("8=D"),
|
||||||
|
WAVE("(^_^)/"),
|
||||||
|
HEART_EYES("(*.*)");
|
||||||
|
|
||||||
private static final Map<String, Emoji> emojiMap;
|
private static final Map<String, Emoji> emojiMap;
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.plugins.equipmentinspector;
|
package net.runelite.client.plugins.equipmentinspector;
|
||||||
|
|
||||||
|
|
||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ import net.runelite.api.Skill;
|
|||||||
import net.runelite.api.SpriteID;
|
import net.runelite.api.SpriteID;
|
||||||
import net.runelite.api.Varbits;
|
import net.runelite.api.Varbits;
|
||||||
import net.runelite.api.WorldType;
|
import net.runelite.api.WorldType;
|
||||||
|
import net.runelite.api.events.FakeXpDrop;
|
||||||
import net.runelite.api.events.GameStateChanged;
|
import net.runelite.api.events.GameStateChanged;
|
||||||
import net.runelite.api.events.GameTick;
|
import net.runelite.api.events.GameTick;
|
||||||
import net.runelite.api.events.ScriptCallbackEvent;
|
import net.runelite.api.events.ScriptCallbackEvent;
|
||||||
@@ -145,6 +146,7 @@ public class XpDropPlugin extends Plugin
|
|||||||
eventBus.subscribe(GameTick.class, this, this::onGameTick);
|
eventBus.subscribe(GameTick.class, this, this::onGameTick);
|
||||||
eventBus.subscribe(XpDropEvent.class, this, this::onXpDropEvent);
|
eventBus.subscribe(XpDropEvent.class, this, this::onXpDropEvent);
|
||||||
eventBus.subscribe(ScriptCallbackEvent.class, this, this::onScriptCallbackEvent);
|
eventBus.subscribe(ScriptCallbackEvent.class, this, this::onScriptCallbackEvent);
|
||||||
|
eventBus.subscribe(FakeXpDrop.class, this, this::onFakeXpDrop);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void onXpDropEvent(XpDropEvent event)
|
private void onXpDropEvent(XpDropEvent event)
|
||||||
@@ -351,6 +353,14 @@ public class XpDropPlugin extends Plugin
|
|||||||
client.runScript(XPDROP_DISABLED, lastSkill.ordinal(), previousExpGained);
|
client.runScript(XPDROP_DISABLED, lastSkill.ordinal(), previousExpGained);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void onFakeXpDrop(FakeXpDrop fakeXpDrop)
|
||||||
|
{
|
||||||
|
if (fakeXpDrop.getSkill() == Skill.HITPOINTS)
|
||||||
|
{
|
||||||
|
calculateDamageDealt(fakeXpDrop.getXp());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void onScriptCallbackEvent(ScriptCallbackEvent e)
|
private void onScriptCallbackEvent(ScriptCallbackEvent e)
|
||||||
{
|
{
|
||||||
if (this.showdamagedrops == XpDropConfig.DamageMode.NONE)
|
if (this.showdamagedrops == XpDropConfig.DamageMode.NONE)
|
||||||
@@ -364,21 +374,6 @@ public class XpDropPlugin extends Plugin
|
|||||||
{
|
{
|
||||||
damage = 0;
|
damage = 0;
|
||||||
}
|
}
|
||||||
// Handles Fake XP drops (Ironman, DMM Cap, 200m xp, etc)
|
|
||||||
else if (eventName.equals("fakeXpDrop"))
|
|
||||||
{
|
|
||||||
final int[] intStack = client.getIntStack();
|
|
||||||
final int intStackSize = client.getIntStackSize();
|
|
||||||
|
|
||||||
final int skillId = intStack[intStackSize - 2];
|
|
||||||
final Skill skill = Skill.values()[skillId];
|
|
||||||
|
|
||||||
if (skill.equals(Skill.HITPOINTS))
|
|
||||||
{
|
|
||||||
final int exp = intStack[intStackSize - 1];
|
|
||||||
calculateDamageDealt(exp);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (eventName.equals("hpXpGained"))
|
else if (eventName.equals("hpXpGained"))
|
||||||
{
|
{
|
||||||
final int[] intStack = client.getIntStack();
|
final int[] intStack = client.getIntStack();
|
||||||
|
|||||||
@@ -40,8 +40,8 @@ import net.runelite.api.WorldType;
|
|||||||
import net.runelite.api.coords.WorldPoint;
|
import net.runelite.api.coords.WorldPoint;
|
||||||
import net.runelite.api.events.ChatMessage;
|
import net.runelite.api.events.ChatMessage;
|
||||||
import net.runelite.api.events.GameTick;
|
import net.runelite.api.events.GameTick;
|
||||||
import net.runelite.api.events.LocalPlayerDeath;
|
|
||||||
import net.runelite.api.events.NpcDespawned;
|
import net.runelite.api.events.NpcDespawned;
|
||||||
|
import net.runelite.api.events.PlayerDeath;
|
||||||
import net.runelite.api.events.SpotAnimationChanged;
|
import net.runelite.api.events.SpotAnimationChanged;
|
||||||
import net.runelite.client.config.ConfigManager;
|
import net.runelite.client.config.ConfigManager;
|
||||||
import net.runelite.client.eventbus.EventBus;
|
import net.runelite.client.eventbus.EventBus;
|
||||||
@@ -125,7 +125,7 @@ public class FreezeTimersPlugin extends Plugin
|
|||||||
eventBus.subscribe(ConfigChanged.class, this, this::onConfigChanged);
|
eventBus.subscribe(ConfigChanged.class, this, this::onConfigChanged);
|
||||||
eventBus.subscribe(SpotAnimationChanged.class, this, this::onSpotAnimationChanged);
|
eventBus.subscribe(SpotAnimationChanged.class, this, this::onSpotAnimationChanged);
|
||||||
eventBus.subscribe(GameTick.class, this, this::onGameTick);
|
eventBus.subscribe(GameTick.class, this, this::onGameTick);
|
||||||
eventBus.subscribe(LocalPlayerDeath.class, this, this::onLocalPlayerDeath);
|
eventBus.subscribe(PlayerDeath.class, this, this::onPlayerDeath);
|
||||||
eventBus.subscribe(NpcDespawned.class, this, this::onNpcDespawned);
|
eventBus.subscribe(NpcDespawned.class, this, this::onNpcDespawned);
|
||||||
eventBus.subscribe(ChatMessage.class, this, this::onChatMessage);
|
eventBus.subscribe(ChatMessage.class, this, this::onChatMessage);
|
||||||
}
|
}
|
||||||
@@ -207,7 +207,7 @@ public class FreezeTimersPlugin extends Plugin
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void onLocalPlayerDeath(LocalPlayerDeath event)
|
private void onPlayerDeath(PlayerDeath event)
|
||||||
{
|
{
|
||||||
final Player localPlayer = client.getLocalPlayer();
|
final Player localPlayer = client.getLocalPlayer();
|
||||||
final long currentTime = System.currentTimeMillis();
|
final long currentTime = System.currentTimeMillis();
|
||||||
|
|||||||
@@ -108,9 +108,7 @@ public class GrandExchangePlugin extends Plugin
|
|||||||
private static final OSBGrandExchangeClient CLIENT = new OSBGrandExchangeClient();
|
private static final OSBGrandExchangeClient CLIENT = new OSBGrandExchangeClient();
|
||||||
private static final String OSB_GE_TEXT = "<br>OSBuddy Actively traded price: ";
|
private static final String OSB_GE_TEXT = "<br>OSBuddy Actively traded price: ";
|
||||||
private static final String BUY_LIMIT_GE_TEXT = "<br>Buy limit: ";
|
private static final String BUY_LIMIT_GE_TEXT = "<br>Buy limit: ";
|
||||||
private static final TypeToken<Map<Integer, Integer>> BUY_LIMIT_TOKEN = new TypeToken<Map<Integer, Integer>>()
|
private static final TypeToken<Map<Integer, Integer>> BUY_LIMIT_TOKEN = new TypeToken<Map<Integer, Integer>>() {};
|
||||||
{
|
|
||||||
};
|
|
||||||
@Getter(AccessLevel.PACKAGE)
|
@Getter(AccessLevel.PACKAGE)
|
||||||
private NavigationButton button;
|
private NavigationButton button;
|
||||||
|
|
||||||
|
|||||||
@@ -108,6 +108,7 @@ class GrandExchangeSearchPanel extends JPanel
|
|||||||
searchBar.setBackground(ColorScheme.DARKER_GRAY_COLOR);
|
searchBar.setBackground(ColorScheme.DARKER_GRAY_COLOR);
|
||||||
searchBar.setHoverBackgroundColor(ColorScheme.DARK_GRAY_HOVER_COLOR);
|
searchBar.setHoverBackgroundColor(ColorScheme.DARK_GRAY_HOVER_COLOR);
|
||||||
searchBar.addActionListener(e -> executor.execute(() -> priceLookup(false)));
|
searchBar.addActionListener(e -> executor.execute(() -> priceLookup(false)));
|
||||||
|
searchBar.addClearListener(e -> updateSearch());
|
||||||
|
|
||||||
searchItemsPanel.setLayout(new GridBagLayout());
|
searchItemsPanel.setLayout(new GridBagLayout());
|
||||||
searchItemsPanel.setBackground(ColorScheme.DARK_GRAY_COLOR);
|
searchItemsPanel.setBackground(ColorScheme.DARK_GRAY_COLOR);
|
||||||
@@ -154,7 +155,7 @@ class GrandExchangeSearchPanel extends JPanel
|
|||||||
executor.execute(() -> priceLookup(true));
|
executor.execute(() -> priceLookup(true));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void priceLookup(boolean exactMatch)
|
private boolean updateSearch()
|
||||||
{
|
{
|
||||||
String lookup = searchBar.getText();
|
String lookup = searchBar.getText();
|
||||||
|
|
||||||
@@ -162,7 +163,7 @@ class GrandExchangeSearchPanel extends JPanel
|
|||||||
{
|
{
|
||||||
searchItemsPanel.removeAll();
|
searchItemsPanel.removeAll();
|
||||||
SwingUtilities.invokeLater(searchItemsPanel::updateUI);
|
SwingUtilities.invokeLater(searchItemsPanel::updateUI);
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Input is not empty, add searching label
|
// Input is not empty, add searching label
|
||||||
@@ -170,8 +171,17 @@ class GrandExchangeSearchPanel extends JPanel
|
|||||||
searchBar.setBackground(ColorScheme.DARKER_GRAY_COLOR);
|
searchBar.setBackground(ColorScheme.DARKER_GRAY_COLOR);
|
||||||
searchBar.setEditable(false);
|
searchBar.setEditable(false);
|
||||||
searchBar.setIcon(IconTextField.Icon.LOADING);
|
searchBar.setIcon(IconTextField.Icon.LOADING);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
List<ItemPrice> result = itemManager.search(lookup);
|
private void priceLookup(boolean exactMatch)
|
||||||
|
{
|
||||||
|
if (!updateSearch())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
List<ItemPrice> result = itemManager.search(searchBar.getText());
|
||||||
if (result.isEmpty())
|
if (result.isEmpty())
|
||||||
{
|
{
|
||||||
searchBar.setIcon(IconTextField.Icon.ERROR);
|
searchBar.setIcon(IconTextField.Icon.ERROR);
|
||||||
@@ -182,7 +192,7 @@ class GrandExchangeSearchPanel extends JPanel
|
|||||||
}
|
}
|
||||||
|
|
||||||
// move to client thread to lookup item composition
|
// move to client thread to lookup item composition
|
||||||
clientThread.invokeLater(() -> processResult(result, lookup, exactMatch));
|
clientThread.invokeLater(() -> processResult(result, searchBar.getText(), exactMatch));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processResult(List<ItemPrice> result, String lookup, boolean exactMatch)
|
private void processResult(List<ItemPrice> result, String lookup, boolean exactMatch)
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user