Peršokti į turinį
evaldas149

Masinos registracija

Recommended Posts

Sveiki, šioje pamokoje Jums parodysiu kaip pasidaryti mašinos registraciją.

Kaip tai veiks?: Įvažiavus į Jūsų susimapintą garažą, ar šiaip kokią vietą, paspaudus mygtuką „SPRINT“, „SHIFT“, „SPACE“ išmes GUI lentelę. Ten turėsite įrašyti mašinos numerius (ne daugiau kaip 8 simbolių). Tuomet mašina atsiras Jūsų norimose koordinatėse.

PRADEDAME

Išsaugojame koordinates, ten kur reikės spausti „SPRINT“. Aš kaip pavyzdį naudosiu šias koordinates -2050.2271,146.4430,29.1505

ŠIOJE VIETOJE:

Atsidarome savo gamemod'ą ir susirandame callback'ą: OnPlayerKeyStateChange. Po juo rašome šį script'ą:

Kodas:

if( newkeys == KEY_SPRINT ) // Patikrina ar žmogus nuspaudė mygtuką.
{
if( IsPlayerInRangeOfPoint( playerid, 3.0, -2050.2271,146.4430,29.1505 ) ) // Patikrina ar žmogus ne toliau kaip 3.0.
{
      if(!IsPlayerInAnyVehicle(playerid)) // Patikrina ar žmogus automobilyje
       {
       SendClientMessage(playerid, COLOR_WHITE,"Regitra: Jūs neesate jokiame automobilyje.");
       return 0;
     }

       ShowPlayerDialog(playerid,220,DIALOG_STYLE_INPUT,"Automobilio registraciją","Įrašykite norimus šio automobilio numerius.\nPo šio automobilio registracijos, jis atsiras šalia garažo.\nPo automobilio registracijos nuo šio automobilio dings jo apdaila","Tęsti","Atšaukti");
       return 1;
       }
     }

Vėl naudodami CTRL+F susirandame callback'ą OnPlayerDialogResponse, arba tiesiog OnDialogResponse. Po juo rašome šį script'ą:

Kodas:

if(dialogid == 220)
  {
  if(response)
  {

  if(GetPlayerMoneyA(playerid) < 2000) // Vietoj 2000 galite įrašyti norimą registracijos kainą.
  {
  SendClientMessage(playerid, COLOR_WHITE, "Automobilio registraciją kainuoja 2000 litų. Jūs tiek neturite.");
  return 1;
  }

  GivePlayerMoneyA(playerid,-2000); // Nuima 2000 litų.
  new vehicleid = playerDB[playerid][rid][1]; 
  SetVehicleNumberPlate(vehicleid,inputtext);  // Uždeda automobiliui numerį.
  RemovePlayerFromVehicle(playerid); // Išmeta žaidėja iš automobilio.
  SetVehicleToRespawn(vehicleid); // Nukelia automobilį į respawn vietą.
  vehicleDB[vehicleid][parduodama]=true; // Padaro, kad mašina neparduodama.
  SetVehiclePos(vehicleid,-2435.0725,105.7316,34.7970); // Kur nukeliauja mašina po registracijos (aš pasirinkau šalia garažo).
  }
     return 1;
  }

Automobilio registracijos scriptas baigtas. Dabar reikia sukurti 3D text label, kad žaidėjai žinotų kur užsiregistruoti mašiną.

Aš naudoju tokį:

Kodas:

Create3DTextLabel("Numerių registracija.\nNorėdami registruoti spauskite SHIFT", COLOR_LIGHTBLUE, ,-2050.2271,146.4430,29.1505, 40, 0, 0);

Pamoka kurta ne mano!!!

Created by alchobako

Tam idejau kad naujokams ar kitiems nereiktu ieskoti!

+ R3P jeij negaila

Dalintis šį pranešimą


Nuoroda iki šio pranešimo
Dalintis per kitą puslapį



Svečias
Ši tema yra užrakinta.

  • Narių peržiūri šį forumą:   0 nariai

    Nėra registruotų narių peržiūrinčių šį forumą.


  • SuperGames programele
  • SuperGames programele


×