Inheritance: MonoBehaviour
Esempio n. 1
0
 private void InitializeObjects()
 {
     _numOfKnivesToSpawn = UnityEngine.Random.Range(gameProperies.minNumOfKnivesThrow,
                                                    gameProperies.maxNumOfKnivesThrow + 1);
     _logSpawner   = _logSpawnerPrefab.GetComponent <LogSpawner>();
     _knifeSpawner = _knifeSpawnerPrefab.GetComponent <KnifeSpawner>();
 }
Esempio n. 2
0
 private void Start()
 {
     startGame();
     logSpawner = FindObjectOfType <LogSpawner>();
     logSpawner.endGameEvent += stopGame;
     StartCoroutine(WaitAndStart(initialWaitTime));
 }
Esempio n. 3
0
    public override void OnInspectorGUI()
    {
        DrawDefaultInspector();

        LogSpawner spawner = (LogSpawner)target;

        if (GUILayout.Button("Spawn Log"))
        {
            spawner.SpawnLog();
        }
    }
Esempio n. 4
0
    private static void CheckCombo()
    {
        if (splitCount <= 0)
        {
            //abort
            return;
        }

        if (splitCount > comboSteps.Length)
        {
            LogSpawner spawner = GameObject.FindObjectOfType <LogSpawner>();
            spawner.FurySpawning();
            return;
        }


        comboMultiplier = comboSteps[splitCount];
        int lastMultiplier = comboSteps[splitCount - 1];

        if (comboMultiplier != lastMultiplier)
        {
            FloatingText.PrintInfrontOfPlayer("Combo X" + comboMultiplier.ToString(), 1.5f, 0.016f, Color.red);
        }
    }
Esempio n. 5
0
 private void Awake()
 {
     main = this;
 }
Esempio n. 6
0
	void SpawnBoardPerType(){
		if(rowBoardPooling.Count < longPerBoard){
			if(boardState == BoardState.DONE){
				//Random whats next? Grass/Road/River
				RandomNextBoardType();

				lastSpeedLog = 0;
			}
			Transform rowInstance = new GameObject("Row " + yPos.ToString()).transform;
			rowInstance.position = new Vector3(0, 0, yPos);
			rowInstance.SetParent(boardParent);

			if(boardState == BoardState.GRASS){
				if(rows <= 0){
					rows = UnityEngine.Random.Range(minLongGrass, maxLongGrass + 1);
					xSafeLand = UnityEngine.Random.Range(xMinEffectiveBoard, xMaxEffectiveBoard+1);
				}
				RandomTree();
				
				int xPos = xMinBoard;
				while(xPos < xMaxBoard){
					//GetFromPool

					//Spawning
					SpawnGrass(xPos, rowInstance);
					xPos++;
				}
#if SOFT_PROCESS
				SpawnOrMoveObject(rowInstance, grassPacked);
#endif
			}
			else if(boardState == BoardState.ROAD){
				if(rows <= 0){
					rows = UnityEngine.Random.Range(minLongRoad, maxLongRoad + 1);
					if(rows == 1)
						roadType = RoadType.SINGLE;
					else{
						roadType = RoadType.TOP;
					}
				}
#if SOFT_PROCESS
				if(roadType == RoadType.SINGLE){
					SpawnOrMoveObject(rowInstance, roadPacked);
				}
				else if(roadType == RoadType.TOP){
					SpawnOrMoveObject(rowInstance, roadTopLinePacked);

				}
				else if(roadType == RoadType.MIDDLE)
				{
					SpawnOrMoveObject(rowInstance, roadBothLinePacked);

				}	
				else if(roadType == RoadType.BOTTOM)
				{
					SpawnOrMoveObject(rowInstance, roadBottomLinePacked);

				}	
#else
				int xPos = xMinBoard;
				while(xPos < xMaxBoard){
					SpawnRoad(xPos, rowInstance);
					xPos++;
				}
#endif
				CarSpawner cs = rowInstance.gameObject.AddComponent<CarSpawner>();
				cs.speedCar = UnityEngine.Random.Range(minSpeedCar, maxSpeedCar);
				cs.minSpawnCarTime = minSpawnCarTime;
				cs.maxSpawnCarTime = maxSpawnCarTime;
				cs.car = car[UnityEngine.Random.Range(0, car.Length)];

				if(rows == 2)
					roadType = RoadType.BOTTOM;
				else if(roadType == RoadType.TOP)
					roadType = RoadType.MIDDLE;
			}
			else if(boardState == BoardState.RIVER){
				if(rows <= 0)
					rows = UnityEngine.Random.Range(minLongRiver, maxLongRiver + 1);
#if !SOFT_PROCESS
				int xPos = xMinBoard;
				while(xPos < xMaxBoard){
					SpawnRiver(xPos, rowInstance);
					xPos++;
				}
#elif SOFT_PROCESS
				SpawnOrMoveObject(rowInstance, riverPacked);
#endif
				LogSpawner ls = rowInstance.gameObject.AddComponent<LogSpawner>();
				//do{
				ls.speed = UnityEngine.Random.Range(minSpeedLog, maxSpeedLog);
				//}while(ls.speed - speedLogBalancer <= lastSpeedLog && ls.speed + speedLogBalancer >= lastSpeedLog);
				if(ls.speed <= lastSpeedLog + speedLogBalancer/2 && ls.speed >= lastSpeedLog){
					if(ls.speed - speedLogBalancer <= .8f){
						ls.speed += speedLogBalancer*1.5f;
					}
					else
						ls.speed -= speedLogBalancer;
				}
				else if(ls.speed >= lastSpeedLog - speedLogBalancer/2 && ls.speed <= lastSpeedLog){
					ls.speed += speedLogBalancer;
				}
				ls.minSpawnTime = minLogSpawnTime;
				ls.maxSpawnTime = maxLogSpawnTime;
				ls.log = log[UnityEngine.Random.Range(0, log.Length)];
				lastSpeedLog = ls.speed;
			}
			else if(boardState == BoardState.RAIL){
				if(rows <= 0){
					rows = UnityEngine.Random.Range(minLongRail, maxLongRail + 1);
					xLampPos = UnityEngine.Random.Range(xMinEffectiveBoard + 1, xMaxEffectiveBoard);
				}

#if !SOFT_PROCESS
				int xPos = xMinBoard;
				while(xPos < xMaxBoard){
					SpawnRail(xPos, rowInstance);
					xPos++;
				}
#elif SOFT_PROCESS
				SpawnOrMoveObject(rowInstance, railPacked);
				SpawnRail(xLampPos, rowInstance);
#endif
				TrainSpawner ts = rowInstance.gameObject.AddComponent<TrainSpawner>();
				ts.speed = trainSpeed;
				ts.spawnTrainTime = UnityEngine.Random.Range(minTrainSpawnTime, maxTrainSpawnTime);
				ts.warningTime = trainWarningTime;
				ts.light = rowInstance.GetComponentInChildren<Light>();
			}

			rows--;
			
			if(rows <= 0){
				boardState = BoardState.DONE;
			}

			treeCounter=0;
			xPosTree.Clear();

			rowBoardPooling.Add(rowInstance.gameObject);

			yPos+=1;
		}
	}