![]() |
|
[TUTORIAL] Sistem Task-uri - Printable Version +- WTFCS Community | Gaming community @ since 2011 (https://wtfcs.com/forum) +-- Forum: WTFCS - GAMING (https://wtfcs.com/forum/forumdisplay.php?fid=1035) +--- Forum: Lumea jocurilor (https://wtfcs.com/forum/forumdisplay.php?fid=3072) +---- Forum: SA:MP (https://wtfcs.com/forum/forumdisplay.php?fid=3077) +----- Forum: Ajutor scripting (https://wtfcs.com/forum/forumdisplay.php?fid=3594) +------ Forum: Tutoriale (https://wtfcs.com/forum/forumdisplay.php?fid=3595) +------ Thread: [TUTORIAL] Sistem Task-uri (/showthread.php?tid=68733) |
[TUTORIAL] Sistem Task-uri - mihay111 - 04-04-2020 Salut! In acest tutorial o sa va arat un sistem de task-uri facut de mine, de la 0. Sa-ncepem! Aveti nevoie de ZCMD pentru comenzi, trebuie scris la inceputul GM-ului #include <zcmd>. Inainte de toate, eu am definit si: Code: #define SCM SendClientMessage // pentru a-mi fi mai usor, sa nu mai stau sa scriu tot 1. Definim task-urile pentru baza de date, pe la inceputul gamemode-ului sau unde aveti voi definite si altele de genul: Code: #define pTasksxCode: pTasks3. Acum, trebuie sa facem sa se salveze in baza de date, cat si randul pentru task-uri in contul jucatorilor: Code: Intram in baza de date, ne ducem la users (sau accounts, cum aveti dvs.), la "Structura", apoi va duceti jos de tot si o sa va apara o optiune "Adauga coloane". Veti adauga una, apoi apasati pe "Executa". La "Nume", veti pune "Tasks", iar apoi salvati.Apoi, definim si in baza de date pentru a se realiza conexiunea si sa se faca update-urile necesare la Task-uri: Mergem in GM, la public Update si scriem linia (depinde cum aveti voi in gm, eu am astfel): Code: case pTasksx: format(var, sizeof(var), "UPDATE `users` SET `Tasks`='%d' WHERE `ID`='%d'", PlayerInfo[playerid][pTasks], PlayerInfo[playerid][pSQLID]); 4. Mergem la Payday, in GM, si adaugam liniile: Code: PlayerInfo[i][pTasks] +=1, Update(i, pTasksx); // La fiecare payday, jucatorul va primi cate un Task. Totodata se actualizeaza numarul si in baza de date5. Acum, vom creea comanda care sa arate task-urile. Eu o s-o fac sub forma de dialog Code: CMD:tasks(playerid, params[]) {Code: if(dialogid == DIALOG_TASKS) { // verifica daca se foloseste de DIALOG_TASKS, in cazul nostru, /tasksCode: if(PlayerInfo[playerid][pTasks] >= 1) { // verifica daca jucatorul are unul sau mai multe task-uriSI asa puteti adauga si dvs. task-uri. Sper ca v-am ajutat si ca am explicat cat de bine posibil ca sa intelegeti. Inca sunt foarte incepator in Pawn si nu stiu toate denumirile, dar sper ca ati inteles ceva. |