Introducere

În acest proiect vei învăța cum să creezi un joc în care în care trebuie să potrivești punctele colorate cu partea corectă a controlerului.

Pasul 1: Crează controlerul

Haide să începem prin a crea controlerul care va fi folosit pentru a colecta punctele.

Lista de activități

  • Începe un nou proiect Scratch și șterge sprite-ul pisică. Poți găsi editorul de Scratch online la jumpto.cc/scratch-new.

  • Dacă liderul clubului ți-a dat un director numit ‘Resurse’, click pe ‘Upload sprite from file’ și atașează imaginea ‘controller.svg’. Mută sprite-ul în centrul scenei.

    screenshot

    Dacă nu ai imaginea, poți să desenezi un controler singur!

  • Îndreaptă controlerul înspre dreapta când tasta săgeată-dreapta este apăsată:

        when flag clicked
    forever
        if <key [right arrow v] pressed?> then
            turn right (3) degrees
        end
    end

  • Testează controlerul – ar trebui să se învârtă înspre dreapta.

Salvează proiectul

Provocare: Învârte înspre stânga

Poți să învârți controlerul înspre stânga când săgeata-stângă este apăsată?

Salvează proiectul

Pasul 2: Colectează puncte

Haide să adăugăm câteva puncte pe care jucătorul le va colecta cu ajutorul controlerului.

Lista de activități

  • Crează un nou sprite numit ‘roșu’. Acest sprite trebuie să fie un mic punct roșu.

    screenshot

  • Adaugă scriptul de mai jos la sprite-ul ‘roșu’, pentru a crea un nou punct la un interval de câteva secunde:

        when flag clicked
    wait (2) secs
    forever
        create clone of [myself v]
        wait (pick random (5) to (10)) secs
    end

  • Când fiecare clonă a fost creată, vei vrea să apară în unul din cele 4 colțuri ale scenei.

    screenshot

    Pentru aceasta, în primul rând vei crea o nouă listă numită start positions și apasă pe (+) pentru a adăuga valorile -180 și 180.

    screenshot

  • Poți utiliza aceste două valori pentru a alege un colț aleator al scenei. Adaugă codul de mai jos la sprite-ul “dot”, astfel încât fiecare nouă clonă se mută aleatoriu într-un colț și apoi încet se mișcă spre controler.

        when I start as a clone
    go to x: (item (random v) of [start positions v]) y: (item (random v) of [start positions v])
    point towards [controller v]
    show
    repeat until <touching [controller v]?>
        move (1) steps
    end

    Codul de mai sus alege fie 180 sau -180 pentru pozițiile x și y, ceea ce înseamnă că fiecare clonă începe într-un colț al scenei.

  • Testează proiectul. Ar trebui să vezi multe puncte roșii care apar în fiecare colt al ecranului și coboară încet înspre controler.

    screenshot

  • Creează două noi variabile vieți și scor.

  • Adaugă cod la scenă pentru a seta variabila vieți la 3 și scor la 0 la începutul jocului.

  • Trebuie să adaugi cod la sfârșitul blocului when I start as a clone în cadrul scriptului pentru sprite-ul roșu, astfel încât să crească scorul cu 1 dacă se potrivesc culorile, sau scade numărul de vieți cu 1 în cazul în care culorile nu se potrivesc.

        move (5) steps
    if <touching color [#FF0000]?> then
        change [score v] by (1)
        play sound [pop v]
    else
        change [lives v] by (-1)
        play sound [laser1 v]
    end
    delete this clone

  • Adaugă codul de mai jos la sfârșitul scriptului scenei astfel încât jocul se termină dacă jucătorul a pierdut toate cele 3 vieți.:

        wait until <(lives) < [1]>
    stop [all v]

  • Testează jocul și vezi dacă funcționează cum te-ai așteptat.

Salvează proiectul

Provocare: Mai multe puncte

Duplică sprite-ul roșu de două ori și denumește noile sprite-uri ‘galben’ și ‘albastru’.

screenshot

Editează aceste sprite-uri (inclusiv codul), astfel încât fiecare punct se potrivește cu culoarea corectă de pe controler. Nu uita să testezi proiectul, asigurându-te că poți câștiga puncte și pierde vieți la momentul potrivit, și că jocul nu este prea ușor sau prea greu!

screenshot

Salvează proiectul

Pasul 3: Mărește nivelul de dificultate

Haide să facem jocul din ce în ce mai greu cu cât jucătorul supraviețuiește mai mult, prin reducerea graduală a intervalului dintre aparițiile a două puncte.

Lista de activități

  • Creează o nouă variabilă numită întârziere .

  • În scenă creează un script nou care setează întârziere la un număr mare și gradual o micșorează.

        when flag clicked
    set [delay v] to (8)
    repeat until < (delay) = (2)>
        wait (10) secs
        change [delay v] by (-0.5)
    end

  • La final, poți să utilizezi această variabilă întârziere in scripturile pentru punctele roșii, galbene și albastre. Înlocuiește codul care așteaptă un interval aleatoriu de timp între crearea clonelor și înlocuiește-l cu noua variabilă întârziere:

        wait (delay) secs

  • Verifică dacă intervalul de timp între crearea a două clone se micșorează în timp. Funcționează codul pentru toate cele 3 puncte colorate?

Salvează proiectul

Provocare: Puncte care se mișcă mai rapid

Poți să îmbunătățești jocul prin adăugarea unei variabile viteză care controlează viteza, astfel încât punctele la început se deplasează câte un pas, și în mod constant încep să se miște din ce în ce mai repede? Este asemănător cu felul în care am utilizat mai sus variabila întârziere.

Salvează proiectul

Pasul 4: Cel mai mare scor

Haide să salvăm cel mai mare scor, astfel încât jucătorii să știe cât de buni sunt.

Lista de activități

  • Creează o nouă variabilă numită scor mare.

  • Click pe scenă și creează un nou bloc personalizat numit verifică cel mai mare scor .

    screenshot

  • Chiar înainte de sfârșitul jocului adaugă noul bloc personalizat.

    screenshot

  • Adaugă cod la noul bloc pentru a păstra scorul curent scor ca cel mai mare scor scor mare dacăif este cel mai mare scor de până acum:

        define [check high score]
    if <(score) > (high score)> then
        set [high score v] to (score)
    end

  • Testează codul nou creat. Verifică dacă variabila high score se modifică corect.

Salvează proiectul

Provocare: Îmbunătățește jocul!

Poți să te gândești la cum poți să îmbunătățești jocul? De exemplu, ai putea crea puncte special cu care poți să:

  • dublezi scorul;
  • încetinești coborârea punctelor;
  • ascunzi toate celelalte puncte de pe ecran!

Salvează proiectul

Provocare: Meniul jocului

Poți să adaugi la joc un meniu (cu butoane)? Ai putea adăuga un ecran cu instrucțiuni, sau un ecran separat pentru a arăta scorul cel mai mare. Dacă ai nevoie de ajutor, proiectul “Brain Game” îți poate fi de folos.