Exemple #1
0
    // Start is called before the first frame update
    void Start()
    {
        if (_fieldInfo == null)
        {
            _fieldInfo = this.GetComponent <FieldInfomation>();
        }
        _fieldInfo.CreateMapDatas();
        if (!_isTestCreate)
        {
            //Spawn Item
            SpawnObjects(_fieldInfo.Parameter.SpawnItemValue, SpawnType.Item);
        }
        else
        {
            TestCreateMapDatas();
        }

        GameState.Instance.R_Score
        .Where(_ => EnemyManager.Instance)
        .Where(x => x >= EnemyManager.Instance.NextSpawnScore)
        .Subscribe(x => SpawnEnemy() /*SpawnObjects(_fieldInfo.Parameter.SpawnEnemyValue, SpawnType.Enemy)*/)
        .AddTo(this);

        //テスト用
        //GameState.Instance.R_Score
        //			.Where(_ => GameState.Instance.Score >= _testNextSpawnPoint)
        //			.Subscribe(x => SpawnEnemy()/*SpawnObjects(_fieldInfo.Parameter.SpawnEnemyValue, SpawnType.Enemy)*/)
        //			.AddTo(this);
    }
        public void Save()
        {
            var list = new List <FieldInfomation>();

            foreach (var pair in pairList)
            {
                var value = pair.fieldInfo.GetValue(setting);

                var typeName  = pair.fieldInfo.FieldType.Name;
                var fieldName = pair.fieldInfo.Name;
                var info      = new FieldInfomation(fieldName, typeName, value);
                list.Add(info);
            }
            IOHandler.SaveJson(IOHandler.IntoStreamingAssets(fileName), list);
            setting.OnSaved();
        }