Jump to content

Tutorial creare dealership dini


Daedric-Fox

Recommended Posts

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.

 

 

Edited by DaEdRiC-FoX

**********************************

Servicii Scripting de calitate:

*********************************

Future Project: ExpertGame

*********************************

Link to comment
Share on other sites

Chiar excelent nu ai explicat :) 

Dar nici cel mai bun tutorial nu e,mai mult pare un Copy / Paste pentru ca un tutorial se explica pas cu pas ce face functia X si ce face Y etc.

P.S: Este deja un tutorial in Romania pentru cum sa faci un dealership pe MySQL :) 

Edit: Apreciez efortul

Edited by TheTuNNeFPS
Rahat,am uitat ceva :)

Ofer servicii de web designer/developer(contact me pentru portofoliu etc)

Metode de plata: Paysafecard,Skrill,PayPal,Bitcoin

Ofer si servicii de Penetration Testing.

Vand si VPN-uri. 5 euro pe luna

Skype: live:mrtunne.tkcode

Discord: https://mrtunne.info/discord

Link to comment
Share on other sites

stiu ca este dar am precizat, ca este singurul pe dini din romania, si imi cer scuze pentru ca nu am explicat pas cu pas, dar este primul peu tutorial,pe viitor voi explica mai bine, si tot ce vezi acolo este facut de mine nu este niciun copy/paste. :) Dar oricum multumesc.

Edited by DaEdRiC-FoX

**********************************

Servicii Scripting de calitate:

*********************************

Future Project: ExpertGame

*********************************

Link to comment
Share on other sites

Dar vezi ca ai uitat ceva :)

Nu ai zis cum se salveaza :) 

  • Upvote 2

Ofer servicii de web designer/developer(contact me pentru portofoliu etc)

Metode de plata: Paysafecard,Skrill,PayPal,Bitcoin

Ofer si servicii de Penetration Testing.

Vand si VPN-uri. 5 euro pe luna

Skype: live:mrtunne.tkcode

Discord: https://mrtunne.info/discord

Link to comment
Share on other sites

Frate...stiu...ca nu am facut totul perfect, dar sunt incepator...si nu cred ca alti scripteri ar fi facut ce am facut eu din prima...adica mai e de munca...dar eu zic ca avand in vedere ca am facut singur deoarece nimeni nu m-a ajutat m-am descurcat...

**********************************

Servicii Scripting de calitate:

*********************************

Future Project: ExpertGame

*********************************

Link to comment
Share on other sites

foloseste un public LoadCars si SaveCars unde salevei masinile, cu tot cu owner, id, culoare,posx,y,z, si pune la on player login, LoadCars();

Respect acestei comunitati, dar mai presus respect membrilor ei !

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • 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.