Esempio n. 1
0
    void makeFlow(Chunk chunk, Vector3 movement, float newAngle, int chunkId)
    {
        Vector3   startingPosition = moveRelative(lastRoomEndPosition, movement, rotation);
        ChunkFlow newFlow          = new ChunkFlow(proceduralGeneratorOfChunk, lastChunk, chunkBag, random.Next(), chunkId, startingPosition, newAngle);

        chunk.flow             = newFlow;
        chunk.chunkFlowPresent = true;
        proceduralGeneratorOfChunk.chunkFlowsToAdd.Add(newFlow);
    }
Esempio n. 2
0
    public void StartGeneration(int seed, int startingChunkId)
    {
        currentChunkId = startingChunkId;

        chunkBag = new ChunkBag(levelName);

        ChunkFlow chunkFlow = new ChunkFlow(this, null, chunkBag, seed, currentChunkId, Vector3.zero, 0);

        chunkFlows.Add(chunkFlow);
        Chunk   newChunk = chunkFlow.loadFirstChunk();
        Vector2 start    = newChunk.checkPointLocation;

        playersTransform.position = new Vector3(start.x - 2, start.y - 1, 0);
        References.Runner.rigidbody2D.velocity = Vector2.zero;

        chunkFlow.lastChunk.playerPassedThrought = true;
    }
Esempio n. 3
0
	void Start () {
		StartCoroutine(InitializeProperties());
		m_time = 0;
		state = State_.Ready;
		m_pattern = new Pattern_();
		
		chunkFlow = new ChunkFlow();
	}