示例#1
0
    public void AddResolvedObject(ObjectiveObj thisObj, bool isSolved)
    {
        if (isSolved)
        {
            if (!listSolvedObjs.Contains(thisObj))
            {
                resolvedObjCount += 1;
                listSolvedObjs.Add(thisObj);
            }
        }
        else if (!isSolved)
        {
            if (!listLostObjs.Contains(thisObj))
            {
                resolvedObjCount += 1;
                listLostObjs.Add(thisObj);
            }
        }
        else
        {
            return;
        }

        //Debug.Log("resolved objectives: " + resolvedObjCount);
    }
示例#2
0
    private void ChangeSpriteInfo(GameObject target, ObjectiveObj subject, bool changeColour)
    {
        target.GetComponent <Image>().sprite = subject.spr.sprite;
        target.GetComponentInChildren <TextMeshProUGUI>().text = subject.textSolution;

        if (changeColour)
        {
            target.GetComponent <Image>().color = Color.red;
            //target.GetComponentInChildren<TextMeshProUGUI>().color = Color.red;
        }
    }
    private int FindObjIndex(ObjectiveObj target)
    {
        for (int i = 0; i < objController.objectives.Length; i++)
        {
            if (objController.objectives[i] == target)
            {
                return(i);
            }
        }

        return(-1);
    }
    private void OnTriggerStay2D(Collider2D collision)
    {
        if (collision.gameObject.CompareTag("Objective"))
        {
            ObjectiveObj thisObj = collision.GetComponent <ObjectiveObj>();

            if (!thisObj.solved)
            {
                thisObj.targetText.SetActive(true);
                gameManager.gamePaused = true;

                if (thisObj.targetText.GetComponent <ObjectiveText>().enabled)
                {
                    InputField targetInput = thisObj.targetText.GetComponent <InputField>();
                    targetInput.Select();
                }
            }
        }
    }
    private void UpdateEnemy(GameObject targetObj)
    {
        ObjectiveObj targetObjScript = targetObj.GetComponent <ObjectiveObj>();

        if (targetObjScript.stored)
        {
            for (var i = FindObjIndex(targetObjScript); i < objController.objectives.Length; i++)
            {
                if (!objController.objectives[i].stored)
                {
                    enemy.ResetEnemy(objController.objectives[i].gameObject);
                    return;
                }
            }
        }
        else
        {
            enemy.ResetEnemy(targetObj);
        }
    }