Nitri:
mein Status ist:
-ich bin Spaß- und Gelegenheitsspieler, weil auf dauer zu teuer
-vor ca. 30 Jahren hatte ich mich mit Elektronik befasst. Da gabs noch keine Mikrocontroller, LCD etc (Transistoren waren da in ^^)
-ich habe das mehr oder weniger funktionierende Programm aus einem Forum bekommen
-ich hab schon oft (vergeblich) versucht etwas in die Kiste zu laden
-ich bin der einzige, der weiß, das Spannung anliegt und Strom fließt 
Und Du hast offensichtlich die Kiste schon mal mit den Einzelteilen passend verdrahtet bekommen, so dass sie mit dem fremden Sketch so leidlich läuft.
Nitri:
Und das verrückteste ist, ich lese, lese und lese Tutorials, Beschreibungen und Anleitungen. Schau mir Videos an etc. und bewege mich kein bischen nach vorn. Immer wieder seh ich in der Arduinosoftware die nette rote Schrift die mir sagt, das was ich mache Mist ist. Ich hab auch ein anderes Programm bekommen. Aber da funktioniert nichtmal das Überprüfen. Da kommt immer "Das Keywort 'BYTE' wird nicht mehr unterstützt"
Das beim Arduino verwendete C++ ist keine typische "Lehrsprache" oder "Anfängersprache", sondern die typische Universalsprache, mit der heute Profis alles programmieren. Für Anfänger sind viele Dinge nicht direkt einsichtig, z.B. dass Groß- und Kleinschreibung NICHT EGAL sind. D.h. "byte" und "BYTE" und "Byte" und "ByTe" sind vier ganz verschiedene Dinge.
Vorteilhaft für den Einstieg wäre jedenfalls, wenn man wenigstens irgendeine Programmiersprache einigermaßen beherrscht, wenn man selbst etwas machen möchte.
Nitri:
Ich bin Modellflieger und mus sagen, das ein Helicopter oder Flugzeug einfacher zu fliegen ist als ein Microprozessor zu Progrmmieren 
Wenn ich das schon hin bekommen würde das ich die Zeit bis 2 Stunden einstellen könnte, wär das ein extremer Quantensprung.
Hut ab vor allen, die ein Programm schreiben, als wärs ´ne E-Mail. 
OK, ich habe Dir mal was vorbereitet, wie Du wenigstens die Zeiteingabe leicht einbauen kannst. Als erstes oben im Sketch eine zusätzliche Variable für die Eingabe der Spieldauer deklarieren, die Zeile mit der playtime-Deklaration ist neu:
char password[4]; // number of characters in our password
char playtime[4]; // number of characters in our playtime
Und dann habe ich die Spieldauer-Eingabe mal in der typischen Spaghetticode-Art wie der Code geschrieben ist mit in die setup-Funktion eingebaut. Dies wäre dann die neue setup-Funktion im Austausch:
void setup(){
pinMode(ledPin, OUTPUT); // sets the digital pin as output
pinMode(ledPin2, OUTPUT); // sets the digital pin as output
pinMode(ledPin3, OUTPUT); // sets the digital pin as output
lcd.begin(16, 2);
Serial.begin(9600);
lcd.clear();
lcd.setCursor(2,0);
lcd.print (" Paintstorm ");
lcd.setCursor(0,1);
lcd.print(" Paintball Bomb ");
delay (4000);
lcd.clear();
lcd.setCursor(2,0);
lcd.print ("15 min Zeit zum");
lcd.setCursor(0,1);
lcd.print("*entsch\341rfen*");
delay(1500);
lcd.clear();
lcd.print("Enter Code: ");
while (currentLength < 4)
{
lcd.setCursor(currentLength + 12, 0);
lcd.cursor();
char key = keypad.getKey();
key == NO_KEY;
if (key != NO_KEY)
{
if ((key != '*')&&(key != '#'))
{
lcd.print(key);
password[currentLength] = key;
currentLength++;
tone(TONEPIN,NOTE_D8, 75);
}
}
}
if (currentLength == 4)
{
delay(500);
lcd.noCursor();
lcd.clear();
lcd.home();
lcd.print("You've Entered: ");
lcd.setCursor(6,1);
lcd.print(password[0]);
lcd.print(password[1]);
lcd.print(password[2]);
lcd.print(password[3]);
tone(TONEPIN, NOTE_FS4, 250);
delay(3000);
lcd.clear();
currentLength = 0;
}
lcd.clear();
lcd.print("Enter TIME: ");
while (currentLength < 4)
{
lcd.setCursor(currentLength + 12, 0);
lcd.cursor();
char key = keypad.getKey();
key == NO_KEY;
if (key != NO_KEY)
{
if ((key != '*')&&(key != '#'))
{
lcd.print(key);
playtime[currentLength] = key;
currentLength++;
tone(TONEPIN,NOTE_D8, 75);
}
}
}
if (currentLength == 4)
{
delay(500);
lcd.noCursor();
lcd.clear();
lcd.home();
lcd.print("Spieldauer: ");
lcd.setCursor(6,1);
lcd.print(playtime[0]);
lcd.print(playtime[1]);
lcd.print(playtime[2]);
lcd.print(playtime[3]);
tone(TONEPIN, NOTE_FS4, 250);
delay(3000);
lcd.clear();
currentLength = 0;
Mcount = (playtime[0]-'0')*1000 + (playtime[1]-'0')*100 + (playtime[2]-'0')*10 + (playtime[3]-'0'); // count minutes
Hcount = Mcount/60; // Stunden als Ganzzahldivision durch 60
Mcount = Mcount%60; // Minuten als Divisionsrest beim Teilen durch 60
}
}
Die Spieldauer muss dann zu Anfang genau wie der Keycode vierstellig numerisch in Minuten eingegeben werden. D.h. für eine Spieldauer von 2 Stunden = 120 Minuten wäre die Eingabe "0120".
Vielleicht bekommst Du es ja hin.
Außerdem glaube ich irgendwie nicht, dass Dir Dein LCD mit "entschärfen" das "ä" richtig anzeigt. Diese LCDs haben als Zeichensatz nämlich nicht denselben Zeichensatz wie Dein PC-Betriebssystem. Ich habe den Code mal so geändert, dass Du den "ä" Umlaut in "entschärfen" möglicherweise doch auf dem LCD angezeigt bekommst.
Probier's mal aus!
Außerdem sehe ich gerade, dass Dein Spiel mit einem erfolgreichen "Bomb Defused" nicht beendet ist, sondern der Countdown nach einem delay von 1000 Sekunden fortgesetzt wird:
lcd.print("-Reset the Bomb-");
delay(1000000);
Eine Million Millisekunden sind 1000 Sekunden = knappe 17 Minuten
Der Countdown ist also nach Eingabe des Keycodes nicht zuende, sondern nur für knappe 17 Minuten unterbrochen.
Da würde ein James Bond-Film wie Goldfinger ein ganz anderes Ende nehmen, wenn er die Bombe des Bösewichts in fast letzter Sekunde nur vermeintlich entschärft hat, der Countdown bei "007" stehen bleibt, und es nur ein "delay" bewirken würde, bevor der Countdown weiterläuft.
Auch das Spielende mit "Wrong Password!" ist vom Prinzip her falsch programmiert. Sieht man wegen des Spaghetticodes und der Programmierung mit diversen Seiteneffekten nicht, aber ich sage mal: Das Spielende mit "Wrong Password!" und der oben von mir geposteten Änderung für die freie Eingabe der Spieldauer ist nur in dem Fall sichergestellt, dass keine Spieldauer von mehr als 58 Minuten verwendet wird. Für Spieldauern über 58 Minuten kann die Logik beim Spielende mit "Wrong Password!" versagen und müßte ebenfalls geändert werden.
Wie gesagt: Eigentlich müßte das Ding komplett neu programmiert werden, modular und übersichtlich statt mit unübersichtlichem Spaghetticode.