runeliteplus: adds preliminary Gradle support
This commit is contained in:
22
cache/build.gradle
vendored
Normal file
22
cache/build.gradle
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
|
||||
description = 'Cache'
|
||||
dependencies {
|
||||
compile project(':http-api')
|
||||
compile group: 'com.google.guava', name: 'guava', version:'28.0-jre'
|
||||
compile group: 'org.slf4j', name: 'slf4j-api', version:'1.7.25'
|
||||
compile group: 'org.apache.commons', name: 'commons-compress', version:'1.18'
|
||||
compile group: 'com.google.code.gson', name: 'gson', version:'2.8.5'
|
||||
compile group: 'io.netty', name: 'netty-buffer', version:'4.1.37.Final'
|
||||
compile group: 'org.antlr', name: 'antlr4-runtime', version:'4.6'
|
||||
compile group: 'commons-cli', name: 'commons-cli', version:'1.4'
|
||||
testCompile group: 'junit', name: 'junit', version:'4.12'
|
||||
testCompile group: 'org.slf4j', name: 'slf4j-simple', version:'1.7.26'
|
||||
testCompile group: 'net.runelite.rs', name: 'cache', version:'165'
|
||||
compileOnly group: 'org.projectlombok', name: 'lombok', version:'1.18.8'
|
||||
}
|
||||
|
||||
task packageTests(type: Jar) {
|
||||
from sourceSets.test.output
|
||||
classifier = 'tests'
|
||||
}
|
||||
artifacts.archives packageTests
|
||||
339
cache/src/main/java/net/runelite/cache/script/assembler/rs2asmBaseListener.java
vendored
Normal file
339
cache/src/main/java/net/runelite/cache/script/assembler/rs2asmBaseListener.java
vendored
Normal file
@@ -0,0 +1,339 @@
|
||||
// Generated from net\runelite\cache\script\assembler\rs2asm.g4 by ANTLR 4.6
|
||||
package net.runelite.cache.script.assembler;
|
||||
|
||||
import org.antlr.v4.runtime.ParserRuleContext;
|
||||
import org.antlr.v4.runtime.tree.ErrorNode;
|
||||
import org.antlr.v4.runtime.tree.TerminalNode;
|
||||
|
||||
/**
|
||||
* This class provides an empty implementation of {@link rs2asmListener},
|
||||
* which can be extended to create a listener which only needs to handle a subset
|
||||
* of the available methods.
|
||||
*/
|
||||
public class rs2asmBaseListener implements rs2asmListener {
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterProg(rs2asmParser.ProgContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitProg(rs2asmParser.ProgContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterHeader(rs2asmParser.HeaderContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitHeader(rs2asmParser.HeaderContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterId(rs2asmParser.IdContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitId(rs2asmParser.IdContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterInt_stack_count(rs2asmParser.Int_stack_countContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitInt_stack_count(rs2asmParser.Int_stack_countContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterString_stack_count(rs2asmParser.String_stack_countContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitString_stack_count(rs2asmParser.String_stack_countContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterInt_var_count(rs2asmParser.Int_var_countContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitInt_var_count(rs2asmParser.Int_var_countContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterString_var_count(rs2asmParser.String_var_countContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitString_var_count(rs2asmParser.String_var_countContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterId_value(rs2asmParser.Id_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitId_value(rs2asmParser.Id_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterInt_stack_value(rs2asmParser.Int_stack_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitInt_stack_value(rs2asmParser.Int_stack_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterString_stack_value(rs2asmParser.String_stack_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitString_stack_value(rs2asmParser.String_stack_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterInt_var_value(rs2asmParser.Int_var_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitInt_var_value(rs2asmParser.Int_var_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterString_var_value(rs2asmParser.String_var_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitString_var_value(rs2asmParser.String_var_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterLine(rs2asmParser.LineContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitLine(rs2asmParser.LineContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterInstruction(rs2asmParser.InstructionContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitInstruction(rs2asmParser.InstructionContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterLabel(rs2asmParser.LabelContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitLabel(rs2asmParser.LabelContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterInstruction_name(rs2asmParser.Instruction_nameContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitInstruction_name(rs2asmParser.Instruction_nameContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterName_string(rs2asmParser.Name_stringContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitName_string(rs2asmParser.Name_stringContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterName_opcode(rs2asmParser.Name_opcodeContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitName_opcode(rs2asmParser.Name_opcodeContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterInstruction_operand(rs2asmParser.Instruction_operandContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitInstruction_operand(rs2asmParser.Instruction_operandContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterOperand_int(rs2asmParser.Operand_intContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitOperand_int(rs2asmParser.Operand_intContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterOperand_qstring(rs2asmParser.Operand_qstringContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitOperand_qstring(rs2asmParser.Operand_qstringContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterOperand_label(rs2asmParser.Operand_labelContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitOperand_label(rs2asmParser.Operand_labelContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterSwitch_lookup(rs2asmParser.Switch_lookupContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitSwitch_lookup(rs2asmParser.Switch_lookupContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterSwitch_key(rs2asmParser.Switch_keyContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitSwitch_key(rs2asmParser.Switch_keyContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterSwitch_value(rs2asmParser.Switch_valueContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitSwitch_value(rs2asmParser.Switch_valueContext ctx) { }
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterEveryRule(ParserRuleContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitEveryRule(ParserRuleContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void visitTerminal(TerminalNode node) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void visitErrorNode(ErrorNode node) { }
|
||||
}
|
||||
146
cache/src/main/java/net/runelite/cache/script/assembler/rs2asmLexer.java
vendored
Normal file
146
cache/src/main/java/net/runelite/cache/script/assembler/rs2asmLexer.java
vendored
Normal file
@@ -0,0 +1,146 @@
|
||||
// Generated from net\runelite\cache\script\assembler\rs2asm.g4 by ANTLR 4.6
|
||||
package net.runelite.cache.script.assembler;
|
||||
|
||||
import org.antlr.v4.runtime.CharStream;
|
||||
import org.antlr.v4.runtime.Lexer;
|
||||
import org.antlr.v4.runtime.RuntimeMetaData;
|
||||
import org.antlr.v4.runtime.Vocabulary;
|
||||
import org.antlr.v4.runtime.VocabularyImpl;
|
||||
import org.antlr.v4.runtime.atn.ATN;
|
||||
import org.antlr.v4.runtime.atn.ATNDeserializer;
|
||||
import org.antlr.v4.runtime.atn.LexerATNSimulator;
|
||||
import org.antlr.v4.runtime.atn.PredictionContextCache;
|
||||
import org.antlr.v4.runtime.dfa.DFA;
|
||||
|
||||
@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"})
|
||||
public class rs2asmLexer extends Lexer {
|
||||
static { RuntimeMetaData.checkVersion("4.6", RuntimeMetaData.VERSION); }
|
||||
|
||||
protected static final DFA[] _decisionToDFA;
|
||||
protected static final PredictionContextCache _sharedContextCache =
|
||||
new PredictionContextCache();
|
||||
public static final int
|
||||
T__0=1, T__1=2, T__2=3, T__3=4, T__4=5, T__5=6, NEWLINE=7, INT=8, QSTRING=9,
|
||||
IDENTIFIER=10, COMMENT=11, WS=12;
|
||||
public static String[] modeNames = {
|
||||
"DEFAULT_MODE"
|
||||
};
|
||||
|
||||
public static final String[] ruleNames = {
|
||||
"T__0", "T__1", "T__2", "T__3", "T__4", "T__5", "NEWLINE", "INT", "QSTRING",
|
||||
"IDENTIFIER", "COMMENT", "WS"
|
||||
};
|
||||
|
||||
private static final String[] _LITERAL_NAMES = {
|
||||
null, "'.id '", "'.int_stack_count '", "'.string_stack_count '", "'.int_var_count '",
|
||||
"'.string_var_count '", "':'"
|
||||
};
|
||||
private static final String[] _SYMBOLIC_NAMES = {
|
||||
null, null, null, null, null, null, null, "NEWLINE", "INT", "QSTRING",
|
||||
"IDENTIFIER", "COMMENT", "WS"
|
||||
};
|
||||
public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES);
|
||||
|
||||
/**
|
||||
* @deprecated Use {@link #VOCABULARY} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public static final String[] tokenNames;
|
||||
static {
|
||||
tokenNames = new String[_SYMBOLIC_NAMES.length];
|
||||
for (int i = 0; i < tokenNames.length; i++) {
|
||||
tokenNames[i] = VOCABULARY.getLiteralName(i);
|
||||
if (tokenNames[i] == null) {
|
||||
tokenNames[i] = VOCABULARY.getSymbolicName(i);
|
||||
}
|
||||
|
||||
if (tokenNames[i] == null) {
|
||||
tokenNames[i] = "<INVALID>";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Deprecated
|
||||
public String[] getTokenNames() {
|
||||
return tokenNames;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
public Vocabulary getVocabulary() {
|
||||
return VOCABULARY;
|
||||
}
|
||||
|
||||
|
||||
public rs2asmLexer(CharStream input) {
|
||||
super(input);
|
||||
_interp = new LexerATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getGrammarFileName() { return "rs2asm.g4"; }
|
||||
|
||||
@Override
|
||||
public String[] getRuleNames() { return ruleNames; }
|
||||
|
||||
@Override
|
||||
public String getSerializedATN() { return _serializedATN; }
|
||||
|
||||
@Override
|
||||
public String[] getModeNames() { return modeNames; }
|
||||
|
||||
@Override
|
||||
public ATN getATN() { return _ATN; }
|
||||
|
||||
public static final String _serializedATN =
|
||||
"\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\2\16\u0099\b\1\4\2"+
|
||||
"\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4"+
|
||||
"\13\t\13\4\f\t\f\4\r\t\r\3\2\3\2\3\2\3\2\3\2\3\3\3\3\3\3\3\3\3\3\3\3\3"+
|
||||
"\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\4\3\4\3\4\3\4\3\4\3\4"+
|
||||
"\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\5\3\5\3"+
|
||||
"\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\6\3\6\3\6\3\6"+
|
||||
"\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\7\3\7\3"+
|
||||
"\b\6\bn\n\b\r\b\16\bo\3\t\5\ts\n\t\3\t\6\tv\n\t\r\t\16\tw\3\n\3\n\3\n"+
|
||||
"\3\n\7\n~\n\n\f\n\16\n\u0081\13\n\3\n\3\n\3\13\6\13\u0086\n\13\r\13\16"+
|
||||
"\13\u0087\3\f\3\f\7\f\u008c\n\f\f\f\16\f\u008f\13\f\3\f\3\f\3\r\6\r\u0094"+
|
||||
"\n\r\r\r\16\r\u0095\3\r\3\r\2\2\16\3\3\5\4\7\5\t\6\13\7\r\b\17\t\21\n"+
|
||||
"\23\13\25\f\27\r\31\16\3\2\b\4\2\f\f\17\17\3\2\62;\6\2\f\f\17\17$$^^\4"+
|
||||
"\2$$^^\6\2\62;C\\aac|\4\2\13\13\"\"\u00a0\2\3\3\2\2\2\2\5\3\2\2\2\2\7"+
|
||||
"\3\2\2\2\2\t\3\2\2\2\2\13\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2"+
|
||||
"\2\2\23\3\2\2\2\2\25\3\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2\3\33\3\2\2\2\5"+
|
||||
" \3\2\2\2\7\62\3\2\2\2\tG\3\2\2\2\13W\3\2\2\2\rj\3\2\2\2\17m\3\2\2\2\21"+
|
||||
"r\3\2\2\2\23y\3\2\2\2\25\u0085\3\2\2\2\27\u0089\3\2\2\2\31\u0093\3\2\2"+
|
||||
"\2\33\34\7\60\2\2\34\35\7k\2\2\35\36\7f\2\2\36\37\7\"\2\2\37\4\3\2\2\2"+
|
||||
" !\7\60\2\2!\"\7k\2\2\"#\7p\2\2#$\7v\2\2$%\7a\2\2%&\7u\2\2&\'\7v\2\2\'"+
|
||||
"(\7c\2\2()\7e\2\2)*\7m\2\2*+\7a\2\2+,\7e\2\2,-\7q\2\2-.\7w\2\2./\7p\2"+
|
||||
"\2/\60\7v\2\2\60\61\7\"\2\2\61\6\3\2\2\2\62\63\7\60\2\2\63\64\7u\2\2\64"+
|
||||
"\65\7v\2\2\65\66\7t\2\2\66\67\7k\2\2\678\7p\2\289\7i\2\29:\7a\2\2:;\7"+
|
||||
"u\2\2;<\7v\2\2<=\7c\2\2=>\7e\2\2>?\7m\2\2?@\7a\2\2@A\7e\2\2AB\7q\2\2B"+
|
||||
"C\7w\2\2CD\7p\2\2DE\7v\2\2EF\7\"\2\2F\b\3\2\2\2GH\7\60\2\2HI\7k\2\2IJ"+
|
||||
"\7p\2\2JK\7v\2\2KL\7a\2\2LM\7x\2\2MN\7c\2\2NO\7t\2\2OP\7a\2\2PQ\7e\2\2"+
|
||||
"QR\7q\2\2RS\7w\2\2ST\7p\2\2TU\7v\2\2UV\7\"\2\2V\n\3\2\2\2WX\7\60\2\2X"+
|
||||
"Y\7u\2\2YZ\7v\2\2Z[\7t\2\2[\\\7k\2\2\\]\7p\2\2]^\7i\2\2^_\7a\2\2_`\7x"+
|
||||
"\2\2`a\7c\2\2ab\7t\2\2bc\7a\2\2cd\7e\2\2de\7q\2\2ef\7w\2\2fg\7p\2\2gh"+
|
||||
"\7v\2\2hi\7\"\2\2i\f\3\2\2\2jk\7<\2\2k\16\3\2\2\2ln\t\2\2\2ml\3\2\2\2"+
|
||||
"no\3\2\2\2om\3\2\2\2op\3\2\2\2p\20\3\2\2\2qs\7/\2\2rq\3\2\2\2rs\3\2\2"+
|
||||
"\2su\3\2\2\2tv\t\3\2\2ut\3\2\2\2vw\3\2\2\2wu\3\2\2\2wx\3\2\2\2x\22\3\2"+
|
||||
"\2\2y\177\7$\2\2z~\n\4\2\2{|\7^\2\2|~\t\5\2\2}z\3\2\2\2}{\3\2\2\2~\u0081"+
|
||||
"\3\2\2\2\177}\3\2\2\2\177\u0080\3\2\2\2\u0080\u0082\3\2\2\2\u0081\177"+
|
||||
"\3\2\2\2\u0082\u0083\7$\2\2\u0083\24\3\2\2\2\u0084\u0086\t\6\2\2\u0085"+
|
||||
"\u0084\3\2\2\2\u0086\u0087\3\2\2\2\u0087\u0085\3\2\2\2\u0087\u0088\3\2"+
|
||||
"\2\2\u0088\26\3\2\2\2\u0089\u008d\7=\2\2\u008a\u008c\n\2\2\2\u008b\u008a"+
|
||||
"\3\2\2\2\u008c\u008f\3\2\2\2\u008d\u008b\3\2\2\2\u008d\u008e\3\2\2\2\u008e"+
|
||||
"\u0090\3\2\2\2\u008f\u008d\3\2\2\2\u0090\u0091\b\f\2\2\u0091\30\3\2\2"+
|
||||
"\2\u0092\u0094\t\7\2\2\u0093\u0092\3\2\2\2\u0094\u0095\3\2\2\2\u0095\u0093"+
|
||||
"\3\2\2\2\u0095\u0096\3\2\2\2\u0096\u0097\3\2\2\2\u0097\u0098\b\r\2\2\u0098"+
|
||||
"\32\3\2\2\2\13\2orw}\177\u0087\u008d\u0095\3\2\3\2";
|
||||
public static final ATN _ATN =
|
||||
new ATNDeserializer().deserialize(_serializedATN.toCharArray());
|
||||
static {
|
||||
_decisionToDFA = new DFA[_ATN.getNumberOfDecisions()];
|
||||
for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) {
|
||||
_decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i);
|
||||
}
|
||||
}
|
||||
}
|
||||
260
cache/src/main/java/net/runelite/cache/script/assembler/rs2asmListener.java
vendored
Normal file
260
cache/src/main/java/net/runelite/cache/script/assembler/rs2asmListener.java
vendored
Normal file
@@ -0,0 +1,260 @@
|
||||
// Generated from net\runelite\cache\script\assembler\rs2asm.g4 by ANTLR 4.6
|
||||
package net.runelite.cache.script.assembler;
|
||||
import org.antlr.v4.runtime.tree.ParseTreeListener;
|
||||
|
||||
/**
|
||||
* This interface defines a complete listener for a parse tree produced by
|
||||
* {@link rs2asmParser}.
|
||||
*/
|
||||
public interface rs2asmListener extends ParseTreeListener {
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#prog}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterProg(rs2asmParser.ProgContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#prog}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitProg(rs2asmParser.ProgContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#header}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterHeader(rs2asmParser.HeaderContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#header}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitHeader(rs2asmParser.HeaderContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#id}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterId(rs2asmParser.IdContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#id}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitId(rs2asmParser.IdContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#int_stack_count}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterInt_stack_count(rs2asmParser.Int_stack_countContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#int_stack_count}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitInt_stack_count(rs2asmParser.Int_stack_countContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#string_stack_count}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterString_stack_count(rs2asmParser.String_stack_countContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#string_stack_count}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitString_stack_count(rs2asmParser.String_stack_countContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#int_var_count}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterInt_var_count(rs2asmParser.Int_var_countContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#int_var_count}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitInt_var_count(rs2asmParser.Int_var_countContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#string_var_count}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterString_var_count(rs2asmParser.String_var_countContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#string_var_count}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitString_var_count(rs2asmParser.String_var_countContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#id_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterId_value(rs2asmParser.Id_valueContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#id_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitId_value(rs2asmParser.Id_valueContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#int_stack_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterInt_stack_value(rs2asmParser.Int_stack_valueContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#int_stack_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitInt_stack_value(rs2asmParser.Int_stack_valueContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#string_stack_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterString_stack_value(rs2asmParser.String_stack_valueContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#string_stack_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitString_stack_value(rs2asmParser.String_stack_valueContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#int_var_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterInt_var_value(rs2asmParser.Int_var_valueContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#int_var_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitInt_var_value(rs2asmParser.Int_var_valueContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#string_var_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterString_var_value(rs2asmParser.String_var_valueContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#string_var_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitString_var_value(rs2asmParser.String_var_valueContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#line}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterLine(rs2asmParser.LineContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#line}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitLine(rs2asmParser.LineContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#instruction}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterInstruction(rs2asmParser.InstructionContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#instruction}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitInstruction(rs2asmParser.InstructionContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#label}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterLabel(rs2asmParser.LabelContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#label}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitLabel(rs2asmParser.LabelContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#instruction_name}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterInstruction_name(rs2asmParser.Instruction_nameContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#instruction_name}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitInstruction_name(rs2asmParser.Instruction_nameContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#name_string}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterName_string(rs2asmParser.Name_stringContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#name_string}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitName_string(rs2asmParser.Name_stringContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#name_opcode}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterName_opcode(rs2asmParser.Name_opcodeContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#name_opcode}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitName_opcode(rs2asmParser.Name_opcodeContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#instruction_operand}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterInstruction_operand(rs2asmParser.Instruction_operandContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#instruction_operand}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitInstruction_operand(rs2asmParser.Instruction_operandContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#operand_int}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterOperand_int(rs2asmParser.Operand_intContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#operand_int}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitOperand_int(rs2asmParser.Operand_intContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#operand_qstring}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterOperand_qstring(rs2asmParser.Operand_qstringContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#operand_qstring}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitOperand_qstring(rs2asmParser.Operand_qstringContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#operand_label}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterOperand_label(rs2asmParser.Operand_labelContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#operand_label}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitOperand_label(rs2asmParser.Operand_labelContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#switch_lookup}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterSwitch_lookup(rs2asmParser.Switch_lookupContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#switch_lookup}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitSwitch_lookup(rs2asmParser.Switch_lookupContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#switch_key}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterSwitch_key(rs2asmParser.Switch_keyContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#switch_key}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitSwitch_key(rs2asmParser.Switch_keyContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link rs2asmParser#switch_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterSwitch_value(rs2asmParser.Switch_valueContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link rs2asmParser#switch_value}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitSwitch_value(rs2asmParser.Switch_valueContext ctx);
|
||||
}
|
||||
1333
cache/src/main/java/net/runelite/cache/script/assembler/rs2asmParser.java
vendored
Normal file
1333
cache/src/main/java/net/runelite/cache/script/assembler/rs2asmParser.java
vendored
Normal file
File diff suppressed because it is too large
Load Diff
18
cache/src/main/java/net/runelite/cache/script/rs2asm.tokens
vendored
Normal file
18
cache/src/main/java/net/runelite/cache/script/rs2asm.tokens
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
T__0=1
|
||||
T__1=2
|
||||
T__2=3
|
||||
T__3=4
|
||||
T__4=5
|
||||
T__5=6
|
||||
NEWLINE=7
|
||||
INT=8
|
||||
QSTRING=9
|
||||
IDENTIFIER=10
|
||||
COMMENT=11
|
||||
WS=12
|
||||
'.id '=1
|
||||
'.int_stack_count '=2
|
||||
'.string_stack_count '=3
|
||||
'.int_var_count '=4
|
||||
'.string_var_count '=5
|
||||
':'=6
|
||||
18
cache/src/main/java/net/runelite/cache/script/rs2asmLexer.tokens
vendored
Normal file
18
cache/src/main/java/net/runelite/cache/script/rs2asmLexer.tokens
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
T__0=1
|
||||
T__1=2
|
||||
T__2=3
|
||||
T__3=4
|
||||
T__4=5
|
||||
T__5=6
|
||||
NEWLINE=7
|
||||
INT=8
|
||||
QSTRING=9
|
||||
IDENTIFIER=10
|
||||
COMMENT=11
|
||||
WS=12
|
||||
'.id '=1
|
||||
'.int_stack_count '=2
|
||||
'.string_stack_count '=3
|
||||
'.int_var_count '=4
|
||||
'.string_var_count '=5
|
||||
':'=6
|
||||
@@ -1,118 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2018, Adam <Adam@sigterm.info>
|
||||
* 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.cache.item;
|
||||
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import javax.imageio.ImageIO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.runelite.cache.IndexType;
|
||||
import net.runelite.cache.ItemManager;
|
||||
import net.runelite.cache.SpriteManager;
|
||||
import net.runelite.cache.StoreLocation;
|
||||
import net.runelite.cache.TextureManager;
|
||||
import net.runelite.cache.definitions.ItemDefinition;
|
||||
import net.runelite.cache.definitions.ModelDefinition;
|
||||
import net.runelite.cache.definitions.loaders.ModelLoader;
|
||||
import net.runelite.cache.definitions.providers.ModelProvider;
|
||||
import net.runelite.cache.fs.Archive;
|
||||
import net.runelite.cache.fs.Index;
|
||||
import net.runelite.cache.fs.Store;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Rule;
|
||||
import org.junit.Test;
|
||||
import org.junit.rules.TemporaryFolder;
|
||||
|
||||
@Slf4j
|
||||
public class ItemSpriteFactoryTest
|
||||
{
|
||||
@Rule
|
||||
public TemporaryFolder folder = StoreLocation.getTemporaryFolder();
|
||||
|
||||
@Test
|
||||
@Ignore
|
||||
public void test() throws IOException
|
||||
{
|
||||
File base = StoreLocation.LOCATION,
|
||||
outDir = folder.newFolder();
|
||||
|
||||
int count = 0;
|
||||
|
||||
try (Store store = new Store(base))
|
||||
{
|
||||
store.load();
|
||||
|
||||
ItemManager itemManager = new ItemManager(store);
|
||||
itemManager.load();
|
||||
|
||||
ModelProvider modelProvider = new ModelProvider()
|
||||
{
|
||||
@Override
|
||||
public ModelDefinition provide(int modelId) throws IOException
|
||||
{
|
||||
Index models = store.getIndex(IndexType.MODELS);
|
||||
Archive archive = models.getArchive(modelId);
|
||||
|
||||
byte[] data = archive.decompress(store.getStorage().loadArchive(archive));
|
||||
ModelDefinition inventoryModel = new ModelLoader().load(modelId, data);
|
||||
return inventoryModel;
|
||||
}
|
||||
};
|
||||
|
||||
SpriteManager spriteManager = new SpriteManager(store);
|
||||
spriteManager.load();
|
||||
|
||||
TextureManager textureManager = new TextureManager(store);
|
||||
textureManager.load();
|
||||
|
||||
for (ItemDefinition itemDef : itemManager.getItems())
|
||||
{
|
||||
if (itemDef.name == null || itemDef.name.equalsIgnoreCase("null"))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
BufferedImage sprite = ItemSpriteFactory.createSprite(itemManager, modelProvider, spriteManager, textureManager,
|
||||
itemDef.id, 1, 1, 3153952, false);
|
||||
|
||||
File out = new File(outDir, itemDef.id + ".png");
|
||||
BufferedImage img = sprite;
|
||||
ImageIO.write(img, "PNG", out);
|
||||
|
||||
++count;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
log.warn("error dumping item {}", itemDef.id, ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
log.info("Dumped {} item images to {}", count, outDir);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user