mirror of
https://github.com/ProjectSWGCore/Holocore.git
synced 2026-09-11 21:45:26 -04:00
Added support for jedi state, which can be used to show the force bar and the force sensitive professions
This commit is contained in:
+4
-5
@@ -39,7 +39,6 @@ import com.projectswg.holocore.resources.support.global.player.Player;
|
||||
import com.projectswg.holocore.resources.support.global.player.PlayerFlags;
|
||||
import com.projectswg.holocore.resources.support.objects.swg.intangible.IntangibleObject;
|
||||
import com.projectswg.holocore.resources.support.objects.swg.waypoint.WaypointObject;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.time.LocalDate;
|
||||
@@ -603,12 +602,12 @@ public class PlayerObject extends IntangibleObject {
|
||||
play9.addGroupWaypoint(waypoint);
|
||||
}
|
||||
|
||||
public Set<Long> getPlayerHateList() {
|
||||
return play9.getPlayerHateList();
|
||||
public int getJediState() {
|
||||
return play9.getJediState();
|
||||
}
|
||||
|
||||
public void addHatedPlayer(long hatedPlayerId) {
|
||||
play9.addHatedPlayer(hatedPlayerId);
|
||||
public void setJediState(int jediState) {
|
||||
play9.setJediState(jediState);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+10
-15
@@ -33,10 +33,8 @@ import com.projectswg.common.encoding.StringType;
|
||||
import com.projectswg.common.network.NetBuffer;
|
||||
import com.projectswg.common.network.NetBufferStream;
|
||||
import com.projectswg.common.persistable.Persistable;
|
||||
import com.projectswg.holocore.resources.support.data.collections.SWGBitSet;
|
||||
import com.projectswg.holocore.resources.support.data.collections.SWGList;
|
||||
import com.projectswg.holocore.resources.support.data.collections.SWGMap;
|
||||
import com.projectswg.holocore.resources.support.data.collections.SWGSet;
|
||||
import com.projectswg.holocore.resources.support.global.network.BaselineBuilder;
|
||||
import com.projectswg.holocore.resources.support.objects.swg.waypoint.WaypointObject;
|
||||
|
||||
@@ -68,7 +66,7 @@ class PlayerObjectOwnerNP implements Persistable, MongoPersistable {
|
||||
/** PLAY9-14 */ private int meds = 0;
|
||||
/** PLAY9-15 */ private int maxMeds = 100;
|
||||
/** PLAY9-16 */ private final SWGMap<Long, WaypointObject> groupWaypoints = new SWGMap<>(9, 16);
|
||||
/** PLAY9-17 */ private final SWGSet<Long> playerHateList = new SWGSet<>(9, 17);
|
||||
/** PLAY9-17 */ private int jediState = 0;
|
||||
|
||||
public PlayerObjectOwnerNP(PlayerObject obj) {
|
||||
this.obj = obj;
|
||||
@@ -275,13 +273,13 @@ class PlayerObjectOwnerNP implements Persistable, MongoPersistable {
|
||||
groupWaypoints.sendDeltaMessage(obj);
|
||||
}
|
||||
|
||||
public Set<Long> getPlayerHateList() {
|
||||
return Collections.unmodifiableSet(playerHateList);
|
||||
public int getJediState() {
|
||||
return jediState;
|
||||
}
|
||||
|
||||
public void addHatedPlayer(long hatedPlayerId) {
|
||||
if (playerHateList.add(hatedPlayerId))
|
||||
playerHateList.sendDeltaMessage(obj);
|
||||
public void setJediState(int jediState) {
|
||||
this.jediState = jediState;
|
||||
sendDelta(17, jediState);
|
||||
}
|
||||
|
||||
public void createBaseline9(BaselineBuilder bb) {
|
||||
@@ -302,8 +300,7 @@ class PlayerObjectOwnerNP implements Persistable, MongoPersistable {
|
||||
bb.addInt(meds); // 14
|
||||
bb.addInt(maxMeds); // 15
|
||||
bb.addObject(groupWaypoints); // 16
|
||||
bb.addObject(playerHateList); // 17
|
||||
bb.addInt(0); // Jedi state bitmask -- 18
|
||||
bb.addInt(jediState); // 17
|
||||
|
||||
bb.incrementOperandCount(19);
|
||||
}
|
||||
@@ -313,7 +310,6 @@ class PlayerObjectOwnerNP implements Persistable, MongoPersistable {
|
||||
friendsList.clear();
|
||||
ignoreList.clear();
|
||||
groupWaypoints.clear();
|
||||
playerHateList.clear();
|
||||
|
||||
craftingLevel = buffer.getInt();
|
||||
craftingStage = buffer.getInt();
|
||||
@@ -332,7 +328,7 @@ class PlayerObjectOwnerNP implements Persistable, MongoPersistable {
|
||||
meds = buffer.getInt();
|
||||
maxMeds = buffer.getInt();
|
||||
SWGMap.getSwgMap(buffer, 9, 16, Long.class, WaypointPackage.class).values().forEach(p -> groupWaypoints.put(p.getObjectId(), new WaypointObject(p)));
|
||||
playerHateList.addAll(SWGSet.getSwgSet(buffer, 9, 17, Long.class));
|
||||
jediState = buffer.getInt();
|
||||
buffer.getByte(); // unknown
|
||||
buffer.getInt(); // unknown
|
||||
}
|
||||
@@ -356,7 +352,7 @@ class PlayerObjectOwnerNP implements Persistable, MongoPersistable {
|
||||
data.putInteger("meds", meds);
|
||||
data.putInteger("maxMeds", maxMeds);
|
||||
data.putArray("groupWaypoints", groupWaypoints.values().stream().map(WaypointObject::getOOB).collect(Collectors.toList()));
|
||||
data.putArray("playerHateList", playerHateList);
|
||||
data.putInteger("jediState", jediState);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -365,7 +361,6 @@ class PlayerObjectOwnerNP implements Persistable, MongoPersistable {
|
||||
friendsList.clear();
|
||||
ignoreList.clear();
|
||||
groupWaypoints.clear();
|
||||
playerHateList.clear();
|
||||
|
||||
craftingLevel = data.getInteger("craftingLevel", craftingLevel);
|
||||
craftingStage = data.getInteger("craftingStage", craftingStage);
|
||||
@@ -384,7 +379,7 @@ class PlayerObjectOwnerNP implements Persistable, MongoPersistable {
|
||||
meds = data.getInteger("meds", meds);
|
||||
maxMeds = data.getInteger("maxMeds", maxMeds);
|
||||
data.getArray("groupWaypoints", doc -> new WaypointObject(MongoData.create(doc, WaypointPackage::new))).forEach(obj -> groupWaypoints.put(obj.getObjectId(), obj));
|
||||
playerHateList.addAll(data.getArray("playerHateList", Long.class));
|
||||
jediState = data.getInteger("jediState", 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user