public Server(ISettingsProvider settingsProvider) { SettingsProvider = settingsProvider; // Touch TerrainGeneration to load it into app domain FlatlandGenerator.DefaultGeneratorOptions.ToString(); var generator = Level.GetGenerator(SettingsProvider.Get<string>("level.type")); if (generator == null) generator = new FlatlandGenerator(); Level level; if (Directory.Exists(SettingsProvider.Get<string>("level.name"))) level = Level.LoadFrom(SettingsProvider.Get<string>("level.name")); else { level = new Level(generator, SettingsProvider.Get<string>("level.name")); level.AddWorld("overworld"); level.SaveTo(SettingsProvider.Get<string>("level.name")); } MinecraftServer = new MinecraftServer(level); MinecraftServer.Settings.MotD = SettingsProvider.Get<string>("server.motd"); MinecraftServer.Settings.OnlineMode = SettingsProvider.Get<bool>("server.onlinemode"); MinecraftServer.ChatMessage += MinecraftServerOnChatMessage; MinecraftServer.PlayerLoggedIn += MinecraftServerOnPlayerLoggedIn; MinecraftServer.PlayerLoggedOut += MinecraftServerOnPlayerLoggedOut; //MinecraftServer.TabComplete += MinecraftServer_TabComplete; }
internal ReadOnlyWorld() { World = new World("default"); Level = new Level(); Level.AddWorld(World); UnloadChunks = true; }
public void TestCakeItem() { using (var level = new Level(new FlatlandGenerator())) { level.AddWorld("overworld"); Item.OnItemUsedOnBlock(new ItemDescriptor(CakeItem.ItemId), level.DefaultWorld, new Coordinates3D(0, 3, 0), Coordinates3D.Up, Coordinates3D.Zero); Assert.AreEqual(CakeBlock.BlockId, level.DefaultWorld.GetBlockId(new Coordinates3D(0, 4, 0))); } }
public void Initialize(Level level) { if (GeneratorOptions != null) return; if (level != null && !string.IsNullOrEmpty(level.GeneratorOptions)) GeneratorOptions = level.GeneratorOptions; else GeneratorOptions = DefaultGeneratorOptions; if (string.IsNullOrEmpty(GeneratorOptions)) GeneratorOptions = DefaultGeneratorOptions; }
static void Main(string[] args) { if (Directory.Exists("world")) Directory.Delete("world", true); level = new Level(new StandardGenerator(), "world"); level.AddWorld("region"); level.SaveTo("world"); var server = new MinecraftServer(level); server.ChatMessage += server_ChatMessage; server.PlayerLoggedIn += server_PlayerLoggedIn; server.Settings.OnlineMode = true; server.Start(new IPEndPoint(IPAddress.Any, 25565)); Console.WriteLine("Press 'q' to exit"); ConsoleKeyInfo cki; do cki = Console.ReadKey(true); while (cki.KeyChar != 'q'); server.Stop(); }
static void Main(string[] args) { if (Directory.Exists("world")) Directory.Delete("world", true); level = new Level(new StandardGenerator(), "world"); level.AddWorld("region"); level.AddWorld("test", new FlatlandGenerator()); level.Worlds[1].GenerateChunk(Coordinates2D.Zero); level.SaveTo("world"); server = new MinecraftServer(level); server.ChatMessage += server_ChatMessage; server.Settings.OnlineMode = true; server.Settings.MotD = "Craft.Net Test Server"; server.Start(new IPEndPoint(IPAddress.Any, 25565)); Console.WriteLine("Press 'q' to exit"); ConsoleKeyInfo cki; do cki = Console.ReadKey(true); while (cki.KeyChar != 'q'); server.Stop(); }
public Server (int port, bool onlineMode, int maxPlayers, String motd, int difficulty, String levelName, String levelType, GameMode gamemode, String ingameMOTD) { var level = new Level (); if (levelType == "FLAT") { var generator = new FlatlandGenerator (); level = new Level (generator); } else if (levelType == "NORMAL") { var generator = new StandardGenerator (); level = new Level (generator); } level.AddWorld ("overworld"); this.server = new MinecraftServer (level); this.server.Settings.MotD = motd; this.server.Settings.OnlineMode = onlineMode; this.server.Settings.MaxPlayers = (byte)maxPlayers; this.server.Settings.Difficulty = (Difficulty)difficulty; this.server.PlayerLoggedIn += OnPlayerLoggedIn; this.server.ChatMessage += OnPlayerChatMessage; this.server.PlayerLoggedOut += OnPlayerLoggedOut; this.server.Level.GameMode = gamemode; this.port = port; this.ingameMOTD = ingameMOTD; }
public MinecraftServer(Level level, ServerSettings settings) : this(level) { Settings = settings; }
public MinecraftServer(Level level) : this() { Level = level; }
/// <summary> /// Called after the world generator is created and /// all values are set. /// </summary> public void Initialize(Level level) { const double persistence = 1, frequency = 0.01, amplitude = 80; int octaves = 2; noise = new Noise(persistence, frequency, amplitude, octaves, (int)Seed); SpawnPoint = new Vector3(0, GetHeight(0, 0), 0); }
private static void CreateNewPlayer(Level level, RemoteClient client) { client.Entity = new PlayerEntity(client.Username); client.Entity.Position = level.Spawn; client.Entity.SpawnPoint = level.Spawn; client.GameMode = level.GameMode; }