import java.util.Random; public class GuessTheNumberRoom extends Room { private Item[] keys; public GuessTheNumberRoom() { super(1); keys = new Item[4]; Random r = new Random(); int n = r.nextInt(40)+12; locks[0] = new NumberLock(n); keys[0] = new FixedNumberKey(n); keys[1] = new FixedNumberKey(r.nextInt(40)+12); keys[2] = new RandomNumberKey(12, 40); keys[3] = new RandomNumberKey(12, 40); } public void play( EscapeRoom game ) { game.println("Du betrittst einen dunklen, unheimlichen Raum!"); game.println("Die Holzdielen knirschen unter deinen Füßen."); game.wait(1000); String s; do { s = game.askForString("Was möchtest du machen?").toLowerCase(); if( s.equals("umschauen") || s.equals("untersuchen") ) { game.println("Du siehst ein Zahlenschloss mit einem Rad."); game.wait(500); game.println("Du siehst einige Papierfetzen herumliegen:"); game.println(" Ein roter, ein blauer, ein gelber und ein weißer."); } else if( s.indexOf("weiß") > -1 && s.indexOf("nimm") > -1 ) { game.println("Du nimmst das weiße Papier."); game.println(keys[0].hint()); } else if( s.indexOf("blau") > -1 && s.indexOf("nimm") > -1 ) { game.println("Du nimmst das blaue Papier."); game.println(keys[1].hint()); } else if( s.indexOf("rot") > -1 && s.indexOf("nimm") > -1 ) { game.println("Du nimmst das rot Papier."); game.println(keys[2].hint()); } else if( s.indexOf("gelb") > -1 && s.indexOf("nimm") > -1 ) { game.println("Du nimmst das gelber Papier."); game.println(keys[3].hint()); } else if( s.indexOf("weiß") > -1 && s.indexOf("benutz") > -1 ) { game.println("Du gibst die Zahl des weißen Papiers im Schloss ein."); locks[0].unlock(keys[0]); game.wait(800); game.println(locks[0].hint()); } else if( s.indexOf("blau") > -1 && s.indexOf("benutz") > -1 ) { game.println("Du gibst die Zahl des blauen Papiers im Schloss ein."); locks[0].unlock(keys[1]); game.wait(500); game.println(locks[0].hint()); } else if( s.indexOf("rot") > -1 && s.indexOf("benutz") > -1 ) { game.println("Du gibst die Zahl des roten Papiers im Schloss ein."); locks[0].unlock(keys[2]); game.wait(700); game.println(locks[0].hint()); } else if( s.indexOf("gelb") > -1 && s.indexOf("benutz") > -1 ) { game.println("Du gibst die Zahl des gelben Papiers im Schloss ein."); locks[0].unlock(keys[3]); game.wait(600); game.println(locks[0].hint()); } game.wait(500); } while( !isUnlocked() ); game.println("Du hast es geschafft, die Tür öffnet sich mit einem lauten Schleifen!"); } }