[CAMPANIE STAFF]Cautam moderatori si designeri activi!
Welcome to WTFCS Community Forums!
Servere gaming la super-preturi! [HOSTING SERVICE]
-->






[Tutorial] DMV Tutorial cu tasta
Author : SaTaNa99, Category : Tutoriale, 0 Replyes, 1167 Views
EVALUATE THIS TOPIC
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
1 Guest(s)
fondator rsp.wtfcs.com
 
421
POSTS
150
THREADS
0
REPUTATION
Male
Sex

WtfCs Coins: -0.01[w]
01-09-2014, 11:27 AM
#1
Am vazut ca multi intreaba pe internet cum sa facem ca tutorilul de la inceput / de la DMV sa mearga prin apasarea unei taste. Mai jos am sa va arat cum facem acest lucru luand ca model tutorialul de la DMV.

La inceput adaugam urmatoarele linii:

#define ALB "{FFFFFF}" // Alb
#define ALBASTRU2 "{33CCFF}" // Albastru deschis - Instructors
#define GALBEN "{F3FF02}" // Galben - Taxi
#define ALBASTRU4 "{33FFFF}" // Albastru deschis - Surenosforward DriverLicenseTime(playerid);

forward DriverLicenseTime2(playerid);
forward DriverLicenseTime3(playerid);
forward DriverLicenseTime4(playerid);
forward DriverLicenseTime5(playerid);
forward DriverLicenseTime6(playerid);

new DriverTestTimer[MAX_PLAYERS];
new DMVPrepare[MAX_PLAYERS];

OnPlayerConnect punem:

DMVPrepare[playerid] = 0;

Comanda /taketest:

CMD:taketest(playerid, params[])
{
if(PlayerInfo[playerid][pCash] >= 10000)
{
if(PlayerInfo[playerid][pCarLic] == 0)
{
if(DMVPrepare[playerid] == 0)
{
SetPlayerPos(playerid, 373.9818,191.8841,1014.1875);
SetPlayerInterior(playerid, 3);
TogglePlayerControllable(playerid, 0);
DMVPrepare[playerid] = 1;
TogglePlayerControllable(playerid, 0);
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SetPlayerCameraPos(playerid, 1245.7651, 2092.2561, 61.3805);
SetPlayerCameraLookAt(playerid, 1246.5137, 2091.5874, 61.1205);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, -1,""GALBEN"|__________________________________ Scoala de soferi __________________________________| ");
SendClientMessage(playerid, -1, ""ALBASTRU4"Bun venit la Scoala de Soferi Los Santos !");
SendClientMessage(playerid, -1, ""ALB"Mai jos, in cateva randuri iti vor fi explicate lucrurile elementare !");
SendClientMessage(playerid, -1, ""ALBASTRU4"Sa fii foarte atent la tot ce scrie deoarece va trabui sa dai un test dupa !");
SendClientMessage(playerid, -1, ""ALB"Acum instructorul iti va explica cateva lucruri importante: !");
SetTimerEx("DriverLicenseTime", 20000, false, "i", playerid);
DriverTestTimer[playerid] = 1;
DMVPrepare[playerid] = 7;
}
else
{
SendClientMessage(playerid, -1,""ALBASTRU2"Deja dai testul!");
}
}
else
{
SendClientMessage(playerid,-1,""ALBASTRU2"Deja ai licenta de sofer!" );
}
}
else
{
SendClientMessage(playerid,-1,""ALBASTRU2"Nu ai bani pentru a da testul!");
}
}


La OnPlayerKeyStateChange(playerid, newkeys, oldkeys) adaugam:

if (newkeys == KEY_SPRINT)
{
if(DMVPrepare[playerid] != 0)
{
if(DMVPrepare[playerid] == 2)
{
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SetPlayerCameraPos(playerid, 1785.9131, 2045.1702, 133.1425);
SetPlayerCameraLookAt(playerid, 1786.7692, 2044.6467, 132.6625);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, -1,""GALBEN"|__________________________________ Indicatii Instructor __________________________________| ");
SendClientMessage(playerid, -1, ""ALBASTRU4"In primul rand trebuie a sti 2 lucruri foarte importante: !");
SendClientMessage(playerid, -1, ""ALB"Viteza legala permisa prin orase este de 60 km /h, iar in afara orasului este de 100 km/h.");
SendClientMessage(playerid, -1, ""ALBASTRU4"Daca pe mijlocul carosabilului se intalneste o linie continua, ne arata ca este interzisa depasirea in acea zona.");
SendClientMessage(playerid, -1, ""ALB"Daca vei fi prins incalcand aceste regului factiunea Police Department iti va putea confisca permisul.");
SetTimerEx("DriverLicenseTime2", 20000, false, "i", playerid);
DriverTestTimer[playerid] = 2;
DMVPrepare[playerid] = 7;
}
else if(DMVPrepare[playerid] == 3)
{
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SetPlayerCameraPos(playerid, 2136.4751, 1880.3142, 42.5593);
SetPlayerCameraLookAt(playerid, 2137.3523, 1879.8271, 42.2693);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, -1,""GALBEN"|__________________________________ Indicatii Instructor __________________________________| ");
SendClientMessage(playerid, -1, ""ALBASTRU4"In cazul in care politia iti va cere sa opresti masina, atat prin semnale sonore cat si verbale");
SendClientMessage(playerid, -1, ""ALB"tu, ca si sofer ai obligatia de trage masina pe partea dreapta cat mai aproape de trotuar pentru");
SendClientMessage(playerid, -1, ""ALBASTRU4"a nu incurca circulatia altor soferi.");
SendClientMessage(playerid, -1, ""ALB"In cazut in care vei hotari samergi mai departe fara sa opresti vei putea ajunge la inchisoare.");
SetTimerEx("DriverLicenseTime3", 20000, false, "i", playerid);
DriverTestTimer[playerid] = 3;
DMVPrepare[playerid] = 7;
}
else if(DMVPrepare[playerid] == 4)
{
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SetPlayerCameraPos(playerid, 2102.2131, 1179.5228, 60.8850);
SetPlayerCameraLookAt(playerid, 2102.9712, 1178.8656, 60.5250);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, -1,""GALBEN"|__________________________________ Indicatii Instructor __________________________________| ");
SendClientMessage(playerid, -1, ""ALBASTRU4"Daca ai fost implicat intr-un accident ai obligatia de a suna la politie si ambulanta.");
SendClientMessage(playerid, -1, ""ALB"In niciun caz sa nu incerci sa fugi de la locul accidentului, pentru ca doar vei inrautati situatia.");
SendClientMessage(playerid, -1, ""ALBASTRU4"De asemenea este interzisa participarea la cursele ilegale deoarece poti accidenta oameni nevinovati.");
SendClientMessage(playerid, -1, ""ALB"Daca politia te va vedea iti va fi confiscat permisul si vei fi bagat la inchisoare.");
SetTimerEx("DriverLicenseTime4", 20000, false, "i", playerid);
DriverTestTimer[playerid] = 4;
DMVPrepare[playerid] = 7;
}
else if(DMVPrepare[playerid] == 5)
{
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SetPlayerCameraPos(playerid, 2136.5591, 1391.5442, 39.0689);
SetPlayerCameraLookAt(playerid, 2136.5562, 1392.5482, 38.8239);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, -1,""GALBEN"|__________________________________ Indicatii Instructor __________________________________| ");
SendClientMessage(playerid ,-1, ""ALBASTRU4"Trebuie sa sti ca ai voie sa conduci pe partea stanga a carosabilului doar intr-o singura conditie:");
SendClientMessage(playerid, -1, ""ALB"Ai voie doar cand drumul pe partea dreapta de mers este blocat si nu ai alta sansa de a trece de blocaj !");
SendClientMessage(playerid, -1, ""ALBASTRU4"Daca vei incerca sa conduci pe partea stanga inafara de aces caz vei avea sansa sa primesti amenda !");
SetTimerEx("DriverLicenseTime5", 20000, false, "i", playerid);
DriverTestTimer[playerid] = 5;
DMVPrepare[playerid] = 7;
}
else if(DMVPrepare[playerid] == 6)
{
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SendClientMessage(playerid, -1, "");
SetPlayerCameraPos(playerid, 2136.5591, 1391.5442, 39.0689);
SetPlayerCameraLookAt(playerid, 2136.5562, 1392.5482, 38.8239);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, -1,""GALBEN"|__________________________________ Scoala de soferi __________________________________| ");
SendClientMessage(playerid ,-1, ""ALBASTRU4"Asta a fost tot ! Urmeaza testul, intrebarile au 4 variante de raspuns (1, 2, 3, 4)");
SendClientMessage(playerid, -1, ""ALB"Numai una din ele este corecta !");
SendClientMessage(playerid ,-1, ""ALBASTRU4"Scoala de soferi Los Santos iti ureaza mult succes !");
SetTimerEx("DriverLicenseTime6", 10000, false, "i", playerid);
DriverTestTimer[playerid] = 6;
DMVPrepare[playerid] = 7;
}
else if(DMVPrepare[playerid] == 7)
{
GameTextForPlayer(playerid, "~r~Ai derulat prea repede", 3500, 1);
return 1;
}
}
}

La sfarsitul GM-ului adaugam:

public DriverLicenseTime(playerid)
{
if(DriverTestTimer[playerid] == 1)
{
DMVPrepare[playerid] = 2;
}
}
public DriverLicenseTime2(playerid)
{
if(DriverTestTimer[playerid] == 2)
{
DMVPrepare[playerid] = 3;
}
}
public DriverLicenseTime3(playerid)
{
if(DriverTestTimer[playerid] == 3)
{
DMVPrepare[playerid] = 4;
}
}
public DriverLicenseTime4(playerid)
{
if(DriverTestTimer[playerid] == 4)
{
DMVPrepare[playerid] = 5;
}
}
public DriverLicenseTime5(playerid)
{
if(DriverTestTimer[playerid] == 5)
{
DMVPrepare[playerid] = 6;
}
}
public DriverLicenseTime6(playerid)
{
if(DriverTestTimer[playerid] == 6)
{
DMVPrepare[playerid] = 0;
SendClientMessage(playerid, -1, "Acum urmeaza intrebarile");
}
}
Regulament forum: You are not allowed to view links. Register or Login to view.

You are not allowed to view links. Register or Login to view.

You are not allowed to view links. Register or Login to view.


Forum Jump: