mirror of
https://github.com/psforever/PSF-LoginServer.git
synced 2026-01-19 18:44:45 +00:00
commit
623a60d28c
|
|
@ -310,6 +310,7 @@ class AvatarHandlerLogic(val ops: SessionAvatarHandlers, implicit val context: A
|
||||||
delete.foreach { case (obj, _) => TaskWorkflow.execute(GUIDTask.unregisterEquipment(continent.GUID, obj)) }
|
delete.foreach { case (obj, _) => TaskWorkflow.execute(GUIDTask.unregisterEquipment(continent.GUID, obj)) }
|
||||||
//redraw
|
//redraw
|
||||||
if (maxhand) {
|
if (maxhand) {
|
||||||
|
sendResponse(PlanetsideAttributeMessage(target, attribute_type=7, player.Capacitor.toLong))
|
||||||
TaskWorkflow.execute(HoldNewEquipmentUp(player)(
|
TaskWorkflow.execute(HoldNewEquipmentUp(player)(
|
||||||
Tool(GlobalDefinitions.MAXArms(subtype, player.Faction)),
|
Tool(GlobalDefinitions.MAXArms(subtype, player.Faction)),
|
||||||
0
|
0
|
||||||
|
|
@ -381,7 +382,7 @@ class AvatarHandlerLogic(val ops: SessionAvatarHandlers, implicit val context: A
|
||||||
drops
|
drops
|
||||||
) if resolvedPlayerGuid == target =>
|
) if resolvedPlayerGuid == target =>
|
||||||
sendResponse(ArmorChangedMessage(target, exosuit, subtype))
|
sendResponse(ArmorChangedMessage(target, exosuit, subtype))
|
||||||
sendResponse(PlanetsideAttributeMessage(target, attribute_type = 4, armor))
|
sendResponse(PlanetsideAttributeMessage(target, attribute_type=4, armor))
|
||||||
//happening to this player
|
//happening to this player
|
||||||
sendResponse(ObjectHeldMessage(target, Player.HandsDownSlot, unk1=true))
|
sendResponse(ObjectHeldMessage(target, Player.HandsDownSlot, unk1=true))
|
||||||
//cleanup
|
//cleanup
|
||||||
|
|
@ -393,6 +394,7 @@ class AvatarHandlerLogic(val ops: SessionAvatarHandlers, implicit val context: A
|
||||||
drops.foreach(item => sendResponse(ObjectDeleteMessage(item.obj.GUID, unk1=0)))
|
drops.foreach(item => sendResponse(ObjectDeleteMessage(item.obj.GUID, unk1=0)))
|
||||||
//redraw
|
//redraw
|
||||||
if (maxhand) {
|
if (maxhand) {
|
||||||
|
sendResponse(PlanetsideAttributeMessage(target, attribute_type=7, player.Capacitor.toLong))
|
||||||
TaskWorkflow.execute(HoldNewEquipmentUp(player)(
|
TaskWorkflow.execute(HoldNewEquipmentUp(player)(
|
||||||
Tool(GlobalDefinitions.MAXArms(subtype, player.Faction)),
|
Tool(GlobalDefinitions.MAXArms(subtype, player.Faction)),
|
||||||
slot = 0
|
slot = 0
|
||||||
|
|
|
||||||
|
|
@ -642,7 +642,10 @@ class PlayerControl(player: Player, avatarActor: typed.ActorRef[AvatarActor.Comm
|
||||||
//was max
|
//was max
|
||||||
val (delete, insert) = beforeHolsters.partition(elem => elem.obj.Size == EquipmentSize.Max)
|
val (delete, insert) = beforeHolsters.partition(elem => elem.obj.Size == EquipmentSize.Max)
|
||||||
if (willBecomeMax) {
|
if (willBecomeMax) {
|
||||||
//changing to a different kind(?) of max
|
if (originalSubtype != subtype) {
|
||||||
|
//changing to a different kind of max
|
||||||
|
player.Capacitor = 0
|
||||||
|
}
|
||||||
(delete, Nil, insert, beforeInventory)
|
(delete, Nil, insert, beforeInventory)
|
||||||
} else {
|
} else {
|
||||||
//changing to a vanilla exo-suit
|
//changing to a vanilla exo-suit
|
||||||
|
|
@ -653,6 +656,7 @@ class PlayerControl(player: Player, avatarActor: typed.ActorRef[AvatarActor.Comm
|
||||||
}
|
}
|
||||||
} else if (willBecomeMax) {
|
} else if (willBecomeMax) {
|
||||||
//will be max, drop everything but melee slot
|
//will be max, drop everything but melee slot
|
||||||
|
player.Capacitor = 0
|
||||||
val (melee, other) = beforeHolsters.partition(elem => elem.obj.Size == EquipmentSize.Melee)
|
val (melee, other) = beforeHolsters.partition(elem => elem.obj.Size == EquipmentSize.Melee)
|
||||||
val (inventory, unplacedInventory) = GridInventory.recoverInventory(beforeInventory ++ other, player.Inventory)
|
val (inventory, unplacedInventory) = GridInventory.recoverInventory(beforeInventory ++ other, player.Inventory)
|
||||||
val (dropFromUnplaced, deleteFromUnplaced) = unplacedInventory.map(InventoryItem(_, -1)).partition(dropPred)
|
val (dropFromUnplaced, deleteFromUnplaced) = unplacedInventory.map(InventoryItem(_, -1)).partition(dropPred)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue