mirror of
https://github.com/2revoemag/PSF-BotServer.git
synced 2026-07-14 16:04:41 +00:00
Merge pull request #1270 from ScrawnyRonnie/side-stuff
More Sideness Things
This commit is contained in:
commit
4ce53e3a32
4 changed files with 9 additions and 4 deletions
|
|
@ -407,7 +407,8 @@ class GeneralLogic(val ops: GeneralOperations, implicit val context: ActorContex
|
||||||
}
|
}
|
||||||
log.info(s"${player.Name} is constructing a $ammoType deployable")
|
log.info(s"${player.Name} is constructing a $ammoType deployable")
|
||||||
sessionLogic.zoning.CancelZoningProcessWithDescriptiveReason("cancel_use")
|
sessionLogic.zoning.CancelZoningProcessWithDescriptiveReason("cancel_use")
|
||||||
if (obj.AmmoType == DeployedItem.spitfire_turret || obj.AmmoType == DeployedItem.spitfire_cloaked) {
|
if (ammoType == DeployedItem.spitfire_turret || ammoType == DeployedItem.spitfire_cloaked ||
|
||||||
|
ammoType == DeployedItem.spitfire_aa) {
|
||||||
ops.handleDeployObject(continent, ammoType, pos, orient, OutsideOf, player.Faction, player, obj)
|
ops.handleDeployObject(continent, ammoType, pos, orient, OutsideOf, player.Faction, player, obj)
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ import net.psforever.objects.avatar.SpecialCarry
|
||||||
import net.psforever.objects.{GlobalDefinitions, Player, Tool, Vehicle, Vehicles}
|
import net.psforever.objects.{GlobalDefinitions, Player, Tool, Vehicle, Vehicles}
|
||||||
import net.psforever.objects.equipment.{Equipment, JammableMountedWeapons, JammableUnit}
|
import net.psforever.objects.equipment.{Equipment, JammableMountedWeapons, JammableUnit}
|
||||||
import net.psforever.objects.guid.{GUIDTask, TaskWorkflow}
|
import net.psforever.objects.guid.{GUIDTask, TaskWorkflow}
|
||||||
|
import net.psforever.objects.serverobject.interior.Sidedness.OutsideOf
|
||||||
import net.psforever.objects.serverobject.mount.Mountable
|
import net.psforever.objects.serverobject.mount.Mountable
|
||||||
import net.psforever.objects.serverobject.pad.VehicleSpawnPad
|
import net.psforever.objects.serverobject.pad.VehicleSpawnPad
|
||||||
import net.psforever.packet.game.objectcreate.ObjectCreateMessageParent
|
import net.psforever.packet.game.objectcreate.ObjectCreateMessageParent
|
||||||
|
|
@ -187,6 +188,7 @@ class VehicleHandlerLogic(val ops: SessionVehicleHandlers, implicit val context:
|
||||||
s"${player.Sex.possessive} ride"
|
s"${player.Sex.possessive} ride"
|
||||||
}
|
}
|
||||||
log.info(s"${player.Name} has been kicked from $typeOfRide!")
|
log.info(s"${player.Name} has been kicked from $typeOfRide!")
|
||||||
|
player.WhichSide = OutsideOf
|
||||||
|
|
||||||
case VehicleResponse.KickPassenger(_, wasKickedByDriver, _) =>
|
case VehicleResponse.KickPassenger(_, wasKickedByDriver, _) =>
|
||||||
//seat number (first field) seems to be correct if passenger is kicked manually by driver
|
//seat number (first field) seems to be correct if passenger is kicked manually by driver
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package net.psforever.actors.session.support
|
||||||
|
|
||||||
import akka.actor.{ActorContext, typed}
|
import akka.actor.{ActorContext, typed}
|
||||||
import net.psforever.objects.serverobject.affinity.FactionAffinity
|
import net.psforever.objects.serverobject.affinity.FactionAffinity
|
||||||
|
import net.psforever.objects.serverobject.interior.Sidedness.OutsideOf
|
||||||
import net.psforever.objects.{PlanetSideGameObject, Tool, Vehicle}
|
import net.psforever.objects.{PlanetSideGameObject, Tool, Vehicle}
|
||||||
import net.psforever.objects.vehicles.{CargoBehavior, MountableWeapons}
|
import net.psforever.objects.vehicles.{CargoBehavior, MountableWeapons}
|
||||||
import net.psforever.objects.vital.InGameHistory
|
import net.psforever.objects.vital.InGameHistory
|
||||||
|
|
@ -197,6 +198,7 @@ class SessionMountHandlers(
|
||||||
*/
|
*/
|
||||||
def DismountVehicleAction(tplayer: Player, obj: PlanetSideGameObject with FactionAffinity with InGameHistory, seatNum: Int): Unit = {
|
def DismountVehicleAction(tplayer: Player, obj: PlanetSideGameObject with FactionAffinity with InGameHistory, seatNum: Int): Unit = {
|
||||||
DismountAction(tplayer, obj, seatNum)
|
DismountAction(tplayer, obj, seatNum)
|
||||||
|
tplayer.WhichSide = OutsideOf
|
||||||
//until vehicles maintain synchronized momentum without a driver
|
//until vehicles maintain synchronized momentum without a driver
|
||||||
obj match {
|
obj match {
|
||||||
case v: Vehicle
|
case v: Vehicle
|
||||||
|
|
|
||||||
|
|
@ -324,7 +324,7 @@ object EffectTarget {
|
||||||
def FacilityTurretValidateAircraftTarget(target: PlanetSideGameObject): Boolean =
|
def FacilityTurretValidateAircraftTarget(target: PlanetSideGameObject): Boolean =
|
||||||
target match {
|
target match {
|
||||||
case v: Vehicle
|
case v: Vehicle
|
||||||
if GlobalDefinitions.isFlightVehicle(v.Definition) && v.Seats.values.exists(_.isOccupied) =>
|
if GlobalDefinitions.isFlightVehicle(v.Definition) && v.Seats.values.exists(_.isOccupied) && v.Definition != GlobalDefinitions.mosquito =>
|
||||||
val now = System.currentTimeMillis()
|
val now = System.currentTimeMillis()
|
||||||
val pos = v.Position
|
val pos = v.Position
|
||||||
lazy val sector = v.Zone.blockMap.sector(pos, range = 51f)
|
lazy val sector = v.Zone.blockMap.sector(pos, range = 51f)
|
||||||
|
|
@ -332,10 +332,10 @@ object EffectTarget {
|
||||||
.collect { case t: Tool => now - t.LastDischarge }
|
.collect { case t: Tool => now - t.LastDischarge }
|
||||||
.exists(_ < 2000L)
|
.exists(_ < 2000L)
|
||||||
// from the perspective of a mosquito, at 5th gauge, forward velocity is 59~60
|
// from the perspective of a mosquito, at 5th gauge, forward velocity is 59~60
|
||||||
lazy val movingFast = Vector3.MagnitudeSquared(v.Velocity.getOrElse(Vector3.Zero).xy) > 3721f //61
|
//lazy val movingFast = Vector3.MagnitudeSquared(v.Velocity.getOrElse(Vector3.Zero).xy) > 3721f //61
|
||||||
lazy val isMoving = v.isMoving(test = 1d)
|
lazy val isMoving = v.isMoving(test = 1d)
|
||||||
if (v.Cloaked || radarCloakedAms(sector, pos) || radarCloakedAegis(sector, pos)) false
|
if (v.Cloaked || radarCloakedAms(sector, pos) || radarCloakedAegis(sector, pos)) false
|
||||||
else if (v.Definition == GlobalDefinitions.mosquito) movingFast
|
//else if (v.Definition == GlobalDefinitions.mosquito) movingFast
|
||||||
else v.isFlying && (isMoving || entityTookDamage(v, now) || usedEquipment)
|
else v.isFlying && (isMoving || entityTookDamage(v, now) || usedEquipment)
|
||||||
case _ =>
|
case _ =>
|
||||||
false
|
false
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue