示例#1
0
	public void Init (BoatHandler handler, float angle, float speed, float sailColorIndex) {

		// set boat stats
		boatHandler = handler;
		boatSpeed = speed;
		boatDeathTimer = 0;
		sailRenderer.material.SetFloat ("_Blender", sailColorIndex);

		// set location
		transform.localPosition = Vector3.zero;
		transform.localEulerAngles = new Vector3 (0, angle, 0);

		// wake system settings
		wakeSystem.startSpeed = boatSpeed / 2;
		wakeSystem.startLifetime = boatSpeed * 4;
	}
示例#2
0
	public void SpawnDemon (Transform boatStartPoint, BoatHandler handler) {

		// choose a demon
		int demonIndex = Random.Range (0, demonPrefabs.Length);

		// create a demon
		DemonTarget newDemon = Instantiate (demonPrefabs [demonIndex]);
		newDemon.transform.SetParent (demonParent);

		// initialize the demon
		newDemon.Init (
			handler, 
			demonHealthMultiplier,
			demonSpeedMultiplier,
			boatStartPoint.position, 
			demonTarget.position);
	}
示例#3
0
	public void Init (BoatHandler handler, float healthMultiplier, float speedMultiplier, Vector3 startPosition, Vector3 endPosition) {

		// make the demon move up
		startPosition.y += 5.0F;

		// set demon variables
		boatHandler = handler;
		demonStartPoint = startPosition;
		demonEndPoint = endPosition;
		demonHealth = demonBaseHealth * healthMultiplier;
		demonSpeed = demonBaseSpeed * speedMultiplier;

		// set the demon's position
		transform.position = startPosition;
		transform.LookAt (endPosition);

		// set the transparency of the demon
		fadeInTimer = 0.0F;
		Color newColor = demonRenderer.material.color;
		newColor.a = fadeInTimer;
		demonRenderer.material.color = newColor;
	}
示例#4
0
 public override void OnStartInitialize()
 {
     _gameStateHandler = new GameStateHandler();
     _towerTracker     = new TowerTrackerHandler();
     _boatTracker      = new BoatHandler();
 }
示例#5
0
	public void SpawnDemon (Transform startPosition, BoatHandler handler) {

		demonHandler.SpawnDemon (startPosition, handler);
	}
示例#6
0
	public void StartWave () {

		Debug.Log ("Starting Wave " + waveCount);

		// remove the current wave
		if (currentWave != null) {
			currentWave.isCurrentWave = false;
		}

		// start a new boat wave
		currentWave = null;
		currentWave = Instantiate (boatHandlerPrefab);
		currentWave.transform.SetParent (transform);
		currentWave.isCurrentWave = true;

		// Start a new Wave
		if (waveCount < waveData.Count) {
			currentWave.StartWave (boatParent, waveData [waveCount]);
		}

		// demon waves
		demonHandler.StartWave (demonHealthMod, demonSpeedMod);

//		// increment wave stats
		demonSpeedMod += 0.125F;

//		// set the wave interval
		waveIntervalTimer = 2.0F;
		waveIntervalStart = false;

		// increment the wave
		waveCount++;
	}
示例#7
0
	public void StartWave () {

		Debug.Log ("Starting Wave " + waveCount);

		// remove the current wave
		if (currentWave != null) {
			currentWave.isCurrentWave = false;
		}

		// start a new boat wave
		currentWave = null;
		currentWave = Instantiate (boatHandlerPrefab);
		currentWave.transform.SetParent (transform);
		currentWave.isCurrentWave = true;

		// Start a new Wave
		if (waveCount < waveData.Count) {
			currentWave.StartWave (boatParent, waveData [waveCount]);
		}

		// wave mods
//		float boatCountPercentage = Random.Range (0, 1);
//		float boatSpeedPercentage = 1.0F - boatCountPercentage;
//		currentWave.StartWave (
//			boatParent, 
//			((int)Mathf.Floor (boatsCount * (boatCountPercentage + 0.5F))), 
//			(boatSpeedMod * (boatSpeedPercentage + 0.5F)));

		// demon waves
		demonHandler.StartWave (demonHealthMod, demonSpeedMod);

//		// increment wave stats
//		boatsCount += 1.5F;
//		boatSpeedMod += 0.25F;
		demonSpeedMod += 0.125F;
//
//		// set the wave interval
		waveIntervalTimer = 2.0F;
		waveIntervalStart = false;

		// increment the wave
		waveCount++;
	}