Beispiel #1
0
    void CreatePlatformsFromPositionInfo(PlatformPositionInfo[] platformPositionInfo, bool gameStarted)
    {
        for (int i = 0; i < platformPositionInfo.Length; i++)
        {
            PlatformPositionInfo positionInfo = platformPositionInfo[i];
            if (positionInfo.platformType == PlatformType.None)
            {
                continue;
            }

            Vector3 platformPosition;

            //here we going to check if the game is started or not
            if (gameStarted)
            {
                platformPosition = new Vector3(distanceBetweenPlatforms * i, positionInfo.positionY, 0);
            }
            else
            {
                platformPosition = new Vector3(distanceBetweenPlatforms + platformLastPositionX, positionInfo.positionY, 0);
            }

            //save the platform position x for later use
            platformLastPositionX = platformPosition.x;
            Transform createBlock = (Transform)Instantiate(platformPrefab, platformPosition, Quaternion.identity);
            createBlock.parent = platformParent;

            if (positionInfo.hasMonster)
            {
                if (gameStarted)
                {
                    platformPosition = new Vector3(distanceBetweenPlatforms * i, positionInfo.positionY + 0.1f, 0);
                }
                else
                {
                    platformPosition = new Vector3(distanceBetweenPlatforms + platformLastPositionX, positionInfo.positionY + 0.1f, 0);
                }

                Transform createMonster = (Transform)Instantiate(monster, platformPosition, Quaternion.Euler(0, -90, 0));
                createMonster.parent = monsterParent;
            }

            if (positionInfo.hasHealthCollectible)
            {
                if (gameStarted)
                {
                    platformPosition = new Vector3(distanceBetweenPlatforms * i,
                                                   positionInfo.positionY + Random.Range(healthCollectibleMinY, healthCollectiveMaxY), 0);
                }
                else
                {
                    platformPosition = new Vector3(distanceBetweenPlatforms + platformLastPositionX,
                                                   positionInfo.positionY + Random.Range(healthCollectibleMinY, healthCollectiveMaxY), 0);
                }

                Transform healthCollectible = (Transform)Instantiate(healthCollectable, platformPosition, Quaternion.identity);
                healthCollectible.parent = healthCollectableParent;
            }
        }// for loop
    }
Beispiel #2
0
    void CreatePlatformFromPositionInfo(PlatformPositionInfo[] platformpositioninfo, bool gameStarted)
    {
        for (int i = 0; i < platformpositioninfo.Length; i++)
        {
            PlatformPositionInfo positionInfo = platformpositioninfo[i];
            if (positionInfo.platformType == PlatformType.None)
            {
                continue;
            }
            //Position for platform
            Vector3 platformPosition;//x y z
            //check game started or NOT
            if (gameStarted)
            {
                platformPosition = new Vector3(distance_between_platforms * i, positionInfo.positionY, 0);
            }
            else
            {
                platformPosition = new Vector3(distance_between_platforms + platformLastPositionX, positionInfo.positionY, 0);
            }
            // Save platform position for later use
            platformLastPositionX = platformPosition.x;
            //create new game object prefab
            //Quat = Rotation
            Transform creatblock = (Transform)Instantiate(platformPrefab, platformPosition, Quaternion.identity);

            creatblock.parent = platform_parent;

            if (positionInfo.hasMonster)
            {
                if (gameStarted)
                {
                    platformPosition = new Vector3(distance_between_platforms * i, positionInfo.positionY + 0.1f, 0);
                }
                else
                {
                    platformPosition = new Vector3(distance_between_platforms + platformLastPositionX, positionInfo.positionY + 0.1f, 0);
                }

                Transform createMonster = (Transform)Instantiate(monster, platformPosition, Quaternion.Euler(0, -90, 0));
                createMonster.parent = monster_parent;
            }
            if (positionInfo.hasHealthCollectable)
            {
                if (gameStarted)
                {
                    platformPosition = new Vector3(distance_between_platforms * i, positionInfo.positionY + Random.Range(healthCollectable_MinY, healthCollectable_MaxY), 0);
                }
                else
                {
                    platformPosition = new Vector3(distance_between_platforms + platformLastPositionX, positionInfo.positionY + Random.Range(healthCollectable_MinY, healthCollectable_MaxY), 0);
                }
                Transform createHealth = (Transform)Instantiate(health_Collectable, platformPosition, Quaternion.Euler(0, -90, 0));
                createHealth.parent = healthCollectable_parent;
            }
        }//for loop
    }
Beispiel #3
0
	public void GenerateLevel(bool gameStarted) {
		PlatformPositionInfo[] platformInfo = new PlatformPositionInfo[levelLenght];
		for (int i = 0; i < platformInfo.Length; i++) {
			platformInfo [i] = new PlatformPositionInfo (PlatformType.None, -1f, false, false);
		}

		FillOutPositionInfo (platformInfo);
		CreatePlatformsFromPositionInfo(platformInfo,gameStarted);

	}
Beispiel #4
0
    void CreatePlatformsFromPositionInfo(PlatformPositionInfo[] platformPositionInfo)
    {
        for (int i = 0; i < platformPositionInfo.Length; i++)
        {
            PlatformPositionInfo positionInfo = platformPositionInfo[i];
            if (positionInfo.platformType == PlatformType.None)
            {
                continue;
            }

            Vector3   platformPosiiton = new Vector3(distance_between_platforms * i, positionInfo.positionY, 0);
            Transform createBlock      = (Transform)Instantiate(platformPrefab, platformPosiiton, Quaternion.identity);
            createBlock.parent = platform_parent;

            // if current block has a collectable and if block has a monster
        }
    }
Beispiel #5
0
	void CreatePlatformsFromPositionInfo(PlatformPositionInfo[] platformPositionInfo, bool gameStarted) {
		for (int i = 0; i < platformPositionInfo.Length; i++) {
			PlatformPositionInfo positionInfo = platformPositionInfo [i];
			// In c#, we can store the enement at the current index in another variable. Eg we stored platformPositionINfo[i] in PositionInfo
			if (positionInfo.platfromType == PlatformType.None) {
				continue;
			}

			Vector3 platformPosition;

			if (gameStarted)
            {
				platformPosition = new Vector3 (distance_between_platforms * i, positionInfo.positionY, 0);
			}
            else
            {
				platformPosition = new Vector3 (distance_between_platforms +platformLastPositionX, positionInfo.positionY, 0);
			}
			// save the platform position x for later use
			platformLastPositionX = platformPosition.x;

			Transform createBlock = (Transform)Instantiate (platformPrefab, platformPosition, Quaternion.identity);
			//Instantiate is used to create an object. The first parameter has the frefab for the object, second has the position, and third has the rotations
			//Quaternion.identity refers to zero rotation
			//we are using Type casting here to only get the transform
			createBlock.parent = platform_parent;
			//Groups all the objjects together

			if (positionInfo.hasMonster) {
                if (positionInfo.hasMonster)
                {
                    if (gameStarted)
                    {
                        platformPosition = new Vector3(distance_between_platforms * i, positionInfo.positionY + 0.1f, 0);
                    }
                    else
                    {
                        platformPosition = new Vector3(distance_between_platforms + platformLastPositionX, positionInfo.positionY, 0);
                    }

                    Transform createMonster = (Transform)Instantiate(monster, platformPosition, Quaternion.Euler(0,-90,0));
                    createMonster.parent = monster_parent;

                }
			}

			if (positionInfo.hasHealthCollectable) {
                if (gameStarted)
                {
                    platformPosition = new Vector3(distance_between_platforms * i, positionInfo.positionY + Random.Range(healthCollectable_MinY, healthCollectable_MaxY), 0);
                }
                else
                {
                    platformPosition = new Vector3(distance_between_platforms + platformLastPositionX, positionInfo.positionY + Random.Range(healthCollectable_MinY, healthCollectable_MaxY), 0);
                }

                Transform createHealthCollectable = (Transform)Instantiate(health_Collectable, platformPosition, Quaternion.identity);
                createHealthCollectable.parent = healthCollectable_parent;
			}
				
		} // for loop
	}