- Added a way to obtain a pet without BEing
- Attempted to figure out how to bring up the pet tool bar
This commit is contained in:
CharonInferar
2014-07-05 18:10:39 +02:00
parent 0315292368
commit 0985451d7d
22 changed files with 933 additions and 38 deletions
+3 -1
View File
@@ -23,6 +23,7 @@ package resources.objects;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Comparator;
import java.util.Iterator;
@@ -38,6 +39,7 @@ import java.util.stream.Stream;
import org.apache.mina.core.buffer.IoBuffer;
import org.python.google.common.collect.Lists;
import engine.resources.common.StringUtilities;
import engine.resources.objects.Baseline;
import engine.resources.objects.Delta;
import engine.resources.objects.IDelta;
@@ -305,7 +307,6 @@ public class SWGList<E> implements List<E>, Serializable {
synchronized(objectMutex) {
if (valid(element)) {
E previousElement = list.set(index, element);
queue(item(2, index, Baseline.toBytes(element), true, true));
return previousElement;
@@ -340,6 +341,7 @@ public class SWGList<E> implements List<E>, Serializable {
this.list = list;
updateCounter += list.size();
StringUtilities.printBytes(newListData);
queue(newListData);
return true;
@@ -399,7 +399,7 @@ public class CreatureMessageBuilder extends TangibleMessageBuilder {
buffer.putInt(0xFFFFFFFF);
buffer.put((byte) (creature.isRadarVisible() ? 1 : 0));
buffer.put((byte) 0); // occupyingVehicle (hoth speeder, atat)
buffer.put((byte) 1); // occupyingVehicle (hoth speeder, atat)
buffer.put((byte) 0); // no effect for 1?
@@ -143,7 +143,7 @@ public class PlayerObject extends IntangibleObject implements Serializable {
baseline.put("12", (long) 0); // General?
baseline.put("13", 0); // Guild Rank Title?
baseline.put("14", (short) 0); // Citizen Rank Title? 6 bytes
baseline.put("speederElevation", 0);
baseline.put("speederElevation", 1);
baseline.put("vehicleAttackCommand", "");
return baseline;
}
@@ -187,8 +187,8 @@ public class PlayerObject extends IntangibleObject implements Serializable {
baseline.put("kills", 0);
baseline.put("19", 0);
baseline.put("pet", (long) 0);
baseline.put("petAbilities", new SWGList<String>(this, 9, 15, false));
baseline.put("22", (long) 0); // Unknown type currently
baseline.put("petAbilities", new SWGList<String>(this, 9, 21, false));
baseline.put("activePetAbilities", new SWGList<String>(this, 9, 22, false));
baseline.put("23", (byte) 0); // Seen as 1 or 2 sometimes // Gets set to 0x02 sometimes
baseline.put("24", 0); // Seen as 4
baseline.put("25", (long) 0); // Bitmask starts with 0x20 ends with 0x40
@@ -786,6 +786,11 @@ public class PlayerObject extends IntangibleObject implements Serializable {
public SWGList<String> getPetAbilities() {
return (SWGList<String>) getBaseline(9).get("petAbilities");
}
@SuppressWarnings("unchecked")
public SWGList<String> getActivePetAbilities() {
return (SWGList<String>) getBaseline(9).get("activePetAbilities");
}
public int getJediState() {
return 0;