<html>
    <head>
		<script type="text/javascript"> window.addEventListener('error', function(event) { var message = JSON.parse(JSON.stringify(event.message)); var source = event.filename; var lineno = event.lineno; var colno = event.colno; var error = event.error; window.parent.postMessage({ type: 'iframeError', details: { message: message, source: source, lineno: lineno, colno: colno, error: error ? error.stack : '' } }, '*'); }); window.addEventListener('unhandledrejection', function(event) { window.parent.postMessage({ type: 'iframePromiseRejection', details: { reason: event.reason } }, '*'); }); </script>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width,initial-scale=1">
        <title>RPS - 15</title>
        <meta name="description" content="Rock Paper Scissors game with 15 options">
        <meta name="keywords" content="rock, paper, scissors, game, 15 options">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
        <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
                integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
        <link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
        <script type="text/javascript">
            try {
                // App Javascript Goes Here. Place your entire script content inside the try block for error handling.
                
                // This will run when the DOM is ready.
                document.addEventListener("DOMContentLoaded", function() {
                    // Constants
                    const options = ['rock', 'paper', 'scissors', 'lizard', 'spock', 'devil', 'dragon', 'lightning', 'gun', 'tree', 'human', 'snake', 'wolf', 'sponge', 'air'];
                    const winTable = {
                        'rock': ['scissors', 'lizard'],
                        'paper': ['rock', 'spock'],
                        'scissors': ['paper', 'lizard'],
                        'lizard': ['paper', 'spock'],
                        'spock': ['rock', 'scissors'],
                        'devil': ['dragon', 'lightning'],
                        'dragon': ['tree', 'snake'],
                        'lightning': ['gun', 'tree'],
                        'gun': ['wolf', 'human'],
                        'tree': ['wolf', 'sponge'],
                        'human': ['snake', 'sponge'],
                        'snake': ['sponge', 'air'],
                        'wolf': ['sponge', 'air'],
                        'sponge': ['paper', 'air'],
                        'air': ['devil', 'dragon']
                    };
                    
                    // Function to get random option from array
                    function getRandomOption() {
                        const randomIndex = Math.floor(Math.random() * options.length);
                        return options[randomIndex];
                    }
                    
                    // Function to determine the winner
                    function determineWinner(playerOption, computerOption) {
                        if (playerOption === computerOption) {
                            return 'It\'s a tie!';
                        } else if (winTable[playerOption].includes(computerOption)) {
                            return 'You win!';
                        } else {
                            return 'You lose!';
                        }
                    }
                    
                    // Function to handle player's choice
                    function handleChoice(choice) {
                        const computerOption = getRandomOption();
                        const result = determineWinner(choice, computerOption);
                        
                        // Update UI
                        $('#result').text(result);
                        $('#player-choice').text(choice);
                        $('#computer-choice').text(computerOption);
                    }
                    
                    // Event listeners
                    $('.option').click(function() {
                        const choice = $(this).data('option');
                        handleChoice(choice);
                    });
                });
            } catch (error) {
                 // This will throw the error to the parent window.
                throw error;
            }
        </script>
        
        <style>
            /* App CSS Goes Here */
            body {
                background-color: #f1f1f1;
                font-family: 'Roboto', sans-serif;
            }
            
            .container {
                max-width: 600px;
                margin: 0 auto;
                padding: 20px;
                text-align: center;
            }
            
            h1 {
                font-size: 32px;
                margin-bottom: 20px;
                color: #333;
            }
            
            .options {
                display: flex;
                justify-content: space-between;
                margin-bottom: 30px;
            }
            
            .option {
                flex: 1;
                padding: 10px;
                background-color: #fff;
                border: 1px solid #ddd;
                cursor: pointer;
                transition: background-color 0.3s ease;
            }
            
            .option:hover {
                background-color: #f5f5f5;
            }
            
            .result {
                font-size: 24px;
                margin-bottom: 20px;
                color: #333;
            }
            
            .result span {
                font-weight: bold;
            }
            
            .choices {
                display: flex;
                justify-content: space-between;
            }
            
            .choice {
                flex: 1;
            }
            
            .choice h3 {
                font-size: 18px;
                margin-bottom: 10px;
                color: #555;
            }
            
            .choice p {
                font-size: 24px;
                color: #666;
            }
        </style>
    
	<link rel="canonical" href="https://calculator.tools/app/rps-15-1171/">
	<meta charset="utf-8">
</head>
    <body>
        <div id="main-container" class="container">
            <h1>Rock Paper Scissors - 15 Options</h1>
            
            <div class="options">
                <div class="option" data-option="rock">✊</div>
                <div class="option" data-option="paper">✋</div>
                <div class="option" data-option="scissors">✌️</div>
                <div class="option" data-option="lizard">🦎</div>
                <div class="option" data-option="spock">🖖</div>
                <div class="option" data-option="devil">😈</div>
                <div class="option" data-option="dragon">🐉</div>
                <div class="option" data-option="lightning">⚡️</div>
                <div class="option" data-option="gun">🔫</div>
                <div class="option" data-option="tree">🌳</div>
                <div class="option" data-option="human">👤</div>
                <div class="option" data-option="snake">🐍</div>
                <div class="option" data-option="wolf">🐺</div>
                <div class="option" data-option="sponge">🧽</div>
                <div class="option" data-option="air">💨</div>
            </div>
            
            <div class="result" id="result"></div>
            
            <div class="choices">
                <div class="choice">
                    <h3>Your choice:</h3>
                    <p id="player-choice"></p>
                </div>
                <div class="choice">
                    <h3>Computer's choice:</h3>
                    <p id="computer-choice"></p>
                </div>
            </div>
        </div>
            <script type="text/javascript"> var localStoragePrefix = "ct-1171"; var lastSave = 0; function saveLocal(data) { if (Date.now() - lastSave < 1000) { return; } let cookie = localStoragePrefix + "=" + JSON.stringify(data) + "; path=" + window.location.pathname +  "'; SameSite=Strict"; cookie += "; expires=" + new Date(Date.now() + 1000 * 60 * 60 * 24 * 365 * 1000).toUTCString(); document.cookie = cookie; lastSave = Date.now(); } function loadLocal() { var cookiePrefix = localStoragePrefix + "="; var cookieStart = document.cookie.indexOf(cookiePrefix); if (cookieStart > -1) { let cookieEnd = document.cookie.indexOf(";", cookieStart); if (cookieEnd == -1) { cookieEnd = document.cookie.length; } var cookieData = document.cookie.substring(cookieStart + cookiePrefix.length, cookieEnd); return JSON.parse(cookieData); } } </script>
        <script type="text/javascript"> window.addEventListener('load', function() { var observer = new MutationObserver(function() { window.parent.postMessage({height: document.documentElement.scrollHeight || document.body.scrollHeight},"*"); }); observer.observe(document.body, {attributes: true, childList: true, subtree: true}); window.parent.postMessage({height: document.documentElement.scrollHeight || document.body.scrollHeight},"*"); }); </script>
</body>
</html>
        These are apps made by the community!
                        Calculator Tools allows you to instantly create and generate any simple one page web app for
                        free and immediately have it online to use and share. This means anything! Mini apps,
                        calculators, trackers, tools, games, puzzles, screensavers... anything you can think of that the
                        AI can handle.
                        
                        The AI uses Javacript, HTML, and CSS programming to code your app up in moments. This currently
                        uses GPT-4 the latest and most powerful version of the OpenAI GPT language model.
                    
                        Have you ever just wanted a simple app but didn't want to learn programming or pay someone to
                        make it for you? Calculator Tools is the solution! Just type in your prompt and the AI will
                        generate a simple app for you in seconds. You can then customize it to your liking and share it
                        with your friends.
                        
                        AI has become so powerful it is that simple these days.
                    
                        It uses GPT-4 which is the most powerful model for ChatGPT.
                        
                        Calculator Tools does not remember things from prompt to prompt, each image is a unique image
                        that does not reference any of the images or prompts previously supplied.