public void Parse(ServerUpdate serverUpdate, int offsetX, int offsetY, int offsetZ) { for (uint x = 0; x < Frame1.Length; x++) { byte[] colors = BitConverter.GetBytes(Frame1[x][3]); //3=red 2=green 1=blue 0=alpha var blockDelta = new ServerUpdate.BlockDelta() { position = new IntVector() { x = (int)(Frame1[x][0] + offsetX), y = (int)(Frame1[x][2] + offsetY), z = (int)(Frame1[x][1] + offsetZ) }, color = new ByteVector() { x = colors[3], y = colors[2], z = colors[1] }, type = (colors[3] == 0 && colors[2] == 0 && colors[1] == 0xFF) ? BlockType.Liquid : BlockType.Solid, unknown = 0 }; serverUpdate.blockDeltas.Add(blockDelta); } }
public ServerUDP(int port) { if (File.Exists(bansFilePath)) { bans = JsonConvert.DeserializeObject <List <Ban> >(File.ReadAllText(bansFilePath)); } else { Console.WriteLine("no bans file found"); bans = new List <Ban>(); } if (File.Exists(accountsFilePath)) { accounts = JsonConvert.DeserializeObject <Dictionary <string, string> >(File.ReadAllText(accountsFilePath)); } else { Console.WriteLine("no accounts file found"); accounts = new Dictionary <string, string>(); } #region models var rnd = new Random(); for (int i = 8286946; i < 8286946 + 512; i++) { for (int j = 8344456; j < 8344456 + 512; j++) { var block = new ServerUpdate.BlockDelta() { color = new Resources.Utilities.ByteVector() { x = 0, y = 0, z = (byte)rnd.Next(0, 255), }, type = 1, position = new Resources.Utilities.IntVector() { x = i, y = j, z = 208, }, }; worldUpdate.blockDeltas.Add(block); } } //x = 543093329157, //y = 546862296355, //z = 14423162 //ZoxModel model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Fulcnix_exceedspawn.zox")); //model.Parse(worldUpdate, 8286883, 8344394, 200); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_Tavern2.zox")); //model.Parse(worldUpdate, 8287010, 8344432, 200); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_Tavern1.zox")); //model.Parse(worldUpdate, 8286919, 8344315, 212); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/arena/aster_arena.zox")); //model.Parse(worldUpdate, 8286775, 8344392, 207); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/michael_project1.zox")); //model.Parse(worldUpdate, 8286898, 8344375, 213); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/arena/fulcnix_hall.zox")); //model.Parse(worldUpdate, 8286885, 8344505, 208); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/arena/fulcnix_hall.zox")); //model.Parse(worldUpdate, 8286885, 8344629, 208); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Tiecz_MountainArena.zox")); //model.Parse(worldUpdate, 8286885, 8344759, 208); ////8397006, 8396937, 127 //near spawn //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay11.zox")); //model.Parse(worldUpdate, 8286770, 8344262, 207); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay12.zox")); //model.Parse(worldUpdate, 8286770, 8344136, 207); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay13.zox")); //model.Parse(worldUpdate, 8286770, 8344010, 207); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay14.zox")); //model.Parse(worldUpdate, 8286770, 8344010, 333); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay01.zox")); //model.Parse(worldUpdate, 8286644, 8344010, 333); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay02.zox")); //model.Parse(worldUpdate, 8286118, 8344010, 333); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay03.zox")); //model.Parse(worldUpdate, 8285992, 8344010, 333); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay04.zox")); //model.Parse(worldUpdate, 8285992, 8344136, 333); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay05.zox")); //model.Parse(worldUpdate, 8285992, 8344262, 333); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay06.zox")); //model.Parse(worldUpdate, 8286118, 8344262, 333); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay07.zox")); //model.Parse(worldUpdate, 8286118, 8344136, 333); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay08.zox")); //model.Parse(worldUpdate, 8286244, 8344136, 333); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay09.zox")); //model.Parse(worldUpdate, 8286244, 8344262, 333); //model = JsonConvert.DeserializeObject<ZoxModel>(File.ReadAllText("models/Aster_CloudyDay10.zox")); //model.Parse(worldUpdate, 8286770, 8344262, 333); #endregion Console.WriteLine("loading completed"); udpClient = new UdpClient(new IPEndPoint(IPAddress.Any, port)); new Thread(new ThreadStart(ListenUDP)).Start(); tcpListener = new TcpListener(IPAddress.Any, port); tcpListener.Start(); new Thread(new ThreadStart(ListenTCP)).Start(); }