Zombies In Space


You are on an exhibition mission. Soaring through space… When suddenly, you hear a loud explosion. Warning messages, a meteorite edging closer. You think your time has come…

Includes: -4 different weapons -4 different zombie types -An amazing ending cut scene that you totally want to see! -A vending machine that dispatches guns. How? Black magic of course. -Zombies -A main menu -HOT GIRLS?!?!?! Maybe…. You’ll have to check it out for yourself.

Made With: Unity, Marcomedia Flash 8, Blender, MagicaVoxel, Sublime Text, Notepad and Trello.com!

Download Links(DISCLAIMER: MOST OF THE AUDIO EXCEPT FOR THE MUSIC IS NOT MADE BY US. ): Windows: http://www.mediafire.com/file/u4rtptxx98xc3bq/Zombies+In+Space+Windows.rar

Mac: http://www.mediafire.com/file/lolnjxgw6bu6ii8/Zombies+In+Space+Mac.zip

Linux(Untested): http://www.mediafire.com/file/hja6brk1zruc1h3/Zombies+In+Space+Linux.zip

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ZombieSpawner : MonoBehaviour
{
public Queue<Wave> waves;
[SerializeField]
private float secondsBetweenWaves = 5f;
private float timer = 0f;
private Transform[] spawnPionts;
private bool isGameStart;
[SerializeField]
private nextRound roundGUI;
[Header("Zombie Prefabs")]
[SerializeField]
private GameObject fastZombie;
[SerializeField]
private GameObject normalZombie;
[SerializeField]
private GameObject tankZombie;
[SerializeField]
private GameObject bossZombie;
// Use this for initialization
void Start()
{
isGameStart = false;
spawnPionts = GetComponentsInChildren<Transform>();
waves = new Queue<Wave>();
//=========================================================================\\
//WaveS Setup
waves.Enqueue(new Wave(spawnPionts, "1", 6, new GameObject[] { normalZombie }));
waves.Enqueue(new Wave(spawnPionts, "2", 12, new GameObject[] { normalZombie }));
waves.Enqueue(new Wave(spawnPionts, "3", 12, new GameObject[] { fastZombie }));
waves.Enqueue(new Wave(spawnPionts, "4", 20, new GameObject[] { normalZombie, tankZombie }));
waves.Enqueue(new Wave(spawnPionts, "5", 30, new GameObject[] { normalZombie }));
waves.Enqueue(new Wave(spawnPionts, "6", 30, new GameObject[] { normalZombie, fastZombie }));
waves.Enqueue(new Wave(spawnPionts, "7", 33, new GameObject[] { tankZombie, fastZombie }));
waves.Enqueue(new Wave(spawnPionts, "8", 4, new GameObject[] { bossZombie, fastZombie }));
waves.Enqueue(new Wave(spawnPionts, "9", 41, new GameObject[] { normalZombie }));
//waves.Enqueue(new Wave(spawnPionts, "9 1/2", 5, new GameObject[] { bossZombie, tankZombie }));
waves.Enqueue(new Wave(spawnPionts, "10", 45, new GameObject[] { normalZombie, fastZombie, bossZombie, tankZombie }));
//==========================================================================\\
isGameStart = true;
}
private void Update()
{
if (!isGameStart || waves.Count == 0)
return;
Wave fisrtInLine = waves.Peek();
fisrtInLine.CheckDeadZombies();
if (!fisrtInLine.GetIsWaveStarted()) //if not wave done or started
{
fisrtInLine.StartWave();
}
else if (fisrtInLine.GetIsWaveDone())
{
timer += Time.deltaTime;
if (timer > secondsBetweenWaves)
{
timer = 0f;
roundGUI.playnextRound();
waves.Dequeue();
}
}
}
public void GameStart()
{
isGameStart = true;
}
public string GetWaveName()
{
if (waves.Count == 0)
return "No_wave";
return waves.Peek().GetName();
}
public int GetTotalZombiesInWave()
{
if (waves.Count == 0)
return -1;
return waves.Peek().GetTotalZombiesInWave();
}
public int GetZombiesLeft()
{
if (waves.Count == 0)
return -1;
return waves.Peek().GetZombiesLeft();
}
public List<GameObject> GetAliveZombies()
{
if (waves.Count == 0)
return null;
return waves.Peek().GetAliveZombies();
}
}