/// <inheritdoc /> protected override void OnEventFired(object source, EventArgs args) { //This just spawns the player by grabbing a spawn point //and passing it to the local player factory. Transform spawnPoint = SpawnStrategy.GetSpawnpoint(); int entityGuid = EntityGuid.ComputeEntityGuid(EntityType.Player, SlotIndex.SlotSelected); GameObject gameObject = LocalPlayerWorldRepresentationFactory.Create(new LocalPlayerWorldRepresentationCreationContext(entityGuid, spawnPoint)); if (Logger.IsInfoEnabled) { Logger.Info($"Created LocalPlayer's World Object. Dispatching {nameof(OnLocalPlayerWorldObjectCreated)}"); } OnLocalPlayerWorldObjectCreated?.Invoke(this, new LocalPlayerWorldObjectSpawnedEventArgs(entityGuid, gameObject)); }
void RandomInstantiation(int channel, float x, SpawnStrategy spwStr) { RedSquare rs; int brickSize = spwStr.brickSize; switch (brickSize) { case 1: rs = redSquare; break; case 2: rs = redSquare2; break; case 3: rs = redSquare3; break; default: rs = redSquare; Debug.Log("F**k!"); break; } rs.channelRunningIn = channel; rs.color = spwStr.brickColor; DeadZoneScript currentChannel = getPathFromChannel (channel); //If the color of the square is the same as the channel, spawn it dead. switch (rs.color) { case 1: rs.renderer.enabled = true; rs.blueSquare.renderer.enabled = false; rs.greenSquare.renderer.enabled = false; break; case 2: rs.renderer.enabled = false; rs.blueSquare.renderer.enabled = true; rs.greenSquare.renderer.enabled = false; break; case 3: rs.renderer.enabled = false; rs.blueSquare.renderer.enabled = false; rs.greenSquare.renderer.enabled = true; break; } rs.status = RedSquare.ALIVE; RedSquare copyOfRedSqr = Instantiate(rs, new Vector3(x,4.149223f + spwStr.brickYOffset,0f), Quaternion.identity) as RedSquare; brickBag.Add (copyOfRedSqr); }
void BuildBrickStrategy() { for (int x = 0; x < 3; x++) { for (int y = 199; y > 0; y--) { int brickSize = Random.Range(0,4); int currBrickSize = 0; if (y+1 < 200) { currBrickSize += flow[x, y+1].brickSize; } if (y+2 < 200) { currBrickSize += flow[x, y+2].brickSize; } if (y+3 < 200) { currBrickSize += flow[x, y+2].brickSize; } if (currBrickSize < 3) { brickSize = Random.Range(1,4-currBrickSize); } else { brickSize = 0; } SpawnStrategy currentStrategy = new SpawnStrategy(); currentStrategy.brickSize = brickSize; if (brickSize == 2) { currentStrategy.brickYOffset = 0.5f; } else { currentStrategy.brickYOffset = 0f; } if (brickSize != 0) { do { currentStrategy.brickColor = Random.Range(1,4); } while (currentStrategy.brickColor == lastColor); lastColor = currentStrategy.brickColor; } flow[x, y] = currentStrategy; } } }