#1BadWolfMar Dec 29, 2015 11:43 am
BadWolf
Fondator
Nume tutorial: Creaza un concurs de scris
Autor: Ancisz
Tutorial:
Incepem prin definirea concursului.
Dupa include-urile pe care le aveti adaugati urmatoarele linii :
Acum, trecem mai departe la OnGameModeInit si adaugam:
Acum, mergem pana la OnPlayerText si adaugam :
Mergem la sfarsitul scriptului si adaugam urmatoarele linii :
Si uite asa ati realizat un concurs de scris pe server
Autor: Ancisz
Tutorial:
Incepem prin definirea concursului.
Dupa include-urile pe care le aveti adaugati urmatoarele linii :
- Cod:
#define CONTESTTIME 3 // Din cate in cate minute o sa inceapa un nou contest(concurs). ( Daca vechiul contest nu a fost castiga se va repeta , pentru a nu fi doua deodata )
#define MINIMUM_VALUE 1 //Cel mai mic numar care poate aparea la concurs
#define MAXIMUM_VALUE 8000000 //Cel mai mare numar care poate aparea la concurs
#define CONTEST_PRIZE 250000 // Cati $ primeste jucatorul care castiga contest-ul
forward NewContest(); //Se foloseste cand incepe un nou concurs
forward OnPlayerWinContest(playerid); //Se foloseste cand un jucator castiga concursul
new ContestAnswer = -1; //Se foloseste ca atunci cand deschizi serverul sa nu
inceapa direct concursul.
Acum, trecem mai departe la OnGameModeInit si adaugam:
- Cod:
public OnGameModeInit()
{
SetTimer("NewContest",(1000*60*CONTESTTIME),1); // Seteaza timerul in minute. Timpul este in milisecunde ,iar 1000 milisecunde este o secunda. Inmultind cu 60 , obtinem 1 minut. Iar acum se inmulteste cu timpul setat ( mai sus ) si asa obtinem timpul pe care il doriti in minute.
//Code-ul ramas aici , cum ar fi AddPlayerClass();
return 1;
}
Acum, mergem pana la OnPlayerText si adaugam :
- Cod:
if(strval(text) == ContestAnswer && ContestAnswer != -1) // Verifica daca textul scris de player este corect,dar nu e -1.
{
OnPlayerWinContest(playerid); // Asta trimite scriptul la urmatorul pas pe care il facem.
}
//RESTUL DE COD
Mergem la sfarsitul scriptului si adaugam urmatoarele linii :
- Cod:
public NewContest()
{
new string[128]; //Facem acest string pentru a informa jucatorii despre numar
ContestAnswer = MINIMUM_VALUE + random(MAXIMUM_VALUE-MINIMUM_VALUE);
format(string,sizeof string,"NEW CONTEST: Cine scrie primul %d , castiga $%d.",ContestAnswer,CONTEST_PRIZE); //Asta se foloseste pentru a aparea numarul si cati bani castiga.
SendClientMessageToAll(0x00FFFFFF,string); // Culoarea '0x00FFFFFF' este albastru deschis(bleo).
return 1;
}
public OnPlayerWinContest(playerid)
{
new pName[MAX_PLAYER_NAME],string[128]; // Variabila e folosita pentru a avea numele jucatorului
GetPlayerName(playerid,pName,sizeof pName); //Aceasta linie ia numele jucatorului
format(string,sizeof string,"Jucatorul %s a castigat concursul de scris si a castigat %d!",pName,CONTEST_PRIZE);
SendClientMessageToAll(0x00FFFFFF,string); //Aceeasi culoare
GivePlayerMoney(playerid,CONTEST_PRIZE);
ContestAnswer = -1;
return 1;
}
Si uite asa ati realizat un concurs de scris pe server