Exemple #1
0
    public static void GetIconInfo(this QuestIcon iconType, ref Texture icon, ref Rect rect)
    {
        //use subIndex where stores construction info
        //
        switch (iconType)
        {
        case QuestIcon.FoundationRouteIcon:
        {
            icon = UIController.iconsTexture;
            rect = UIController.GetIconUVRect(Icons.FoundationRoute);
            break;
        }

        case QuestIcon.PeopleIcon:
        {
            icon = UIController.iconsTexture;
            rect = UIController.GetIconUVRect(Icons.Citizen);
            break;
        }

        case QuestIcon.TutorialIcon:
        {
            icon = UIController.iconsTexture;
            rect = UIController.GetIconUVRect(Icons.SecretKnowledgeIcon);
            break;
        }

        default:
        {
            icon = GlobalMapCanvasController.GetMapMarkersTexture();
            rect = GlobalMapCanvasController.GetMarkerRect(MapPointType.QuestMark);
            break;
        }
        }
    }
 public ScenarioQuest(Scenario i_scenario, QuestIcon qi) : base(QuestType.Scenario, 0)
 {
     myScenario            = i_scenario;
     iconType              = qi;
     needToCheckConditions = myScenario.QuestMustCheckConditions();
     INLINE_PrepareSteps(myScenario?.GetStepsCount() ?? 1);
 }
Exemple #3
0
    public QuestIcon GetQuestIcon(bool taken = false, bool completed = false)
    {
        QuestIcon icon = QuestIcon.None;

        switch (Type)
        {
        case QuestType.General:
        case QuestType.Repeatable:
            if (completed)
            {
                icon = QuestIcon.QuestionYellow;
            }
            else if (taken)
            {
                icon = QuestIcon.QuestionWhite;
            }
            else
            {
                icon = QuestIcon.ExclamationYellow;
            }
            break;

        case QuestType.Daily:
            if (completed)
            {
                icon = QuestIcon.QuestionBlue;
            }
            else if (taken)
            {
                icon = QuestIcon.QuestionWhite;
            }
            else
            {
                icon = QuestIcon.ExclamationBlue;
            }
            break;

        case QuestType.Story:
            if (completed)
            {
                icon = QuestIcon.QuestionGreen;
            }
            else if (taken)
            {
                icon = QuestIcon.QuestionWhite;
            }
            else
            {
                icon = QuestIcon.ExclamationGreen;
            }
            break;
        }

        return(icon);
    }
Exemple #4
0
        //Quests

        #region Quest System
        public void UpdateBestQuestIcon()
        {
            ClientQuestProgress quests   = GetAvailableQuests(true).FirstOrDefault();
            QuestIcon           bestIcon = QuestIcon.None;

            if (quests != null)
            {
                bestIcon = quests.Icon;
            }

            QuestIcon = bestIcon;
        }
 public ConditionQuest(SimpleCondition i_condition, ColonyController i_colony, bool i_completeQuestWhenPossible, QuestIcon cqi) : base(QuestType.Condition, (byte)cqi)
 {
     colony = i_colony;
     needToCheckConditions     = true;
     completeQuestWhenPossible = i_completeQuestWhenPossible;
     iconType = cqi;
     INLINE_PrepareSteps(1);
     conditions = new SimpleCondition[1] {
         i_condition
     };
     INLINE_DefineStep(ref i_condition, 0);
     CheckQuestConditions();
 }
    public ConditionQuest(SimpleCondition[] i_conditions, ColonyController i_colony, bool i_completeQuestWhenPossible, QuestIcon cqi) : base(QuestType.Condition, (byte)cqi)
    {
        colony = i_colony;
        needToCheckConditions     = true;
        completeQuestWhenPossible = i_completeQuestWhenPossible;
        byte count = (byte)i_conditions.Length;

        INLINE_PrepareSteps(count);
        conditions = i_conditions;
        for (var i = 0; i < count; i++)
        {
            INLINE_DefineStep(ref conditions[i], i);
        }
        iconType = cqi;
        CheckQuestConditions();
    }
Exemple #7
0
        public override void UpdateQuests()
        {
            if (NPCInfo.CurrentIcon == QuestIcon.None)
            {
                RemoveQuestEffect();
                return;
            }

            if (CurrentIcon == NPCInfo.CurrentIcon)
            {
                return;
            }

            RemoveQuestEffect();

            CurrentIcon = NPCInfo.CurrentIcon;

            int startIndex = 0;

            if ((CurrentIcon & QuestIcon.QuestComplete) == QuestIcon.QuestComplete)
            {
                startIndex = 1130;
            }
            else if ((CurrentIcon & QuestIcon.NewQuest) == QuestIcon.NewQuest)
            {
                startIndex = 1080;
            }
            else if ((CurrentIcon & QuestIcon.QuestIncomplete) == QuestIcon.QuestIncomplete)
            {
                startIndex = 1090;
            }

            QuestEffect = new MirEffect(startIndex, 2, TimeSpan.FromMilliseconds(500), LibraryFile.GameInter, 0, 0, Color.Empty)
            {
                Loop             = true,
                MapTarget        = CurrentLocation,
                Blend            = false,
                DrawType         = DrawType.Final,
                AdditionalOffSet = new Point(0, -80)
            };
            QuestEffect.Process();
        }
Exemple #8
0
 public void RemoveQuestEffect()
 {
     CurrentIcon = QuestIcon.None;
     QuestEffect?.Remove();
     QuestEffect = null;
 }
Exemple #9
0
        //Quests

        #region Quest System
        public void UpdateBestQuestIcon()
        {
            ClientQuestProgress quests = GetAvailableQuests(true).FirstOrDefault();
            QuestIcon bestIcon = QuestIcon.None;

            if (quests != null)
            {
                bestIcon = quests.Icon;
            }

            QuestIcon = bestIcon;
        }
Exemple #10
0
 /// <summary>
 /// Sets quest's icon.
 /// </summary>
 /// <param name="class_"></param>
 protected void SetIcon(QuestIcon icon)
 {
     this.Icon = icon;
 }
Exemple #11
0
		/// <summary>
		/// Sets quest's icon.
		/// </summary>
		/// <param name="class_"></param>
		protected void SetIcon(QuestIcon icon)
		{
			this.Icon = icon;
		}