mirror of
https://github.com/ProjectSWGCore/Holocore.git
synced 2026-10-07 22:13:40 -04:00
Added in basic ability to join groups
This commit is contained in:
@@ -27,26 +27,38 @@
|
||||
|
||||
package resources.objects.group;
|
||||
|
||||
import network.packets.swg.zone.baselines.Baseline;
|
||||
import resources.collections.SWGMap;
|
||||
import resources.network.BaselineBuilder;
|
||||
import resources.objects.SWGObject;
|
||||
import resources.objects.creature.CreatureObject;
|
||||
import resources.player.Player;
|
||||
import utilities.Encoder;
|
||||
|
||||
public class GroupObject extends SWGObject {
|
||||
|
||||
public class GroupObject extends SWGObject { // Extends INTO or TANO?
|
||||
private static final long serialVersionUID = 200L;
|
||||
|
||||
|
||||
private SWGMap<Long, String> groupMembers = new SWGMap<>(Baseline.BaselineType.GRUP, 6, 2, Encoder.StringType.ASCII);
|
||||
private long leader;
|
||||
private short level;
|
||||
private long lootMaster;
|
||||
private int lootRule;
|
||||
|
||||
public GroupObject(long objectId) {
|
||||
super(objectId, Baseline.BaselineType.GRUP);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void createBaseline6(Player target, BaselineBuilder bb) {
|
||||
super.createBaseline6(target, bb); // BASE06 -- 2 variables
|
||||
bb.addInt(0); // groupMembers // 2
|
||||
bb.addInt(0); // updateCount
|
||||
bb.addObject(groupMembers); // 2
|
||||
bb.addInt(0); // formationmembers // 3
|
||||
bb.addInt(0); // updateCount
|
||||
bb.addAscii(""); // groupName // 4
|
||||
bb.addShort(0); // groupLevel // 5
|
||||
bb.addShort(level); // 5
|
||||
bb.addInt(0); // formationNameCrc // 6
|
||||
bb.addLong(0); // lootMaster // 7
|
||||
bb.addInt(0); // lootRule // 8
|
||||
bb.addLong(lootMaster); // 7
|
||||
bb.addInt(lootRule); // 8
|
||||
bb.addInt(0); // PickupPointTimer startTime // 9
|
||||
bb.addInt(0); // endTime
|
||||
bb.addAscii(""); // PickupPoint planetName // 10
|
||||
@@ -55,4 +67,46 @@ public class GroupObject extends SWGObject {
|
||||
bb.addFloat(0); // z
|
||||
bb.incrementOperandCount(9);
|
||||
}
|
||||
|
||||
public void addMember(CreatureObject object) {
|
||||
groupMembers.put(object.getObjectId(), object.getName());
|
||||
|
||||
groupMembers.sendDeltaMessage(this);
|
||||
|
||||
System.out.println("GroupObject: Added member & sent delta:: " + object);
|
||||
}
|
||||
|
||||
public void removeMember(CreatureObject object) {
|
||||
groupMembers.remove(object.getObjectId());
|
||||
|
||||
groupMembers.sendDeltaMessage(this);
|
||||
}
|
||||
|
||||
public long getLeader() {
|
||||
return leader;
|
||||
}
|
||||
|
||||
public void setLeader(long leader) {
|
||||
this.leader = leader;
|
||||
}
|
||||
|
||||
public short getLevel() {
|
||||
return level;
|
||||
}
|
||||
|
||||
public void setLevel(short level) {
|
||||
this.level = level;
|
||||
}
|
||||
|
||||
public long getLootMaster() {
|
||||
return lootMaster;
|
||||
}
|
||||
|
||||
public void setLootMaster(long lootMaster) {
|
||||
this.lootMaster = lootMaster;
|
||||
}
|
||||
|
||||
public SWGMap<Long, String> getGroupMembers() {
|
||||
return groupMembers;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user