cache: update definitions
This commit is contained in:
@@ -24,6 +24,8 @@
|
||||
*/
|
||||
package net.runelite.cache.definitions;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public class ItemDefinition
|
||||
{
|
||||
public int id;
|
||||
@@ -96,6 +98,8 @@ public class ItemDefinition
|
||||
public int placeholderId = -1;
|
||||
public int placeholderTemplateId = -1;
|
||||
|
||||
public Map<Integer, Object> params = null;
|
||||
|
||||
public ItemDefinition(int definitionID)
|
||||
{
|
||||
this.id = definitionID;
|
||||
|
||||
@@ -25,6 +25,8 @@
|
||||
|
||||
package net.runelite.cache.definitions;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public class NpcDefinition
|
||||
{
|
||||
|
||||
@@ -54,13 +56,14 @@ public class NpcDefinition
|
||||
public boolean hasRenderPriority = false;
|
||||
public int ambient = 0;
|
||||
public int headIcon = -1;
|
||||
public int anInt2184 = 30;
|
||||
//public int anInt2184 = 30;
|
||||
public int[] anIntArray2185;
|
||||
public short[] retextureToFind;
|
||||
public int anInt2187 = -1;
|
||||
public boolean isClickable = true;
|
||||
public int anInt2189 = -1;
|
||||
public boolean aBool2190 = false;
|
||||
public Map<Integer, Object> params = null;
|
||||
|
||||
public NpcDefinition(int definitionID)
|
||||
{
|
||||
|
||||
@@ -25,6 +25,8 @@
|
||||
|
||||
package net.runelite.cache.definitions;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public class ObjectDefinition
|
||||
{
|
||||
private int id;
|
||||
@@ -70,6 +72,7 @@ public class ObjectDefinition
|
||||
private int anInt2112 = 0;
|
||||
private int anInt2113 = 0;
|
||||
private boolean aBool2114 = true;
|
||||
private Map<Integer, Object> params = null;
|
||||
|
||||
public int getId()
|
||||
{
|
||||
@@ -500,4 +503,14 @@ public class ObjectDefinition
|
||||
{
|
||||
this.aBool2114 = aBool2114;
|
||||
}
|
||||
|
||||
public Map<Integer, Object> getParams()
|
||||
{
|
||||
return params;
|
||||
}
|
||||
|
||||
public void setParams(final Map<Integer, Object> params)
|
||||
{
|
||||
this.params = params;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,6 +30,8 @@ import net.runelite.cache.io.InputStream;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
public class ItemLoader
|
||||
{
|
||||
private static final Logger logger = LoggerFactory.getLogger(ItemLoader.class);
|
||||
@@ -254,6 +256,31 @@ public class ItemLoader
|
||||
{
|
||||
def.placeholderTemplateId = stream.readUnsignedShort();
|
||||
}
|
||||
else if (opcode == 249)
|
||||
{
|
||||
int length = stream.readUnsignedByte();
|
||||
|
||||
def.params = new HashMap<>(length);
|
||||
|
||||
for (int i = 0; i < length; i++)
|
||||
{
|
||||
boolean isString = stream.readUnsignedByte() == 1;
|
||||
int key = stream.read24BitInt();
|
||||
Object value;
|
||||
|
||||
if (isString)
|
||||
{
|
||||
value = stream.readString();
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
value = stream.readInt();
|
||||
}
|
||||
|
||||
def.params.put(key, value);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
logger.warn("Unrecognized opcode {}", opcode);
|
||||
|
||||
@@ -29,6 +29,8 @@ import net.runelite.cache.io.InputStream;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
public class NpcLoader
|
||||
{
|
||||
private static final Logger logger = LoggerFactory.getLogger(NpcLoader.class);
|
||||
@@ -190,11 +192,11 @@ public class NpcLoader
|
||||
def.anInt2187 = stream.readUnsignedShort();
|
||||
if ('\uffff' == def.anInt2187)
|
||||
{
|
||||
def.anInt2187 = -40212193;
|
||||
def.anInt2187 = -1;
|
||||
}
|
||||
|
||||
length = stream.readUnsignedByte();
|
||||
def.anIntArray2185 = new int[length + 1];
|
||||
def.anIntArray2185 = new int[length + 2];
|
||||
|
||||
for (index = 0; index <= length; ++index)
|
||||
{
|
||||
@@ -205,6 +207,8 @@ public class NpcLoader
|
||||
}
|
||||
}
|
||||
|
||||
def.anIntArray2185[length + 1] = -1;
|
||||
|
||||
}
|
||||
else if (107 == opcode)
|
||||
{
|
||||
@@ -218,9 +222,68 @@ public class NpcLoader
|
||||
{
|
||||
def.aBool2190 = true;
|
||||
}
|
||||
else if (opcode == 112)
|
||||
//else if (opcode == 112) // Appears to be removed from the client
|
||||
//{
|
||||
// def.anInt2184 = stream.readUnsignedByte();
|
||||
//}
|
||||
else if (opcode == 118)
|
||||
{
|
||||
def.anInt2184 = stream.readUnsignedByte();
|
||||
def.anInt2174 = stream.readUnsignedShort();
|
||||
if ('\uffff' == def.anInt2174)
|
||||
{
|
||||
def.anInt2174 = -1;
|
||||
}
|
||||
|
||||
def.anInt2187 = stream.readUnsignedShort();
|
||||
if ('\uffff' == def.anInt2187)
|
||||
{
|
||||
def.anInt2187 = -1;
|
||||
}
|
||||
|
||||
int var = stream.readUnsignedShort();
|
||||
if (var == 0xFFFF)
|
||||
{
|
||||
var = -1;
|
||||
}
|
||||
|
||||
length = stream.readUnsignedByte();
|
||||
def.anIntArray2185 = new int[length + 2];
|
||||
|
||||
for (index = 0; index <= length; ++index)
|
||||
{
|
||||
def.anIntArray2185[index] = stream.readUnsignedShort();
|
||||
if (def.anIntArray2185[index] == '\uffff')
|
||||
{
|
||||
def.anIntArray2185[index] = -1;
|
||||
}
|
||||
}
|
||||
|
||||
def.anIntArray2185[length + 1] = var;
|
||||
}
|
||||
else if (opcode == 249)
|
||||
{
|
||||
length = stream.readUnsignedByte();
|
||||
|
||||
def.params = new HashMap<>(length);
|
||||
|
||||
for (int i = 0; i < length; i++)
|
||||
{
|
||||
boolean isString = stream.readUnsignedByte() == 1;
|
||||
int key = stream.read24BitInt();
|
||||
Object value;
|
||||
|
||||
if (isString)
|
||||
{
|
||||
value = stream.readString();
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
value = stream.readInt();
|
||||
}
|
||||
|
||||
def.params.put(key, value);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -29,6 +29,9 @@ import net.runelite.cache.io.InputStream;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public class ObjectLoader
|
||||
{
|
||||
private static final Logger logger = LoggerFactory.getLogger(ObjectLoader.class);
|
||||
@@ -263,7 +266,7 @@ public class ObjectLoader
|
||||
def.setConfigId(configId);
|
||||
|
||||
int length = is.readUnsignedByte();
|
||||
int[] configChangeDest = new int[length + 1];
|
||||
int[] configChangeDest = new int[length + 2];
|
||||
|
||||
for (int index = 0; index <= length; ++index)
|
||||
{
|
||||
@@ -274,6 +277,8 @@ public class ObjectLoader
|
||||
}
|
||||
}
|
||||
|
||||
configChangeDest[length + 1] = -1;
|
||||
|
||||
def.setConfigChangeDest(configChangeDest);
|
||||
}
|
||||
else if (opcode == 78)
|
||||
@@ -300,6 +305,71 @@ public class ObjectLoader
|
||||
{
|
||||
def.setAnInt2105(is.readUnsignedByte());
|
||||
}
|
||||
else if (opcode == 92)
|
||||
{
|
||||
int varpID = is.readUnsignedShort();
|
||||
if (varpID == 0xFFFF)
|
||||
{
|
||||
varpID = -1;
|
||||
}
|
||||
def.setVarpID(varpID);
|
||||
|
||||
int configId = is.readUnsignedShort();
|
||||
if (configId == 0xFFFF)
|
||||
{
|
||||
configId = -1;
|
||||
}
|
||||
def.setConfigId(configId);
|
||||
|
||||
|
||||
int var = is.readUnsignedShort();
|
||||
if (var == 0xFFFF)
|
||||
{
|
||||
var = -1;
|
||||
}
|
||||
|
||||
int length = is.readUnsignedByte();
|
||||
int[] configChangeDest = new int[length + 2];
|
||||
|
||||
for (int index = 0; index <= length; ++index)
|
||||
{
|
||||
configChangeDest[index] = is.readUnsignedShort();
|
||||
if (0xFFFF == configChangeDest[index])
|
||||
{
|
||||
configChangeDest[index] = -1;
|
||||
}
|
||||
}
|
||||
|
||||
configChangeDest[length + 1] = var;
|
||||
|
||||
def.setConfigChangeDest(configChangeDest);
|
||||
}
|
||||
else if (opcode == 249)
|
||||
{
|
||||
int length = is.readUnsignedByte();
|
||||
|
||||
Map<Integer, Object> params = new HashMap<>(length);
|
||||
for (int i = 0; i < length; i++)
|
||||
{
|
||||
boolean isString = is.readUnsignedByte() == 1;
|
||||
int key = is.read24BitInt();
|
||||
Object value;
|
||||
|
||||
if (isString)
|
||||
{
|
||||
value = is.readString();
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
value = is.readInt();
|
||||
}
|
||||
|
||||
params.put(key, value);
|
||||
}
|
||||
|
||||
def.setParams(params);
|
||||
}
|
||||
else
|
||||
{
|
||||
logger.warn("Unrecognized opcode {}", opcode);
|
||||
|
||||
Reference in New Issue
Block a user