mirror of
https://github.com/psforever/PSF-LoginServer.git
synced 2026-01-19 18:44:45 +00:00
allowing scaled back bfr accessibility (#1280)
This commit is contained in:
parent
08b02846b9
commit
c416ba11df
|
|
@ -96,12 +96,30 @@ add_property suppressor holstertime 600
|
|||
add_property trek equiptime 500
|
||||
add_property trek holstertime 500
|
||||
add_property vulture requirement_award0 false
|
||||
add_property aphelion allowed false
|
||||
add_property aphelion allowed true
|
||||
add_property aphelion_flight allowed false
|
||||
add_property aphelion_gunner allowed false
|
||||
add_property colossus allowed false
|
||||
add_property aphelion_gunner allowed true
|
||||
add_property aphelion_armor_siphon allowed false
|
||||
add_property aphelion_armor_siphon_left allowed false
|
||||
add_property aphelion_armor_siphon_right allowed false
|
||||
add_property aphelion_ntu_siphon allowed false
|
||||
add_property aphelion_ntu_siphon_left allowed false
|
||||
add_property aphelion_ntu_siphon_right allowed false
|
||||
add_property colossus allowed true
|
||||
add_property colossus_flight allowed false
|
||||
add_property colossus_gunner allowed false
|
||||
add_property peregrine allowed false
|
||||
add_property colossus_gunner allowed true
|
||||
add_property colossus_armor_siphon allowed false
|
||||
add_property colossus_armor_siphon_left allowed false
|
||||
add_property colossus_armor_siphon_right allowed false
|
||||
add_property colossus_ntu_siphon allowed false
|
||||
add_property colossus_ntu_siphon_left allowed false
|
||||
add_property colossus_ntu_siphon_right allowed false
|
||||
add_property peregrine allowed true
|
||||
add_property peregrine_flight allowed false
|
||||
add_property peregrine_gunner allowed false
|
||||
add_property peregrine_gunner allowed true
|
||||
add_property peregrine_armor_siphon allowed false
|
||||
add_property peregrine_armor_siphon_left allowed false
|
||||
add_property peregrine_armor_siphon_right allowed false
|
||||
add_property peregrine_ntu_siphon allowed false
|
||||
add_property peregrine_ntu_siphon_left allowed false
|
||||
add_property peregrine_ntu_siphon_right allowed false
|
||||
|
|
|
|||
|
|
@ -870,7 +870,7 @@ class WeaponAndProjectileOperations(
|
|||
"BattleframeLeftArm"
|
||||
} else {
|
||||
"BattleframeRightArm"
|
||||
}).get.Enabled
|
||||
}).exists(_.Enabled)
|
||||
if (!mountIsEnabled) {
|
||||
//can't stop the local discharge, but it will not actually shoot anything; assert the magazine
|
||||
sendResponse(QuantityUpdateMessage(tool.AmmoSlot.Box.GUID, tool.Magazine))
|
||||
|
|
|
|||
|
|
@ -110,6 +110,6 @@ class BattleFrameFlightConverter extends ObjectCreateConverter[Vehicle]() {
|
|||
}
|
||||
|
||||
def showBfrShield(obj: Vehicle): Boolean = {
|
||||
obj.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).get.Enabled && obj.Shields > 0
|
||||
obj.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).exists(_.Enabled) && obj.Shields > 0
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -110,6 +110,6 @@ class BattleFrameRoboticsConverter extends ObjectCreateConverter[Vehicle]() {
|
|||
}
|
||||
|
||||
def showBfrShield(obj: Vehicle): Boolean = {
|
||||
obj.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).get.Enabled && obj.Shields > 0
|
||||
obj.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).exists(_.Enabled) && obj.Shields > 0
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2056,7 +2056,7 @@ object GlobalDefinitionsProjectile {
|
|||
aphelion_plasma_rocket_projectile.DamageAtEdge = .1f
|
||||
aphelion_plasma_rocket_projectile.DamageRadius = 3f
|
||||
aphelion_plasma_rocket_projectile.ProjectileDamageType = DamageType.Splash
|
||||
aphelion_plasma_rocket_projectile.DamageProxy = 96 //aphelion_plama_cloud
|
||||
//aphelion_plasma_rocket_projectile.DamageProxy = 96 //aphelion_plama_cloud
|
||||
aphelion_plasma_rocket_projectile.InitialVelocity = 75
|
||||
aphelion_plasma_rocket_projectile.Lifespan = 5f
|
||||
ProjectileDefinition.CalculateDerivedFields(aphelion_plasma_rocket_projectile)
|
||||
|
|
@ -2221,7 +2221,7 @@ object GlobalDefinitionsProjectile {
|
|||
peregrine_particle_cannon_projectile.DamageAtEdge = 0.1f
|
||||
peregrine_particle_cannon_projectile.DamageRadius = 3f
|
||||
peregrine_particle_cannon_projectile.ProjectileDamageType = DamageType.Splash
|
||||
peregrine_particle_cannon_projectile.DamageProxy = 655 //peregrine_particle_cannon_radiation_cloud
|
||||
//peregrine_particle_cannon_projectile.DamageProxy = 655 //peregrine_particle_cannon_radiation_cloud
|
||||
peregrine_particle_cannon_projectile.InitialVelocity = 500
|
||||
peregrine_particle_cannon_projectile.Lifespan = .6f
|
||||
ProjectileDefinition.CalculateDerivedFields(peregrine_particle_cannon_projectile)
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ object GlobalDefinitionsVehicle {
|
|||
restriction = MaxOnly
|
||||
}
|
||||
|
||||
val controlSubsystem = List(VehicleSubsystemEntry.Controls)
|
||||
val controlSubsystem: List[VehicleSubsystemEntry] = List(VehicleSubsystemEntry.Controls)
|
||||
|
||||
fury.Name = "fury"
|
||||
fury.MaxHealth = 650
|
||||
|
|
@ -1162,7 +1162,7 @@ object GlobalDefinitionsVehicle {
|
|||
bailable = true
|
||||
}
|
||||
|
||||
val flightSubsystems = List(VehicleSubsystemEntry.Controls, VehicleSubsystemEntry.Ejection)
|
||||
val flightSubsystems: List[VehicleSubsystemEntry] = List(VehicleSubsystemEntry.Controls, VehicleSubsystemEntry.Ejection)
|
||||
|
||||
val variantConverter = new VariantVehicleConverter
|
||||
mosquito.Name = "mosquito"
|
||||
|
|
@ -1684,20 +1684,20 @@ object GlobalDefinitionsVehicle {
|
|||
bailable = true
|
||||
}
|
||||
val normalSeat = new SeatDefinition()
|
||||
val bfrSubsystems = List(
|
||||
VehicleSubsystemEntry.BattleframeMovementServos,
|
||||
VehicleSubsystemEntry.BattleframeSensorArray,
|
||||
VehicleSubsystemEntry.BattleframeShieldGenerator,
|
||||
VehicleSubsystemEntry.BattleframeTrunk
|
||||
val bfrSubsystems: List[VehicleSubsystemEntry] = List(
|
||||
// VehicleSubsystemEntry.BattleframeMovementServos,
|
||||
// VehicleSubsystemEntry.BattleframeSensorArray,
|
||||
VehicleSubsystemEntry.BattleframeShieldGenerator//,
|
||||
// VehicleSubsystemEntry.BattleframeTrunk
|
||||
)
|
||||
val bfrGunnerSubsystems = List(
|
||||
val bfrGunnerSubsystems: List[VehicleSubsystemEntry] = List(
|
||||
VehicleSubsystemEntry.BattleframeLeftArm,
|
||||
VehicleSubsystemEntry.BattleframeRightArm,
|
||||
VehicleSubsystemEntry.BattleframeLeftWeapon,
|
||||
VehicleSubsystemEntry.BattleframeRightWeapon,
|
||||
VehicleSubsystemEntry.BattleframeGunnerWeapon
|
||||
VehicleSubsystemEntry.BattleframeRightArm//,
|
||||
// VehicleSubsystemEntry.BattleframeLeftWeapon,
|
||||
// VehicleSubsystemEntry.BattleframeRightWeapon,
|
||||
// VehicleSubsystemEntry.BattleframeGunnerWeapon
|
||||
) ++ bfrSubsystems
|
||||
val bfrFlightSubsystems = List(
|
||||
val bfrFlightSubsystems: List[VehicleSubsystemEntry] = List(
|
||||
VehicleSubsystemEntry.BattleframeFlightLeftArm,
|
||||
VehicleSubsystemEntry.BattleframeFlightRightArm,
|
||||
VehicleSubsystemEntry.BattleframeFlightLeftWeapon,
|
||||
|
|
@ -1735,7 +1735,7 @@ object GlobalDefinitionsVehicle {
|
|||
aphelion_gunner.AutoPilotSpeeds = (5, 1)
|
||||
aphelion_gunner.Packet = battleFrameConverter
|
||||
aphelion_gunner.DestroyedModel = None
|
||||
aphelion_gunner.destructionDelay = Some(4000L)
|
||||
//aphelion_gunner.destructionDelay = Some(4000L)
|
||||
aphelion_gunner.JackingDuration = Array(0, 62, 60, 30)
|
||||
aphelion_gunner.RadiationShielding = 0.5f
|
||||
aphelion_gunner.DamageUsing = DamageCalculations.AgainstBfr
|
||||
|
|
@ -1787,7 +1787,7 @@ object GlobalDefinitionsVehicle {
|
|||
colossus_gunner.AutoPilotSpeeds = (5, 1)
|
||||
colossus_gunner.Packet = battleFrameConverter
|
||||
colossus_gunner.DestroyedModel = None
|
||||
colossus_gunner.destructionDelay = Some(4000L)
|
||||
//colossus_gunner.destructionDelay = Some(4000L)
|
||||
colossus_gunner.JackingDuration = Array(0, 62, 60, 30)
|
||||
colossus_gunner.RadiationShielding = 0.5f
|
||||
colossus_gunner.DamageUsing = DamageCalculations.AgainstBfr
|
||||
|
|
@ -1839,7 +1839,7 @@ object GlobalDefinitionsVehicle {
|
|||
peregrine_gunner.AutoPilotSpeeds = (5, 1)
|
||||
peregrine_gunner.Packet = battleFrameConverter
|
||||
peregrine_gunner.DestroyedModel = None
|
||||
peregrine_gunner.destructionDelay = Some(4000L)
|
||||
//peregrine_gunner.destructionDelay = Some(4000L)
|
||||
peregrine_gunner.JackingDuration = Array(0, 62, 60, 30)
|
||||
peregrine_gunner.RadiationShielding = 0.5f
|
||||
peregrine_gunner.DamageUsing = DamageCalculations.AgainstBfr
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ sealed abstract class VehicleSubsystemConditionModifier(
|
|||
) extends IntEnumEntry
|
||||
|
||||
object VehicleSubsystemConditionModifier extends IntEnum[VehicleSubsystemConditionModifier] {
|
||||
val values = findValues
|
||||
val values: IndexedSeq[VehicleSubsystemConditionModifier] = findValues
|
||||
|
||||
case object Off extends VehicleSubsystemConditionModifier(value = 1065353216, multiplier = 0f, addend = 0)
|
||||
|
||||
|
|
|
|||
|
|
@ -134,7 +134,7 @@ class BfrControl(vehicle: Vehicle)
|
|||
item.asInstanceOf[Tool],
|
||||
dimorph.transform(Handiness.Generic).asInstanceOf[ToolDefinition]
|
||||
)
|
||||
case _ => ; //no dimorphic entry; place as-is
|
||||
case _ => () //no dimorphic entry; place as-is
|
||||
}
|
||||
val guid0 = PlanetSideGUID(0)
|
||||
//if the weapon arm is disabled, enable it for later (makes life easy)
|
||||
|
|
@ -173,7 +173,8 @@ class BfrControl(vehicle: Vehicle)
|
|||
override def dismountCleanup(seatBeingDismounted: Int, player: Player): Unit = {
|
||||
super.dismountCleanup(seatBeingDismounted, player)
|
||||
if (!vehicle.Seats.values.exists(_.isOccupied)) {
|
||||
vehicle.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator) match {
|
||||
vehicle
|
||||
.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator) match {
|
||||
case Some(subsys) =>
|
||||
if (vehicle.Shields > 0) {
|
||||
vehicleSubsystemMessages(
|
||||
|
|
@ -190,7 +191,7 @@ class BfrControl(vehicle: Vehicle)
|
|||
}
|
||||
)
|
||||
}
|
||||
case _ => ;
|
||||
case _ => ()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -203,7 +204,7 @@ class BfrControl(vehicle: Vehicle)
|
|||
if !subsys.Enabled && vehicle.Shields > 0 && subsys.Enabled_=(state = true) =>
|
||||
//if the shield is damaged, it does not turn on until the damaged is cleared
|
||||
vehicleSubsystemMessages(subsys.changedMessages(vehicle))
|
||||
case _ => ;
|
||||
case _ => ()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -425,9 +426,9 @@ class BfrControl(vehicle: Vehicle)
|
|||
zone.id,
|
||||
VehicleAction.GenericObjectAction(doNotSendTo, useThisGuid, action)
|
||||
)
|
||||
case _ => ;
|
||||
case _ => ()
|
||||
}
|
||||
case _ => ;
|
||||
case _ => ()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -602,7 +603,7 @@ class BfrControl(vehicle: Vehicle)
|
|||
)
|
||||
)
|
||||
}
|
||||
case _ => ;
|
||||
case _ => ()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,20 +58,20 @@ class BfrFlightControl(vehicle: Vehicle)
|
|||
case Some(drain) if localFlyingValue.isEmpty =>
|
||||
//shields off
|
||||
disableShield()
|
||||
vehicle.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).get.Enabled = false
|
||||
vehicle.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).map(s => s.Enabled = false)
|
||||
vehicle.Shields -= drain
|
||||
showShieldCharge()
|
||||
case None if localFlyingValue.isEmpty =>
|
||||
//shields off
|
||||
disableShield()
|
||||
vehicle.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).get.Enabled = false
|
||||
vehicle.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).map(s => s.Enabled = false)
|
||||
case Some(drain) =>
|
||||
vehicle.Shields -= drain
|
||||
showShieldCharge()
|
||||
case _ => ;
|
||||
}
|
||||
}
|
||||
if (vehicle.Subsystems(VehicleSubsystemEntry.BattleframeFlightPod).get.Jammed) {
|
||||
if (vehicle.Subsystems(VehicleSubsystemEntry.BattleframeFlightPod).exists(_.Jammed)) {
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -79,7 +79,7 @@ class BfrFlightControl(vehicle: Vehicle)
|
|||
if (flying.nonEmpty) {
|
||||
flying = None
|
||||
vehicle.Flying = None
|
||||
vehicle.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).get.Enabled = true
|
||||
vehicle.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).map(s => s.Enabled = true)
|
||||
if (vehicle.Shields > 0) {
|
||||
enableShield()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -354,7 +354,7 @@ object ResolutionCalculations {
|
|||
{
|
||||
data.cause.source.DamageToBattleframeOnly ||
|
||||
data.cause.source.DamageToVehicleOnly ||
|
||||
!obj.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).get.Enabled ||
|
||||
!obj.Subsystems(VehicleSubsystemEntry.BattleframeShieldGenerator).exists(_.Enabled) ||
|
||||
obj.Shields == 0
|
||||
}
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in a new issue