private void OnTriggerEnter()
    {
        switch (triggerType)
        {
        case TriggerType.setOnEnterOnly:
        case TriggerType.setOnEnterClearOnExit:
            efs.SetFlag(flagNum);
            break;

        case TriggerType.clearOnEnterOnly:
        case TriggerType.setOnExitClearOnEnter:
            efs.ClearFlag(flagNum);
            break;
        }
    }
示例#2
0
    void Update()
    {
        if (currState == State.moving)
        {
            transform.position = Vector3.MoveTowards(transform.position, target.transform.position, moveSpeed * Time.deltaTime);

            if (Vector3.Distance(transform.position, target.transform.position) < 0.00001f)
            {
                efs.SetFlag(flagNum_end);
                currState = State.done;
            }
        }
    }
示例#3
0
    public void OnFlagSet()
    {
        if (efs.FlagStatus(resultFlagNum))
        {
            return;
        }

        // check all test flags
        bool done = true;

        for (int i = 0; i < NUM_TEST_FLAGS; i++)
        {
            done = done && efs.FlagStatus(testFlagNums[i]);
        }

        if (done)
        {
            efs.SetFlag(resultFlagNum);
        }
    }