Beispiel #1
0
        public void Tick()
        {
            var players = PlayerStorage.GetPlayers();
            var finish  = FieldStorage.GetFinishes();

            foreach (var player in players)
            {
                if (player.IsSpotted)
                {
                    _gameLoopView.ShowLoseGame();
                    GameIsOver = true;
                }
            }

            if (finish.NodeIsTouched)
            {
                _gameLoopView.ShowWinGame();
                GameIsOver = true;
            }

            if (GameIsOver)
            {
                if (Input.GetKeyDown(KeyCode.Space))
                {
                    Restart();
                }
            }
        }
Beispiel #2
0
        /// <summary>
        /// Remove the default values that we don't actually need
        /// </summary>
        public void RemoveDefaultValues()
        {
            const FieldStorage defaultStorage = FieldStorage.No;

            foreach (var toRemove in Stores.Where(x => x.Value == defaultStorage).ToArray())
            {
                Stores.Remove(toRemove);
            }
            foreach (var toRemove in Indexes.Where(x => x.Value == FieldIndexing.Default).ToArray())
            {
                Indexes.Remove(toRemove);
            }
            foreach (var toRemove in SortOptions.Where(x => x.Value == Indexing.SortOptions.None).ToArray())
            {
                SortOptions.Remove(toRemove);
            }
            foreach (var toRemove in Analyzers.Where(x => string.IsNullOrEmpty(x.Value)).ToArray())
            {
                Analyzers.Remove(toRemove);
            }
            foreach (var toRemove in Suggestions.Where(x => x.Value.Distance == StringDistanceTypes.None).ToArray())
            {
                Suggestions.Remove(toRemove);
            }
            foreach (var toRemove in TermVectors.Where(x => x.Value == FieldTermVector.No).ToArray())
            {
                TermVectors.Remove(toRemove);
            }
        }
        public PlayerController(IPlayerConfig config, IPlayerView view)
        {
            _modelGuid = PlayerStorage.CreateModel(config);
            var model = PlayerStorage.GetItem(_modelGuid);

            var position = FieldStorage.GetPlayerSpawn();

            model.GridPosition       = position;
            model.Position           = GridUtil.ConvertPointToPosition(position);
            model.GridTargetPosition = position;
            model.TargetPosition     = GridUtil.ConvertPointToPosition(position);

            _playerView = view;
        }
        public static Field.Store GetLuceneValue(this FieldStorage value)
        {
            switch (value)
            {
            case FieldStorage.Yes:
                return(Field.Store.YES);

            case FieldStorage.No:
                return(Field.Store.NO);

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
Beispiel #5
0
        public FieldController(FieldConfig config, IFieldView view)
        {
            var _fieldModel = new FieldModel(config);

            foreach (var nodeConfig in config._field)
            {
                Node node = null;
                switch (nodeConfig.CellType)
                {
                case FieldConfigEnum.Floor:
                    node = view.CreatePassableNode(new Vector3(nodeConfig.X, 0, nodeConfig.Y));
                    break;

                case FieldConfigEnum.Spawn:
                    node = view.SpawnPlayer(new Vector3(nodeConfig.X, 0, nodeConfig.Y));
                    break;

                case FieldConfigEnum.Wall:
                    node = view.CreateImpassableNode(new Vector3(nodeConfig.X, 0, nodeConfig.Y));
                    break;

                case FieldConfigEnum.Exit:
                    node = view.CreateExit(new Vector3(nodeConfig.X, 0, nodeConfig.Y));
                    break;

                default:
                    Debug.LogError("invalid node type");
                    break;
                }
                node.Point.X = nodeConfig.X;
                node.Point.Z = nodeConfig.Y;
                _fieldModel.SetNode(node);
            }

            FieldStorage.UpdateField(_fieldModel);
        }
Beispiel #6
0
 /// <summary>
 /// Register a field to be stored
 /// </summary>
 protected void Store(string field, FieldStorage storage)
 {
     StoresStrings.Add(field, storage);
 }
Beispiel #7
0
 protected void StoreAllFields(FieldStorage storage)
 {
     StoresStrings.Add(Constants.Documents.Indexing.Fields.AllFields, storage);
 }
Beispiel #8
0
 /// <summary>
 /// Register a field to be stored
 /// </summary>
 protected void Store(Expression <Func <TReduceResult, object> > field, FieldStorage storage)
 {
     Stores.Add(field, storage);
 }
Beispiel #9
0
 private bool IsDefaultValue(FieldStorage val)
 {
     return(val == FieldStorage.No);
 }
Beispiel #10
0
 public NativeLayoutFieldDesc(DefType owningType, TypeDesc fieldType, FieldStorage fieldStorage)
 {
     _owningType   = owningType;
     _fieldType    = fieldType;
     _fieldStorage = fieldStorage;
 }
 protected void StoreAllFields(FieldStorage storage)
 {
     StoresStrings.Add(Constants.AllFields, storage);
 }
 public NativeLayoutFieldDesc(DefType owningType, TypeDesc fieldType, FieldStorage fieldStorage)
 {
     _owningType = owningType;
     _fieldType = fieldType;
     _fieldStorage = fieldStorage;
 }
            public void FillDictData(string[] namesArr, FieldStorage[] storesArr, string[] analArr, SuggestionOptions[] sugArr)
            {
                for (int i = 0; i < namesArr.Length; i++)
                {
                    Fields.Add(namesArr[i]);

                    Stores.Add(namesArr[i], storesArr[i]);
                    Analyzers.Add(namesArr[i], analArr[i]);
                    Suggestions.Add(namesArr[i], sugArr[i]);


                }

            }