protected override void OnAddToStageComplete() { base.OnAddToStageComplete(); gameOverlay = SmuckGame.GameOverlay; gameOverlay.Activate(); isLevelOver = false; summaryPosted = false; winningPlayer = -1; SetGoals(9, 4); LaneInit(); LevelInit(); gameOverlay.SetLevel(LevelKind, levelNumber); if (defaultShader != null) { ((DesaturationShader)defaultShader).level = 1f; } for (int i = 0; i < screen.inputManagers.Length; i++) { if (screen.inputManagers[i] != null && screen.inputManagers[i].PlayerJoinState == PlayerJoinState.Joined) { CreatePlayer(i); } } firstUpdate = true; }
public override void Removed(EventArgs e) { base.RemovedFromStage(e); foreach (SmuckPlayer p in players) { if (p != null) { this.RemoveChild(p); p.body = null; } } for (int i = 0; i < lanes.Length; i++) { for (int j = 0; i < lanes[i].vehicles.Count; j++) { if (lanes[i].vehicles[j] != null && this.Contains(lanes[i].vehicles[j])) { RemoveChild(lanes[i].vehicles[j]); } lanes[i].vehicles[j] = null; lanes[i].vehicles.Clear(); } lanes[i] = null; } lanes = null; vehicle = null; for (int i = 0; i < deadIcons.Count; i++) { RemoveChild(deadIcons[i]); } deadIcons.Clear(); if (starParticles != null) { RemoveChild(starParticles); } gameOverlay = null; }