40 lines
1000 B
C#
40 lines
1000 B
C#
|
using System.Collections;
|
||
|
using System.Collections.Generic;
|
||
|
using UnityEngine;
|
||
|
|
||
|
public class WellController : MonoBehaviour
|
||
|
{
|
||
|
public GameObject node;
|
||
|
public int numberOfNodes = 5;
|
||
|
|
||
|
private Transform player;
|
||
|
|
||
|
private Vector3 right;
|
||
|
private Vector3 up;
|
||
|
|
||
|
private void Awake()
|
||
|
{
|
||
|
|
||
|
}
|
||
|
|
||
|
public void StartMinigame()
|
||
|
{
|
||
|
player = GameObject.FindGameObjectWithTag("MainCamera").transform;
|
||
|
Vector3 nodeSpawn = player.transform.position + (player.forward * 0.5f);
|
||
|
nodeSpawn.y = player.transform.position.y;
|
||
|
up = player.transform.up;
|
||
|
right = player.transform.right;
|
||
|
StartCoroutine(SpawnNode(nodeSpawn, 0));
|
||
|
}
|
||
|
|
||
|
IEnumerator SpawnNode(Vector3 nodeSpawn, int i)
|
||
|
{
|
||
|
if(i == numberOfNodes) yield break;
|
||
|
|
||
|
Instantiate(node, nodeSpawn, Quaternion.identity);
|
||
|
nodeSpawn = nodeSpawn + (right * 0.2f);
|
||
|
yield return new WaitForSeconds(2f);
|
||
|
StartCoroutine(SpawnNode(nodeSpawn, i+1));
|
||
|
}
|
||
|
}
|