Heroes_of_Hiis/Assets/Project Files/Scripts/JoonasP/WellController.cs

46 lines
1.2 KiB
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;
GameObject tempNode = Instantiate(node, nodeSpawn, Quaternion.identity);
tempNode.GetComponent<AudioSource>().pitch += (i * (1f / numberOfNodes));
nodeSpawn = nodeSpawn + right * 0.2f + Random.Range(-0.2f, 0.2f) * up;
yield return new WaitForSeconds(2f);
StartCoroutine(SpawnNode(nodeSpawn, i+1));
}
private void Update()
{
transform.Rotate(0.5f, 0.5f, 0.5f);
}
}