Salvarea, Încărcarea și Scorurile Mari | hyperPad Documentation

Loading...

Logo

Adesea, vrei să creezi un joc în care acesta își amintește anumite detalii despre timpul anterior în care a fost jucat.

Ceea ce vrei să salvezi depinde foarte mult de jocul sau aplicația pe care o creezi. Fie că vrei să salvezi un scor, o poziție sau progresul general, trebuie să planifici cum și ce vrei să salvezi.

În acest tutorial vom acoperi salvarea scorului unui jucător și crearea unui sistem simplu de scoruri înalte sau „Cel mai bun scor anterior”.

Pentru acest tutorial, vom presupune că ai creat un joc simplu în care jucătorul adună monede (Partea 5 din Crearea unui joc pe platformă), iar numărul de monede este afișat cu un label pe ecran.

Salvarea

Atunci când vine vorba de salvare, există două întrebări importante pe care vrei să ți le pui. Ce vrei să salvezi și când ar trebui să salvezi? În hyperPad, comportamentul de salvare poate salva doar o singură valoare la un moment dat. Așa că trebuie să te gândești bine la ceea ce salvezi.

În acest tutorial, vom salva scorul (numărul de monede adunate) care este afișat folosind un label pe ecran.

Acum că știm că salvăm scorul din label, următorul lucru de determinat este când să salvăm.

Există multe opțiuni aici, iar acestea depind de gameplay-ul sau designul general. Poți alege să salvezi de fiecare dată când jucătorul adună o monedă, să salvezi când jucătorul pierde, să salvezi când jucătorul finalizează nivelul, să salvezi când jucătorul apasă un buton, sau orice altceva crezi că este necesar pentru situația ta.

Pentru acest tutorial, vom configura un buton care salvează scorul atunci când jucătorul apasă butonul de salvare. Aceeași logică de comportament poate fi aplicată dacă vrei să salvezi când jucătorul pierde sau finalizează nivelul. Trebuie doar să declanșezi aceste comportamente când câștigi sau pierzi.

Selectează obiectul tău Buton de Salvare și deschide comportamentele.

Din categoria Interacțiune a editorului de comportamente, adaugă un comportament „Atins Stă”.

Acum, din categoria UI, adaugă un comportament „Obține Label” și conectează-l la comportamentul „Atins Stă” din pasul anterior.

Apasă pe comportamentul „Obține Label” pentru a vizualiza proprietățile comportamentului. Din proprietățile comportamentului, apasă zona care reprezintă obiectul curent, apoi selectează labelul din scena ta care reprezintă scorul tău.

Următorul, din categoria Personalizat adaugă un comportament „Salvează în fișier” și conectează-l la „Atins Stă”.

Selectează comportamentul „Salvează în fișier” pe care tocmai l-ai adăugat pentru a vizualiza proprietățile comportamentului. Observă că „Tip Cheie” este setat pe existent. Cheile existente sunt lucruri predefinite pe care vrei să le salvezi.

Mai întâi, trebuie să adaugi titlul sau descrierea a ceva ce vrei să salvezi. Acesta se numește „Cheie”. Apasă pe butonul „Selectează sau Creează Cheie” pentru a scoate lista de chei.

Introdu un titlu descriptiv în partea de sus, apoi apasă pe butonul + pentru a adăuga prima ta cheie. Deoarece vrem să salvăm scorul, introdu „Scor” ca cheie.

Următorul, trebuie să salvezi efectiv scorul din label. Pentru a face acest lucru, scoate valoarea din colțul comportamentului „Obține Label” în câmpul de intrare al proprietăților „Salvează în fișier”.

Asta e! Din acest punct, jocul tău ar trebui să îți salveze scorul chiar când apesi butonul de salvare. Dar nu ai făcut de fapt nimic cu valoarea salvată. Următorul lucru pe care trebuie să-l faci este să încarci scorul și să-l folosești de fapt în scena ta.

Încărcarea

Cu scorul tău salvat, acum trebuie să-l încarci și să-l folosești în scena ta. Când vine vorba de încărcare, există o întrebare importantă pe care trebuie să o răspunzi. Când vrei să încarci?

La fel ca la salvare, răspunsul depinde foarte mult de proiectul tău. Poți încărca imediat ce scena ta începe, când jucătorul apasă un buton sau când se declanșează un alt eveniment. Depinde într-adevăr de ceea ce încerci să realizezi.

Pentru acest tutorial, vom încărca chiar când scena începe și vom arăta scorul salvat anterior.

Pentru a începe, adaugă un label în scena ta. Vom folosi acest label pentru a arăta scorul tău salvat.

Următorul, trebuie să adăugăm logica efectivă de încărcare. Pentru acest tutorial, vom adăuga logica la Butonul de Salvare din pașii anteriori. Totuși, în funcție de jocul tău, poate fi necesar să pui logica ta în altă parte. Selectează butonul de salvare și deschide editorul de comportamente din proprietățile obiectului.

Din categoria Personalizat, adaugă comportamentul „Încarcă din fișier” și nu-l conecta la nimic. Deoarece nu este conectat la niciun alt comportament, comportamentul de încărcare se va executa chiar când scena începe (când butonul există în scenă). Dacă vrei să încarci pe baza unor evenimente anumite sau alte declanșatoare, atunci ar trebui să-l conectezi la alte comportamente.

Acum selectează comportamentul „Încarcă din fișier” pentru a vizualiza proprietățile comportamentului. Încă o dată, asigură-te că este selectat „Existent” pentru tipul de cheie.

Următorul apasă pe butonul „Selectează Cheia” pentru a deschide lista cheilor salvate. Din listă, alege cheia „Scor” pe care ai adăugat-o anterior.

În acest moment, tehnic ai încărcat scorul. Dar nu faci nimic cu el încă. Hai să punem acea valoare încărcată la lucru.

Din categoria UI, adaugă un comportament „Setează Label” și conectează-l la comportamentul de Încarcă pe care l-ai adăugat anterior.

Următorul selectează comportamentul „Setează Label” pentru a vizualiza proprietățile sale și nu uita să alegi noul label pe care l-ai adăugat care reprezintă scorul încărcat. Odată ce ai selectat labelul corect pe care să-l schimbi, trage valoarea de ieșire din colțul comportamentului „Încarcă din fișier” în câmpul de input al comportamentului „Setează Label”.

Asta e tot ce trebuie să faci! Progresul tău va fi salvat și încărcat într-un label data viitoare când îl joci.

Scor Înalt

Un lucru pe care l-ai observat poate fi că scorul tău este salvat de fiecare dată când apesi butonul și suprascrie scorul anterior. Uneori acest lucru este bine, dar de obicei vrei să salvezi doar atunci când jucătorul obține un scor mai mare decât cel anterior.

Pentru a implementa acest sistem de „Scor Înalt” trebuie doar să modificăm ușor logica de salvare.

Începe prin a te întoarce la locul unde sunt plasate comportamentele de salvare (butonul de salvare).

Mai întâi, trebuie să deconectezi comportamentul „Salvează în fișier” de comportamentul tău „Atins Stă”. Apasă pe linia care conectează cele două comportamente pentru a le deconecta.

Următorul, din categoria Logică adaugă un comportament IF. Comportamentul IF va verifica când o anumită condiție este îndeplinită înainte de a executa. În acest caz, vrem să salvăm DOAR DACĂ scorul este mai mare decât scorul anterior (încărcat).

Conectează comportamentul IF la comportamentul „Atins Stă”.

Următorul, trebuie să apeși pe comportamentul IF pentru a deschide proprietățile comportamentului și să setezi condiția.

Trage valoarea de ieșire din „Obține Label” în primul câmp de intrare al comportamentului IF.

Apoi trage valoarea de ieșire din comportamentul „Încarcă din fișier” în al doilea câmp de intrare al comportamentului IF.

Acum trebuie să schimbi condiția. Apasă pe butonul „Este Egal Cu” și selectează opțiunea Mai Mare decât sau Egal cu ().

În cele din urmă, conectează comportamentul tău vechi de salvare la IF. Acum comportamentul tău IF va executa doar salvarea conectată, DACĂ valoarea din label este mai mare decât (sau egală) cu valoarea încărcată.

Asta e tot ce ai de făcut. Ar trebui să ai acum un sistem de salvare și încărcare funcțional care va salva scorul jucătorului doar dacă acesta își depășește încercarea anterioară.

Altă Salvare

Acest tutorial a acoperit salvarea unui scor. Dar uneori vrei să salvezi alte lucruri, cum ar fi poziția unui jucător sau nivelul curent etc.

Concepturile pe care le-ai învățat în acest tutorial se aplică în continuare. Trebuie doar să schimbi când salvezi și ce salvezi.

Ia în considerare salvarea poziției jucătorului, de exemplu. Poziția unui obiect este dată prin 2 numere. X, și Y. Pentru asta, ai folosi pur și simplu 2 comportamente de salvare. Unul pentru a salva poziția X și celălalt pentru a salva poziția Y. Apoi, când vine vorba de încărcare, ai folosi 2 comportamente de încărcare. Apoi, în loc să setezi un label, ai muta pur și simplu obiectul jucătorului în pozițiile încărcate X și Y.

Făcând un plan despre ce încerci să salvezi și când trebuie să salvezi, poți crea un sistem care funcționează pentru aproape orice situație.