Exemple #1
0
        private IEnumerator GameRunning(DynamiteGame game)
        {
            yield return(new WaitForSeconds(220f));

            if (game.State != GameState.Running)
            {
                yield break;
            }

            audio.PlayVoice(2); // "Beeilt euch!"

            // wait for timeout
            WaitForSeconds interval = new WaitForSeconds(.5f);

            while (game.State == GameState.Running && game.ElapsedTime <= RoomMaster.MaxTimeDynamite)
            {
                yield return(interval);
            }

            if (game.State == GameState.Running)
            {
                Debug.Assert(game.ElapsedTime > RoomMaster.MaxTimeDynamite, "Timeout not reached.");
                game.Abort();
            }
        }
Exemple #2
0
 private void Start()
 {
     pipes    = Ets.Room.GetGame <PipesGame>();
     crane    = Ets.Room.GetGame <CratesGame>();
     dynamite = Ets.Room.GetGame <DynamiteGame>();
     trigger  = Ets.Room.GetGame <TriggersGame>();
 }
Exemple #3
0
        private IEnumerator GameCompleted(DynamiteGame game)
        {
            audio.PlayVoice(142); // "Alles klar."
            yield return(new WaitForSeconds(audio.GetVoiceLength(142)));

            if (game.ElapsedTime <= 300f)
            {
                Ets.Room.GetGame <TriggersGame>().Initialize(GameDifficulty.Hard);
            }
            else
            {
                Ets.Room.GetGame <TriggersGame>().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() : "-";
        }
Exemple #5
0
        private void onInstructionSolvedStateChanged(DynamiteGame sender, InstructionSolvedStateChangedArgs e)
        {
            if (e.Solved)
            {
                Statistics.dynamiteInstructionsSolved++;
            }
            else
            {
                Statistics.dynamiteInstructionsSolved--;
            }

            if (Statistics.dynamiteInstructionsSolved > Statistics.dynamiteMaxInstructionsSolved)
            {
                Statistics.dynamiteMaxInstructionsSolved = Statistics.dynamiteInstructionsSolved;
            }
        }
Exemple #6
0
        private IEnumerator GameInitialized(DynamiteGame game)
        {
            lighting.SwitchToLights(Light.Dynamite);

            audio.PlayVoice(131); // "Die Wand hier..."
            yield return(new WaitForSeconds(audio.GetVoiceLength(131)));

            int instructionsVoiceClip = instructionsVoiceClips[game.ScenarioNumber - 1];

            audio.PlayVoice(instructionsVoiceClip); // "Benutzt Sprengtafel..."
            yield return(new WaitForSeconds(audio.GetVoiceLength(instructionsVoiceClip)));

            audio.PlayVoice(136); // "Wenn alles richtig platziert ist..."
            yield return(new WaitForSeconds(audio.GetVoiceLength(136)));

            game.Start();
        }
Exemple #7
0
        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;
        }
Exemple #8
0
        // Use this for initialization
        void Awake()
        {
            pnlInstructions = transform.Find("pnlInstructions");

            Transform pnlHoles = transform.Find("pnlHoles");

            //print(pnlHoles != null);

            for (int i = 0; i < lblHoles.Length; i++)
            {
                //print(pnlHoles.GetChild(i));
                //print(pnlHoles.Find(i.ToString()));
                lblHoles[i] = pnlHoles.Find(i.ToString()).GetComponentInChildren <Text>();
            }

            game = Ets.Room.GetGame <DynamiteGame>();
            game.OnGameStateChanged += OnGameStateChanged;
            game.OnInstructionSolvedStateChanged += OnInstructionSolvedStateChanged;
            game.OnStickInserted += OnStickInserted;
            game.OnStickRemoved  += OnStickRemoved;
            //OnGameStateChanged(game, game.State, game.State);
        }
Exemple #9
0
        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;
        }
Exemple #10
0
 public void OnStickRemoved(DynamiteGame sender, StickEventArgs e)
 {
     audio.PlaySound(32);
 }
Exemple #11
0
 protected override void Setup()
 {
     lighting = Room.GetModule <LightingDirector>();
     game     = Room.GetGame <DynamiteGame>();
 }
Exemple #12
0
 public void OnStickInserted(DynamiteGame sender, StickEventArgs e)
 {
     audio.PlaySound(31);
 }
Exemple #13
0
 private void OnStickRemoved(DynamiteGame sender, StickEventArgs e)
 {
     Record(new StickRemoval(e.HoleIndex, e.Stick.Index, e.Stick.Holes, e.Stick.Grooves, e.Stick.Length, e.Stick.Weight));
 }
Exemple #14
0
 private void OnInstructionSolvedStateChanged(DynamiteGame sender, InstructionSolvedStateChangedArgs e)
 {
     Record(new InstructionStateChange(e.InstructionIndex, e.Solved));
 }
Exemple #15
0
 public void OnInstructionSolvedStateChanged(DynamiteGame sender, InstructionSolvedStateChangedArgs e)
 {
     lblInstructions[e.InstructionIndex].color = e.Solved ? ColorSolvedInstruction : ColorUnsolvedInstruction;
 }
Exemple #16
0
 public void OnStickRemoved(DynamiteGame sender, StickEventArgs e)
 {
     UpdateHoleLabel(e.HoleIndex, -1);
 }
Exemple #17
0
 public void OnStickInserted(DynamiteGame sender, StickEventArgs e)
 {
     UpdateHoleLabel(e.HoleIndex, e.Stick.Index);
 }
Exemple #18
0
 private void onStickInserted(DynamiteGame sender, StickEventArgs e)
 {
     Statistics.dynamiteStickInsertions++;
     Statistics.dynamiteSticksInHoles++;
 }
Exemple #19
0
 private void onStickRemoved(DynamiteGame sender, StickEventArgs e)
 {
     Statistics.dynamiteStickRemovals++;
     Statistics.dynamiteSticksInHoles--;
 }