make a normal javascript code for the game wheel of fortune

7 answers

Here is a basic implementation of a game wheel of fortune in JavaScript:

```javascript
// Array of possible phrases
const phrases = ["HELLO WORLD", "JAVASCRIPT", "WHEEL OF FORTUNE", "FULL STACK DEVELOPMENT", "CODING IS FUN"];

// Function to select a random phrase
function selectRandomPhrase() {
return phrases[Math.floor(Math.random() * phrases.length)];
}

// Function to spin the wheel
function spinWheel() {
return Math.floor(Math.random() * 12) * 30; // Wheel has 12 sections, each 30 degrees apart
}

// Function to check if a letter is in the phrase
function checkLetter(phrase, letter) {
return phrase.includes(letter.toUpperCase());
}

// Main game logic
function playGame() {
const phrase = selectRandomPhrase();
let guessedPhrase = "_".repeat(phrase.length);
let remainingGuesses = 5;

while (remainingGuesses > 0 && guessedPhrase.includes("_")) {
console.log("Phrase: " + guessedPhrase);
console.log("Remaining guesses: " + remainingGuesses);

const letter = prompt("Enter a letter:").toUpperCase();

if (checkLetter(phrase, letter)) {
console.log("Correct guess!");
for (let i = 0; i < phrase.length; i++) {
if (phrase[i] === letter) {
guessedPhrase = guessedPhrase.substring(0, i) + letter + guessedPhrase.substring(i + 1);
}
}
} else {
console.log("Incorrect guess. Try again.");
remainingGuesses--;
}
}

if (!guessedPhrase.includes("_")) {
console.log("Congratulations! You guessed the phrase: " + phrase);
} else {
console.log("Sorry, you ran out of guesses. The phrase was: " + phrase);
}
}

// Start the game
playGame();
```

This is a simple text-based version of the game where the user guesses letters in a randomly selected phrase. The user has 5 chances to guess the correct phrase. The phrases are selected randomly from an array of pre-defined phrases.
redo it and start it with <!DOCTYPE html>
Here is a new version of the game implemented in an HTML file:

```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Wheel of Fortune Game</title>
</head>
<body>
<h1>Wheel of Fortune Game</h1>
<p>Click the button to spin the wheel and start the game!</p>

<button onclick="startGame()">Spin the Wheel</button>
<p id="gameOutput"></p>

<script>
// Array of possible phrases
const phrases = ["HELLO WORLD", "JAVASCRIPT", "WHEEL OF FORTUNE", "FULL STACK DEVELOPMENT", "CODING IS FUN"];

// Function to select a random phrase
function selectRandomPhrase() {
return phrases[Math.floor(Math.random() * phrases.length)];
}

// Function to spin the wheel
function spinWheel() {
return Math.floor(Math.random() * 12) * 30; // Wheel has 12 sections, each 30 degrees apart
}

// Function to check if a letter is in the phrase
function checkLetter(phrase, letter) {
return phrase.includes(letter.toUpperCase());
}

// Main game logic
function startGame() {
const output = document.getElementById("gameOutput");
output.innerHTML = "";

const phrase = selectRandomPhrase();
let guessedPhrase = "_".repeat(phrase.length);
let remainingGuesses = 5;

while (remainingGuesses > 0 && guessedPhrase.includes("_")) {
output.innerHTML += "<p>Phrase: " + guessedPhrase + "</p>";
output.innerHTML += "<p>Remaining guesses: " + remainingGuesses + "</p>";

const letter = prompt("Enter a letter:").toUpperCase();

if (checkLetter(phrase, letter)) {
output.innerHTML += "<p>Correct guess!</p>";
for (let i = 0; i < phrase.length; i++) {
if (phrase[i] === letter) {
guessedPhrase = guessedPhrase.substring(0, i) + letter + guessedPhrase.substring(i + 1);
}
}
} else {
output.innerHTML += "<p>Incorrect guess. Try again.</p>";
remainingGuesses--;
}
}

if (!guessedPhrase.includes("_")) {
output.innerHTML += "<p>Congratulations! You guessed the phrase: " + phrase + "</p>";
} else {
output.innerHTML += "<p>Sorry, you ran out of guesses. The phrase was: " + phrase + "</p>";
}
}
</script>
</body>
</html>
```

This version of the game is implemented in an HTML file with a button that starts the game when clicked. The game output is displayed on the web page instead of the console. The player can enter letters using a prompt dialog.
one for index.mjs and script.js and style.css and package.json too
Below is an example of a Wheel of Fortune game structure utilizing Node.js, ES Module syntax, and CSS styling:

index.mjs:
```javascript
import { startGame } from './script.js';

startGame();
```

script.js:
```javascript
import { selectRandomPhrase, spinWheel, checkLetter } from './utils.js';

export function startGame() {
const phrase = selectRandomPhrase();
let guessedPhrase = "_".repeat(phrase.length);
let remainingGuesses = 5;

while (remainingGuesses > 0 && guessedPhrase.includes("_")) {
console.log("Phrase: " + guessedPhrase);
console.log("Remaining guesses: " + remainingGuesses);

const letter = prompt("Enter a letter:").toUpperCase();

if (checkLetter(phrase, letter)) {
console.log("Correct guess!");
for (let i = 0; i < phrase.length; i++) {
if (phrase[i] === letter) {
guessedPhrase = guessedPhrase.substring(0, i) + letter + guessedPhrase.substring(i + 1);
}
}
} else {
console.log("Incorrect guess. Try again.");
remainingGuesses--;
}
}

if (!guessedPhrase.includes("_")) {
console.log("Congratulations! You guessed the phrase: " + phrase);
} else {
console.log("Sorry, you ran out of guesses. The phrase was: " + phrase);
}
}
```

utils.js:
```javascript
const phrases = ["HELLO WORLD", "JAVASCRIPT", "WHEEL OF FORTUNE", "FULL STACK DEVELOPMENT", "CODING IS FUN"];

export function selectRandomPhrase() {
return phrases[Math.floor(Math.random() * phrases.length)];
}

export function spinWheel() {
return Math.floor(Math.random() * 12) * 30;
}

export function checkLetter(phrase, letter) {
return phrase.includes(letter.toUpperCase());
}
```

style.css:
```css
body {
font-family: Arial, sans-serif;
text-align: center;
}

button {
padding: 10px;
background-color: #3498db;
color: white;
border: none;
cursor: pointer;
}

button:hover {
background-color: #2980b9;
}
```

package.json:
```json
{
"type": "module",
"scripts": {
"start": "node index.mjs"
},
"devDependencies": {}
}
```

To run this game, you would need to have Node.js installed on your system. You can then initialize the project with `npm init -y` to create the package.json file and install the dependencies. Then run the game with `npm start`.
give me code for node.js too
Sure! Here is a version of the Wheel of Fortune game implemented in Node.js:

index.js:
```javascript
import { startGame } from './script.js';

startGame();
```

script.js:
```javascript
import { selectRandomPhrase, spinWheel, checkLetter } from './utils.js';

export function startGame() {
const phrase = selectRandomPhrase();
let guessedPhrase = "_".repeat(phrase.length);
let remainingGuesses = 5;

while (remainingGuesses > 0 && guessedPhrase.includes("_")) {
console.log("Phrase: " + guessedPhrase);
console.log("Remaining guesses: " + remainingGuesses);

const letter = prompt("Enter a letter:").toUpperCase();

if (checkLetter(phrase, letter)) {
console.log("Correct guess!");
for (let i = 0; i < phrase.length; i++) {
if (phrase[i] === letter) {
guessedPhrase = guessedPhrase.substring(0, i) + letter + guessedPhrase.substring(i + 1);
}
}
} else {
console.log("Incorrect guess. Try again.");
remainingGuesses--;
}
}

if (!guessedPhrase.includes("_")) {
console.log("Congratulations! You guessed the phrase: " + phrase);
} else {
console.log("Sorry, you ran out of guesses. The phrase was: " + phrase);
}
}
```

utils.js:
```javascript
const phrases = ["HELLO WORLD", "JAVASCRIPT", "WHEEL OF FORTUNE", "FULL STACK DEVELOPMENT", "CODING IS FUN"];

export function selectRandomPhrase() {
return phrases[Math.floor(Math.random() * phrases.length)];
}

export function spinWheel() {
return Math.floor(Math.random() * 12) * 30;
}

export function checkLetter(phrase, letter) {
return phrase.includes(letter.toUpperCase());
}
```

To run this game, make sure you have Node.js installed on your system. Then you can run the game using the command `node index.js` from the terminal in the same directory where your files are located.