コード例 #1
0
    public void GenerateMap()
    {
        float[,] noiseMap = Noise.GenerateNoiseMap(_mapWidth, _mapHeight, _seed, _noiseScale, _octaves, _persistance, _lacunarity, _offset);

        Color[] colormap = SetColorMap(noiseMap);

        // Display
        if (_drawMode == DrawMode.NoiseMap)
        {
            _mapDisplay.DrawTexture(TextureGenerator.TextureFromHeightMap(noiseMap));
        }
        else if (_drawMode == DrawMode.RegionColorMap)
        {
            _mapDisplay.DrawTexture(TextureGenerator.TextureFromColormap(colormap, _mapWidth, _mapHeight));
        }
        else if (_drawMode == DrawMode.Mesh)
        {
            var meshData = MeshGenerator.GenerateTerrainMesh(noiseMap, _regions[0].height);
            _mapDisplay.DrawMesh(meshData, TextureGenerator.TextureFromColormap(colormap, _mapWidth, _mapHeight));
            if (_generateObstacles)
            {
                ObstacleGenerator.GenerateObstacleMesh(meshData);
            }
        }
        else if (_drawMode == DrawMode.Mesh3D)
        {
            _mapDisplay.DrawMesh3D(MeshGenerator3D.GenerateTerrainMesh(noiseMap), TextureGenerator.TextureFromColormap(colormap, _mapWidth, _mapHeight));
        }
    }
コード例 #2
0
 void Start()
 {
     lastZPos    = Mathf.NegativeInfinity;
     zSpread     = Random.Range(minSpread, maxSpread);
     objectQueue = new Queue <Transform>();
     generator   = new ObstacleGenerator(null);
 }
コード例 #3
0
    public void GenerateMap()
    {
        float[,] noiseMap = Noise.GenerateNoiseMap(_mapWidth, _mapHeight, _seed, _noiseScale, _octaves, _persistance, _lacunarity, _offset);

        Color[] colormap = SetColorMap(noiseMap);

        if (_waterDepth > DefaultHeight)
        {
            DefaultHeight += _waterDepth;
        }

        // Display
        var meshData = MeshGenerator.GenerateTerrainMesh(noiseMap, _regions[0].height, _yPosition, _waterDepth, DefaultHeight);

        _mapDisplay.DrawMesh(meshData, TextureGenerator.TextureFromColormap(colormap, _mapWidth, _mapHeight));
        if (_generateObstacles)
        {
            ObstacleGenerator.GenerateObstacleMesh(meshData);
        }

        if (_grid != null)
        {
            _grid.StartPathfindGrid();
        }
    }
コード例 #4
0
ファイル: LevelProcessor.cs プロジェクト: pwilken/UnityMario
    void AddGenerators(List <IGenerator> generators)
    {
        LevelInfo levelInfo = new LevelInfo();

        levelInfo.columns          = columns;
        levelInfo.rows             = rows;
        levelInfo.playerHeight     = playerHeight;
        levelInfo.maxJumpHeight    = maxJumpHeight;
        levelInfo.maxJumpLength    = maxJumpLength;
        levelInfo.minGroundHeight  = minGroundHeight;
        levelInfo.minGroundLength  = minGroundLength;
        levelInfo.maxGroundLength  = maxGroundLength;
        levelInfo.gapProbability   = gapProbability;
        levelInfo.steepProbability = steepProbability;
        levelInfo.blockProbability = blockProbability;

        GroundGenerator   groundGenerator   = new GroundGenerator(levelInfo);
        ObstacleGenerator obstacleGenerator = new ObstacleGenerator(levelInfo);
        BlockGenerator    blockGenerator    = new BlockGenerator(levelInfo);
        ItemGenerator     itemGenerator     = new ItemGenerator(levelInfo);

        generators.Add(groundGenerator);
        generators.Add(obstacleGenerator);
        generators.Add(blockGenerator);
        generators.Add(itemGenerator);
    }
コード例 #5
0
    // Use this for initialization
    void Start()
    {
        // get player reference
        player = GameObject.FindGameObjectWithTag("player").GetComponent <PlayerScript>();
        // get generator component
        generator = GetComponent <ObstacleGenerator>();        // assumes the component is on this gameobject
        // get wheel reference
        wheel = GameObject.FindGameObjectWithTag("Roller").GetComponent <BigRoller>();
        // get level select ref
        levelSelect = GetComponent <LevelSelect>();
        // get UI ref
        UI = GetComponent <GameplayUI>();
        // get actual player angle
        player.posOnWheel = Vector3.Angle(Vector3.up, player.transform.position - wheel.transform.position);

        currentLifeStage = 0;

        stressDistance = maxDistance;

        AudioController = GameObject.Find("Global").GetComponent <AudioControl>();

        // Audio test stuff
        //bassTrack.clip = Bass;
        //melodyTrack.clip = Melody;
    }
コード例 #6
0
 protected void Start()
 {
     ingredient       = gameObject.GetComponent <IngredientGenerator>();
     obstacle         = gameObject.GetComponent <ObstacleGenerator>();
     lastGenerateSpot = startingItemRow * spawnDistanceUnit;
     lastDeltaTime    = Time.time;
 }
コード例 #7
0
 private void Start()
 {
     title        = GameObject.Find("Title").GetComponent <TitleScreen>();
     obstacle     = GameObject.Find("ObstacleGenerator").GetComponent <ObstacleGenerator>();
     obstacle2    = GameObject.Find("ObstacleGenerator2").GetComponent <ObstacleGenerator>();
     audioManager = GetComponent <AudioManager>();
 }
コード例 #8
0
    // Use this for initialization
    void Start()
    {
        platformGenerator = new PlatformGenerator(ScreenManager.platformRadius[0], ScreenManager.platformRadius[1]);
        obstacleGenerator = new ObstacleGenerator(ScreenManager.obstacleRadius[0], ScreenManager.obstacleRadius[1]);

        PlayerCollision.onPlatformHit += newStage;
        stageLayout(Vector2.zero);
    }
コード例 #9
0
 private void Awake()
 {
     if (Instance == null)
     {
         Instance = this;
     }
     CrateObstaclesDictionary();
 }
コード例 #10
0
    private void CreateObstacleGenerator(Transform parent)
    {
        GameObject generator = new GameObject("Obstacle Generator");

        generator.transform.SetParent(parent);
        ObstacleGenerator og = generator.AddComponent <ObstacleGenerator>();

        og.chunksData = chunks;
    }
コード例 #11
0
ファイル: Football.cs プロジェクト: AdrianJaime/Foot-Chick
    // Start is called before the first frame update
    void Start()
    {
        obsData = GetComponentInParent <ObstacleGenerator>();
        cam     = obsData.cam;
        Vector2 pos = searchPosition();

        gameObject.transform.position = new Vector3(pos.x, pos.y, 15);
        rotation = new Vector3(Random.rotation.x, Random.rotation.y, 0);
    }
コード例 #12
0
 // Use this for initialization
 void Start()
 {
     // wait for the user to tap the screen then spawn all three platforms and start spawning obstacles
     platforms  = new GameObject[3];
     spawnedObs = new List <GameObject>();
     ap         = audioTrack.GetComponent <AudioPeer>();
     gen        = GetComponent <ObstacleGenerator>();
     song       = audioTrack.GetComponent <AudioSource>();
     song.Pause();
 }
コード例 #13
0
    void Start()
    {
        theFruitGenerator    = FindObjectOfType <FruitGenerator> ();
        theEnemyGenerator    = FindObjectOfType <EnemyGenerator> ();
        theObstacleGenerator = FindObjectOfType <ObstacleGenerator> ();
        //controller = new GameController ();
        fruitCount = enemyCount = obstacleCount = powerupCount = 0;

        thePowerupManager = FindObjectOfType <PowerupManager> ();
    }
コード例 #14
0
    void Start()
    {
        generator = ObstacleGenerator.Instance;
        if (player == null)
        {
            player = Camera.main.transform;
        }

        SetHeights();
        GenerateObstacles(generateDistance * 2);
    }
コード例 #15
0
 private void Awake()
 {
     if (INSTANCE == null)
     {
         INSTANCE = this;
     }
     else if (INSTANCE != this)
     {
         Destroy(this);                          // ensures Singleton
     }
 }
コード例 #16
0
 public MasterInstantiatingPhase(PhaseManager phaseManager, NetworkUIController networkUiController,
                                 CloudAnchorsExampleController cloudAnchors, ObstacleGenerator obstacleGenerator, CombatPhase combatPhase,
                                 bool skipGameArea) : base(phaseManager)
 {
     _networkUiController = networkUiController;
     _cloudAnchors        = cloudAnchors;
     _obstacleGenerator   = obstacleGenerator;
     _combatPhase         = combatPhase;
     _obstacleGenerator.OnFinishPlacingObstacles += FinishPlacingObstacles;
     _skipGameArea = skipGameArea;
 }
コード例 #17
0
 private void Awake()
 {
     if (Instance != null && Instance != this)
     {
         Destroy(this.gameObject);
     }
     else
     {
         Instance = this;
     }
 }
コード例 #18
0
    public void Generate()
    {
        IsActive = true;
        //From prev run
        ReturnAllIObjectsToPool(generatedItems);
        ReturnAllIObjectsToPool(passedObstacles);

        lastLocation = startLocation;

        obstacleGenerator = new ObstacleGenerator(PrecentageOfInanimateObjects: 20);
        GenerateNextChunk();
    }
コード例 #19
0
    // Start is called before the first frame update
    void Start()
    {
        obsData = gameObject.GetComponentInParent <ObstacleGenerator>();
        cam     = obsData.cam;
        width   = cam.ScreenToWorldPoint(new Vector3(Screen.width, 0, Mathf.Abs(gameObject.transform.position.z - cam.transform.position.z))).x;
        height  = cam.ScreenToWorldPoint(new Vector3(Screen.height, 0, Mathf.Abs(gameObject.transform.position.z - cam.transform.position.z))).y;
        float Sizey = cam.orthographicSize * 2;
        float Sizex = Sizey * Screen.width / Screen.height;

        gameObject.transform.position   = new Vector3(Random.Range(0, 2) == 0 ? width + 1: -width, height * 3, 15);
        gameObject.transform.localScale = new Vector3(Sizex / 2, Sizey / 2, gameObject.transform.localScale.z);
    }
コード例 #20
0
        public void TestAdjustedLocation()
        {
            ObstacleDTO obstacleDTO = new ObstacleDTO();

            obstacleDTO.location = new Location(-4, -4);
            obstacleDTO.width    = 2;
            obstacleDTO.height   = 6;
            Vector2 adjustedLocation = ObstacleGenerator.GetAdjustedLocation(obstacleDTO);

            Assert.AreEqual(-3.5f, adjustedLocation.x, 0.01f);
            Assert.AreEqual(-1.5f, adjustedLocation.y, 0.01f);
        }
コード例 #21
0
        public override bool Create(ObstacleDTO dto)
        {
            GameObject obstacle = ObstacleGenerator.GenerateObstacle(dto, GameObject.Find("Obstacles").transform);

            if (obstacle == null)
            {
                Debug.LogError("Generated obstacle is null!");
                return(false);
            }

            return(true);
        }
コード例 #22
0
    //////////////////////////////////////////////////////////////////////////////////////////////////
    void Start()
    {
        Time.timeScale = 0;

        // Инициализация
        obsGenerator = this.GetComponent <ObstacleGenerator>();
        ImportSettings();
        scoreList   = new int[scaleOfGeneration];
        infoManager = bigBrother.GetComponent <InformationManager>();

        // Инициализация записи статистики
        statPath = infoManager.StatInit();

        // Начальный спаун препятствий
        sectorPosMap = new List <Vector3>();
        if (generateObsNextGen)
        {
            obsGenerator.Start();
            obsGenerator.SpawnObstacles(Vector3.zero);
            sectorPosMap.Add(Vector3.zero);
            generateObsNextGen = false;
            enableGenerateObs  = true;
        }
        obsGenerator.Start();

        // Сброс положения конечной точки
        ResetTarget(targetInCentre);

        // Спаун машин и инициализация вспомогательных переменных
        car         = new List <GameObject>();
        brain       = new Brain[scaleOfGeneration];
        prevPos     = new Vector3[scaleOfGeneration];
        prevRot     = new Vector3[scaleOfGeneration];
        radVectM    = new float[scaleOfGeneration];
        maxRadVectM = new float[scaleOfGeneration];
        maxScore    = new int[scaleOfGeneration];
        travelDists = new float[scaleOfGeneration];
        fullRotats  = new float[scaleOfGeneration];
        for (int i = 0; i < scaleOfGeneration; i++)
        {
            travelDists[i] = 0;
            fullRotats[i]  = 0;
            radVectM[i]    = 0;
            maxRadVectM[i] = 0;
            maxScore[i]    = 0;
            prevPos[i]     = Vector3.zero;
            prevRot[i]     = Vector3.zero;
            car.Add((GameObject)Instantiate(sampleCar, Vector3.up, Quaternion.identity));
            brain[i] = car[i].transform.GetChild(3).GetComponent <Brain>();
            brain[i].BrainInit();
        }
    }
コード例 #23
0
 private void Awake()
 {
     if (instance == null)
     {
         instance = this;
     }
     else
     {
         Destroy(this);
     }
     topY = toppestBlock.position.y;
     ObjectPool.preWarmPool(staticPlatformPrefab, 7);
 }
コード例 #24
0
        public void TestGenerateObstacleFromPrefab()
        {
            string     resource       = "Prefabs/Obstacles/obstacle_lessFlat_van";
            GameObject obstaclePrefab = Resources.Load <GameObject>(resource);
            GameObject obstacleParent = new GameObject();

            GameObject generatedObstacle = ObstacleGenerator.GenerateObstacle(obstaclePrefab, obstacleParent.transform);

            Assert.IsNotNull(generatedObstacle);
            Assert.AreEqual(obstacleParent.transform, generatedObstacle.transform.parent);
            Assert.AreEqual("Obstacle", generatedObstacle.tag);
            Assert.AreEqual(0.5f, generatedObstacle.transform.position.x, 0.01f);
            Assert.AreEqual(1.0f, generatedObstacle.transform.position.z, 0.01f);
        }
コード例 #25
0
ファイル: Engine.cs プロジェクト: ParityB1t/FindYourDog
    void Start()
    {
        Obstacle = (GameObject)Resources.Load("Prefabs/Obstacle");

        GameController = Instantiate((GameObject) Resources.Load("Prefabs/GameController"));
        ObstacleGen = Instantiate((GameObject)Resources.Load("Prefabs/ObstacleGenerator"));
        pool = GameController.GetComponent<PoolController>();
        obstacleGenerator = ObstacleGen.GetComponent<ObstacleGenerator>();

        pool.setObstacles(Obstacle);
        obstacleGenerator.setPoolController(pool);

        pool.enabled = true;
        obstacleGenerator.enabled = true;
    }
コード例 #26
0
    // Use this for initialization
    void Start()
    {
        totalBlocks       = transform.childCount;
        obstacleGenerator = GetComponent <ObstacleGenerator>();

        for (int i = 0; i < totalBlocksScreen; i++)
        {
            blocksInScreen.Add(transform.GetChild(i));
        }

        for (int i = totalBlocksScreen; i < totalBlocks; i++)
        {
            Transform block = transform.GetChild(i);
            blocksInPool.Add(block);
            block.localPosition = new Vector3(block.localPosition.x, poolYPosition, block.localPosition.z);
        }
    }
コード例 #27
0
ファイル: Vertical.cs プロジェクト: AdrianJaime/Foot-Chick
    // Start is called before the first frame update
    void Start()
    {
        obsData = gameObject.GetComponentInParent <ObstacleGenerator>();
        cam     = obsData.cam;
        width   = cam.ScreenToWorldPoint(new Vector3(Screen.width, 0, Mathf.Abs(gameObject.transform.position.z - cam.transform.position.z))).x;
        height  = cam.ScreenToWorldPoint(new Vector3(Screen.height, 0, Mathf.Abs(gameObject.transform.position.z - cam.transform.position.z))).y;
        float Sizey = cam.orthographicSize * 2;
        float Sizex = Sizey * Screen.width / Screen.height;
        int   rand  = Random.Range(0, 2);

        gameObject.transform.position = new Vector3(0, rand == 0 ? height : -height, 15);
        if (rand == 0)
        {
            gameObject.transform.Rotate(new Vector3(180, 0, 0));
        }
        gameObject.transform.localScale = new Vector3(Sizex / 150, Sizey / 150, gameObject.transform.localScale.z);
    }
コード例 #28
0
        public void TestGenerateObstacleFromDTO()
        {
            ObstacleDTO obstacleDTO = new ObstacleDTO();

            obstacleDTO.location = new Location(-4, -4);
            obstacleDTO.width    = 2;
            obstacleDTO.height   = 6;
            obstacleDTO.type     = "wall";
            GameObject obstacleParent = new GameObject();

            GameObject generatedObstacle = ObstacleGenerator.GenerateObstacle(obstacleDTO, obstacleParent.transform);

            Assert.IsNotNull(generatedObstacle);
            Assert.AreEqual(obstacleParent.transform, generatedObstacle.transform.parent);
            Assert.AreEqual("Obstacle", generatedObstacle.tag);
            Assert.AreEqual(-3.5f, generatedObstacle.transform.position.x, 0.01f);
            Assert.AreEqual(-1.5f, generatedObstacle.transform.position.z, 0.01f);
        }
コード例 #29
0
    public override void OnInspectorGUI()
    {
        DrawDefaultInspector();

        ObstacleGenerator generator = (ObstacleGenerator)target;

        string[] names = new string[generator.obstacles.Length];
        for (int i = 0; i < generator.obstacles.Length; ++i)
        {
            names[i] = generator.obstacles[i].name;
        }

        next_obstacle = EditorGUILayout.Popup("Next obstacle", next_obstacle, names);
        if (GUILayout.Button("Generate Next"))
        {
            generator.AddObstacle(next_obstacle);
        }
    }
コード例 #30
0
ファイル: Engine.cs プロジェクト: ParityB1t/Xmax-Sledge-Racer
 void Start()
 {
     GameObject racerParent = Instantiate(racers);
     GameObject slope = Instantiate(Slope);
     slope.transform.position = slopePosition;
     slope.transform.Rotate(new Vector3(0.3f,0,0));
     obGen = slope.transform.GetChild(0).GetComponent<ObstacleGenerator>();
     obGen.Obstacle = Obstacle;
     obGen.Slope = slope;
     //need to do thread organisation to do this after generate racers to generate
     Transform[] racersTransform = new Transform[racerParent.transform.childCount];
     for (int i = 0; i < racerParent.transform.childCount; i++)
     {
         racersTransform[i] = racerParent.transform.GetChild(i).transform;
     }
     obGen.racers = racersTransform;
     obGen.enabled = true;
 }
コード例 #31
0
    void Start()
    {
        worldBounds     = transform.Find("WorldBounds").GetChild(0).GetComponent <EdgeCreator>();
        enemyManager    = transform.Find("EnemyManager").GetComponent <EnemyGenerator>();
        ballManager     = transform.Find("BallManager").GetComponent <BallGenerator>();
        lvlDisplay      = transform.Find("GameStatsBar").Find("LevelDisplay").GetComponent <LevelDisplayController>();
        lifeDisplay     = transform.Find("GameStatsBar").Find("LifeDisplay").GetComponent <LifeDisplay>();
        gameOver        = transform.Find("GameOver").gameObject;
        obstacleManager = transform.Find("ObstacleManager").GetComponent <ObstacleGenerator>();
        background      = transform.Find("Background").GetComponent <BackgroundBehavior>();
        /*feedback = transform.Find("FilledFeedback").GetComponent<FillerFeedbackScript>();*/
        progressPie = transform.Find("GameStatsBar").Find("ProgressPie").GetComponent <ProgressPie>();


        // kickstart the first level
        enemyManager.numEnemies = currLevel;
        LevelBegin();
    }
コード例 #32
0
 private void ListenForPickerEvents()
 {
     if (Event.current.commandName == "ObjectSelectorClosed" &&
         Event.current.type != EventType.Layout)
     {
         GameObject objectPickerObject = EditorGUIUtility.GetObjectPickerObject() as GameObject;
         if (objectPickerObject != null)
         {
             if (objectPickerObject.tag == "Obstacle")
             {
                 ObstacleGenerator.GenerateObstacle(objectPickerObject, GameObject.Find("Obstacles").transform);
             }
             else if (objectPickerObject.tag == "Pickup")
             {
                 PickupGenerator.GeneratePickup(objectPickerObject);
             }
         }
     }
 }
コード例 #33
0
ファイル: GameManager.cs プロジェクト: fakkoweb/FlappyFace
    void OnLevelFinishedLoading(Scene scene, LoadSceneMode mode)
    {
        if (IsGameOver == false)
        {
            GameObject generatorgo = GameObject.Find("ObstacleGenerator");
            if (generatorgo != null)
            {
                generator = generatorgo.GetComponent <ObstacleGenerator>();
            }
            GameObject playergo = GameObject.FindGameObjectWithTag("Player");
            if (playergo != null)
            {
                player = playergo.GetComponent <PlayerFlappyController>();
            }

            if (generator != null)
            {
                generator.StartGenerator();
            }
        }
    }
コード例 #34
0
ファイル: GM.cs プロジェクト: DylanYasen/Project-together
    void Awake()
    {
        instance = this;

        obstacleGenerator = GetComponent<ObstacleGenerator>();
    }
コード例 #35
0
 void Awake()
 {
     instance = this;
 }
コード例 #36
0
	void Awake(){
		Debug.Log ("Obstacle Generator AWAKE");
		instance = this;
	}
コード例 #37
0
    // Use this for initialization
    void Start()
    {
        // get player reference
        player = GameObject.FindGameObjectWithTag("player").GetComponent<PlayerScript>();
        // get generator component
        generator = GetComponent<ObstacleGenerator>(); // assumes the component is on this gameobject
        // get wheel reference
        wheel = GameObject.FindGameObjectWithTag("Roller").GetComponent<BigRoller>();
        // get level select ref
        levelSelect = GetComponent<LevelSelect>();
        // get UI ref
        UI = GetComponent<GameplayUI>();
        // get actual player angle
        player.posOnWheel = Vector3.Angle(Vector3.up, player.transform.position - wheel.transform.position);

        currentLifeStage = 0;

        stressDistance = maxDistance;

        AudioController = GameObject.Find("Global").GetComponent<AudioControl>();

        // Audio test stuff
        //bassTrack.clip = Bass;
        //melodyTrack.clip = Melody;
    }
コード例 #38
0
 // Use this for initialization
 void Start()
 {
     manager = GetComponent<GameManagerInit> ();
     roller = manager.Wheel;
     generator = GetComponent<ObstacleGenerator> ();
 }