Exemplo n.º 1
0
        public void ChildFailed(AbstractCondition child)
        {
            ConditionVO conditionVo = child.GetConditionVo();

            child.Destroy();
            this.Failures.Add(conditionVo.Uid);
            this.events.SendEvent(EventId.VictoryConditionFailure, conditionVo);
        }
Exemplo n.º 2
0
        public void ChildSatisfied(AbstractCondition child)
        {
            if (child == this.failureCondition)
            {
                return;
            }
            ConditionVO conditionVo = child.GetConditionVo();

            child.Destroy();
            this.Successes.Add(conditionVo.Uid);
            this.events.SendEvent(EventId.VictoryConditionSuccess, conditionVo);
        }
Exemplo n.º 3
0
        public void ActivateConditionSet(List <ConditionVO> voSet)
        {
            this.CancelCurrentConditions();
            this.Successes = new List <string>();
            this.Failures  = new List <string>();
            this.currentVictoryConditions = new List <AbstractCondition>();
            AbstractCondition abstractCondition = null;

            for (int i = 0; i < voSet.Count; i++)
            {
                abstractCondition = ConditionFactory.GenerateCondition(voSet[i], this);
                this.currentVictoryConditions.Add(abstractCondition);
                abstractCondition.Start();
            }
            for (int j = voSet.Count; j < 3; j++)
            {
                abstractCondition = ConditionFactory.GenerateCondition(abstractCondition.GetConditionVo(), this);
                this.currentVictoryConditions.Add(abstractCondition);
                abstractCondition.Start();
            }
        }