private void gameTimer_Tick(object sender, EventArgs e) { // Doe een seconden van de game tijd aftrekken en update de resterende tijd op het scherm. this.secondsLeftInGame--; this.DisplayGameTimeLeftOnScreen(); if (secondsLeftInGame <= 0) { // Wanneer de tijd is afgelopen kan de verstopper zich niet meer verder bewegen en wordt de timer gestopt. // Verder wordt ook bij de resterende tijd afgelopen weergegeven. this.canHide = false; gameTimer.Stop(); gameTimeLeftLabel.Text = "Afgelopen"; if (this.currentSwitch != null) { Domoticz.SendLogMessageToDomoticz("[HIDING] Ended, Current room: " + this.currentSwitch.idx); } else { Domoticz.SendLogMessageToDomoticz("[HIDING] Ended, Current room: none"); } } }
private void StopGame() { this.EnablePictureBoxStatus(false); this.gameOver = true; gameTimer.Stop(); if (this.foundHider) { MessageBox.Show("Je hebt gewonnen!"); Domoticz.SendLogMessageToDomoticz("[SEEKER] Won Lives" + this.seekerLives); } else { MessageBox.Show("Je hebt verloren!"); Domoticz.SendLogMessageToDomoticz("[SEEKER] Lost Lives:" + this.seekerLives); } }
private void GoToRoom(Switch @switch) { // Check of de verstopper zich nog kan verstoppen, zo niet wordt er een bericht gestuurd en wordt de code verder niet uitgevoerd. if (!this.canHide) { MessageBox.Show("Je kan je niet meer verder verstoppen! De tijd is namelijk afgelopen.", "Stop met verstoppen!"); return; } // Huidige switch uitzetten if (this.currentSwitch != null) { Domoticz.UseSwitch(this.currentSwitch, SwitchActionEnum.Off); } // Nieuwe switch aanzetten Domoticz.UseSwitch(@switch, SwitchActionEnum.On); Domoticz.SendLogMessageToDomoticz("[HIDING] To: " + @switch.idx); this.currentSwitch = @switch; }
public HideGameMenu(int playingTimeInSeconds) { InitializeComponent(); // Haal alle sensoren op via de Domoticz API. this.switches = Domoticz.GetSwitches(); // Doe alle switches uitzetten zodat deze niet al aanstaan voordat het spel begint. this.TurnOffAllSwitches(); // Stuur een bericht naar Domoticz dat het verstoppen begint, zo kan dit in de zoekapplicatie gekeken worden wanneer het spel begonnen is. Domoticz.SendLogMessageToDomoticz("[HIDING] Started: " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss") + ", Game length: " + playingTimeInSeconds + " seconds"); // Zet het aantal seconden van het spel naar de gespecificeerde tijd. this.secondsLeftInGame = playingTimeInSeconds; // De tijd wordt gestart this.StartGameTimer(); // Verder wordt ook aangezet dat de verstopper zich kan gaan verstoppen. this.canHide = true; }