hmmmm maybe not supposed to include these bin folders, ..... guess we'll find out later
Some checks failed
OpenOSRS - CI (push) / Build (push) Has been cancelled
OpenOSRS - CI (push) / Test (push) Has been cancelled
OpenOSRS - CI (push) / Checkstyle main (push) Has been cancelled
OpenOSRS - CI (push) / Checkstyle test (push) Has been cancelled
OpenOSRS - Stale issues and PRs / stale (push) Has been cancelled
OpenOSRS - Scraper / scrape-npcs (push) Has been cancelled
OpenOSRS - Gradle Dependencies / update-wrapper (push) Has been cancelled

This commit is contained in:
Ra
2025-09-12 04:23:42 -07:00
parent 915fb55c0a
commit 3a035fc9e0
3489 changed files with 20399 additions and 53 deletions

View File

@@ -0,0 +1,73 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE RSyntaxTheme SYSTEM "theme.dtd">
<RSyntaxTheme version="1.0">
<!-- General editor colors. -->
<background color="2B2B2B"/>
<caret color="BBBBBB"/>
<selection useFG="false" bg="214283" roundedEdges="false"/>
<currentLineHighlight color="323232" fade="false"/>
<marginLine fg="394448"/>
<markAllHighlight color="155221"/>
<markOccurrencesHighlight color="32593D" border="true"/>
<matchedBracket fg="A9B7C6" bg="2E2E2E" highlightBoth="true" animate="true"/><!--ij draws a border-->
<hyperlinks fg="287BDE"/>
<secondaryLanguages>
<language index="1" bg="333344"/>
<language index="2" bg="223322"/>
<language index="3" bg="332222"/>
</secondaryLanguages>
<!-- Gutter styling. -->
<gutterBorder color="606366"/>
<lineNumbers fg="606366"/>
<foldIndicator fg="6A8088" iconBg="2f383c" iconArmedBg="3f484c"/>
<iconRowHeader activeLineRange="878787"/>
<!-- Syntax tokens. -->
<tokenStyles>
<style token="IDENTIFIER" fg="A9B7C6"/>
<style token="RESERVED_WORD" fg="CC7832" bold="false"/>
<style token="RESERVED_WORD_2" fg="CC7832" bold="false"/>
<style token="ANNOTATION" fg="BBB529"/>
<style token="COMMENT_DOCUMENTATION" fg="629755"/>
<style token="COMMENT_EOL" fg="808080"/>
<style token="COMMENT_MULTILINE" fg="808080"/>
<style token="COMMENT_KEYWORD" fg="629755"/>
<style token="COMMENT_MARKUP" fg="77B767"/>
<style token="FUNCTION" fg="A9B7C6"/><!-- any identifier magically known -->
<style token="DATA_TYPE" fg="CC7832" bold="false"/>
<style token="LITERAL_BOOLEAN" fg="CC7832" bold="false"/>
<style token="LITERAL_NUMBER_DECIMAL_INT" fg="6897BB"/>
<style token="LITERAL_NUMBER_FLOAT" fg="6897BB"/>
<style token="LITERAL_NUMBER_HEXADECIMAL" fg="6897BB"/>
<style token="LITERAL_STRING_DOUBLE_QUOTE" fg="6A8759"/>
<style token="LITERAL_CHAR" fg="6A8759"/>
<style token="LITERAL_BACKQUOTE" fg="6A8759"/>
<!-- all wrong but nobody will write xml in this -->
<style token="MARKUP_TAG_DELIMITER" fg="F92672"/>
<style token="MARKUP_TAG_NAME" fg="ABBFD3" bold="true"/>
<style token="MARKUP_TAG_ATTRIBUTE" fg="B3B689"/>
<style token="MARKUP_TAG_ATTRIBUTE_VALUE" fg="e1e2cf"/>
<style token="MARKUP_COMMENT" fg="878787"/>
<style token="MARKUP_DTD" fg="A082BD"/>
<style token="MARKUP_PROCESSING_INSTRUCTION" fg="A082BD"/>
<style token="MARKUP_CDATA" fg="d5e6f0"/>
<style token="MARKUP_CDATA_DELIMITER" fg="FD971F"/>
<style token="MARKUP_ENTITY_REFERENCE" fg="F92672"/>
<style token="OPERATOR" fg="A9B7C6"/>
<style token="PREPROCESSOR" fg="A082BD"/>
<style token="REGEX" fg="6A8759"/>
<style token="SEPARATOR" fg="A9B7C6"/>
<style token="VARIABLE" fg="A9B7C6" bold="false"/>
<style token="WHITESPACE" fg="606060"/>
<style token="ERROR_IDENTIFIER" fg="F9F9F9" bg="d82323"/>
<style token="ERROR_NUMBER_FORMAT" fg="F9F9F9" bg="d82323"/>
<style token="ERROR_STRING_DOUBLE" fg="F9F9F9" bg="d82323"/>
<style token="ERROR_CHAR" fg="F9F9F9" bg="d82323"/>
</tokenStyles>
</RSyntaxTheme>

View File

@@ -0,0 +1,8 @@
// Welcome to the OpenOSRS Development Shell
// Everything executed here runs on the client thread by default.
// By default client, clientThread, configManager and log are in scope
// You can subscribe to the Event Bus by using subscribe(Event.class, ev -> handler);
// and you can access things in the global injector module with var thing = inject(Thing.class);
// Press Ctrl+R or F10 to execute the contents of this editor
log.info("Hello {}", client.getGameState());

View File

@@ -0,0 +1,68 @@
/*
* Copyright (c) 2021 Abex
* 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.
*/
import java.util.function.Consumer;
import net.runelite.client.callback.ClientThread;
import net.runelite.client.config.ConfigManager;
import org.slf4j.Logger;
import java.util.*;
import java.util.stream.*;
import net.runelite.api.*;
import net.runelite.api.coords.*;
import net.runelite.api.events.*;
import net.runelite.api.widgets.*;
import net.runelite.client.events.*;
import net.runelite.client.game.*;
var $PANEL = net.runelite.jshell.ShellPanel.INSTANCE;
Logger log = $PANEL.getShellLogger();
static <T> T inject(Class<T> clazz)
{
return $PANEL.inject(clazz);
}
static void cleanup(Runnable r)
{
$PANEL.cleanup(r);
}
var $EVENT_BUS = inject(net.runelite.client.eventbus.EventBus.class);
static <T> void subscribe(Class<T> eventType, Consumer<T> subscriber, float priority)
{
var sub = $EVENT_BUS.register(eventType, subscriber, priority);
cleanup(() -> $EVENT_BUS.unregister(sub));
}
static <T> void subscribe(Class<T> eventType, Consumer<T> subscriber)
{
var sub = $EVENT_BUS.register(eventType, subscriber, 0.f);
cleanup(() -> $EVENT_BUS.unregister(sub));
}
var client = inject(Client.class);
var clientThread = inject(ClientThread.class);
var configManager = inject(ConfigManager.class);