Trying to get dice generator script

7 replies
Hi,

I'm having real difficulties getting a dice generator onto my website.
Does anyone know a way to do it?

I've looked into the Javascript but so far the code I'm trying isn't working.

Has anyone got ideas that can help me?
#dice #generator #script
  • Profile picture of the author emptee
    Hi Tyler,

    Post the code (and any relevant html) and I'll take a look.

    Cheers,
    Michael

    Originally Posted by Tyler Danann View Post

    Hi,

    I'm having real difficulties getting a dice generator onto my website.
    Does anyone know a way to do it?

    I've looked into the Javascript but so far the code I'm trying isn't working.

    Has anyone got ideas that can help me?
    {{ DiscussionBoard.errors[9663099].message }}
    • Profile picture of the author Tyler Danann
      <script language="JavaScript1.1" src="DiceQuote1.js">

      </script>
      <form>
      <INPUT TYPE="button" onClick="history.go(0)" VALUE="Roll Dice">

      </p>

      </form>

      External Link Script:

      // JavaScript Document

      var randomnumber=Math.floor(Math.random()*12)

      //change the quotes if desired. Add/ delete additional quotes as desired.

      quotes[0]='1'

      quotes[1]='2'

      quotes[2]='3'

      quotes[3]='4'

      quotes[4]='5'

      quotes[5]='6'

      quotes[6]='7'

      quotes[7]='8'

      quotes[8]='9'

      quotes[9]='10'

      quotes[10]='11'

      quotes[11]='12'

      var whichquote=Math.floor(Math.random()*(quotes.length ))
      document.write(quotes[whichquote])

      So basically I've got the form buttons to refresh the page hopefully chucking out a random number on the screen each time.
      {{ DiscussionBoard.errors[9663119].message }}
      • Profile picture of the author emptee
        Try this instead:

        Code:
        var randomnumber=Math.floor(Math.random()*12);
        
        //change the quotes if desired. Add/ delete additional quotes as desired.
        
        var quotes = [];
        
        quotes[0]='1';
        
        quotes[1]='2';
        
        quotes[2]='3';
        
        quotes[3]='4';
        
        quotes[4]='5';
        
        quotes[5]='6';
        
        quotes[6]='7';
        
        quotes[7]='8';
        
        quotes[8]='9';
        
        quotes[9]='10';
        quotes[10]='11';
        
        quotes[11]='12';
        
        var whichquote=Math.floor(Math.random()*(quotes.length ));
        document.write(quotes[whichquote]);
        Originally Posted by Tyler Danann View Post

        <script language="JavaScript1.1" src="DiceQuote1.js">

        </script>
        <form>
        <INPUT TYPE="button" onClick="history.go(0)" VALUE="Roll Dice">

        </p>

        </form>

        External Link Script:

        // JavaScript Document

        var randomnumber=Math.floor(Math.random()*12)

        //change the quotes if desired. Add/ delete additional quotes as desired.

        quotes[0]='1'

        quotes[1]='2'

        quotes[2]='3'

        quotes[3]='4'

        quotes[4]='5'

        quotes[5]='6'

        quotes[6]='7'

        quotes[7]='8'

        quotes[8]='9'

        quotes[9]='10'

        quotes[10]='11'

        quotes[11]='12'

        var whichquote=Math.floor(Math.random()*(quotes.length ))
        document.write(quotes[whichquote])

        So basically I've got the form buttons to refresh the page hopefully chucking out a random number on the screen each time.
        {{ DiscussionBoard.errors[9663130].message }}
    • Profile picture of the author Tyler Danann
      Thanks, I'll try that now mate
      {{ DiscussionBoard.errors[9663136].message }}
      • Profile picture of the author kilgore
        The problem with your script is that you're rolling one 12-sided die instead of two 6-sided dice. Maybe it doesn't actually matter for your use case, but if your users are expecting a 7 to appear more than a 2 or a 12, they may be disappointed.

        Really you should have two random numbers generated, not just one.
        {{ DiscussionBoard.errors[9663149].message }}
        • Profile picture of the author Tyler Danann
          Originally Posted by kilgore View Post

          The problem with your script is that you're rolling one 12-sided die instead of two 6-sided dice. Maybe it doesn't actually matter for your use case, but if your users are expecting a 7 to appear more than a 2 or a 12, they may be disappointed.

          Really you should have two random numbers generated, not just one.
          Hi, Yeah so I guess just coping the code again should do the trick for that?
          {{ DiscussionBoard.errors[9663920].message }}
  • Profile picture of the author Lani
    Here is a bit better way to do it using jQuery.

    Code:
    <!DOCTYPE html>
    <html>
        <head>
            <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
        </head>
        <body>
            <button id="roll">Roll</button>
            
            <script type="text/javascript">
                $(document).ready(function(){
                    var quotes = ["quote 1", "quote 2", "quote 3", "quote 4", "quote 5", "..."];
    
                    $("#roll").click(function(){
                        var random = Math.floor(Math.random() * (quotes.length));
                        alert(quotes[random]);
                    });
                });
            </script>
        </body>
    </html>
    {{ DiscussionBoard.errors[9672595].message }}

Trending Topics