private void Start() { pipes = Ets.Room.GetGame <PipesGame>(); crane = Ets.Room.GetGame <CratesGame>(); dynamite = Ets.Room.GetGame <DynamiteGame>(); trigger = Ets.Room.GetGame <TriggersGame>(); }
public void OnCraneDeploymentFinished(CratesGame sender, CraneEventArgs e) { if (sender.State == GameState.Running || sender.State == GameState.Completed || sender.State == GameState.Aborted) { OnCraneMovementStopped(sender, e); } }
public void OnCraneDeploymentStarted(CratesGame sender, CraneEventArgs e) { if (sender.State == GameState.Running) { OnCraneMovementStarted(sender, e); } }
public void OnCrateDropped(CratesGame sender, CrateEventArgs e) { if (sender.State == GameState.Running || sender.State == GameState.Completed || sender.State == GameState.Aborted) { audio.PlaySound(24); } }
public void OnCratePickedUp(CratesGame sender, CrateEventArgs e) { if (sender.State == GameState.Running) { audio.PlaySound(24); } }
protected override void Setup() { lighting = Room.GetModule <LightingDirector>(); game = Room.GetGame <CratesGame>(); game.OnCratePickedUp += OnCratePickedUp; game.OnCrateDropped += OnCrateDropped; }
private IEnumerator GameRunning(CratesGame game) { yield return(new WaitForSeconds(60f)); if (game.State != GameState.Running) { yield break; } if (game.CratesInDropzone == 0 && !firstCratePickedUp) { audio.PlayVoice(104); // "Noch keine Kiste aufgehoben?" } yield return(new WaitForSeconds(60f)); if (game.CratesInDropzone == 0) { audio.PlayVoice(110); } // wait for timeout WaitForSeconds interval = new WaitForSeconds(.5f); while (game.State == GameState.Running && game.ElapsedTime <= RoomMaster.MaxTimeCrates) { yield return(interval); } if (game.State == GameState.Running) { Debug.Assert(game.ElapsedTime > RoomMaster.MaxTimeCrates, "Timeout not reached."); game.Abort(); } }
public void OnCraneMovementStarted(CratesGame sender, CraneEventArgs e) { if (sender.State == GameState.Running) { craneMoving = true; StartCoroutine(craneMovementStart()); } }
private void OnCrateDropped(CratesGame sender, CrateEventArgs e) { if (!firstCrateInDropzone && e.InDropzone) { audio.PlayVoice(88); firstCrateInDropzone = true; } }
private void OnCratePickedUp(CratesGame sender, CrateEventArgs e) { if (!firstCratePickedUp) { audio.PlayVoice(86); firstCratePickedUp = true; } }
public void OnCraneMovementStopped(CratesGame sender, CraneEventArgs e) { if (sender.State == GameState.Running || sender.State == GameState.Completed || sender.State == GameState.Aborted) { audio.StopSound(21); audio.StopSound(22); audio.PlaySound(23); craneMoving = false; } }
private void Awake() { lblCrates = transform.Find("lblCrates").GetComponent <Text>(); lblDistance = transform.Find("lblDistance").GetComponent <Text>(); game = Ets.Room.GetGame <CratesGame>(); game.OnGameStateChanged += OnGameStateChanged; game.OnCraneDistanceMoved += OnCraneDistanceMoved; game.OnCrateDropped += OnCrateDropped; game.OnCratePickedUp += OnCratePickedUp; //OnGameStateChanged(game, game.State, game.State); }
private IEnumerator GameAborted(CratesGame game) { audio.PlayVoice(122); // "Das klappt nicht." yield return(new WaitForSeconds(audio.GetVoiceLength(122))); if (game.CratesInDropzone == 0) { Room.GetGame <DynamiteGame>().Initialize(GameDifficulty.Easy); } else { Room.GetGame <DynamiteGame>().Initialize(GameDifficulty.Medium); } }
private void OnScoresUpdated(ScoringModule sender, ScoresUpdatedEventArgs e) { PipesGame pipes = Ets.Room.GetGame <PipesGame>(); lblScorePipes.text = e.Scores.ContainsScore(pipes) ? e.Scores.GetScore(pipes).ToString() : "-"; CratesGame crates = Ets.Room.GetGame <CratesGame>(); lblScoreCrane.text = e.Scores.ContainsScore(crates) ? e.Scores.GetScore(crates).ToString() : "-"; DynamiteGame dynamite = Ets.Room.GetGame <DynamiteGame>(); lblScoreDynamite.text = e.Scores.ContainsScore(dynamite) ? e.Scores.GetScore(dynamite).ToString() : "-"; TriggersGame trigger = Ets.Room.GetGame <TriggersGame>(); lblScoreTrigger.text = e.Scores.ContainsScore(trigger) ? e.Scores.GetScore(trigger).ToString() : "-"; }
protected override void Setup() { PipesGame pipes = Room.GetGame <PipesGame>(); pipes.OnValveTurned += OnValveTurned; pipes.OnFanTriggered += OnFanTriggered; crates = Room.GetGame <CratesGame>(); crates.OnCrateDropped += OnCrateDropped; crates.OnCratePickedUp += OnCratePickedUp; DynamiteGame dynamite = Room.GetGame <DynamiteGame>(); dynamite.OnInstructionSolvedStateChanged += OnInstructionSolvedStateChanged; dynamite.OnStickInserted += OnStickInserted; dynamite.OnStickRemoved += OnStickRemoved; TriggersGame trigger = Room.GetGame <TriggersGame>(); trigger.OnButtonPressed += OnButtonPressed; }
private int CalculateScore(Game <IEtsInterface> sender, bool completed) { int score = 0; if (completed) { score += completedBonus; } score += difficultyBonus[(int)sender.Difficulty]; Statistics statistics = Room.GetModule <StatisticsModule>().Statistics; switch (sender.Id) { case PipesGame.GameId: score += pipesRunningFanBonus * statistics.pipesMaxRunningFans; score += pipesSolvedSubsystemBonus * statistics.pipesSolvedSubsystems; break; case CratesGame.GameId: CratesGame crane = (CratesGame)sender; score += craneCrateInDropzoneBonus * crane.CratesInDropzone; int unnecessaryPickups = Math.Max(0, statistics.craneCratePickups - crane.CrateCount); score += craneUnnecessaryPickupPenalty * unnecessaryPickups; break; case DynamiteGame.GameId: score += dynamiteSolvedInstructionBonus * statistics.dynamiteInstructionsSolved; break; case TriggersGame.GameId: score += triggerMaxSequenceProgress * statistics.triggerMaxSequenceProgress; break; } return(score); }
protected override void Setup() { pipes = Room.GetGame <PipesGame>(); pipes.OnValveTurned += OnValveTurned; pipes.OnFanTriggered += OnFanTriggered; CratesGame crates = Room.GetGame <CratesGame>(); crates.OnCraneDeploymentFinished += OnCraneDeploymentFinished; crates.OnCraneDeploymentStarted += OnCraneDeploymentStarted; crates.OnCraneMovementStarted += OnCraneMovementStarted; crates.OnCraneMovementStopped += OnCraneMovementStopped; crates.OnCrateDropped += OnCrateDropped; crates.OnCratePickedUp += OnCratePickedUp; DynamiteGame dynamite = Room.GetGame <DynamiteGame>(); dynamite.OnStickInserted += OnStickInserted; dynamite.OnStickRemoved += OnStickRemoved; TriggersGame trigger = Room.GetGame <TriggersGame>(); trigger.OnButtonPressed += OnButtonPressed; }
public void OnCraneDistanceMoved(CratesGame sender, CraneDistanceMovedEventArgs e) { UpdateDistance(sender); }
private void UpdateCrates(CratesGame sender) { lblCrates.text = string.Format(craneCountFormatStr, sender.CratesInDropzone, sender.CrateCount); }
public void OnCrateDropped(CratesGame sender, CrateEventArgs e) { UpdateCrates(sender); }
public void OnCratePickedUp(CratesGame sender, CrateEventArgs e) { UpdateCrates(sender); }
private void UpdateDistance(CratesGame sender) { lblDistance.text = string.Format(distanceFormatStr, sender.TotalMoveDistance); }
public void onCratePickedUp(CratesGame sender, CrateEventArgs e) { Statistics.craneCratePickups++; Statistics.craneCratesInDropzone = sender.CratesInDropzone; }
public void onCrateDropped(CratesGame sender, CrateEventArgs e) { Statistics.craneCratesInDropzone = sender.CratesInDropzone; }
private void OnCratePickedUp(CratesGame sender, CrateEventArgs e) { Record(new CratePickup(e.CrateId, sender.CratesInDropzone)); }
private void OnCrateDropped(CratesGame sender, CrateEventArgs e) { Record(new CrateDrop(e.CrateId, sender.CratesInDropzone)); }