コード例 #1
0
        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);
            }
        }
コード例 #2
0
 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();
     }
 }