-
Posts
1,094 -
Joined
-
Last visited
-
Days Won
23
Content Type
Profiles
Forums
News
Documentation
Posts posted by NoNamed
-
-
Problemă întâlnită (descriere):Pentru incepu folosesc gamemode'ul blown.Vreau sa fac urmatoarea chestie.Vreau sa mut toata factiunea Sadoveanu,sa o duc la Grove.Mai exact sa ii mut spawnu'l cu tot cu interior.
Ero(area / rile) / warning-(ul / urile):
Liniile de cod / sursa / script-ul:
Imagini / Video (optional):
Aţi încercat să rezolvaţi singur?:Da am incercat.M'am dus unde vreau sa fie spawnul si am dat /save.Am copiat dintr'un documnet coordonatele si am cautat in GM Sadoveanu spawn.Si nu stiu sigur unde trebuie sa inlocuiesc coordonatele.
if (PlayerData[playerid][pMember] == 11 || PlayerData[playerid][pLeader] == 11)//Clanul Sadoveanu spawn { SendClientMessage(playerid, COLOR_WHITE, "Scrie {ffff00}/takeguns {ffffff}ca sa cumperi un set de arme cu {228B22}${FFFFFF}1500 sau /exit sa iesi din HQ."); SetPlayerToTeamColor(playerid); SetPlayerInterior(playerid,5); SetPlayerPos(playerid,1267.663208,-781.323242,1091.906250); PlayerData[playerid][pInt] = 0; SetPlayerVirtualWorld(playerid, 0); GivePlayerWeapon(playerid, 24, 50); GivePlayerWeapon(playerid, 1, 1); return 1; }
Am inteles ca la SetPlayerPos se pun coordonatele din interior.Si asta vreau sa fac, sa mut spawnu'l la grove si cand dau /enter sa intre in interior iar cand dau /exit sa iasa tot acolo.Sper ca ma puteti ajuta.La SetPlayerPos pui coordonatele unde sa fie spawnat . Apoi mai intra pe server salveaza o zona unde sa fie iesirea din HQ si cauta comanda "/enter", o dublezi apoi la PlayerToPoint modifici cu coordonatele de afara care le-ai salvat mai inainte iar la SetPlayerPos pui coordonatele din interiorul hq-ului iar pentru iesire cauta comanda "/exit" ,o dublezi iar la PlayerToPoint pui coordonatele spawn-ului in HQ si la SetPlayerPos pui coordonatele de afara .
- 1
-
Ce am greșit la așezare? Am eroarea „Pawn Compiler library has stopped working”
Cu siguranță am mâncat o paranteză sau am pus-o greșit.
Mă poți ajuta?
Incearca la ultimul else sa pui asa :
else if(PlayerInfo[playerid][pDonateRank] == 0)
-
Le-am folosit pe toate. Mai există o metodă asemănătoare și nici aceea nu a mers. Am ratat două paranteze din câte am priceput de la acel program, dar mi-a dat liniile greșite. M-a trimis undeva unde nu-i nicio legătură cu DMV
Ai verificat daca la liniile care te-a trimis este totul in regula ? Ca nu poate fi neaparat de la DMV , poate fi la orice linie din gamemode acea acolada lipsa ...
-
Ai verificat daca coordonatele de la
if(!PlayerToPoint(3.0, playerid, 246.4641,118.5369,1003.2188))
sunt puse corect ? Adica daca sunt coordonatele de la zona unde trebuie sa scri /surrender ?Incearca sa modifici
if(WantedLevel[playerid] > 1)
cu :if(WantedLevel[playerid] >= 1)
. -
Descarca mxINI de aici apoi il bagi in folder-ul cu server-ul tau ---> pawno ---> includes , deschizi gamemode-ul cu pawno si il compilezi .
-
Poi bun si ce doresti ? Sa-ti gasim noi parantezele mancate ? Verifica sa nu cumva sa fie mancate din alta parte a gm-ului .
Vezi daca te ajuta asta : http://forum.sa-mp.com/showthread.php?t=437452 , mie mi-a fost de folos ...
-
Ai in folderul scriptfilles cars.cfg?
Sigur . Am si sters sistemul din gm si am bagat fs-ul face exact lafel ,creez masina , ramane , poate fi cumpara pana la restart , la restart masina dispare ...
-
1.Ai verificat inainte in GM sa nu ai alt sistem de masini personale?
2.Ai verificat sa nu ai sistem dinamic de masini?
Da , am verificat tot , nu am nici sistem de masini dinamic .
-
Ai pus la caronserver cate masini ai pe server(in gm) +1?
Sigur ca da , am pus si asa , facea tot lafel , am pus inapoi cate erau facea tot lafel si pana la urma l-am lasat cu numarul de masini + 1...
-
Nick: NoNamed
Problema: Am adaugat intr-un gamemode sistemul de masini facut de Im_BanK , merge totul ok pana la restart . Dupa restart masina dispare de pe server , la /stats imi apare ca id-ul masinii personale este 347 dar la Model nu apare nimic , dau /gotocar 347 si ma duce la ferma aceea cazand in gol ... REPET : AM LUAT FILTERSCRIPT-UL SI L-AM ADAUGAT PAS CU PAS IN GAMEMODE !
Erori / warnings: Nicio eroare / warning .
Lini/script:-
Ai incercat sa rezolvi singur ?: Da , am incercat sa adaug din scriptfiles masini de cumparat , dar alea dupa ce le cumpar si dau /v park dispar , iar la restart apar iar dar nu mai sunt cumparate .
-
Posteaza comanda de la DMV
[pawn]//=====================================[Examen]=================================
if(strcmp(cmd, "/examen", true) == 0)
{
if(PlayerToPoint(5.0,playerid,1081.2332,-1698.0156,13.5469))
{
if(GetPlayerMoney(playerid) >= 500)
{
if(PlayerInfo[playerid][pCarLic] == 0)
{
if(DMVPrepare[playerid] == 0)
{
DMVPrepare[playerid] = 1;
GivePlayerMoney(playerid,-500);
}
else
{
SendClientMessage(playerid,COLOR_GREY,"Esti deja in cursul testului !");
}
}
else
{
SendClientMessage(playerid,COLOR_GREY,"Ai deja permisul de conducere!!" );
}
}
else
{
SendClientMessage(playerid,COLOR_GREY,"Nu ai destui bani pentru a plati examenul!");
}
}
}[/pawn]
-
Primul checkpoint sau ultimul nu dispare? Macar ai incercat sa vezi?
Normal ca am incercat , altfel nu-mi mai bateam capul degeaba ... Primul cp nu dispare , ramane acolo de zici ca-i singuru' cp de pe server ...
-
Uite:
Pune astea in loc de alea,astept reply...
Degeaba . Din momentul in care ma urc in masina pana dau restart / ies de pe server nu mai dispare cp-ul .
-
Incearca asa:
[pawn]if(newcar == DMV1 || newcar == DMV2 || newcar == DMV3 || newcar == DMV4 || newcar == DMV5)
{
if(TakingLesson[playerid] == 1)
{
KillTimer(dmvtimer1);
DMVCountDown(playerid);
SendClientMessage(playerid,COLOR_LIGHTBLUE,"[instructor]:Urmeaza checkpointurile pentru a trece traseul.Ai la dizpozitie 90 de secunde ");
SendClientMessage(playerid,COLOR_LIGHTBLUE,"[instructor]:Condu pe partea dreapta si ai grija la celelalte masini !");
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "** The Instructor starts the engine and lefts the car looking at %s **", name);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
format(string, sizeof(string), "** The Instructor waves to %s and shouts: Good Luck ! **", name);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
CP[playerid] = 99;
SetPlayerCheckpoint(playerid, 1101.8851,-1711.9829,12.9604,5.0);
}[/pawn]
Nu merge . Poate fi din cauza faptului ca eu nu am 100 de cp-uri in gm la OnPlayerEnterCheckpoint ? Sau cum pot afla cate cp-uri sunt ?
-
Pune coordonatele astea la SetPlayerCheckpoint din sistemul de deasupra:
Incearca asa
Am incercat . Degeaba , nu functioneaza . Tot ce am facut a fost sa mut cp-ul mai in fata ...
-
Nu cumva mai ai un CP cu 100 ?
Mai am aici , care e tot de la sistem , asa era pus de cel care a facut tutorialul ...
if(newcar == DMV1 || newcar == DMV2 || newcar == DMV3 || newcar == DMV4 || newcar == DMV5) { if(TakingLesson[playerid] == 1) { KillTimer(dmvtimer1); DMVCountDown(playerid); SendClientMessage(playerid,COLOR_LIGHTBLUE,"[Instructor]:Urmeaza checkpointurile pentru a trece traseul.Ai la dizpozitie 90 de secunde "); SendClientMessage(playerid,COLOR_LIGHTBLUE,"[Instructor]:Condu pe partea dreapta si ai grija la celelalte masini !"); GetPlayerName(playerid, name, sizeof(name)); format(string, sizeof(string), "** The Instructor starts the engine and lefts the car looking at %s **", name); ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); format(string, sizeof(string), "** The Instructor waves to %s and shouts: Good Luck ! **", name); ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); CP[playerid] = 100; SetPlayerCheckpoint(playerid, 1101.8851,-1711.9829,12.9604,5.0); }
-
Incearca asa :
[pawn]else if(CP[playerid]==80)//DMV CK
{
DisablePlayerCheckpoint(playerid);
}
//-----------------[DMV-CPS]-----------------------------------------------------
else if(CP[playerid] == 99)
{
DisablePlayerCheckpoint(playerid);
CP[playerid] = 0;
}
else if(CP[playerid] == 100)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,1149.3123,-1712.3945,13.3663,5.0);
CP[playerid] = 101;
}
else if(CP[playerid] == 101)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,1152.1296,-1647.6825,13.3586,5.0);
CP[playerid] = 102;
}
else if(CP[playerid] == 102)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,1143.6036,-1569.6876,12.8511,5.0);
CP[playerid] = 103;
}
else if(CP[playerid] == 103)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,1061.5269,-1569.8389,12.9559,5.0);
CP[playerid] = 104;
}
else if(CP[playerid] == 104)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,1008.8161,-1569.9691,12.9641,5.0);
CP[playerid] = 105;
}
else if(CP[playerid] == 105)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,960.9140,-1570.0966,12.9772,5.0);
CP[playerid] = 106;
}
else if(CP[playerid] == 106)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,926.1542,-1569.8929,12.9447,5.0);
CP[playerid] = 107;
}
else if(CP[playerid] == 107)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,915.2628,-1584.5763,12.9600,5.0);
CP[playerid] = 108;
}
else if(CP[playerid] == 108)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,914.2856,-1630.3322,12.9612,5.0);
CP[playerid] = 109;
}
else if(CP[playerid] == 109)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,914.3433,-1670.4269,12.9681,5.0);
CP[playerid] = 110;
}
else if(CP[playerid] == 110)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,933.6616,-1771.6304,13.1216,5.0);
CP[playerid] = 111;
}
else if(CP[playerid] == 111)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,1037.3101,-1792.0226,13.2581,5.0);
CP[playerid] = 112;
}
else if(CP[playerid] == 112)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid,1119.3994,-1715.5334,13.0519,5.0);
CP[playerid] = 113;
}
else if(CP[playerid] == 113)
{
new currentveh;
currentveh = GetPlayerVehicleID(playerid);
if(IsPlayerInAnyVehicle(playerid))
{
SetVehicleToRespawn(currentveh);
}
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "** The Instructor looks proud at %s and hands him a Driver License **", name);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
DisablePlayerCheckpoint(playerid);
PlayerInfo[playerid][pCarLic] = 1;
TakingLesson[playerid] = 0;
SendClientMessage(playerid,COLOR_LIGHTBLUE,"[DMV]: Felicitari,ai trecut testul !");
CP[playerid] = 0;
KillTimer(dmvcounttimer);
}[/pawn]
Astept reply!
Am pus cum ai zis tu dar degeaba , tot lafel face , intru cu masina in primul checkpoint si nu dispare ... nu dispare nici dupa ce trece timpul de 90 de secunde .
-
Noi nu avem de unde sa stim ce contine gamemodul GameLife ca eu sincer nu l-am dowloadat .. asa ca trebuie sa ne arati ceva ... Arata-ne unde creaza masinile scriptul.
Voi pune mai jos tot sistemul , sper sa fie de folos ..
public LoadCar() { new arrCoords[30][64], strFromFile2[256]; new File: file = fopen("pcars.cfg", io_read); if (file) { new idx = carsonserver; while (idx < sizeof(CarInfo)) { fread(file, strFromFile2); split(strFromFile2, arrCoords, ','); CarInfo[idx][cModel] = strval(arrCoords[0]); CarInfo[idx][cLocationx] = floatstr(arrCoords[1]); CarInfo[idx][cLocationy] = floatstr(arrCoords[2]); CarInfo[idx][cLocationz] = floatstr(arrCoords[3]); CarInfo[idx][cAngle] = floatstr(arrCoords[4]); CarInfo[idx][cColorOne] = strval(arrCoords[5]); CarInfo[idx][cColorTwo] = strval(arrCoords[6]); strmid(CarInfo[idx][cOwner], arrCoords[7], 0, strlen(arrCoords[7]), 255); strmid(CarInfo[idx][cDescription], arrCoords[8], 0, strlen(arrCoords[8]), 255); //CarInfo[idx][cValue] = strval(arrCoords[9]); CarInfo[idx][cOwned] = strval(arrCoords[9]); CarInfo[idx][mod1] = strval(arrCoords[10]); CarInfo[idx][mod2] = strval(arrCoords[11]); CarInfo[idx][mod3] = strval(arrCoords[12]); CarInfo[idx][mod4] = strval(arrCoords[13]); CarInfo[idx][mod5] = strval(arrCoords[14]); CarInfo[idx][mod6] = strval(arrCoords[15]); CarInfo[idx][mod7] = strval(arrCoords[16]); CarInfo[idx][mod8] = strval(arrCoords[17]); CarInfo[idx][mod9] = strval(arrCoords[18]); CarInfo[idx][mod10] = strval(arrCoords[19]); CarInfo[idx][mod11] = strval(arrCoords[20]); CarInfo[idx][mod12] = strval(arrCoords[21]); CarInfo[idx][mod13] = strval(arrCoords[22]); CarInfo[idx][mod14] = strval(arrCoords[23]); CarInfo[idx][mod15] = strval(arrCoords[24]); CarInfo[idx][mod16] = strval(arrCoords[25]); CarInfo[idx][mod17] = strval(arrCoords[26]); CarInfo[idx][paintjob] = strval(arrCoords[27]); LoadComponents(idx); idx++; } for(new h = carsonserver; h < sizeof(CarInfo); h++) { AddStaticVehicleEx(CarInfo[h][cModel], CarInfo[h][cLocationx], CarInfo[h][cLocationy], CarInfo[h][cLocationz]+1.0, CarInfo[h][cAngle], CarInfo[h][cColorOne], CarInfo[h][cColorTwo], -1); LoadComponents(h), SetVehicleVirtualWorld(h, 255); } } return 1; }
public SaveCarCoords() { new idx; new File: file2; while (idx < sizeof(CarInfo)) { new coordsstring2[256]; format(coordsstring2, sizeof(coordsstring2), "%d|%f|%f|%f|%f|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d\n", CarInfo[idx][cModel], CarInfo[idx][cLocationx], CarInfo[idx][cLocationy], CarInfo[idx][cLocationz], CarInfo[idx][cAngle], CarInfo[idx][cColorOne], CarInfo[idx][cColorTwo], CarInfo[idx][mod1], CarInfo[idx][mod2], CarInfo[idx][mod3], CarInfo[idx][mod4], CarInfo[idx][mod5], CarInfo[idx][mod6], CarInfo[idx][mod7], CarInfo[idx][mod8], CarInfo[idx][mod9], CarInfo[idx][mod10], CarInfo[idx][mod11], CarInfo[idx][mod12], CarInfo[idx][mod13], CarInfo[idx][mod14], CarInfo[idx][mod15], CarInfo[idx][mod16], CarInfo[idx][mod17], CarInfo[idx][paintjob]); if(idx == carsonserver) { file2 = fopen("pcars.cfg", io_write); } else { file2 = fopen("pcars.cfg", io_append); } fwrite(file2, coordsstring2); idx++; fclose(file2); } return 1; }
public LoadComponents(vehicleid) { if(CarInfo[vehicleid][cOwned] == 1) { if(CarInfo[vehicleid][mod1] >= 1000 && CarInfo[vehicleid][mod1] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod1])) != CarInfo[vehicleid][mod1]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod1]); } } if(CarInfo[vehicleid][mod2] >= 1000 && CarInfo[vehicleid][mod2] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod2])) != CarInfo[vehicleid][mod2]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod2]); } } if(CarInfo[vehicleid][mod3] >= 1000 && CarInfo[vehicleid][mod3] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod3])) != CarInfo[vehicleid][mod3]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod3]); } } if(CarInfo[vehicleid][mod4] >= 1000 && CarInfo[vehicleid][mod4] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod4])) != CarInfo[vehicleid][mod4]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod4]); } } if(CarInfo[vehicleid][mod5] >= 1000 && CarInfo[vehicleid][mod5] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod5])) != CarInfo[vehicleid][mod5]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod5]); } } if(CarInfo[vehicleid][mod6] >= 1000 && CarInfo[vehicleid][mod6] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod6])) != CarInfo[vehicleid][mod6]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod6]); } } if(CarInfo[vehicleid][mod7] >= 1000 && CarInfo[vehicleid][mod7] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod7])) != CarInfo[vehicleid][mod7]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod7]); } } if(CarInfo[vehicleid][mod8] >= 1000 && CarInfo[vehicleid][mod8] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod8])) != CarInfo[vehicleid][mod8]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod8]); } } if(CarInfo[vehicleid][mod9] >= 1000 && CarInfo[vehicleid][mod9] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod9])) != CarInfo[vehicleid][mod9]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod9]); } } if(CarInfo[vehicleid][mod10] >= 1000 && CarInfo[vehicleid][mod10] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod10])) != CarInfo[vehicleid][mod10]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod10]); } } if(CarInfo[vehicleid][mod11] >= 1000 && CarInfo[vehicleid][mod11] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod11])) != CarInfo[vehicleid][mod11]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod11]); } } if(CarInfo[vehicleid][mod12] >= 1000 && CarInfo[vehicleid][mod12] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod12])) != CarInfo[vehicleid][mod12]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod12]); } } if(CarInfo[vehicleid][mod13] >= 1000 && CarInfo[vehicleid][mod13] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod13])) != CarInfo[vehicleid][mod13]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod13]); } } if(CarInfo[vehicleid][mod14] >= 1000 && CarInfo[vehicleid][mod14] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod14])) != CarInfo[vehicleid][mod14]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod14]); } } if(CarInfo[vehicleid][mod15] >= 1000 && CarInfo[vehicleid][mod15] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod15])) != CarInfo[vehicleid][mod15]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod15]); } } if(CarInfo[vehicleid][mod16] >= 1000 && CarInfo[vehicleid][mod16] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod16])) != CarInfo[vehicleid][mod16]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod16]); } } if(CarInfo[vehicleid][mod17] >= 1000 && CarInfo[vehicleid][mod17] <= 1193) { if(GetVehicleComponentInSlot(vehicleid,GetVehicleComponentType(CarInfo[vehicleid][mod17])) != CarInfo[vehicleid][mod17]) { AddVehicleComponent(vehicleid,CarInfo[vehicleid][mod17]); } } if(CarInfo[vehicleid][paintjob] > -1) { ChangeVehiclePaintjob(vehicleid,CarInfo[vehicleid][paintjob]); ChangeVehicleColor(vehicleid, 1, 1); } else { ChangeVehicleColor(vehicleid, CarInfo[vehicleid][cColorOne], CarInfo[vehicleid][cColorTwo]); } } return 1; }
public OnCarUpdate() { new idx, File: file2; idx = carsonserver; while (idx < sizeof(CarInfo)) { new coordsstring[256]; format(coordsstring, sizeof(coordsstring), "%d,%f,%f,%f,%f,%d,%d,%s,%s,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", CarInfo[idx][cModel], CarInfo[idx][cLocationx], CarInfo[idx][cLocationy], CarInfo[idx][cLocationz], CarInfo[idx][cAngle], CarInfo[idx][cColorOne], CarInfo[idx][cColorTwo], CarInfo[idx][cOwner], CarInfo[idx][cDescription], //CarInfo[idx][cValue], CarInfo[idx][cOwned], CarInfo[idx][mod1], CarInfo[idx][mod2], CarInfo[idx][mod3], CarInfo[idx][mod4], CarInfo[idx][mod5], CarInfo[idx][mod6], CarInfo[idx][mod7], CarInfo[idx][mod8], CarInfo[idx][mod9], CarInfo[idx][mod10], CarInfo[idx][mod11], CarInfo[idx][mod12], CarInfo[idx][mod13], CarInfo[idx][mod14], CarInfo[idx][mod15], CarInfo[idx][mod16], CarInfo[idx][mod17], CarInfo[idx][paintjob]); if(idx == carsonserver) { file2 = fopen("pcars.cfg", io_write); } else { file2 = fopen("pcars.cfg", io_append); } fwrite(file2, coordsstring); idx++; fclose(file2); } return 1; }
public IsAnOwnableCar(vehicleid) { if(vehicleid >= carsonserver && vehicleid <= MAX_VEHICLES) { return 1; } return 0; }
public CarMods(vehicleid) { if(CarInfo[vehicleid][paintjob] > -1 || CarInfo[vehicleid][mod1] > 0 || CarInfo[vehicleid][mod2] > 0 || CarInfo[vehicleid][mod3] > 0 || CarInfo[vehicleid][mod4] > 0 || CarInfo[vehicleid][mod5] > 0 || CarInfo[vehicleid][mod6] > 0 || CarInfo[vehicleid][mod7] > 0 || CarInfo[vehicleid][mod8] > 0) { return 1; } else if (CarInfo[vehicleid][mod9] > 0 || CarInfo[vehicleid][mod10] > 0 || CarInfo[vehicleid][mod11] > 0 || CarInfo[vehicleid][mod12] > 0|| CarInfo[vehicleid][mod13] > 0|| CarInfo[vehicleid][mod14] > 0|| CarInfo[vehicleid][mod15] > 0|| CarInfo[vehicleid][mod16] > 0|| CarInfo[vehicleid][mod17] > 0) { return 1; } return 0; }
public SavePlayerData(playerid) { if(IsPlayerConnected(playerid)) { new string3[32]; new playername3[MAX_PLAYER_NAME]; GetPlayerName(playerid, playername3, sizeof(playername3)); format(string3, sizeof(string3), "VehiculePersonale/%s.ini", playername3); new File: hFile = fopen(string3, io_write); if (hFile) { new var[32]; format(var, 32, "CarKey=%d\n",PlayerInfo[playerid][pPcarkey]);fwrite(hFile, var); format(var, 32, "CarKey2=%d\n",PlayerInfo[playerid][pPcarkey2]);fwrite(hFile, var); format(var, 32, "CarKey3=%d\n",PlayerInfo[playerid][pPcarkey3]);fwrite(hFile, var); fclose(hFile); } } return 1; } public CarKeys(playerid) { new string2[64]; new playername2[MAX_PLAYER_NAME]; GetPlayerName(playerid, playername2, sizeof(playername2)); format(string2, sizeof(string2), "VehiculePersonale/%s.ini", playername2); new File: UserFile = fopen(string2, io_read); if ( UserFile ) { new key[ 256 ] , val[ 256 ]; new Data[ 256 ]; while ( fread( UserFile , Data , sizeof( Data ) ) ) { key = ini_GetKey( Data ); if( strcmp( key , "CarKey" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPcarkey] = strval( val ); } if( strcmp( key , "CarKey2" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPcarkey2] = strval( val ); } if( strcmp( key , "CarKey3" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPcarkey3] = strval( val ); } } fclose(UserFile); } return 1; }
Comanda /v ://==========================[/v(ehicle)]======================================== if(strcmp(cmd, "/v", true) == 0 || strcmp(cmd, "/vehicle", true) == 0) { if(IsPlayerConnected(playerid)) { new x_nr[64]; x_nr = strtok(cmdtext, idx); if(!strlen(x_nr)) { SendClientMessage(playerid, COLOR_WHITE, "____________[Personal Vehicle Help]____________"); SendClientMessage(playerid, COLOR_WHITE, "** {1AFF00}(/v)ehicle {09DFF7}[name]"); SendClientMessage(playerid, COLOR_WHITE, "**park, color, tow(1-3), fix(1-3), find(1-3), model, create"); return 1; } if(strcmp(x_nr,"create",true) == 0) { if(PlayerInfo[playerid][pLevel] >= 3) { if(PlayerInfo[playerid][pPcarkey] == -1 && PlayerInfo[playerid][pPcarkey2] == -1 && PlayerInfo[playerid][pPcarkey3] == -1) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GREY, "USAGE: /v create [carid] [color1] [color2]"); return 1; } new car = strval(tmp); if(car < 400 || car > 611) { SendClientMessage(playerid, COLOR_WHITE, "{0950F7}* Vehicle Number can't be below 400 or above 611 !"); return 1; } if(IsInvalidVehicleId(car) == 0) { SendClientMessage(playerid, COLOR_GREY, "Invalid vehicle model !"); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GREY, "USAGE: /v create [carid] [color1] [color2]"); return 1; } new color1 = strval(tmp); if(color1 < 0 || color1 > 255) { SendClientMessage(playerid, COLOR_WHITE, "{0950F7}* Color Number can't be below 0 or above 255 !"); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GREY, "USAGE: /v create [carid] [color1] [color2]"); return 1; } new color2 = strval(tmp); if(color2 < 0 || color2 > 255) { SendClientMessage(playerid, COLOR_WHITE, "{0950F7}* Color Number can't be below 0 or above 255 !"); return 1; } new thiscar, Float:X, Float:Y, Float:Z; GetPlayerPos(playerid, X, Y, Z); new Float:a; GetPlayerFacingAngle(playerid, a); GetPlayerName(playerid, sendername, sizeof(sendername)); thiscar = CreateVehicle(car, X, Y, Z, a,color1,color2,60000); if(PlayerInfo[playerid][pPcarkey] == -1) { PlayerInfo[playerid][pPcarkey] = thiscar; } else if(PlayerInfo[playerid][pPcarkey2] == -1) { PlayerInfo[playerid][pPcarkey2] = thiscar; } else if(PlayerInfo[playerid][pPcarkey3] == -1) { PlayerInfo[playerid][pPcarkey3] = thiscar; } CarInfo[thiscar][cOwned] = 1; CarInfo[thiscar][cModel] = car; CarInfo[thiscar][cColorOne] = color1; CarInfo[thiscar][cColorTwo] = color2; CarInfo[thiscar][cLocationx] = X; CarInfo[thiscar][cLocationy] = Y; CarInfo[thiscar][cLocationz] = Z; CarInfo[thiscar][cAngle] = a; CarInfo[thiscar][paintjob] = -1; strmid(CarInfo[thiscar][cOwner], sendername, 0, strlen(sendername), 999); format(CarInfo[thiscar][cDescription], 32, "%s", vehName[GetVehicleModel(thiscar) - 400]); format(TextCar, sizeof(TextCar), "{0099FF}LS-666-CVL", CarInfo[thiscar][cOwner]); TextUpCar[thiscar] = Create3DTextLabel(TextCar, 0x33AAFFFF , 0.0, 0.0, 0.0, 25, 0, 1); Attach3DTextLabelToVehicle(TextUpCar[thiscar], thiscar, 0.0, 0.0, 0.1); OnCarUpdate(), SavePlayerData(playerid); } else { SendClientMessage(playerid, COLOR_WHITE, "Ai deja o masina creeata de tine !"); } } else { SendClientMessage(playerid, COLOR_WHITE, "Trebuie sa ai level 3 !"); } return 1; } else if(strcmp(x_nr,"park",true) == 0) { new Float:x,Float:y,Float:z; new Float:a; new carid; new getcarid = GetPlayerVehicleID(playerid); if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey]) { carid = PlayerInfo[playerid][pPcarkey]; } else if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey2]) { carid = PlayerInfo[playerid][pPcarkey2]; } else if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey3]) { carid = PlayerInfo[playerid][pPcarkey3]; } else { return 1; } GetPlayerName(playerid, playername, sizeof(playername)); GetVehiclePos(carid, x, y, z); GetVehicleZAngle(carid, a); if(IsPlayerInVehicle(playerid,carid) && CarInfo[carid][cOwned] == 1) { if(PlayerInfo[playerid][pPcarkey] == -1 && PlayerInfo[playerid][pPcarkey2] == -1 && PlayerInfo[playerid][pPcarkey3] == -1) { SendClientMessage(playerid, COLOR_GREY, "You don't own a car!"); return 1; } if(getcarid == carid) { new Float:CarHP, Float:OldCarHP; new panels,doors,lights,tires; CarInfo[carid][cLocationx] = x; CarInfo[carid][cLocationy] = y; CarInfo[carid][cLocationz] = z; CarInfo[carid][cAngle] = a; GetVehicleDamageStatus(carid,panels,doors,lights,tires); GetVehicleHealth(carid, CarHP); OldCarHP = CarHP; OnCarUpdate(); DestroyVehicle(carid); CreateVehicle(CarInfo[carid][cModel],CarInfo[carid][cLocationx],CarInfo[carid][cLocationy],CarInfo[carid][cLocationz]+1.0,CarInfo[carid][cAngle],CarInfo[carid][cColorOne],CarInfo[carid][cColorTwo],60000); LoadComponents(carid); SendClientMessage(playerid, COLOR_BLUE, "* Noua pozitie a fost salvata!"); SetVehicleHealth(carid, OldCarHP); UpdateVehicleDamageStatus(carid, panels, doors, lights, tires); return 1; } } } /*else if(strcmp(x_nr,"buy",true) == 0) { if(IsAnOwnableCar(idcar)) { if(PlayerInfo[playerid][pPcarkey] == -1) { } else if(PlayerInfo[playerid][pPcarkey2] == -1) { } else if(PlayerInfo[playerid][pPcarkey3] == -1) { } else { SendClientMessage(playerid, COLOR_GREY, "* Ai deja 3 masini!"); return 1; } if(CarInfo[idcar][cOwned]==1) { SendClientMessage(playerid, COLOR_GREY, "Someone already owns this car."); return 1; } if(GetPlayerMoney(playerid) >= CarInfo[idcar][cValue]) { if(PlayerInfo[playerid][pPcarkey] == -1) { PlayerInfo[playerid][pPcarkey] = idcar; } else if(PlayerInfo[playerid][pPcarkey2] == -1) { PlayerInfo[playerid][pPcarkey2] = idcar; } else if(PlayerInfo[playerid][pPcarkey3] == -1) { PlayerInfo[playerid][pPcarkey3] = idcar; } else { return 1; } CarInfo[idcar][cOwned] = 1; GetPlayerName(playerid, sendername, sizeof(sendername)); strmid(CarInfo[idcar][cOwner], sendername, 0, strlen(sendername), 999); GivePlayerMoney(playerid,-CarInfo[idcar][cValue]); Delete3DTextLabel(TextUpCar[idcar]); //format(TextCar, sizeof(TextCar), "{EE1111}Owner: {0099FF}• %s •", CarInfo[idcar][cOwner]); //TextUpCar[idcar] = Create3DTextLabel(TextCar, 0x33AAFFFF, 0.0, 0.0, 0.0, 25, 0, 1); //Attach3DTextLabelToVehicle(TextUpCar[idcar], idcar, 0.0, 0.0, 0.1); OnCarUpdate(); SavePlayerData(playerid); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); GameTextForPlayer(playerid, "~w~Felicitari~n~Nu uita sa o parchezi cu /v park !", 5000, 3); TogglePlayerControllable(playerid, 1); return 1; } else { SendClientMessage(playerid, COLOR_GREY, " You don't have enough cash with you!"); return 1; } } }*/ else if(strcmp(x_nr,"color",true) == 0) { if(PlayerInfo[playerid][pPcarkey] == -1 && PlayerInfo[playerid][pPcarkey2] == -1 && PlayerInfo[playerid][pPcarkey3] == -1) { SendClientMessage(playerid, COLOR_GREY," You don't have a Vehicle to respray."); return 1; } if(GetPlayerMoney(playerid) < 1000) { SendClientMessage(playerid, COLOR_GREY," You don't have enough money for vehicle respray."); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_WHITE, "USAGE: /v color [ColorOneID] [ColorTwoID]"); return 1; } new color1; color1 = strval(tmp); if(color1 < 0 && color1 > 255) { SendClientMessage(playerid, COLOR_GREY, " Wrong color id!"); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_WHITE, "USAGE: /v color [ColorOneID] [ColorTwoID]"); return 1; } new color2; color2 = strval(tmp); if(color2 < 0 && color2 > 255) { SendClientMessage(playerid, COLOR_GREY, " Wrong color id!"); return 1; } if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey]) { vehid = PlayerInfo[playerid][pPcarkey]; } else if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey2]) { vehid = PlayerInfo[playerid][pPcarkey2]; } else if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey3]) { vehid = PlayerInfo[playerid][pPcarkey3]; } else { return 1; } if(IsPlayerInVehicle(playerid, vehid)) { new Float:CarHP, Float:OldCarHP; new panels, doors, lights, tires; GetVehicleDamageStatus(vehid, panels, doors, lights, tires); GetVehicleHealth(vehid, CarHP); OldCarHP = CarHP; CarInfo[vehid][cColorOne] = color1; CarInfo[vehid][cColorTwo] = color2; GivePlayerMoney(playerid, -1000); GameTextForPlayer(playerid, "~w~Masina Personala~n~~g~Revopsita cu succes~n~~r~$-100", 5000, 1); ChangeVehicleColor(vehid, color1, color2); SetVehicleToRespawn(vehid); SetVehicleHealth(vehid, OldCarHP); UpdateVehicleDamageStatus(vehid, panels, doors, lights, tires); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); OnCarUpdate(); return 1; } else { SendClientMessage(playerid, COLOR_GREY," You are not in your Personal car!"); return 1; } } else if(strcmp(x_nr,"find1",true) == 0) { if(!IsPlayerConnected(playerid)) { return 1; } new Float:x,Float:y,Float:z; new car = PlayerInfo[playerid][pPcarkey]; if(PlayerInfo[playerid][pPcarkey]==-1) { GameTextForPlayer(playerid, "~w~Nu ai o masina pentru a putea fi localizata", 2500, 3); return 1; } SendClientMessage(playerid,COLOR_WHITE,"Locatia masinii a fost gasita."); GetVehiclePos(car, x, y, z); SetPlayerCheckpoint(playerid, x, y, z, 6); if(IsPlayerInRangeOfPoint(playerid, x, y, z, 6)) { DisablePlayerCheckpoint(playerid); } return 1; } else if(strcmp(x_nr,"find2",true) == 0) { if(!IsPlayerConnected(playerid)) { return 1; } new Float:x,Float:y,Float:z; new car = PlayerInfo[playerid][pPcarkey2]; if(PlayerInfo[playerid][pPcarkey2]==-1) { GameTextForPlayer(playerid, "~w~Nu ai o masina pentru a putea fi localizata", 2500, 3); return 1; } SendClientMessage(playerid,COLOR_WHITE,"Locatia masinii a fost gasita."); GetVehiclePos(car, x, y, z); SetPlayerCheckpoint(playerid, x, y, z, 6); if(IsPlayerInRangeOfPoint(playerid, x, y, z, 6)) { DisablePlayerCheckpoint(playerid); } return 1; } else if(strcmp(x_nr,"find3",true) == 0) { if(!IsPlayerConnected(playerid)) { return 1; } new Float:x,Float:y,Float:z; new car = PlayerInfo[playerid][pPcarkey3]; if(PlayerInfo[playerid][pPcarkey3]==-1) { GameTextForPlayer(playerid, "~w~Nu ai o masina pentru a putea fi localizata", 2500, 3); return 1; } SendClientMessage(playerid,COLOR_WHITE,"Locatia masinii a fost gasita."); GetVehiclePos(car, x, y, z); SetPlayerCheckpoint(playerid, x, y, z, 6); if(IsPlayerInRangeOfPoint(playerid, x, y, z, 6)) { DisablePlayerCheckpoint(playerid); } return 1; } else if(strcmp(x_nr,"tow1",true) == 0) { if(IsPlayerConnected(playerid)) { new Float:CarHP, Float:OldCarHP; new panels,doors,lights,tires; new car = PlayerInfo[playerid][pPcarkey]; GetPlayerName(playerid, playername, sizeof(playername)); if (car != -1 && strcmp(playername, CarInfo[PlayerInfo[playerid][pPcarkey]][cOwner], true) == 0) { GetVehicleDamageStatus(car,panels,doors,lights,tires); GetVehicleHealth(car, CarHP); OldCarHP = CarHP; GameTextForPlayer(playerid, "~w~Masina personala~n~~g~Tractata cu succes~n~~r~$-1.500", 5000, 1); GivePlayerMoney(playerid,-1500); SetVehicleToRespawn(car); SetVehicleHealth(car, OldCarHP); UpdateVehicleDamageStatus(car, panels, doors, lights, tires); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); } else { GameTextForPlayer(playerid, "~w~Nu detii o masina personala.", 5000, 1); } } } else if(strcmp(x_nr,"tow2",true) == 0) { if(IsPlayerConnected(playerid)) { new Float:CarHP, Float:OldCarHP; new panels,doors,lights,tires; new car = PlayerInfo[playerid][pPcarkey2]; GetPlayerName(playerid, playername, sizeof(playername)); if (car != -1 && strcmp(playername, CarInfo[PlayerInfo[playerid][pPcarkey2]][cOwner], true) == 0) { GetVehicleDamageStatus(car,panels,doors,lights,tires); GetVehicleHealth(car, CarHP); OldCarHP = CarHP; GameTextForPlayer(playerid, "~w~Masina personala~n~~g~Tractata cu succes~n~~r~$-1.500", 5000, 1); GivePlayerMoney(playerid,-1500); SetVehicleToRespawn(car); SetVehicleHealth(car, OldCarHP); UpdateVehicleDamageStatus(car, panels, doors, lights, tires); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); } else { GameTextForPlayer(playerid, "~w~Nu detii o masina personala.", 5000, 1); } } } else if(strcmp(x_nr,"tow3",true) == 0) { if(IsPlayerConnected(playerid)) { new Float:CarHP, Float:OldCarHP; new panels,doors,lights,tires; new car = PlayerInfo[playerid][pPcarkey3]; GetPlayerName(playerid, playername, sizeof(playername)); if (car != -1 && strcmp(playername, CarInfo[PlayerInfo[playerid][pPcarkey3]][cOwner], true) == 0) { GetVehicleDamageStatus(car,panels,doors,lights,tires); GetVehicleHealth(car, CarHP); OldCarHP = CarHP; GameTextForPlayer(playerid, "~w~Masina personala~n~~g~Tractata cu succes~n~~r~$-1.500", 5000, 1); GivePlayerMoney(playerid,-1500); SetVehicleToRespawn(car); SetVehicleHealth(car, OldCarHP); UpdateVehicleDamageStatus(car, panels, doors, lights, tires); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); } else { GameTextForPlayer(playerid, "~w~Nu detii o masina personala.", 5000, 1); } } } else if(strcmp(x_nr,"fix1",true) == 0) { if(IsPlayerConnected(playerid)) { new car = PlayerInfo[playerid][pPcarkey]; GetPlayerName(playerid, playername, sizeof(playername)); if (car != -1 && strcmp(playername, CarInfo[PlayerInfo[playerid][pPcarkey]][cOwner], true) == 0) { GameTextForPlayer(playerid, "~w~Masina personala~n~~g~Reparata cu succes~n~~r~$-2.500", 5000, 1); GivePlayerMoney(playerid,-2500); SetVehicleToRespawn(car); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); } else { GameTextForPlayer(playerid, "~w~Nu detii o masina personala.", 5000, 1); } } } else if(strcmp(x_nr,"fix2",true) == 0) { if(IsPlayerConnected(playerid)) { new car = PlayerInfo[playerid][pPcarkey2]; GetPlayerName(playerid, playername, sizeof(playername)); if (car != -1 && strcmp(playername, CarInfo[PlayerInfo[playerid][pPcarkey2]][cOwner], true) == 0) { GameTextForPlayer(playerid, "~w~Masina personala~n~~g~Reparata cu succes~n~~r~$-2.500", 5000, 1); GivePlayerMoney(playerid,-2500); SetVehicleToRespawn(car); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); } else { GameTextForPlayer(playerid, "~w~Nu detii o masina personala.", 5000, 1); } } } else if(strcmp(x_nr,"fix3",true) == 0) { if(IsPlayerConnected(playerid)) { new car = PlayerInfo[playerid][pPcarkey3]; GetPlayerName(playerid, playername, sizeof(playername)); if (car != -1 && strcmp(playername, CarInfo[PlayerInfo[playerid][pPcarkey3]][cOwner], true) == 0) { GameTextForPlayer(playerid, "~w~Masina personala~n~~g~Reparata cu succes~n~~r~$-2.500", 5000, 1); GivePlayerMoney(playerid,-2500); SetVehicleToRespawn(car); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); } else { GameTextForPlayer(playerid, "~w~Nu detii o masina personala.", 5000, 1); } } } else if(strcmp(x_nr,"model",true) == 0) { new Float:x,Float:y,Float:z; new carid; new Float:a; new Float:CarHP, Float:OldCarHP; new panels,doors,lights,tires; carid = GetPlayerVehicleID(playerid); GetVehiclePos(carid, x, y, z); GetVehicleZAngle(carid, a); if(IsPlayerInVehicle(playerid,carid)) { if(PlayerInfo[playerid][pPcarkey] == -1 || PlayerInfo[playerid][pPcarkey2] == -1 || PlayerInfo[playerid][pPcarkey3] == -1) { SCM(playerid, COLOR_GREY, "Trebuie sa ai 3 masini personale pentru acces la /v model!"); return 1; } if(GetPlayerMoney(playerid) < 5000) { SendClientMessage(playerid, COLOR_GREY,"You don't have enough money to change Car's Model."); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SCM(playerid, COLOR_GREY, "USAGE: /v model [idmodel]"); return 1; } new model; model = strval(tmp); if(model < 400 || model > 611) { SCM(playerid, COLOR_GREY, "* Id-ul modelului trebuie sa fie cuprins intre 400 si 611!"); return 1; } else { if(IsInvalidVehicleId(model) == 0) { SendClientMessage(playerid, COLOR_GREY, "Invalid vehicle model !"); return 1; } //new tittle[128]; //new carkey = PlayerInfo[playerid][pPcarkey]; //format(tittle,128,"%s", CarInfo[carkey][cModel]); //else //{ CarInfo[carid][cModel] = model; CarInfo[carid][cLocationx] = x; CarInfo[carid][cLocationy] = y; CarInfo[carid][cLocationz] = z; CarInfo[carid][cAngle] = a; //format(string, sizeof(string), "~n~ You changed Car's Model~n~"); GetVehicleDamageStatus(carid,panels,doors,lights,tires); GetVehicleHealth(carid, CarHP); OldCarHP = CarHP; OnCarUpdate(); DestroyVehicle(carid); CreateVehicle(CarInfo[carid][cModel],CarInfo[carid][cLocationx],CarInfo[carid][cLocationy],CarInfo[carid][cLocationz]+1.0,CarInfo[carid][cAngle],CarInfo[carid][cColorOne],CarInfo[carid][cColorTwo],60000); LoadComponents(carid); GivePlayerMoney(playerid, -5000); SendClientMessage(playerid, COLOR_BLUE, "* Schimbarea modelului te-a costat $5.000!"); //format(string, sizeof(string), "~n~ You changed Car's Model~n~"); SetVehicleHealth(carid, OldCarHP); UpdateVehicleDamageStatus(carid, panels, doors, lights, tires); format(CarInfo[carid][cDescription], 32, "%s",vehName[model-400]); return 1; } /*else { SCM(playerid, COLOR_GREY, "* Trebuie sa fi in masina pentru a utiliza comanda!"); return 1; }*/ } return 1; } else { SendClientMessage(playerid, COLOR_WHITE, "____________[Personal Vehicle Help]____________"); SendClientMessage(playerid, COLOR_WHITE, "** {1AFF00}(/v)ehicle {09DFF7}[name]"); SendClientMessage(playerid, COLOR_WHITE, "**park, color, tow(1-3), fix(1-3), findcar(1-3), model, create"); return 1; } } return 1; }
Si , OnDialogResponse :public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { new sendername[MAX_PLAYER_NAME]; new string[128]; new vehid = GetPlayerVehicleID(playerid); if(dialogid==DIALOGIDSETOWNER) { if(response) { new giveplayerid; new idcar = GetPlayerVehicleID(playerid); new namee[MAX_PLAYER_NAME]; GetPlayerName(playerid,namee,13); if(IsPlayerInVehicle(playerid,idcar)) { if(IsAnOwnableCar(idcar)) { if(strlen(inputtext)) { giveplayerid = ReturnUser(inputtext); if(PlayerInfo[giveplayerid][pPcarkey] == -1) { } else if(PlayerInfo[giveplayerid][pPcarkey2] == -1) { } else if(PlayerInfo[giveplayerid][pPcarkey3] == -1) { } else { SendClientMessage(playerid, COLOR_GREY, "* That player already have 3 Personal Cars!"); return 1; } if(CarInfo[idcar][cOwned]==1) { SendClientMessage(playerid, COLOR_GREY, "* Someone already owns this Personal Car!"); return 1; } if(PlayerInfo[giveplayerid][pPcarkey] == -1) { PlayerInfo[giveplayerid][pPcarkey] = idcar; } else if(PlayerInfo[giveplayerid][pPcarkey2] == -1) { PlayerInfo[giveplayerid][pPcarkey2] = idcar; } else if(PlayerInfo[giveplayerid][pPcarkey3] == -1) { PlayerInfo[giveplayerid][pPcarkey3] = idcar; } else { return 1; } CarInfo[idcar][cOwned] = 1; GetPlayerName(giveplayerid, sendername, sizeof(sendername)); strmid(CarInfo[idcar][cOwner], sendername, 0, strlen(sendername), 999); OnCarUpdate(), SavePlayerData(giveplayerid); format(TextCar, sizeof(TextCar), "{0099FF}LS-666-CVL", CarInfo[idcar][cOwner]); TextUpCar[idcar] = Create3DTextLabel(TextCar, 0x33AAFFFF , 0.0, 0.0, 0.0, 25, 0, 1); Attach3DTextLabelToVehicle(TextUpCar[idcar], idcar, 0.0, 0.0, 0.1); format(string,128, " Personal Car set to %s", sendername); SendClientMessage(playerid, COLOR_BLUE, string); } } else SendClientMessage(playerid, COLOR_GREY, "* ERROR. That car is not an Ownable Car!"); } else SendClientMessage(playerid, COLOR_GREY, "* You must be in a ownable vehicle to set a Personal Car!"); } else return 1; }
-
Posteaza liniile de la OnGameModeInit / OnFilterScriptInit unde creeaza masinile.
Nu este nimic legat de masini personale la OnGamemodeInit . Daca te ajuta , sistemul este luat din gamemode-ul GameLife !
-
arata-mi ce ai facut tu ... nu de unde lai luat
else if(CP[playerid]==80)//DMV CK { DisablePlayerCheckpoint(playerid); } //-----------------[DMV-CPS]----------------------------------------------------- else if(CP[playerid] == 99) { DisablePlayerCheckpoint(playerid); CP[playerid] = 100; } else if(CP[playerid] == 100) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,1149.3123,-1712.3945,13.3663,5.0); CP[playerid] = 101; } else if(CP[playerid] == 101) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,1152.1296,-1647.6825,13.3586,5.0); CP[playerid] = 102; } else if(CP[playerid] == 102) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,1143.6036,-1569.6876,12.8511,5.0); CP[playerid] = 103; } else if(CP[playerid] == 103) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,1061.5269,-1569.8389,12.9559,5.0); CP[playerid] = 104; } else if(CP[playerid] == 104) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,1008.8161,-1569.9691,12.9641,5.0); CP[playerid] = 105; } else if(CP[playerid] == 105) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,960.9140,-1570.0966,12.9772,5.0); CP[playerid] = 106; } else if(CP[playerid] == 106) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,926.1542,-1569.8929,12.9447,5.0); CP[playerid] = 107; } else if(CP[playerid] == 107) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,915.2628,-1584.5763,12.9600,5.0); CP[playerid] = 108; } else if(CP[playerid] == 108) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,914.2856,-1630.3322,12.9612,5.0); CP[playerid] = 109; } else if(CP[playerid] == 109) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,914.3433,-1670.4269,12.9681,5.0); CP[playerid] = 110; } else if(CP[playerid] == 110) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,933.6616,-1771.6304,13.1216,5.0); CP[playerid] = 111; } else if(CP[playerid] == 111) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,1037.3101,-1792.0226,13.2581,5.0); CP[playerid] = 112; } else if(CP[playerid] == 112) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid,1119.3994,-1715.5334,13.0519,5.0); CP[playerid] = 113; } else if(CP[playerid] == 113) { new currentveh; currentveh = GetPlayerVehicleID(playerid); if(IsPlayerInAnyVehicle(playerid)) { SetVehicleToRespawn(currentveh); } GetPlayerName(playerid, name, sizeof(name)); format(string, sizeof(string), "** The Instructor looks proud at %s and hands him a Driver License **", name); ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); DisablePlayerCheckpoint(playerid); PlayerInfo[playerid][pCarLic] = 1; TakingLesson[playerid] = 0; SendClientMessage(playerid,COLOR_LIGHTBLUE,"[DMV]: Felicitari,ai trecut testul !"); CP[playerid] = 0; KillTimer(dmvcounttimer); }
if(newcar == DMV1 || newcar == DMV2 || newcar == DMV3 || newcar == DMV4 || newcar == DMV5) { if(TakingLesson[playerid] == 1) { KillTimer(dmvtimer1); DMVCountDown(playerid); SendClientMessage(playerid,COLOR_LIGHTBLUE,"[Instructor]:Urmeaza checkpointurile pentru a trece traseul.Ai la dizpozitie 90 de secunde "); SendClientMessage(playerid,COLOR_LIGHTBLUE,"[Instructor]:Condu pe partea dreapta si ai grija la celelalte masini !"); GetPlayerName(playerid, name, sizeof(name)); format(string, sizeof(string), "** The Instructor starts the engine and lefts the car looking at %s **", name); ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); format(string, sizeof(string), "** The Instructor waves to %s and shouts: Good Luck ! **", name); ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); CP[playerid] = 100; SetPlayerCheckpoint(playerid, 1101.8851,-1711.9829,12.9604,5.0); } else { SendClientMessage(playerid,COLOR_GREY,"Acest vehicul este pentru testul de conducere !"); RemovePlayerFromVehicle(playerid); } }
Pe la liniile astea cred ca e buba . Nu cred ca trebuia sa mai dau si forward , new si "tutorialul" instructorului unde spune cum trebuie sa procedezi ... restul merge ok . Porblema e ca primul cp care apare cand intru in masina de examen nu dispare nici cand intru in el , nici dupa ce trece timpul de 90 de secunde pentru a termina examenul .
-
Nick: NoNamed
Problema: Am adaugat sistemul acesta de DMV pe server : http://www.sa-mp.ro/forum/index.php?topic=11569.0 . Totul ok pana iau masina si sa intru in primul CP . M-am dus in el si nu dispare... Am si schimbat cp-urile cum vreau eu , dar tot degeaba... Ma gandesc ca lipseste ceva si-mi scapa mie, dar unde ?
Erori / warnings: Nu am niciun warning / nici o eroare.
Lini/script: http://www.sa-mp.ro/forum/index.php?topic=11569.0
Ai incercat sa rezolvi singur ?: Da, dar in zadar...
-
Nick: NoNamed
Problema: Cand imi fac masina personala cu /v create merge totul ok , cand dau restart , ramane masina personala dar pe langa ea , mai creeaza inca o masina publica , lafel ca cea personala . Ce pot face sa nu o mai creeze ?
Erori / warnings: Nici o eroare / warning.
Lini/script: Spuneti-mi ce linii / scripturi sa postez si le voi posta .
Ai incercat sa rezolvi singur ?: Da , dar nu gasesc ...
-
Frumos . Dar cu sistemul asta poti schimba numarul la toate masinile de pe server sau doar la alea personale ?
10/10
urgent !!!
in Arhivă probleme
Posted
Foloseste acel pawno in care ai adaugat include-ul ! Ca daca tu adaugi intr-un pawno include-ul si folosesti alt pawno la compilare nu rezolvi nimic .