Git Product home page Git Product logo

js-campominato-dom's Introduction

JS-CAMPOMINATO-DOM

PROBLEMA: Il computer deve generare 16 numeri casuali nello stesso range della difficoltà prescelta: le bombe. Attenzione: nella stessa cella può essere posizionata al massimo una bomba, perciò nell’array delle bombe non potranno esserci due numeri uguali.In seguito l'utente clicca su una cella: se il numero è presente nella lista dei numeri generati - abbiamo calpestato una bomba - la cella si colora di rosso e la partita termina. Altrimenti la cella cliccata si colora di azzurro e l'utente può continuare a cliccare sulle altre celle.La partita termina quando il giocatore clicca su una bomba o quando raggiunge il numero massimo possibile di numeri consentiti (ovvero quando ha rivelato tutte le celle che non sono bombe). Al termine della partita il software deve comunicare il punteggio, cioè il numero di volte che l’utente ha cliccato su una cella che non era una bomba.

Sotto-problema-1: Il computer deve generare 16 numeri casuali all'interno del range della difficoltà prescelta: le bombe.

1. Crea un array vuoto per la generazione di 16 bombe
2. Crea una funzione per la generazione di un numero randomico
3. Aggiungi una select per 3 diversi livelli di difficoltà al dom
4. Recupera il valore di difficoltà
5. In base al valore della difficoltà selezionato, crea una diversa griglia

Sotto-problema-2: Nella stessa cella può essere posizionata al massimo una bomba, perciò nell’array delle bombe non potranno esserci due numeri uguali.

1. Fai generare il numero casuale randomico
2. ? SE il numero casuale non è incluso nell'array
    2.1 Lo includo nell'array
3. : ALTRIMENTI vai avanti
4. Crea un ciclo for o while
5. Inserisci un controllo per escludere due numeri uguali nell'array

Sotto-problema-3: In seguito l'utente clicca su una cella: se il numero è presente nella lista dei numeri generati - abbiamo calpestato una bomba - la cella si colora di rosso e la partita termina. Altrimenti la cella cliccata si colora di azzurro e l'utente può continuare a cliccare sulle altre celle.

1. Effettua un controllo se abbiamo calpestato un esplosivo
2. ? SE la cella cliccata è una bomba
    2.1 Colora la cella di rosso e bloccare il click alle altre celle (the end)
3. : ALTRIMENTI prosegui con una casella azzurra

Sotto-problema-4: La partita termina quando il giocatore clicca su una bomba o quando raggiunge il numero massimo possibile di numeri consentiti (ovvero quando ha rivelato tutte le celle che non sono bombe). Al termine della partita il software deve comunicare il punteggio, cioè il numero di volte che l’utente ha cliccato su una cella che non era una bomba.

1. Crea una variabile per il conteggio delle celle cliccate con successo
2. Mostra a video un messaggio del punteggio cosi ottenuto dall'utente

BONUS 1

1. Quando si clicca su una bomba bloccare il click ad altre celle

BONUS 2

1. Quando la partita finisce visualizza tutte le bombe

js-campominato-dom's People

Contributors

michelecanini avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.