Jump to content

Daedric-Fox

V.I.P
  • Posts

    959
  • Joined

  • Last visited

  • Days Won

    27

Everything posted by Daedric-Fox

  1. Bun, deci, vazand ca la momentul actual nu s-a facut niciun tutorial in Romania, prin care sa ni se explice pas cu pas..cum sa facem un dealership,am gasit niste filescript-uri..dar nu erau bune, si decat sa le fac functionale pe acelea, m-am decis sa fac unul de la 0. Bun sa incepem: Pasul 1: Intai creem la inceputul scriptului un enum, unde vom pune dialogurile cretea( e mai bn sa facem cu enum deoarece daca facem cu #define...putem incurca id-urile si... e mai sigur asa.) enum { DIALOG_DEALERSHIP, DIALOG_Ieftine, DIALOG_Medii, DIALOG_Scumpe }; Pasul 2: Creeam comanda /buycar: if(strcmp(cmd, "/buycar", true) == 0) { if(IsPlayerConnected(playerid)) { if(PlayerToPoint(50.0,playerid, // coordonatele locatiei)) { SendClientMessage(playerid, -1, "Pentru a cumpara un vehicul personal, folositi /buycar"); ShowPlayerDialog(playerid, DIALOG_DEALERSHIP, DIALOG_STYLE_LIST, "Masini:", "Ieftine\nMedii\nScumpe", "Select", "Cancel"); DisablePlayerCheckpoint(playerid); return 1; } } }Acel PlayerToPoint verifica daca playerul respectiv este la locatia pusa de noi. 50.0 este aria, adica cat de departe fata de acele coordonate poate actiona comanda. Pasul 3: Vom crea inca un dialog cu masinile pentru fiecare categorie in parte: ctrl+f si cautam linia "OnDialogResponse", odata ajunsi la aceasta linie dedesubt punem: if(dialogid == DIALOG_DEALERSHIP) { if(response) { if(listitem==0) { ShowPlayerDialog(playerid, DIALOG_Ieftine, DIALOG_STYLE_TABLIST, "Masini ieftine:", "Faggio\t200k\nPerennial\t500k\nBravura\t1,4kk\nIntruder\t1,6kk\nSunrise\t1,7kk\nTampa\t1,9kk\nQuad\t2kk", "Select", "Cancel"); } if(listitem == 1) { ShowPlayerDialog(playerid, DIALOG_Medii, DIALOG_STYLE_TABLIST, "Masini medii:", "Vincent\t2,2kk\nClover\t2,5kk\nPrimo\t2,6kk\nHustler\t3kk\nWindsor\t3,4kk\nBlista Compact\t3,5kk\nLandStakler\t3,6kk", "Select", "Cancel"); } if(listitem == 2) { ShowPlayerDialog(playerid, DIALOG_Scumpe, DIALOG_STYLE_TABLIST, "Masini scumpe:", "PCJ-600\t10kk\nNRG-500\t15kk\nSultan\t20kk\nSandKing\t21kk\nTurismo\t35kk\nElegy\t30kk\nInfernus\t36kk", "Select", "Cancel"); } } } Bun, prin aceste linii am definit dialogurile noastre, si daca selectam ieftine ne apar primele masini, si tot asa. Acum trebuie sa facem ca atunci cand un player selecteaza o masina sa i-o spawneze si sa-i ia banii.Vom fac asta asa: if(dialogid == DIALOG_Ieftine) { if(response) { if(listitem == 0) { CreateVehicle(462, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -200000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un faggio!"); return 1; } if(listitem == 1) { CreateVehicle(404, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -500000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un Perenial!"); return 1; } if(listitem == 2) { CreateVehicle(401, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -1400000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat o Bravura!"); return 1; } if(listitem == 3) { CreateVehicle(546, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -16000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un Intruder!"); return 1; } if(listitem == 4) { CreateVehicle(550, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -17000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat o Sunrise!"); return 1; } if(listitem == 5) { CreateVehicle(549, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -19000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat o Tampa!"); return 1; } if(listitem == 6) { CreateVehicle(471, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -20000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un Quad!"); return 1; } } } if(dialogid == DIALOG_Medii) { if(response) { if(listitem == 0) { CreateVehicle(540, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -2200000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un Vincent!"); return 1; } if(listitem == 1) { CreateVehicle(542, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -2500000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un Clover!"); return 1; } if(listitem == 2) { CreateVehicle(547, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -2600000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat o Primo!"); return 1; } if(listitem == 3) { CreateVehicle(545, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -3000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un Hustler!"); return 1; } if(listitem == 4) { CreateVehicle(555, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -3400000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat o Windsor!"); return 1; } if(listitem == 5) { CreateVehicle(496, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -3500000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un Blista Compact!"); return 1; } if(listitem == 6) { CreateVehicle(400, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -360000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un LandStalker!"); return 1; } } } if(dialogid == DIALOG_Scumpe) { if(response) { if(listitem == 0) { CreateVehicle(461, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -10000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un PCJ-600!"); return 1; } if(listitem == 1) { CreateVehicle(522, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -15000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un NRG-500!"); return 1; } if(listitem == 2) { CreateVehicle(560, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -20000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat o Sultan!"); return 1; } if(listitem == 3) { CreateVehicle(495, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -210000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un SandKing!"); return 1; } if(listitem == 4) { CreateVehicle(451, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -35000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat o Turismo!"); return 1; } if(listitem == 5) { CreateVehicle(562, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -30000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un Elegy!"); return 1; } if(listitem == 6) { CreateVehicle(411, 925.6184,-998.2622,37.8919, -1, -1, 60); GivePlayerMoney(playerid, -36000000); SendClientMessage(playerid, COLOR_LIGHTBLUE, "Felicitari ai cumparat un Infernus!"); return 1; } } } Bun, acum noi am facut niste variabile, prin care o spawneaza si ii scad banii. Tin sa mentionez ca am preferat sa folosesc GivePlayerMoney, deoarece iti scade toti banii pe rosu si apoi iti baga diferenta, mi se pare mai interesant si iti atrage atentia mai usor. Bun acum sa va explic ce e cu acea lini : "CreateVehicle(411, 925.6184,-998.2622,37.8919, -1, -1, 60);" 411//este modelul masini care vrem sa se spawneze 925.6184,-998.2622,37.8919//acestea sunt coordonatele unde vrem sa se spawneze -1, -1 acestea sunt culorile masinii 60//iar acesta reprezinta la cate secunde sa se respawneze masina. Sper ca am mentionat tot si v-am fost de ajutor, voi mai reveni cu niste edit-uri daca mai modific ceva. Daca v-am fost de ajutor +1.
  2. iti recomad sa scoti junkbuster, deoarece nu este asa bun.Asta este parerea mea
  3. linia trebuie sa fie gen: SetDynamicObjectMaterialText(object, 0,"{FF8040}llllllllllllllllll", 80, "Arial", 80, 1, -16730675, 0, 1);
  4. Problema intalnita (descriere):Bun,spuneti-mi si mie va rog...am facut cum am mai zis de cateva ori un dealership pe dialog, totul bine pana acum, dar cum fac ca atunci cand un player selecteaza o masina sa o spawneze si sa fie doar a lui? Ero(area / rile) / warning-(ul / urile): Liniile de cod / sursa / script-ul(obligatoriu): Imagini / Video (optional): Ati incercat sa rezolvati singur?:Ma gandesc ca ar fi o variabila ceva gen setPlayer car...sau nu stiu ...zic si eu nu stiu...
  5. Problema intalnita (descrie):Am facut un dealership cu dialog, nu este terminat, dar cand selectez o categorie, merge totul perfect doar ca mi se seteaza un checkpoint, cum rezolv? Ero(area / rile) / warning-(ul / urile): Liniile de cod / sursa / script-ul(obligatoriu): Imagini / Video (optional): Ati incercat sa rezolvati singur?:da...si nu-mi pot da seama de la ce este.., am zis ca poate sunt definite doua dialoguti la fel, asa ca am pus cu enum {};
  6. bun am inteles dialog-ul, dar cum fac ca atunci cand un player selecteaza o masina sa o spawneze unde pun eu coordonatele? si sa-i I-a suma de bani care o pun la fiecare masina?
  7. Descriere tutorial:Vreau sa fac un dialog, cu 3 categorii: Ieftine Medii si Scumpe...iar cand selecteaza scumpe, sa I se deschida alt dialog cu niste masini pe care le bag eu, si la celelate doua la fel, stiu ca era ceva cu case1 case 2 etc dar nu stiu exact cum se face...+1 pentru cei care ma ajuta..
  8. Descriere tutorial: Cum pot face un textdraw complex ca acesta:
  9. Descriere tutorial: as dori un totrial cum sa fac un textdraw care arata checkpointurile de la dmv, tin sa mentionez ca am gasit alte tutorial pe forum, dar la mine sunt cu case adica asa: DisablePlayerCheckpoint(playerid); switch(DMVCheckpoint[playerid]) { case 1: SetPlayerCheckpoint(playerid, 919.6411, -1487.5270, 13.4656, 5.0); case 2: SetPlayerCheckpoint(playerid, 919.8101, -1354.0464, 13.2831, 5.0); case 3: SetPlayerCheckpoint(playerid, 919.8101, -1354.0464, 13.2831, 5.0); case 4: SetPlayerCheckpoint(playerid, 881.8291, -1321.7100, 13.6602, 5.0); case 5: SetPlayerCheckpoint(playerid, 732.3776, -1316.2760, 13.4840, 5.0); case 6: SetPlayerCheckpoint(playerid, 636.0119, -1294.8287, 14.9896, 5.0); case 7: SetPlayerCheckpoint(playerid, 590.5417, -1222.1847, 17.9030, 5.0); case 8: SetPlayerCheckpoint(playerid, 187.7140, -1497.6492, 12.6371, 5.0); case 9: SetPlayerCheckpoint(playerid, 195.1679, -1525.3085, 13.3437, 5.0); case 10: SetPlayerCheckpoint(playerid, 304.0753, -1484.3490, 32.9891, 5.0); case 11: SetPlayerCheckpoint(playerid, 396.5493, -1423.1467, 33.8726, 5.0); case 12: SetPlayerCheckpoint(playerid, 452.5795, -1458.2029, 28.8690, 5.0); case 13: SetPlayerCheckpoint(playerid, 625.2048, -1419.8362, 13.6259, 5.0); case 14: SetPlayerCheckpoint(playerid, 650.4113, -1588.8108, 15.4165, 5.0); case 15: SetPlayerCheckpoint(playerid, 849.6292, -1604.8254, 13.4752, 5.0); case 16: SetPlayerCheckpoint(playerid, 915.2281, -1588.2057, 13.4751, 5.0); case 17: SetPlayerCheckpoint(playerid, 942.9560, -1756.2139, 13.6392, 5.0); } Va rog frumos...urgent....
  10. @TheTuNNeFPS ...cum il pot face filescript?
  11. Descriere tutorial: Bun..deci la dealership cu dialog nu m-am lipti, dar poate sa faca cineva un tutorial cu un filescript giftbox?
  12. Descriere tutorial: As vrea un tutorial cum sa creez un dealership cu dialog ca la bugged pe dialog, sa fie dini nu MySQL, cred ca ar prinde ine multora un astfel de tutorial.
  13. cine imi poate da include-ul de la ycmd? va rog are +1
  14. ok, multumesc o sa incerc. Mersi mult merge ai +1 de la mine.
  15. nu este o linie anume...orice linie modific, orice comanda....imi da eraorile alea....
  16. am eu windows 10 si il recomand , este bun si la gaming si pentru bussines, se misca bine, si este optimizat foarte bine, eu sunt informatician si credeti-ma este unul chiar bun fata de celelalte, iar faza cu Cortana este farte inteligenta, a fost foarte bine gandit.
  17. Problema intalnita (descriere):am toate comenzile din gamemode cu sscanf, si vreau sa le fac cu ycmd/zcmd Ero(area / rile) / warning-(ul / urile):imi da urmatoarele erori cand schimb: if(strcmp(cmd, "rb", true) == 0) cu YCMD:rb(playerid, params[]), imi da erorile astea: C:\Users\Totolino\Desktop\By DaEdRiC-FoX\gamemodes\Dovezone.pwn(29030) : error 029: invalid expression, assumed zero C:\Users\Totolino\Desktop\By DaEdRiC-FoX\gamemodes\Dovezone.pwn(29030) : error 017: undefined symbol "cmd_rb" C:\Users\Totolino\Desktop\By DaEdRiC-FoX\gamemodes\Dovezone.pwn(29030) : error 029: invalid expression, assumed zero C:\Users\Totolino\Desktop\By DaEdRiC-FoX\gamemodes\Dovezone.pwn(29030) : fatal error 107: too many error messages on one line Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 4 Errors. Liniile de cod / sursa / script-ul(obligatoriu):http://pastebin.com/18qTLmfY Imagini / Video (optional): Ati incercat sa rezolvati singur?:Da am incercat...dar orice comanda modific schimband aia da aceeasi eraore... P.S sper ca de data aceasta am respectat modelul....
  18. Bun deci, am inceput sa scriptez, pe zi ce trece vreau sa invat din ce in ce mai mult, acum de exemplu am o idee in cap, am tot auzit ca zcmd sau ycmd sunt cele mai rapide procesoare de comenzi, mai elimina lagul bla bla, eu comenzile din gm le am de genul: if(strcmp(cmd, "/gotols", true) == 0) { if(IsPlayerConnected(playerid)) { if (PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] >= 2) { if (GetPlayerState(playerid) == 2) { new tmpcar = GetPlayerVehicleID(playerid); SetVehiclePos(tmpcar, 1529.6,-1691.2,13.3); TelePos[playerid][0] = 0.0;TelePos[playerid][1] = 0.0; } else { SetPlayerPos(playerid, 1529.6,-1691.2,13.3); } SendClientMessage(playerid, COLOR_GREY, "You have been teleported!"); SetPlayerInterior(playerid,0); PlayerInfo[playerid][pInt] = 0; } adica cu strcmp, ce ar trebuie sa schimb ca sa le transform in ycmd? prima parte adica in loc de: if(strcmp(cmd, "/gotols", true) == 0) sa pun: YCMD:gotols(playerid, params[]);? +1 celui care ma ajuta.
  19. Sunt incepator in partea de scripting...deci, cine ar putea sa-mi ofere un tutorial?
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.