mirror of
https://github.com/2revoemag/PSF-BotServer.git
synced 2026-07-11 22:44:37 +00:00
tying up some quirky cases where the the wrong tools elicited unexpected reactions from amenities (#385)
This commit is contained in:
parent
2f6af23207
commit
484fcbf56d
2 changed files with 25 additions and 20 deletions
|
|
@ -158,10 +158,12 @@ class PlayerControl(player : Player) extends Actor
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case CommonMessages.Use(user, Some(item : Tool)) if item.Definition == GlobalDefinitions.medicalapplicator && !player.isAlive =>
|
case CommonMessages.Use(user, Some(item : Tool)) if item.Definition == GlobalDefinitions.medicalapplicator =>
|
||||||
//revive
|
//revive
|
||||||
if(user != player && user.isAlive && !user.isMoving &&
|
if(user != player &&
|
||||||
!player.isBackpack &&
|
user.Faction == player.Faction &&
|
||||||
|
user.isAlive && !user.isMoving &&
|
||||||
|
!player.isAlive && !player.isBackpack &&
|
||||||
item.Magazine >= 25) {
|
item.Magazine >= 25) {
|
||||||
sender ! CommonMessages.Progress(
|
sender ! CommonMessages.Progress(
|
||||||
4,
|
4,
|
||||||
|
|
|
||||||
|
|
@ -5261,9 +5261,11 @@ class WorldSessionActor extends Actor
|
||||||
case Some(obj : Player) =>
|
case Some(obj : Player) =>
|
||||||
CancelZoningProcessWithDescriptiveReason("cancel_use")
|
CancelZoningProcessWithDescriptiveReason("cancel_use")
|
||||||
if(obj.isBackpack) {
|
if(obj.isBackpack) {
|
||||||
log.info(s"UseItem: $player looting the corpse of $obj")
|
if(equipment.isEmpty) {
|
||||||
sendResponse(UseItemMessage(avatar_guid, item_used_guid, object_guid, unk2, unk3, unk4, unk5, unk6, unk7, unk8, itemType))
|
log.info(s"UseItem: $player looting the corpse of $obj")
|
||||||
accessedContainer = Some(obj)
|
sendResponse(UseItemMessage(avatar_guid, item_used_guid, object_guid, unk2, unk3, unk4, unk5, unk6, unk7, unk8, itemType))
|
||||||
|
accessedContainer = Some(obj)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if(!unk3 && player.isAlive) { //potential kit use
|
else if(!unk3 && player.isAlive) { //potential kit use
|
||||||
ValidObject(item_used_guid) match {
|
ValidObject(item_used_guid) match {
|
||||||
|
|
@ -5521,18 +5523,20 @@ class WorldSessionActor extends Actor
|
||||||
}
|
}
|
||||||
|
|
||||||
case Some(obj : TelepadDeployable) =>
|
case Some(obj : TelepadDeployable) =>
|
||||||
continent.GUID(obj.Router) match {
|
if(equipment.isEmpty) {
|
||||||
case Some(vehicle : Vehicle) =>
|
continent.GUID(obj.Router) match {
|
||||||
vehicle.Utility(UtilityType.internal_router_telepad_deployable) match {
|
case Some(vehicle : Vehicle) =>
|
||||||
case Some(util : Utility.InternalTelepad) =>
|
vehicle.Utility(UtilityType.internal_router_telepad_deployable) match {
|
||||||
CancelZoningProcessWithDescriptiveReason("cancel")
|
case Some(util : Utility.InternalTelepad) =>
|
||||||
UseRouterTelepadSystem(router = vehicle, internalTelepad = util, remoteTelepad = obj, src = obj, dest = util)
|
CancelZoningProcessWithDescriptiveReason("cancel")
|
||||||
case _ =>
|
UseRouterTelepadSystem(router = vehicle, internalTelepad = util, remoteTelepad = obj, src = obj, dest = util)
|
||||||
log.error(s"telepad@${object_guid.guid} is not linked to a router - ${vehicle.Definition.Name}, ${obj.Router}")
|
case _ =>
|
||||||
}
|
log.error(s"telepad@${object_guid.guid} is not linked to a router - ${vehicle.Definition.Name}, ${obj.Router}")
|
||||||
case Some(o) =>
|
}
|
||||||
log.error(s"telepad@${object_guid.guid} is linked to wrong kind of object - ${o.Definition.Name}, ${obj.Router}")
|
case Some(o) =>
|
||||||
case None => ;
|
log.error(s"telepad@${object_guid.guid} is linked to wrong kind of object - ${o.Definition.Name}, ${obj.Router}")
|
||||||
|
case None => ;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case Some(obj : Utility.InternalTelepad) =>
|
case Some(obj : Utility.InternalTelepad) =>
|
||||||
|
|
@ -5547,8 +5551,7 @@ class WorldSessionActor extends Actor
|
||||||
|
|
||||||
case Some(obj) =>
|
case Some(obj) =>
|
||||||
CancelZoningProcessWithDescriptiveReason("cancel_use")
|
CancelZoningProcessWithDescriptiveReason("cancel_use")
|
||||||
log.warn(s"UseItem: don't know how to handle $obj; taking a shot in the dark")
|
log.warn(s"UseItem: don't know how to handle $obj")
|
||||||
sendResponse(UseItemMessage(avatar_guid, item_used_guid, object_guid, unk2, unk3, unk4, unk5, unk6, unk7, unk8, itemType))
|
|
||||||
|
|
||||||
case None =>
|
case None =>
|
||||||
log.error(s"UseItem: can not find object $object_guid")
|
log.error(s"UseItem: can not find object $object_guid")
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue