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; } }
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; } } }
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); } }