public Rail_Test() { RailSynchronizedFactory.Detect(Assembly.GetAssembly(typeof(RailBitBufferExtensions))); RailRegistry registryClient = new RailRegistry(Component.Client); registryClient.AddEntityType <RailEntityClient <SomeState>, SomeState>(); RailRegistry registryServer = new RailRegistry(Component.Server); registryServer.AddEntityType <RailEntityServer <SomeState>, SomeState>(); m_Client = new RailClient(registryClient); m_Server = new RailServer(registryServer); m_PeerClientSide = new Mock <RailNetPeerWrapper>(m_ConClientSide) { CallBase = true }; m_PeerServerSide = new Mock <RailNetPeerWrapper>(m_ConServerSide) { CallBase = true }; m_ConClientSide.OnSend += m_PeerServerSide.Object.Receive; m_ConServerSide.OnSend += m_PeerClientSide.Object.Receive; }
public NetServerWrapper(NetCore network, RailServer server) { this.server = server; this.network = network; network.PeerConnected += OnPeerConnected; network.PeerClosed += OnPeerClosed; }
public EntityManager(RailServer server) { m_Server = server ?? throw new ArgumentNullException(nameof(server)); m_Room = m_Server.StartRoom(); InitRoom(m_Room); // Setup callbacks m_Server.ClientAdded += OnClientAdded; m_Server.ClientRemoved += OnClientRemoved; }
public Server(int port, float updateRate) { this.port = port; this.network = new NetCore("NetDemo1.0", true); this.server = new RailServer(); this.wrapper = new NetServerWrapper(network, server); this.arena = new Arena(this.server); this.clock = new Clock(updateRate); this.clock.OnFixedUpdate += this.FixedUpdate; }
public Arena(RailServer server) { this.server = server; server.ControllerJoined += this.OnControllerAdded; server.ControllerLeft += this.OnControllerLeft; for (int i = 0; i < 15; i++) { for (int j = 0; j < 15; j++) { DummyEntity dummy = this.server.AddNewEntity <DummyEntity>(); dummy.State.ArchetypeId = 1; dummy.State.X = i * 5.0f; dummy.State.Y = j * 5.0f; } } }
public CoopServerRail(Server server, IEnvironmentServer environment) { m_Server = server; m_Instance = new RailServer(Registry.Server(environment)); m_EntityManager = new EntityManager(m_Instance); }