Пример #1
0
        internal virtual void Advance(IAction activity)
        {
            Log.Add("");
            Log.Add(CurrentSeason.ToString() + " " + _seasonList.Count() / 4);
            _seasonList.Add(activity);
            activity.Act(this);
            if (SeasonalAge >= 140)
            {
                Age(LongevityRitual);
            }
            switch (CurrentSeason)
            {
            case Season.Spring:
                CurrentSeason = Season.Summer;
                break;

            case Season.Summer:
                CurrentSeason = Season.Autumn;
                break;

            case Season.Autumn:
                CurrentSeason = Season.Winter;
                break;

            case Season.Winter:
                CurrentSeason = Season.Spring;
                break;
            }
            IsCollaborating = true;
        }
Пример #2
0
        public virtual void Advance()
        {
            if (!IsCollaborating)
            {
                Log.Add("");
                Log.Add(CurrentSeason.ToString() + " " + _seasonList.Count() / 4);
                IAction activity = DecideSeasonalActivity();
                _seasonList.Add(activity);
                activity.Act(this);
                if (SeasonalAge >= 140)
                {
                    Age(LongevityRitual);
                }
                switch (CurrentSeason)
                {
                case Season.Spring:
                    CurrentSeason = Season.Summer;
                    break;

                case Season.Summer:
                    CurrentSeason = Season.Autumn;
                    break;

                case Season.Autumn:
                    CurrentSeason = Season.Winter;
                    break;

                case Season.Winter:
                    CurrentSeason = Season.Spring;
                    break;
                }
            }
            IsCollaborating = false;
            ReprioritizeGoals();
        }
Пример #3
0
 public void Act(GameBoard.GameBoard gameBoard, IAction action)
 {
     if (!IsAlive)
     {
         return;
     }
     action.Act(this, gameBoard);
 }
Пример #4
0
 public virtual void CommitAction(IAction action)
 {
     _seasonList.Add(action);
     action.Act(this);
     if (SeasonalAge >= 140)
     {
         Age(LongevityRitual);
     }
 }
Пример #5
0
        public void AddAction(IAction action)
        {
            runningActions.Add(action);

            if (!action.IsActing)
            {
                action.Act();
            }
        }
Пример #6
0
        public bool Act(T context)
        {
            if (mapFunction == null)
            {
                return(true);
            }

            var value = mapFunction.Invoke(context);

            return(delegateAction.Act(value));
        }
Пример #7
0
        public void RunBufferedAction()
        {
            if (bufferedAction != null)
            {
                if (EntityHasControl)
                {
                    actionRunning = true;
                    bufferedAction.OnActionDone.AddListener(OnActionDone);
                    bufferedAction.Act();
                }

                bufferedAction = null;
            }
        }
Пример #8
0
 public void Pay(Player player, IOcupant ocupant)
 {
     Action.Act(player, ocupant);
 }
Пример #9
0
 internal virtual void Advance(IAction activity)
 {
     Log.Add("");
     Log.Add(CurrentSeason.ToString() + " " + _seasonList.Count() / 4);
     _seasonList.Add(activity);
     activity.Act(this);
     if (SeasonalAge >= 140)
     {
         Age(LongevityRitual);
     }
     switch (CurrentSeason)
     {
         case Season.Spring:
             CurrentSeason = Season.Summer;
             break;
         case Season.Summer:
             CurrentSeason = Season.Autumn;
             break;
         case Season.Autumn:
             CurrentSeason = Season.Winter;
             break;
         case Season.Winter:
             CurrentSeason = Season.Spring;
             break;
     }
     IsCollaborating = true;
 }
Пример #10
0
 public virtual void CommitAction(IAction action)
 {
     _seasonList.Add(action);
     action.Act(this);
     if (SeasonalAge >= 140)
     {
         Age(LongevityRitual);
     }
 }
Пример #11
0
 public static GameState Reduce(GameState gameState, IAction <GameState> action) => action.Act(gameState);
Пример #12
0
 public void UseAction(IAction action, GameObject user, GameObject target)
 {
     action.Act(target);
 }