thank you for the feedback
bishi1
Creator of
Recent community posts
That's a really cool idea, the graphics are amazing, the sound effects are also really good but the shop didn't work for me and I think there aren't too many ways to fight the monsters you just go and hit them with your sword. if there were more abilities and ways to fight the game would be a lot better. but I know you had no time to add this kind of things so great job as other people said its a bit un finished.
This is the most impressive game I have ever seen in a game jam it looks like you have been working on it for weeks. Amazing job!!! I think it would be better if you could control the camera but that's not something to improve its just my opinion. you did a crazy job! (I would easily buy the game if it was for sale)
If you only need the script:
using UnityEngine;
using UnityEngine.UI;
[System.Serializable]
public class Wave
{
public string waveName;
public int noOfEnemies;
public GameObject[] typeOfEnemies;
public float spawnInterval;
}
public class WaveSpawnner : MonoBehaviour
{
public Wave[] waves;
public Transform[] spawnPoints;
public Animator animator;
public Text waveName;
private Wave currentWave;
private int currentWaveNumber;
private float nextSpawnTime;
private bool canSpawn = true;
private bool canAnimate = false;
private void Update()
{
currentWave = waves[currentWaveNumber];
SpawnWave();
GameObject[] totalEnemies = GameObject.FindGameObjectsWithTag("Enemy");
if (totalEnemies.Length == 0 )
{
if ( currentWaveNumber + 1 != waves.Length )
{
if ( canAnimate)
{
waveName.text = waves[currentWaveNumber + 1].waveName;
animator.SetTrigger("WaveComplete");
canAnimate = false;
}
}
else
{
Debug.Log("GameFinish");
}
}
}
void SpawnNextWave()
{
currentWaveNumber++;
canSpawn = true;
}
void SpawnWave()
{
if (canSpawn && nextSpawnTime < Time.time)
{
GameObject randomEnemy = currentWave.typeOfEnemies[Random.Range(0, currentWave.typeOfEnemies.Length)];
Transform randomPoint = spawnPoints[Random.Range(0, spawnPoints.Length)];
Instantiate(randomEnemy, randomPoint.position, Quaternion.identity);
currentWave.noOfEnemies--;
nextSpawnTime = Time.time + currentWave.spawnInterval;
if (currentWave.noOfEnemies == 0)
{
canSpawn = false;
canAnimate = true;
}
}
}
}