mirror of
https://github.com/2revoemag/PSF-BotServer.git
synced 2026-04-29 07:45:26 +00:00
Zones:
Added continent stubs to InterstellarCluster init list. All Maps and Zones are defined in temporary objects that may be subdivided further as they grow. Builder: Replaced trait ServerObjectBuilder[A] with class ServerObjectBuilder[A] that allows for much greater power. In ZoneMap.Init override, LocalObject invocations that were previously 'LocalBuilder(FooObjectBuilder(ObjectDefintion, Int))` have been transformed into `LocalObject(ServerObjectBuilder(Int, (Int=>Foo))` where `Foo` is the type of object to be created by the curried function `(Int)=>Foo`. The examples with Terminals and the VehicleSpawnPad should demonstrate what kind of power this syntax possesses in isolating constant (or at least initial) configuration settings. At least five files, and some files not yet written, have been rendered obsolete and have been eliminated from the sim pertaining to these created objects.
This commit is contained in:
parent
01c5d37aef
commit
17a8b8bf38
18 changed files with 417 additions and 337 deletions
150
pslogin/src/main/scala/Maps.scala
Normal file
150
pslogin/src/main/scala/Maps.scala
Normal file
|
|
@ -0,0 +1,150 @@
|
|||
// Copyright (c) 2017 PSForever
|
||||
import net.psforever.objects.zones.ZoneMap
|
||||
import net.psforever.objects.GlobalDefinitions._
|
||||
import net.psforever.objects.serverobject.ServerObjectBuilder
|
||||
import net.psforever.objects.serverobject.doors.Door
|
||||
import net.psforever.objects.serverobject.implantmech.ImplantTerminalMech
|
||||
import net.psforever.objects.serverobject.locks.IFFLock
|
||||
import net.psforever.objects.serverobject.pad.VehicleSpawnPad
|
||||
import net.psforever.objects.serverobject.terminals.Terminal
|
||||
import net.psforever.types.Vector3
|
||||
|
||||
object Maps {
|
||||
val map1 = new ZoneMap("map01")
|
||||
|
||||
val map2 = new ZoneMap("map02")
|
||||
|
||||
val map3 = new ZoneMap("map03")
|
||||
|
||||
val map4 = new ZoneMap("map04")
|
||||
|
||||
val map5 = new ZoneMap("map05")
|
||||
|
||||
val map6 = new ZoneMap("map06")
|
||||
|
||||
val map7 = new ZoneMap("map07")
|
||||
|
||||
val map8 = new ZoneMap("map08")
|
||||
|
||||
val map9 = new ZoneMap("map09")
|
||||
|
||||
val map10 = new ZoneMap("map10")
|
||||
|
||||
val map11 = new ZoneMap("map11")
|
||||
|
||||
val map12 = new ZoneMap("map12")
|
||||
|
||||
val map13 = new ZoneMap("map13") {
|
||||
LocalObject(ServerObjectBuilder(330, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(332, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(362, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(370, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(371, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(372, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(373, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(374, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(375, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(394, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(395, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(396, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(397, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(398, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(462, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(463, Door.Constructor))
|
||||
LocalObject(ServerObjectBuilder(520, ImplantTerminalMech.Constructor)) //Hart B
|
||||
LocalObject(ServerObjectBuilder(522, ImplantTerminalMech.Constructor)) //Hart C
|
||||
LocalObject(ServerObjectBuilder(523, ImplantTerminalMech.Constructor)) //Hart C
|
||||
LocalObject(ServerObjectBuilder(524, ImplantTerminalMech.Constructor)) //Hart C
|
||||
LocalObject(ServerObjectBuilder(525, ImplantTerminalMech.Constructor)) //Hart C
|
||||
LocalObject(ServerObjectBuilder(526, ImplantTerminalMech.Constructor)) //Hart C
|
||||
LocalObject(ServerObjectBuilder(527, ImplantTerminalMech.Constructor)) //Hart C
|
||||
LocalObject(ServerObjectBuilder(528, ImplantTerminalMech.Constructor)) //Hart C
|
||||
LocalObject(ServerObjectBuilder(529, ImplantTerminalMech.Constructor)) //Hart C
|
||||
LocalObject(ServerObjectBuilder(556, IFFLock.Constructor))
|
||||
LocalObject(ServerObjectBuilder(558, IFFLock.Constructor))
|
||||
LocalObject(ServerObjectBuilder(186, Terminal.Constructor(cert_terminal)))
|
||||
LocalObject(ServerObjectBuilder(187, Terminal.Constructor(cert_terminal)))
|
||||
LocalObject(ServerObjectBuilder(188, Terminal.Constructor(cert_terminal)))
|
||||
LocalObject(ServerObjectBuilder(853, Terminal.Constructor(order_terminal)))
|
||||
LocalObject(ServerObjectBuilder(855, Terminal.Constructor(order_terminal)))
|
||||
LocalObject(ServerObjectBuilder(860, Terminal.Constructor(order_terminal)))
|
||||
LocalObject(ServerObjectBuilder(1081, Terminal.Constructor(implant_terminal_interface))) //tube 520
|
||||
LocalObject(ServerObjectBuilder(1082, Terminal.Constructor(implant_terminal_interface))) //TODO guid not correct
|
||||
LocalObject(ServerObjectBuilder(1083, Terminal.Constructor(implant_terminal_interface))) //TODO guid not correct
|
||||
LocalObject(ServerObjectBuilder(1084, Terminal.Constructor(implant_terminal_interface))) //TODO guid not correct
|
||||
LocalObject(ServerObjectBuilder(1085, Terminal.Constructor(implant_terminal_interface))) //TODO guid not correct
|
||||
LocalObject(ServerObjectBuilder(1086, Terminal.Constructor(implant_terminal_interface))) //TODO guid not correct
|
||||
LocalObject(ServerObjectBuilder(1087, Terminal.Constructor(implant_terminal_interface))) //TODO guid not correct
|
||||
LocalObject(ServerObjectBuilder(1088, Terminal.Constructor(implant_terminal_interface))) //TODO guid not correct
|
||||
LocalObject(ServerObjectBuilder(1089, Terminal.Constructor(implant_terminal_interface))) //TODO guid not correct
|
||||
LocalObject(ServerObjectBuilder(1063, Terminal.Constructor(ground_vehicle_terminal)))
|
||||
LocalObject(ServerObjectBuilder(500,
|
||||
VehicleSpawnPad.Constructor(Vector3(3506.0f, 2820.0f, 92.0f), Vector3(0f, 0f, 270.0f))
|
||||
)) //TODO guid not correct
|
||||
LocalObject(ServerObjectBuilder(304, Terminal.Constructor(dropship_vehicle_terminal)))
|
||||
LocalObject(ServerObjectBuilder(501,
|
||||
VehicleSpawnPad.Constructor(Vector3(3508.9844f, 2895.961f, 92.296875f), Vector3(0f, 0f, 270.0f))
|
||||
)) //TODO guid not correct
|
||||
|
||||
LocalBases = 30
|
||||
|
||||
ObjectToBase(330, 29)
|
||||
ObjectToBase(332, 29)
|
||||
//ObjectToBase(520, 29)
|
||||
ObjectToBase(522, 29)
|
||||
ObjectToBase(523, 29)
|
||||
ObjectToBase(524, 29)
|
||||
ObjectToBase(525, 29)
|
||||
ObjectToBase(526, 29)
|
||||
ObjectToBase(527, 29)
|
||||
ObjectToBase(528, 29)
|
||||
ObjectToBase(529, 29)
|
||||
ObjectToBase(556, 29)
|
||||
ObjectToBase(558, 29)
|
||||
ObjectToBase(1081, 29)
|
||||
ObjectToBase(1063, 2) //TODO unowned courtyard terminal?
|
||||
ObjectToBase(500, 2) //TODO unowned courtyard spawnpad?
|
||||
ObjectToBase(304, 2) //TODO unowned courtyard terminal?
|
||||
ObjectToBase(501, 2) //TODO unowned courtyard spawnpad?
|
||||
|
||||
DoorToLock(330, 558)
|
||||
DoorToLock(332, 556)
|
||||
TerminalToSpawnPad(1063, 500)
|
||||
TerminalToSpawnPad(304, 501)
|
||||
TerminalToInterface(520, 1081)
|
||||
TerminalToInterface(522, 1082)
|
||||
TerminalToInterface(523, 1083)
|
||||
TerminalToInterface(524, 1084)
|
||||
TerminalToInterface(525, 1085)
|
||||
TerminalToInterface(526, 1086)
|
||||
TerminalToInterface(527, 1087)
|
||||
TerminalToInterface(528, 1088)
|
||||
TerminalToInterface(529, 1089)
|
||||
}
|
||||
|
||||
val map14 = new ZoneMap("map13")
|
||||
|
||||
val map15 = new ZoneMap("map13")
|
||||
|
||||
val map16 = new ZoneMap("map13")
|
||||
|
||||
val ugd01 = new ZoneMap("ugd01")
|
||||
|
||||
val ugd02 = new ZoneMap("ugd02")
|
||||
|
||||
val ugd03 = new ZoneMap("ugd03")
|
||||
|
||||
val ugd04 = new ZoneMap("ugd04")
|
||||
|
||||
val ugd05 = new ZoneMap("ugd05")
|
||||
|
||||
val ugd06 = new ZoneMap("ugd06")
|
||||
|
||||
val map96 = new ZoneMap("ugd06")
|
||||
|
||||
val map97 = new ZoneMap("map97")
|
||||
|
||||
val map98 = new ZoneMap("map98")
|
||||
|
||||
val map99 = new ZoneMap("map99")
|
||||
}
|
||||
|
|
@ -3,7 +3,7 @@ import java.net.InetAddress
|
|||
import java.io.File
|
||||
import java.util.Locale
|
||||
|
||||
import akka.actor.{ActorContext, ActorRef, ActorSystem, Props}
|
||||
import akka.actor.{ActorRef, ActorSystem, Props}
|
||||
import akka.routing.RandomPool
|
||||
import ch.qos.logback.classic.LoggerContext
|
||||
import ch.qos.logback.classic.joran.JoranConfigurator
|
||||
|
|
@ -14,8 +14,6 @@ import com.typesafe.config.ConfigFactory
|
|||
import net.psforever.crypto.CryptoInterface
|
||||
import net.psforever.objects.zones._
|
||||
import net.psforever.objects.guid.TaskResolver
|
||||
import net.psforever.objects.serverobject.builders._
|
||||
import net.psforever.types.Vector3
|
||||
import org.slf4j
|
||||
import org.fusesource.jansi.Ansi._
|
||||
import org.fusesource.jansi.Ansi.Color._
|
||||
|
|
@ -228,116 +226,15 @@ object PsLogin {
|
|||
}
|
||||
|
||||
def createContinents() : List[Zone] = {
|
||||
val map13 = new ZoneMap("map13") {
|
||||
import net.psforever.objects.GlobalDefinitions._
|
||||
|
||||
LocalObject(DoorObjectBuilder(door, 330))
|
||||
LocalObject(DoorObjectBuilder(door, 332))
|
||||
LocalObject(DoorObjectBuilder(door, 362))
|
||||
LocalObject(DoorObjectBuilder(door, 370))
|
||||
LocalObject(DoorObjectBuilder(door, 371))
|
||||
LocalObject(DoorObjectBuilder(door, 372))
|
||||
LocalObject(DoorObjectBuilder(door, 373))
|
||||
LocalObject(DoorObjectBuilder(door, 374))
|
||||
LocalObject(DoorObjectBuilder(door, 375))
|
||||
LocalObject(DoorObjectBuilder(door, 394))
|
||||
LocalObject(DoorObjectBuilder(door, 395))
|
||||
LocalObject(DoorObjectBuilder(door, 396))
|
||||
LocalObject(DoorObjectBuilder(door, 397))
|
||||
LocalObject(DoorObjectBuilder(door, 398))
|
||||
LocalObject(DoorObjectBuilder(door, 462))
|
||||
LocalObject(DoorObjectBuilder(door, 463))
|
||||
LocalObject(ImplantTerminalMechObjectBuilder(implant_terminal_mech, 520)) //Hart B
|
||||
LocalObject(ImplantTerminalMechObjectBuilder(implant_terminal_mech, 522)) //Hart C
|
||||
LocalObject(ImplantTerminalMechObjectBuilder(implant_terminal_mech, 523)) //Hart C
|
||||
LocalObject(ImplantTerminalMechObjectBuilder(implant_terminal_mech, 524)) //Hart C
|
||||
LocalObject(ImplantTerminalMechObjectBuilder(implant_terminal_mech, 525)) //Hart C
|
||||
LocalObject(ImplantTerminalMechObjectBuilder(implant_terminal_mech, 526)) //Hart C
|
||||
LocalObject(ImplantTerminalMechObjectBuilder(implant_terminal_mech, 527)) //Hart C
|
||||
LocalObject(ImplantTerminalMechObjectBuilder(implant_terminal_mech, 528)) //Hart C
|
||||
LocalObject(ImplantTerminalMechObjectBuilder(implant_terminal_mech, 529)) //Hart C
|
||||
LocalObject(IFFLockObjectBuilder(lock_external, 556))
|
||||
LocalObject(IFFLockObjectBuilder(lock_external, 558))
|
||||
LocalObject(TerminalObjectBuilder(cert_terminal, 186))
|
||||
LocalObject(TerminalObjectBuilder(cert_terminal, 187))
|
||||
LocalObject(TerminalObjectBuilder(cert_terminal, 188))
|
||||
LocalObject(TerminalObjectBuilder(order_terminal, 853))
|
||||
LocalObject(TerminalObjectBuilder(order_terminal, 855))
|
||||
LocalObject(TerminalObjectBuilder(order_terminal, 860))
|
||||
LocalObject(TerminalObjectBuilder(implant_terminal_interface, 1081)) //tube 520
|
||||
LocalObject(TerminalObjectBuilder(implant_terminal_interface, 1082)) //TODO guid not correct
|
||||
LocalObject(TerminalObjectBuilder(implant_terminal_interface, 1083)) //TODO guid not correct
|
||||
LocalObject(TerminalObjectBuilder(implant_terminal_interface, 1084)) //TODO guid not correct
|
||||
LocalObject(TerminalObjectBuilder(implant_terminal_interface, 1085)) //TODO guid not correct
|
||||
LocalObject(TerminalObjectBuilder(implant_terminal_interface, 1086)) //TODO guid not correct
|
||||
LocalObject(TerminalObjectBuilder(implant_terminal_interface, 1087)) //TODO guid not correct
|
||||
LocalObject(TerminalObjectBuilder(implant_terminal_interface, 1088)) //TODO guid not correct
|
||||
LocalObject(TerminalObjectBuilder(implant_terminal_interface, 1089)) //TODO guid not correct
|
||||
LocalObject(TerminalObjectBuilder(ground_vehicle_terminal, 1063))
|
||||
LocalObject(VehicleSpawnPadObjectBuilder(spawn_pad, 500)) //TODO guid not correct
|
||||
LocalObject(TerminalObjectBuilder(dropship_vehicle_terminal, 304))
|
||||
LocalObject(VehicleSpawnPadObjectBuilder(spawn_pad, 501)) //TODO guid not correct
|
||||
|
||||
LocalBases = 30
|
||||
|
||||
ObjectToBase(330, 29)
|
||||
ObjectToBase(332, 29)
|
||||
//ObjectToBase(520, 29)
|
||||
ObjectToBase(522, 29)
|
||||
ObjectToBase(523, 29)
|
||||
ObjectToBase(524, 29)
|
||||
ObjectToBase(525, 29)
|
||||
ObjectToBase(526, 29)
|
||||
ObjectToBase(527, 29)
|
||||
ObjectToBase(528, 29)
|
||||
ObjectToBase(529, 29)
|
||||
ObjectToBase(556, 29)
|
||||
ObjectToBase(558, 29)
|
||||
ObjectToBase(1081, 29)
|
||||
ObjectToBase(1063, 2) //TODO unowned courtyard terminal?
|
||||
ObjectToBase(500, 2) //TODO unowned courtyard spawnpad?
|
||||
ObjectToBase(304, 2) //TODO unowned courtyard terminal?
|
||||
ObjectToBase(501, 2) //TODO unowned courtyard spawnpad?
|
||||
|
||||
DoorToLock(330, 558)
|
||||
DoorToLock(332, 556)
|
||||
TerminalToSpawnPad(1063, 500)
|
||||
TerminalToSpawnPad(304, 501)
|
||||
TerminalToInterface(520, 1081)
|
||||
TerminalToInterface(522, 1082)
|
||||
TerminalToInterface(523, 1083)
|
||||
TerminalToInterface(524, 1084)
|
||||
TerminalToInterface(525, 1085)
|
||||
TerminalToInterface(526, 1086)
|
||||
TerminalToInterface(527, 1087)
|
||||
TerminalToInterface(528, 1088)
|
||||
TerminalToInterface(529, 1089)
|
||||
}
|
||||
val home3 = new Zone("home3", map13, 13) {
|
||||
override def Init(implicit context : ActorContext) : Unit = {
|
||||
super.Init(context)
|
||||
|
||||
import net.psforever.types.PlanetSideEmpire
|
||||
Base(2).get.Faction = PlanetSideEmpire.VS //HART building C
|
||||
Base(29).get.Faction = PlanetSideEmpire.NC //South Villa Gun Tower
|
||||
|
||||
GUID(500) match {
|
||||
case Some(pad) =>
|
||||
pad.Position = Vector3(3506.0f, 2820.0f, 92.0f)
|
||||
pad.Orientation = Vector3(0f, 0f, 270.0f)
|
||||
case None => ;
|
||||
}
|
||||
GUID(501) match {
|
||||
case Some(pad) =>
|
||||
pad.Position = Vector3(3508.9844f, 2895.961f, 92.296875f)
|
||||
pad.Orientation = Vector3(0f, 0f, 270.0f)
|
||||
case None => ;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
home3 ::
|
||||
Nil
|
||||
import Zones._
|
||||
List(
|
||||
z1, z2, z3, z4, z5, z6, z7, z8, z9, z10,
|
||||
home1, tzshtr, tzdrtr, tzcotr,
|
||||
home2, tzshnc, tzdrnc, tzconc,
|
||||
home3, tzshvs, tzdrvs, tzcovs,
|
||||
c1, c2, c3, c4, c5, c6,
|
||||
i1, i2, i3, i4
|
||||
)
|
||||
}
|
||||
|
||||
def main(args : Array[String]) : Unit = {
|
||||
|
|
|
|||
77
pslogin/src/main/scala/Zones.scala
Normal file
77
pslogin/src/main/scala/Zones.scala
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
// Copyright (c) 2017 PSForever
|
||||
import akka.actor.ActorContext
|
||||
import net.psforever.objects.zones.Zone
|
||||
|
||||
object Zones {
|
||||
val z1 = new Zone("z1", Maps.map1, 1)
|
||||
|
||||
val z2 = new Zone("z2", Maps.map2, 2)
|
||||
|
||||
val z3 = new Zone("z3", Maps.map3, 3)
|
||||
|
||||
val z4 = new Zone("z4", Maps.map4, 4)
|
||||
|
||||
val z5 = new Zone("z5", Maps.map5, 5)
|
||||
|
||||
val z6 = new Zone("z6", Maps.map6, 6)
|
||||
|
||||
val z7 = new Zone("z7", Maps.map7, 7)
|
||||
|
||||
val z8 = new Zone("z8", Maps.map8, 8)
|
||||
|
||||
val z9 = new Zone("z9", Maps.map9, 9)
|
||||
|
||||
val z10 = new Zone("z10", Maps.map10, 10)
|
||||
|
||||
val home1 = new Zone("home1", Maps.map11, 11)
|
||||
|
||||
val home2 = new Zone("home2", Maps.map12, 12)
|
||||
|
||||
val home3 = new Zone("home3", Maps.map13, 13) {
|
||||
override def Init(implicit context : ActorContext) : Unit = {
|
||||
super.Init(context)
|
||||
|
||||
import net.psforever.types.PlanetSideEmpire
|
||||
Base(2).get.Faction = PlanetSideEmpire.VS //HART building C
|
||||
Base(29).get.Faction = PlanetSideEmpire.NC //South Villa Gun Tower
|
||||
}
|
||||
}
|
||||
|
||||
val tzshtr = new Zone("tzshtr", Maps.map14, 14)
|
||||
|
||||
val tzdrtr = new Zone("tzsdrtr", Maps.map15, 15)
|
||||
|
||||
val tzcotr = new Zone("tzcotr", Maps.map16, 16)
|
||||
|
||||
val tzshnc = new Zone("tzshnc", Maps.map14, 17)
|
||||
|
||||
val tzdrnc = new Zone("tzdrnc", Maps.map15, 18)
|
||||
|
||||
val tzconc = new Zone("tzconc", Maps.map16, 19)
|
||||
|
||||
val tzshvs = new Zone("tzshvs", Maps.map14, 20)
|
||||
|
||||
val tzdrvs = new Zone("tzdrvs", Maps.map15, 21)
|
||||
|
||||
val tzcovs = new Zone("tzcovs", Maps.map16, 22)
|
||||
|
||||
val c1 = new Zone("c1", Maps.ugd01, 23)
|
||||
|
||||
val c2 = new Zone("c2", Maps.ugd02, 24)
|
||||
|
||||
val c3 = new Zone("c3", Maps.ugd03, 25)
|
||||
|
||||
val c4 = new Zone("c4", Maps.ugd04, 26)
|
||||
|
||||
val c5 = new Zone("c5", Maps.ugd05, 27)
|
||||
|
||||
val c6 = new Zone("c6", Maps.ugd06, 28)
|
||||
|
||||
val i1 = new Zone("i1", Maps.map96, 29)
|
||||
|
||||
val i2 = new Zone("i2", Maps.map97, 30)
|
||||
|
||||
val i3 = new Zone("i3", Maps.map98, 31)
|
||||
|
||||
val i4 = new Zone("i4", Maps.map99, 32)
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue