Removed unused ObjectController

Moved Tradepartner to CreatureObject
This commit is contained in:
Tacef Ine
2017-06-27 20:49:02 +02:00
parent b97212d1ac
commit d00a55fb6a
5 changed files with 43 additions and 79 deletions
@@ -1,42 +0,0 @@
package network.packets.swg.zone.object_controller;
import com.projectswg.common.network.NetBuffer;
public class MessageQueueSecureTrade extends ObjectController {
public static final int CRC = 0x0115;
private int tradeId;
private long trader;
private long reciever;
public MessageQueueSecureTrade(int tradeId, long trader, long reciever) {
super(CRC);
this.tradeId = tradeId;
this.trader = trader;
this.reciever = reciever;
}
public MessageQueueSecureTrade(NetBuffer data) {
super(CRC);
decode(data);
}
@Override
public void decode(NetBuffer data) {
decodeHeader(data);
tradeId = data.getInt();
trader = data.getLong();
reciever = data.getLong();
}
@Override
public NetBuffer encode() {
NetBuffer data = NetBuffer.allocate(HEADER_LENGTH + 20);
encodeHeader(data);
data.addInt(tradeId);
data.addLong(trader);
data.addLong(reciever);
return data;
}
}
@@ -114,7 +114,7 @@ public abstract class ObjectController extends SWGPacket {
case 0x04C5: return new IntendedTarget(data);
case 0x00F5: return new MissionListRequest(data);
case 0x041C: return new JTLTerminalSharedMessage(data);
case 0x0115: return new MessageQueueSecureTrade(data);
case 0x0115: return new SecureTrade(data);
}
Log.w("Unknown object controller: %08X", crc);
return new GenericObjectController(crc, data);
@@ -82,6 +82,7 @@ public class CreatureObject extends TangibleObject {
private long statesBitmask = 0;
private long lastTransform = 0;
private TradeSession tradeSession = null;
private CreatureObject tradePartner = null;
private SWGSet<String> skills = new SWGSet<String>(1, 3, StringType.ASCII);
@@ -269,6 +270,14 @@ public class CreatureObject extends TangibleObject {
public void setTradeSession(TradeSession tradeSession) {
this.tradeSession = tradeSession;
}
public CreatureObject getTradePartner() {
return tradePartner;
}
public void setTradePartner(CreatureObject tradePartner) {
this.tradePartner = tradePartner;
}
public void setPosture(Posture posture) {
this.posture = posture;
+33 -28
View File
@@ -52,9 +52,9 @@ public class TradeService extends Service {
handleAcceptTransactionMessage(gpi.getPlayer());
} else if (packet instanceof UnAcceptTransactionMessage){
handleUnAcceptTransactionMessage(gpi.getPlayer());
} else if (packet instanceof AddItemMessage){
} /*else if (packet instanceof AddItemMessage){
handleAddItemMessage((AddItemMessage) packet, gpi.getPlayer());
}
}*/
}
private void handleSecureTrade(SecureTrade packet, Player player, ObjectManager objectManager) {
@@ -62,39 +62,40 @@ public class TradeService extends Service {
CreatureObject accepter = (CreatureObject) objectManager.getObjectById(packet.getAccepterId());
TradeSession tradeSession = new TradeSession(initiator, accepter);
initiator.setTradeSession(tradeSession);
initiator.getTradeSession().getTradePartner(accepter);
handleTradeSessionRequest(initiator, accepter, tradeSession);
initiator.setTradePartner(accepter);
handleTradeSessionRequest(packet, player, initiator, accepter, tradeSession);
Log.d("Trade Session Request. Type=%s Initiator=%d Receipient=%d PacketSenderID: %d", packet.getType(), packet.getStarterId(), packet.getAccepterId(), player.getCreatureObject().getObjectId());
}
private void handleAbortTradeMessage(Player player) {
if(player.getCreatureObject().getObjectId() != player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).getObjectId()){
player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).sendSelf(new AbortTradeMessage());
player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).sendSelf(new DenyTradeMessage());
} else{
if(player.getCreatureObject().getObjectId() != player.getCreatureObject().getTradePartner().getObjectId()){
player.getCreatureObject().getTradePartner().sendSelf(new AbortTradeMessage());
player.getCreatureObject().getTradePartner().sendSelf(new DenyTradeMessage());
} else {
player.getCreatureObject().sendSelf(new AbortTradeMessage());
player.getCreatureObject().sendSelf(new DenyTradeMessage());
}
}
private void handleDenyTradeMessage(Player player) {
if(player.getCreatureObject().getObjectId() != player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).getObjectId()){
player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).sendSelf(new DenyTradeMessage());
if(player.getCreatureObject().getObjectId() != player.getCreatureObject().getTradePartner().getObjectId()){
player.getCreatureObject().getTradePartner().sendSelf(new DenyTradeMessage());
} else{
player.getCreatureObject().sendSelf(new DenyTradeMessage());
}
}
private void handleAcceptTransactionMessage(Player player) {
if(player.getCreatureObject().getObjectId() != player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).getObjectId()){
player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).sendSelf(new AcceptTransactionMessage());
if(player.getCreatureObject().getObjectId() != player.getCreatureObject().getTradePartner().getObjectId()){
player.getCreatureObject().getTradePartner().sendSelf(new AcceptTransactionMessage());
} else{
player.getCreatureObject().sendSelf(new AcceptTransactionMessage());
}
}
private void handleUnAcceptTransactionMessage(Player player) {
if(player.getCreatureObject().getObjectId() != player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).getObjectId()){
player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).sendSelf(new UnAcceptTransactionMessage());
if(player.getCreatureObject().getObjectId() != player.getCreatureObject().getObjectId()){
player.getCreatureObject().getTradePartner().sendSelf(new UnAcceptTransactionMessage());
} else{
player.getCreatureObject().sendSelf(new UnAcceptTransactionMessage());
}
@@ -102,35 +103,39 @@ public class TradeService extends Service {
private void handleAddItemMessage(AddItemMessage packet, Player player) {
if(player.getCreatureObject().getObjectId() != player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).getObjectId()){
player.getCreatureObject().getTradeSession().addToItemList(player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()), packet.getObjectId());
for (long objectId : player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).getTradeSession().getFromAccepterList()) {
if(player.getCreatureObject().getObjectId() != player.getCreatureObject().getTradePartner().getObjectId()){
player.getCreatureObject().getTradeSession().addToItemList(player.getCreatureObject().getTradePartner(), packet.getObjectId());
for (long objectId : player.getCreatureObject().getTradePartner().getTradeSession().getFromAccepterList()) {
player.getCreatureObject().sendSelf(new AddItemMessage(objectId));
}
} else{
player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).getTradeSession().addToItemList(player.getCreatureObject(), packet.getObjectId());
for (long objectId : player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).getTradeSession().getFromInitiatorList()) {
player.getCreatureObject().getTradeSession().getTradePartner(player.getCreatureObject()).sendSelf(new AddItemMessage(objectId));
player.getCreatureObject().getTradePartner().getTradeSession().addToItemList(player.getCreatureObject(), packet.getObjectId());
for (long objectId : player.getCreatureObject().getTradePartner().getTradeSession().getFromInitiatorList()) {
player.getCreatureObject().getTradePartner().sendSelf(new AddItemMessage(objectId));
}
}
}
private void handleTradeSessionRequest(CreatureObject initiator, CreatureObject accepter, TradeSession tradeSession) {
private void handleTradeSessionRequest(SecureTrade packet, Player packetSender , CreatureObject initiator, CreatureObject accepter, TradeSession tradeSession) {
SuiMessageBox requestBox = new SuiMessageBox(SuiButtons.OK_CANCEL, "Trade Request", accepter.getOwner().getCharacterName() + " wants to trade with you.\nDo you want to accept the request?");
requestBox.display(accepter.getOwner());
requestBox.addOkButtonCallback("handleTradeRequest", (player, actor, event, paramenters)-> {
accepter.getTradeSession().getTradePartner(initiator);
accepter.setTradeSession(tradeSession);
if(initiator.getTradeSession().getTradePartner(accepter) != null && initiator.getTradeSession().getTradePartner(accepter).equals(accepter) && accepter.getTradeSession().getTradePartner(initiator) != null && accepter.getTradeSession().getTradePartner(initiator).equals(initiator)){
if(initiator.getTradePartner() != null && initiator.getTradePartner().equals(accepter) && accepter.getTradePartner() != null && accepter.getTradePartner().equals(initiator)){
accepter.setTradeSession(tradeSession);
accepter.setTradePartner(initiator);
initiator.sendSelf(new BeginTradeMessage(accepter.getObjectId()));
accepter.sendSelf(new BeginTradeMessage(initiator.getObjectId()));
Log.d("Trade Session Request. Type=%s Initiator=%d Receipient=%d PacketSenderID: %d", packet.getType(), packet.getStarterId(), packet.getAccepterId(), player.getCreatureObject().getObjectId());
}
});
requestBox.addCancelButtonCallback("handleTradeRequestDeny", (player, actor, event, paramenters)-> {
initiator.sendSelf(new DenyTradeMessage());
accepter.sendSelf(new DenyTradeMessage());
initiator.sendSelf(new AbortTradeMessage());
accepter.sendSelf(new AbortTradeMessage());
if(packetSender.getCreatureObject().getObjectId() != accepter.getObjectId()){
initiator.sendSelf(new DenyTradeMessage());
initiator.sendSelf(new AbortTradeMessage());
} else {
accepter.sendSelf(new DenyTradeMessage());
accepter.sendSelf(new AbortTradeMessage());
}
});
Log.i("Player: %s sent TradeRequest to Player %s", initiator.getOwner().getCharacterName(), accepter.getOwner().getCharacterName());
}
-8
View File
@@ -52,12 +52,4 @@ public class TradeSession {
public CreatureObject getAccepter() {
return accepter;
}
public CreatureObject getTradePartner(CreatureObject self) {
if (self.equals(initiator)) {
return accepter;
} else {
return initiator;
}
}
}