| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Nov 2011
Beiträge: 8
| Flashgame Safe knacken
Ich habe für ein Flashgame ein Rätsel programmiert welches ein Tastenfeld mit den Tasten 0-9 hat. Jetzt soll der richtige Code herausgefunden werden. Bei richtiger Eingabe bleibt die Zahl stehen bei falscher Eingabe kommt "falsch" und man muss von vorne anfangen. Wenn man aber die erste Zahl 2 mal drückt bleibt die 1 stehen und ich weiss nicht wie ichs ändern kann Hier mal der Code Code: public function Safe():void
{
Eins.addEventListener(MouseEvent.CLICK, clicked);
Zwei.addEventListener(MouseEvent.CLICK, clicked);
Drei.addEventListener(MouseEvent.CLICK, clicked);
Vier.addEventListener(MouseEvent.CLICK, clicked);
Fuenf.addEventListener(MouseEvent.CLICK, clicked);
Sechs.addEventListener(MouseEvent.CLICK, clicked);
Sieben.addEventListener(MouseEvent.CLICK, clicked);
Acht.addEventListener(MouseEvent.CLICK, clicked);
Neun.addEventListener(MouseEvent.CLICK, clicked);
Text.width = 150;
Text.height = 40;
Text.x = 60;
Text.y = 20;
addChild(Text);
format.align = TextFormatAlign.CENTER;
Text.text = " ";
}
public function clicked ( event : MouseEvent ): void {
switch(event.target)
{
case Eins:
Text.text = "1";
Text.setTextFormat(format);
if(Text.text == "1")
{
Text.text = "Falsch";
}
break;
case Zwei:
Text.text = "Falsch";
Text.setTextFormat( format );
break;
case Drei:
if (Text.text == "1")
{
Text.text = "13";
Text.setTextFormat( format );
}
else
{
Text.text = "Falsch";
Text.setTextFormat( format );
}
break; Kann mir jemand sagen wie ich beim 2ten Buttonklick ein falsch ausgeben kann? Danke und Mfg, Carter |
| | |
| | #2 (permalink) |
| + Zimt & Zucker Registriert seit: Mar 2006 Ort: hinterm Mond gleich links
Beiträge: 2.040
|
Und wenn du den Code ändern willst, schreibst du dann diese komplette switch case konstrukt noch mal? nee Du solltest deinen Code (welche Reichenfolge der Knöpfe zum Erfolg führt) variabel halten. //Hier flux ein Schrank aus Berlin PHP-Code: Jedem Knopf ist eindeutig eine Zahl zugeordnet und in dessem Namen abgelegt. Das ist nicht sonderlich sauber. In deinem Fall könntest du dort direkt die vorhandenen Instanznamen eintragen und die Referenzen direkt vergleichen.
__________________ anbei Grüße vom milchreis: Viva la [Silb] "Selbst wenn uns nur noch der Zynismus treibt, wir werden trotzdem einfach immer weiter gehen!" [Von null auf Flash in einem Klick.] <<< klick |
| | |
| | #4 (permalink) |
| + Zimt & Zucker Registriert seit: Mar 2006 Ort: hinterm Mond gleich links
Beiträge: 2.040
| ja klar, das Prinzip ist das gleiche: In der Event handler funktion wird über currentTarget auf den aktuell gedrückten button zugegriffen. Die traces die ich ausgeben lassen seien nur exemplarisch und können natürlich durch das ersetzt werden, was eben passeiren soll, wenn ein richtiger, ein falscher Knopf oder der gesamte Code eingegeben wurden.
__________________ anbei Grüße vom milchreis: Viva la [Silb] "Selbst wenn uns nur noch der Zynismus treibt, wir werden trotzdem einfach immer weiter gehen!" [Von null auf Flash in einem Klick.] <<< klick |
| | |
| | #6 (permalink) | |
| + Zimt & Zucker Registriert seit: Mar 2006 Ort: hinterm Mond gleich links
Beiträge: 2.040
| Zitat:
![]() Wie gesagt: ersetze oder ergänze die Aufrufe vom jeweiligen trace mit dem, was du tun möchtest. Möchtest du also die bisherigen korrekten Tastenbetätigungen (also den bisher richtig eingegebenen Teil des Codes) ausgeben, so wäre es am einfachsten du gibstden Code bis zur aktuellen Stelle aus. Also bei richtigem Knopf, Code bis zur aktuell richtigen Stelle ausgeben, bei falschen Knopf, Textfeld zurücksetzen. Sollte dir das nicht weiterhelfen, versuche noch mal genau zu beschreiben, wo genau das Problem liegt.
__________________ anbei Grüße vom milchreis: Viva la [Silb] "Selbst wenn uns nur noch der Zynismus treibt, wir werden trotzdem einfach immer weiter gehen!" [Von null auf Flash in einem Klick.] <<< klick | |
| | |
| | #7 (permalink) |
| Neuer User Registriert seit: Nov 2011
Beiträge: 8
|
Mein Problem ist leider offensichtlich das ich zu starke Programmierdefizite hab. Meine Einschätzung ist das ich die korrekten Tastenkombinationen("e.currentTarget.name") in einen String? übergeben muss der dann abspeichert und bis zur aktuellen Stelle ausgibt? Ich weiss nur nicht wie ich abspeicher bzw den letzten und nicht den aktuellen anspreche. Sowas wie lastTarget. |
| | |
| | #8 (permalink) | |
| + Zimt & Zucker Registriert seit: Mar 2006 Ort: hinterm Mond gleich links
Beiträge: 2.040
| Zitat:
Du kannst dir natürlich alle richtig gedrückten Tasten abspeichern. Wenn dann eine falsche Taste gedrückt wird, leerst du diesen Speicher. So ein Speicher ließe sich durch eine String Variable realisieren. ABER: Das wäre nicht sonderlich clever. Du hast ja den Code vorliegen! Also musst du dir die richtigen Tasten nicht merken, sondern kannst einfach aus einer aktuell gedrückten, richtigen Taste schlussfolgern, wie weit der Code schon richtig eingegeben wurde. Ändere also die entsprechende Zeile so ab und führe das ganze aus, probiere herum. PHP-Code: code -> wir nehmen das Array aus Zahlen, das den bekannten Code enthält code.join("") -> alle Elemente werden zu einem String verbunden, das würde dem gesamten Code entsprechen, jetzt muss noch der Teil abgeschnitten werden, der noch nicht eingegeben wurde code.join("").substring(0, currentIndex) -> das passiert hier. substring schneidet bei der aktuellen button nummer ab. das Ergebnis ist ein String, du kannst diesen also der .text Eigenschaft des Textfeldes zuweisen.
__________________ anbei Grüße vom milchreis: Viva la [Silb] "Selbst wenn uns nur noch der Zynismus treibt, wir werden trotzdem einfach immer weiter gehen!" [Von null auf Flash in einem Klick.] <<< klick | |
| | |
| | #10 (permalink) |
| + Zimt & Zucker Registriert seit: Mar 2006 Ort: hinterm Mond gleich links
Beiträge: 2.040
|
__________________ anbei Grüße vom milchreis: Viva la [Silb] "Selbst wenn uns nur noch der Zynismus treibt, wir werden trotzdem einfach immer weiter gehen!" [Von null auf Flash in einem Klick.] <<< klick |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Safe knacken Tastenfeld | CarterC | ActionScript 3 | 1 | 09-11-2011 17:59 |
| PHP Exec, Safe Mode & Flv2jpg.exe | kasaa | PHP und MySQL | 4 | 19-01-2005 19:34 |
| move_uploaded_file()....+safe mode | pilzebub | PHP und MySQL | 5 | 13-11-2004 10:45 |
| function thread-safe machen | nickinicki | Softwarearchitektur und Entwurfsmuster | 18 | 13-06-2004 05:50 |
| Object.prototype.copy (MX-safe) | k7c4 | Softwarearchitektur und Entwurfsmuster | 12 | 26-02-2003 13:49 |