public bool Start(NewPlayerInfo playerInfo, int port) { listener = new EventBasedNetListener(); server = new NetManager(listener); localPacketProcessor = new NetPacketProcessor(); Console.WriteLine("started instances..."); localPacketProcessor.SubscribeReusable <ZeroGPacket, NetPeer>(OnDataRecieve); if (!server.Start(port)) { Console.WriteLine("Failed to start server"); //return false; throw new Exception("Failed to start server..."); } newPlayerData = playerInfo; listener.ConnectionRequestEvent += Listener_ConnectionRequestEvent; listener.NetworkReceiveEvent += Listener_NetworkReceiveEvent; listener.PeerConnectedEvent += Listener_PeerConnectedEvent; listener.PeerDisconnectedEvent += Listener_PeerDisconnectedEvent; zeroPacketProcessor = new ProcessPacket(); InstanceKeeper.SetServerinstance(this); GetEvents(); // while (/*!Console.KeyAvailable*/1-1==0) //{ // server.PollEvents(); // Thread.Sleep(15); // } // this.server.Stop(); return(true); }
public static void PopulateDefaults(NewPlayerInfo info) { SettingsStore.Set(Setting_Health, info.Health); SettingsStore.Set(Setting_MaxHealth, info.MaxHealth); SettingsStore.Set(Setting_Mana, info.Mana); SettingsStore.Set(Setting_MaxMana, info.MaxMana); if (info.Inventory != null) { foreach (var item in info.Inventory) { var id = ItemTable.NewItem(CharacterManager.ItemType.Inventory, item.NetId, item.Stack, item.Prefix, item.Favorite, item.Slot); AddItem(id); } } if (info.Armor != null) { foreach (var item in info.Armor) { var id = ItemTable.NewItem(CharacterManager.ItemType.Armor, item.NetId, item.Stack, item.Prefix, item.Favorite, item.Slot); AddItem(id); } } if (info.Dye != null) { foreach (var item in info.Dye) { var id = ItemTable.NewItem(CharacterManager.ItemType.Dye, item.NetId, item.Stack, item.Prefix, item.Favorite, item.Slot); AddItem(id); } } }
public void AddPlayer(NewPlayerInfo info) { var player = playerFactory.CreatePlayer(info); Players.Add(player); RaisePropertyChanged(nameof(Players)); }
public void StartServer(int maxPlayers, string levelName, bool isReverse, int port) { server = new Server(); npi = new NewPlayerInfo(); players = new Players(); InstanceKeeper.players = players; pManager = new PlayerManager(server, players, levelName, isReverse, maxPlayers); InstanceKeeper.playerManager = pManager; server.Start(npi, port); }
public PlayerModel CreatePlayer(NewPlayerInfo info) { var player = ServiceLocator.Current.GetInstance <PlayerModel>(); player.FirstName = info.FirstName; player.LastName = info.LastName; player.Id = info.Id; return(player); }
static void Main(string[] args) { Console.WriteLine("----ZeroG Server----"); Console.WriteLine("Developed by DarkShadow"); Console.WriteLine("Starting server..."); Server server = new Server(); NewPlayerInfo npi = new NewPlayerInfo(); Players players = new Players(); InstanceKeeper.players = players; PlayerManager pManager = new PlayerManager(server, players, "Urban_02", true, 2); InstanceKeeper.playerManager = pManager; server.Start(npi, 6001); Console.ReadLine(); //Currently, all the server code is dumped in one place, ill fix it when i get time }
public void AddPlayerAction(object data) { var window = new AddPlayerWindow(); window.ShowDialog(); if (!window.IsCanceled) { var info = new NewPlayerInfo() { FirstName = window.FirstName, LastName = window.LastName, Id = window.Id }; _eventAggregator.GetEvent <PlayerAdded>().Publish(info); } }