public abstract_generator generator; // : abstract_generator public in_game_setup(GeneratorType generatorType = GeneratorType.simple) { int seed = PlayerPrefsWrapper.Get(IntPrefs.setup_seed); List <int> playersUid = SessionBehaviour.GetPlayers(); int tilemapScaleX = PlayerPrefsWrapper.Get(IntPrefs.setup_tilemap_scale_x); int tilemapScaleY = PlayerPrefsWrapper.Get(IntPrefs.setup_tilemap_scale_y); switch (generatorType) { case GeneratorType.simple: generator = new simple(seed, playersUid, tilemapScaleX, tilemapScaleY); break; case GeneratorType.perlin: int octaves = PlayerPrefsWrapper.Get(IntPrefs.setup_octaves); float persistance = PlayerPrefsWrapper.Get(IntPrefs.setup_persistance) / 100f; generator = new perlin(seed, octaves, persistance, playersUid, tilemapScaleX, tilemapScaleY); break; default: throw new ArgumentOutOfRangeException(nameof(generatorType), generatorType, null); } }
public override void Execute() { if (!session_name.IsNullOrEmpty()) { SessionInfoPanel.DrawPanel(this); PlayerPrefsWrapper.Set(StrPrefs.session_name, session_name); SessionBehaviour.SetSessionName(session_name); } if (players_uid != null) { PlayersScrollList.DrawScrollList(players_uid); SessionBehaviour.SetPlayers(players_uid); } if (!state.IsNullOrEmpty()) { PlayerPrefsWrapper.Set(StrPrefs.state, state); SessionBehaviour.SetState(state); } if (game != null) { game.Execute(); } }