JavaScript Roulette Spiel will nicht laufen

U

user_deleted_9

Gast
Moin^^

Habe ein Problem und zwar will mein Roulette Spiel, was ich mit HTML Programmieren will nicht laufen! Ich habe es folgend gemacht: Ich habe Ein Eingabe Feld gemacht in dem man einen Einsatz geben kann und einen Button der das Spiel starten soll. Nun soll eine Zufalls zahl generiert werden und wenn diese mit dem Einsatz übereinstimmt soll das Konto mal 36 gerechnet werden. Verliert man soll es Minus dem Geld einsatz gerechnet werden. Irgendwie komme ich aber total durcheinander, weil ich noch nie so viel mit HTML probiert habe.

HTML:
<html>
<head>
<title>Test</title>
<script type="text/javascript">
<!--
function Quadrat() {
   var Ergebnis = Math.round(Math.random() * 35 + 1);
   if (Ergebnis = Document.Formular.Eingabe.value) {alert (Document.Formular.Eingabe.value * 360)}
   else {alert (Document.Formular.Eingabe.value - Document.Formular.Eingabe.value)};

}
//-->
</script>
</head>
<body>
<form name="Formular" action="">
<input type="text" name="Eingabe" size="3">
<input type="button" value="Start" onclick="Quadrat()">
</form>
</body>
</html>

Vielleicht wisst ihr ja mehr^^

Gruß

CF-GTR
 
Javascript beachtet Groß- und Kleinschreibung, schreib "document" mal klein, dann sollte es schon funktionieren...

und in deiner If-Abfrage musst du == schreiben, dann funktioniert es als Vergleich, ein = Zeichen alleine ist eine Zuweisung ;)
 
Habe das jetzt überarbeitet^^

Habe auch weitergemacht, aber wenn ich eine Schleife einfüge, z.B dass er 10 mal spielen soll, zeigt er mir nicht den wahren Kontostand an, er zieht nur 10 Euro ab anstatt 100 wenn man verliert...

Hinweis es sollen nur 10euro gestezt werden da ich es nicht hinkriege, dass er soviel abzieht, wie man setzt ,wenn man verliert... er zieht ständig nur 10euro ab...

HTML:
<html>
<head>
<script type="text/javascript">
<!--
 function multi(Eingabe) {
 var Ergebnis, z1;
z1=document.Formular.Eingabe.value;
for(var i=1;i<=(document.Formular.Eingabe5.value) ;i++)
 {Ergebnis = Math.round(Math.random() * 36 + 1);
 if (Ergebnis==document.Formular.satz.value) 
 {z1= z1 + 36 * (document.Formular.min.value) ;
 document.write("<pre>");
 document.writeln ("<b> GEWONNEN!!!!!;)Dein Kontostand beträgt " + z1 +"<\/b>");
 document.writeln("<\/pre>");}
 else {z1= z1 -10;
 document.write("<pre>");
 document.writeln ("<b>Du hast verloren :(. Dein Kontostand beträgt" + z1 +"<\/b>");
 document.writeln("<\/pre>");}
 }
}
//-->
</script>
</head>
<body>
<form name="Formular" action="">
Konto<input type="text" name="Eingabe" size"3">
Einsatz pro Spiel(min.10Euro)<input type="text" name="min" size"3">
Zahl wählen(0-36)<input type="text" name="satz" size"3">
wie oft spielen<input type="text" name="Eingabe5" size"3">
<input type="button" value="Spielen" onclick="multi()"
 onclick="multi(document.Formular.Eingabe.value">
</form>

</body>
</html>

Danke im Voraus

Gruß

CF-GTR
 
Hallo,

habe eben ein paar Sachen daran ergänzt, du hattest beim button 2x onClick drin, beim einen davon hat noch was gefehlt, schau dir das nochmal genauer an.

Ich hab da noch 1, 2 Vorschläge für dich, die ich im folgenden Code einfach mal eingebaut habe. Schau es dir einfach mal an, vieleicht gefällt es dir ja ;)

BTW: warum du ein Problem mit dem Einsatz hast, keine Ahnung, ich hab es einfach mal geändert. Wenn du nicht nur volle Beträge als Einsatz haben willst solltest du parseInt durch parseFloat ersetzen.

Grüße
Cheft

HTML:
<html>
    <head>
        <script type="text/javascript">
            <!--
             function multi(Eingabe) {
                var Ergebnis, z1, einsatz;
                z1=document.Formular.Eingabe.value;
                einsatz=parseInt(document.Formular.min.value);
                // Augabe Bereich für die Meldungen referenzieren
                var msgObj;
                msgObj = document.getElementById('Message');
                msgObj.innerHTML = ''; // Ausgabebereich leeren
                
                for(var i=1;i<=(document.Formular.Eingabe5.value) ;i++)
                {
                    Ergebnis = Math.round(Math.random() * 36 + 1);
                    if (Ergebnis==document.Formular.satz.value) 
                    {
                        z1= z1 + 36 * (document.Formular.min.value) ;
                        // Per DOM Gewinnmeldung schreiben
                        msgObj.innerHTML = msgObj.innerHTML + '<pre>';
                        msgObj.innerHTML = msgObj.innerHTML + '<b> GEWONNEN!!!!!;)Dein Kontostand beträgt ' + z1 + '<\/b>';
                        msgObj.innerHTML = msgObj.innerHTML + '<\/pre>';
                    } else {
                        z1 = z1 - einsatz;
                        // Per DOM Verlustmeldung schreiben
                        msgObj.innerHTML = msgObj.innerHTML + '<pre>';
                        msgObj.innerHTML = msgObj.innerHTML + '<b>Du hast verloren :(. Dein Kontostand beträgt ' + z1 + '<\/b>';
                        msgObj.innerHTML = msgObj.innerHTML + '<\/pre>';
                    }
                }
                // Aktuellen Kontostand in das Eingabefeld schreiben
                // ist einfach angenehner ;)
                document.Formular.Eingabe.value = z1;
             }
            //-->
        </script>
    </head>
    <body>
        <form name="Formular">
            Konto<input type="text" name="Eingabe" size"3">
            Einsatz pro Spiel(min.10Euro)<input type="text" name="min" size"3">
            Zahl wählen(0-36)<input type="text" name="satz" size"3">
            wie oft spielen<input type="text" name="Eingabe5" size"3">
            <input type="button" value="Spielen" onclick="multi(document.Formular.Eingabe.value);">
        </form>
        <div id="Message" style="overflow:auto;width:800px; height:300px;"></div>
    </body>
</html>
 
Zuletzt bearbeitet: (was vergessen ^^)
Hmm eine allgemeine Anmerkung meinerseits.

Nehm mal nicht an das du das Produktiv einsetzen willst.
Falls dies nur der Übung gilt empfehle ich stark eine andere Sprache zu wählen und Consolen Programme zu schreiben.

mfg
 
Zurück
Oben