Question by
wolkeger · Feb 01, 2016 at 05:13 AM ·
scripting problem
Trigger Sequence
Hi. I want to create a trigger sequence. A player has to go to a special position. After his arrival at the position a counter will be activated that counts from 10 to 0. After the timer ends the player has to go another position. The timer is a textmesh that changes.
Actually this script makes a random position. But I want the player to walk a special sequence which is determined and not random. Imagine the following sequence. Position 3 (x,y,z), Position 3, Pos. 1, 2, 3, 4, 1, 2, 3, 1 ,2 etc...
Could you help me to change the code? Here is the script:
using UnityEngine;
using System.Collections;
public class Abwurfsortanzeigecontroller : MonoBehaviour {
TextMeshTimerV2 Timer;
public bool inrange;
Vector3 newpos;
float x;
float y;
float z;
// Use this for initialization
void Start () {
light.color = Color.red;
Timer = GameObject.Find ("Abwurfanzeiger").GetComponent<TextMeshTimerV2> ();
}
// Update is called once per frame
void Update () {
if (inrange) {
Timer.startime = true;
if (Timer.sec >= 10) {
x = Random.Range (-7, 7);
y = 4;
z = Random.Range (0, 10);
newpos = new Vector3 (x, y, z);
transform.position = newpos;
Timer.sec = 0;
Timer.startime = false;
}
}
}
void OnTriggerEnter(Collider other)
{
Debug.Log ("Enter");
light.color = Color.green;
inrange = true;
}
void OnTriggerStay (Collider other)
{
light.color = Color.green;
}
void OnTriggerExit (Collider other)
{
light.color = Color.red;
inrange = false;
}
}
Comment