Üzenetek megjelenítése

Ez a szekció lehetővé teszi a felhasználó által írt összes hozzászólás megtekintését. Vedd figyelembe, hogy csak azokba a fórumokba írt hozzászólásokat látod, amelyekhez hozzáférésed van.


Témák - FastFurious

Oldalak: [1] 2 3 ... 11
1
Segítségkérés / Az autó javitsa magát!
« Dátum: 2012. május 24. - 13:11:22 »
Sziasztok!
Lenne egy kérésem van egy a script és ugy valaki meg tudja csinalni hogy mikor csatlakozik egy ember a szerverhez akkor az autot automatikusan javitsa és ha egy játékos beirja /autounrep akkor csak neki ne javitsa  automatikusan a kocsit és másnak igen!
és ha /autorep  et ir be akkor a játékosnak a kocsija automatikusan javuljon...
 
#include a_samp
#include <zcmd>
new vehrept;
public OnFilterScriptInit() return KillTimer(vehrept);
public Arep();
public Arep()
{
for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
{
  if(IsPlayerInAnyVehicle(playerid))
  {
   new Float: VHealth;
   GetVehicleHealth(GetPlayerVehicleID(playerid), VHealth);
     if(VHealth != 1000)
         {
    RepairVehicle(GetPlayerVehicleID(playerid));
   }
  }
}
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
KillTimer(vehrept);
return 1;
}
CMD:autorep(playerid) {
vehrept = SetTimer(\"Arep\", 300, true);
SendClientMessageToAll(COLOR_LIGHTBLUE, \"Autód automatikus javitása bekapcsolva\");
return 1;
}
CMD:autounrep(playerid) {
KillTimer(vehrept);
SendClientMessageToAll(COLOR_RED, \"Az autód többet nem fog automatikusan megjavulni!\");
return 1;
}

2
Segítségkérés / Reakalltolok és nem lessz semmi
« Dátum: 2012. május 24. - 06:30:20 »
hali all!
Lenne egy kérdésem ha birom /veh és reakattolok egyre akkor nem lessz semmi mitõl?
Ez egy Script-be van ami 2 tölt be de a modba a /radio megy csak itt a script be nem mennek ezek:
 
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new veh = GetPlayerVehicleID(playerid);
new engine,lights,alarm,doors,bonnet,boot,objective;
if(dialogid == 1)
{
if(!response) return SendClientMessage(playerid, 0xCC0000FF, \"INFO:Megnyomtad a Mégset\");
switch(listitem)
    {
        case 0:
        {
               if(GetPVarInt(playerid, \"Lights\") == 0)
      {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,engine,VEHICLE_PARAMS_ON,alarm,doors,bonnet,boot,objective);
         SetPVarInt(playerid, \"Lights\", 1);
      }
      else if(GetPVarInt(playerid, \"Lights\") == 1)
      {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,engine,VEHICLE_PARAMS_OFF,alarm,doors,bonnet,boot,objective);
         SetPVarInt(playerid, \"Lights\", 0);
      }
   }
   case 1:
   {
      if(GetPVarInt(playerid, \"Bonnet\") == 0)
      {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,engine,lights,alarm,doors,VEHICLE_PARAMS_ON,boot,objective);
         SetPVarInt(playerid, \"Bonnet\", 1);
      }
      else if(GetPVarInt(playerid, \"Bonnet\") == 1)
      {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,engine,lights,alarm,doors,VEHICLE_PARAMS_OFF,boot,objective);
         SetPVarInt(playerid, \"Bonnet\", 0);
      }
   }
   case 2:
   {
      if(GetPVarInt(playerid, \"Boot\") == 0)
          {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,VEHICLE_PARAMS_ON,objective);
         SetPVarInt(playerid, \"Boot\", 1);
      }
      else if(GetPVarInt(playerid, \"Boot\") == 1)
      {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,VEHICLE_PARAMS_OFF,objective);
         SetPVarInt(playerid, \"Boot\", 0);
      }
   }
   case 3:
   {
      if(GetPVarInt(playerid, \"Doors\") == 0)
          {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,engine,lights,alarm,VEHICLE_PARAMS_ON,bonnet,boot,objective);
         SetPVarInt(playerid, \"Doors\", 1);
      }
      else if(GetPVarInt(playerid, \"Doors\") == 1)
      {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,engine,lights,alarm,VEHICLE_PARAMS_OFF,bonnet,boot,objective);
         SetPVarInt(playerid, \"Doors\", 0);
      }
   }
   case 4:
   {
      if(GetPVarInt(playerid, \"Engine\") == 0)
          {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
         SetPVarInt(playerid, \"Engine\", 1);
      }
      else if(GetPVarInt(playerid, \"Engine\") == 1)
      {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
         SetPVarInt(playerid, \"Engine\", 0);
      }
   }
   case 5:
   {
      if(GetPVarInt(playerid, \"Alarm\") == 0)
      {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,engine,lights,VEHICLE_PARAMS_ON,doors,bonnet,boot,objective);
         SetPVarInt(playerid, \"Alarm\", 1);
      }
      else if(GetPVarInt(playerid, \"Alarm\") == 1)
      {
         GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
         SetVehicleParamsEx(veh,engine,lights,VEHICLE_PARAMS_OFF,doors,bonnet,boot,objective);
         SetPVarInt(playerid, \"Alarm\", 0);
      }
   }
   case 6:
   {
      ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, \"Számtábla csere\", \"Ird be mi legyen a rendszámod [A-Z, 0-9] (32 betû max)\", \"Beálit\", \"\");
   }
}
return 1;
}
new car;
car = GetPlayerVehicleID(playerid);
if(dialogid == car_DIALOG) // Menu
{
if(response)
{
            if(listitem == 0) // Wheels
   {
      ShowPlayerDialog(playerid, car_DIALOG+1, DIALOG_STYLE_LIST, \"Kerekek\", \"{FF0000}stílus 1 \\n{057CEA}stílus 2 \\n{33FF33}stílus 3 \\n{CDF917}stílus 4 \\n{33FF33}stílus 5 \\n{0019fc}stílus 6 \\nVissza\", \"Oké\", \"Mégse\");
   }
   if(listitem == 1) // Colors
   {
      ShowPlayerDialog(playerid, car_DIALOG+2, DIALOG_STYLE_LIST, \"Szinek\", \"Fekete \\n{FFFFFF}Fehér \\n{0019fc}Sötétkék \\n{057CEA}Világoskék \\n{33FF33}Zöld \\n{FF0000}Piros \\n{CDF917}Sárga \\n{FF00EA}rózsaszín \\nVissza\", \"Felrak!\", \"Mégse\");
   }
   if(listitem == 2) // Paintjobs
   {
      ShowPlayerDialog(playerid, car_DIALOG+3, DIALOG_STYLE_LIST, \"Festõmunkák\", \"{057CEA}stílus 1 \\n{CDF917}stílus 2 \\n{FF0000}stílus 3 \\nVissza\", \"Felrak!\", \"Mégse\");
            }
   if(listitem == 3) // Nitro
   {
            AddVehicleComponent(car,1010);
            }
   if(listitem == 4) // Hydraulic
   {
            AddVehicleComponent(car,1087);
            }
   if(listitem == 5) // AutoTuning
   {
new idcarro;
idcarro = GetPlayerVehicleID(playerid);
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 562)
{
AddVehicleComponent(idcarro,1046);
AddVehicleComponent(idcarro,1171);
AddVehicleComponent(idcarro,1149);
AddVehicleComponent(idcarro,1035);
AddVehicleComponent(idcarro,1147);
AddVehicleComponent(idcarro,1036);
AddVehicleComponent(idcarro,1040);
ChangeVehiclePaintjob(idcarro, 2);
ChangeVehicleColor(idcarro, 6, 6);
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 560)
{
AddVehicleComponent(idcarro,1028);
AddVehicleComponent(idcarro,1169);
AddVehicleComponent(idcarro,1141);
AddVehicleComponent(idcarro,1032);
AddVehicleComponent(idcarro,1138);
AddVehicleComponent(idcarro,1026);
AddVehicleComponent(idcarro,1027);
ChangeVehiclePaintjob(idcarro, 2);
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 565)
{
AddVehicleComponent(idcarro,1046);
AddVehicleComponent(idcarro,1153);
AddVehicleComponent(idcarro,1150);
AddVehicleComponent(idcarro,1054);
AddVehicleComponent(idcarro,1049);
AddVehicleComponent(idcarro,1047);
AddVehicleComponent(idcarro,1051);
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
ChangeVehiclePaintjob(idcarro, 2);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 559)
{
AddVehicleComponent(idcarro,1065);
AddVehicleComponent(idcarro,1160);
AddVehicleComponent(idcarro,1159);
AddVehicleComponent(idcarro,1067);
AddVehicleComponent(idcarro,1162);
AddVehicleComponent(idcarro,1069);
AddVehicleComponent(idcarro,1071);
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
ChangeVehiclePaintjob(idcarro, 1);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 561)
{
AddVehicleComponent(idcarro,1064);
AddVehicleComponent(idcarro,1155);
AddVehicleComponent(idcarro,1154);
AddVehicleComponent(idcarro,1055);
AddVehicleComponent(idcarro,1158);
AddVehicleComponent(idcarro,1056);
AddVehicleComponent(idcarro,1062);
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
ChangeVehiclePaintjob(idcarro, 2);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 558)
{
AddVehicleComponent(idcarro,1089);
AddVehicleComponent(idcarro,1166);
AddVehicleComponent(idcarro,1168);
AddVehicleComponent(idcarro,1088);
AddVehicleComponent(idcarro,1164);
AddVehicleComponent(idcarro,1090);
AddVehicleComponent(idcarro,1094);
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
ChangeVehiclePaintjob(idcarro, 2);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 575)
{
AddVehicleComponent(idcarro,1044);
AddVehicleComponent(idcarro,1174);
AddVehicleComponent(idcarro,1176);
AddVehicleComponent(idcarro,1042);
AddVehicleComponent(idcarro,1099);
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
ChangeVehiclePaintjob(idcarro, 0);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 534)
{
AddVehicleComponent(idcarro,1126);
    AddVehicleComponent(idcarro,1179);
AddVehicleComponent(idcarro,1180);
AddVehicleComponent(idcarro,1122);
AddVehicleComponent(idcarro,1101);
AddVehicleComponent(idcarro,1125);
AddVehicleComponent(idcarro,1123);
AddVehicleComponent(idcarro,1100);
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
ChangeVehiclePaintjob(idcarro, 2);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 536)
{
AddVehicleComponent(idcarro,1104);
AddVehicleComponent(idcarro,1182);
AddVehicleComponent(idcarro,1184);
AddVehicleComponent(idcarro,1108);
AddVehicleComponent(idcarro,1107);
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
ChangeVehiclePaintjob(idcarro, 1);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 567)
{
AddVehicleComponent(idcarro,1129);
AddVehicleComponent(idcarro,1189);
AddVehicleComponent(idcarro,1187);
AddVehicleComponent(idcarro,1102);
AddVehicleComponent(idcarro,1133);
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
ChangeVehiclePaintjob(idcarro, 2);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 420)
{
AddVehicleComponent(idcarro,1010);
AddVehicleComponent(idcarro,1087);
AddVehicleComponent(idcarro,1081);
AddVehicleComponent(idcarro,1139);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 400)
{
AddVehicleComponent(idcarro,1010);
AddVehicleComponent(idcarro,1087);
AddVehicleComponent(idcarro,1018);
AddVehicleComponent(idcarro,1013);
AddVehicleComponent(idcarro,1081);
AddVehicleComponent(idcarro,1086);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 401)
{
AddVehicleComponent(idcarro,1086);
AddVehicleComponent(idcarro,1139);
AddVehicleComponent(idcarro,1081);
AddVehicleComponent(idcarro,1010);
AddVehicleComponent(idcarro,1087);
AddVehicleComponent(idcarro,1012);
AddVehicleComponent(idcarro,1013);
AddVehicleComponent(idcarro,1042);
AddVehicleComponent(idcarro,1043);
AddVehicleComponent(idcarro,1018);
AddVehicleComponent(idcarro,1006);
AddVehicleComponent(idcarro,1007);
AddVehicleComponent(idcarro,1017);
}
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 576)
{
ChangeVehiclePaintjob(idcarro,2);
AddVehicleComponent(idcarro,1191);
AddVehicleComponent(idcarro,1193);
AddVehicleComponent(idcarro,1010);
AddVehicleComponent(idcarro,1018);
AddVehicleComponent(idcarro,1081);
AddVehicleComponent(idcarro,1087);
AddVehicleComponent(idcarro,1134);
AddVehicleComponent(idcarro,1137);
}
else
{
AddVehicleComponent(idcarro,nitro);
AddVehicleComponent(idcarro,rodawire);
AddVehicleComponent(idcarro,suspensao);
}
            }
}
return 1;
}
if(dialogid == car_DIALOG+1) // Wheels
{
if(response)
{
   if(listitem == 0) // Style 1
   {
   AddVehicleComponent(car,1084);
   }
   if(listitem == 1) // Style 2
   {
   AddVehicleComponent(car,1073);
   }
   if(listitem == 2) // Style 3
   {
   AddVehicleComponent(car,1075);
   }
   if(listitem == 3) // Style 4
   {
   AddVehicleComponent(car,1077);
   }
   if(listitem == 4) // Style 5
   {
   AddVehicleComponent(car,1079);
   }
   if(listitem == 5) // Style 6
   {
   AddVehicleComponent(car,1080);
   }
   if(listitem == 6) // Back
           {
   ShowPlayerDialog(playerid, car_DIALOG, DIALOG_STYLE_LIST, \"Tuning Menü\", \"{057CEA}Kerekek\\n{FF0000}Szinek\\n{33FF33}Festõmunkák\\n{CDF917}Nitro\\n{33CCFF}Hidrólika\\n{FFFFFF}AutoTuning\", \"Választ\", \"Mégse\");
   }
}
return 1;
}
if(dialogid == car_DIALOG+2) // Colors
{
if(response)
{
   if(listitem == 0) // Black
   {
   ChangeVehicleColor(car,0,0);
   }
   if(listitem == 1) // White
   {
   ChangeVehicleColor(car,1,1);
   }
   if(listitem == 2) // Dark Blue
   {
   ChangeVehicleColor(car,425,425);
   }
   if(listitem == 3) // Light Blue
   {
   ChangeVehicleColor(car,2,2);
   }
   if(listitem == 4) // Green
   {
   ChangeVehicleColor(car,16,16);
   }
   if(listitem == 5) // Red
   {
   ChangeVehicleColor(car,3,3);
   }
   if(listitem == 6) // Yellow
   {
   ChangeVehicleColor(car,6,6);
   }
   if(listitem == 7) // Pink
   {
   ChangeVehicleColor(car,146,146);
   }
   if(listitem == 8) // Back
   {
   ShowPlayerDialog(playerid, car_DIALOG, DIALOG_STYLE_LIST, \"Tuning Menü\", \"{057CEA}Kerekek\\n{FF0000}Szinek\\n{33FF33}Festõmunkák\\n{CDF917}Nitro\\n{33CCFF}Hidrólika\\n{FFFFFF}AutoTuning\", \"Választ\", \"Mégse\");
   }
}
return 1;
}
if(dialogid == car_DIALOG+3) // Paintjobs
{
if(response)
{
   if(listitem == 0) // Style 1
   {
   ChangeVehiclePaintjob(car,0);
   }
   if(listitem == 1) // Style 2
   {
   ChangeVehiclePaintjob(car,1);
   }
   if(listitem == 2) // Style 3
   {
   ChangeVehiclePaintjob(car,2);
   }
   if(listitem == 4) // Back
   {
   ShowPlayerDialog(playerid, car_DIALOG, DIALOG_STYLE_LIST, \"Tuning Menü\", \"{057CEA}Kerekek\\n{FF0000}Szinek\\n{33FF33}Festõmunkák\\n{CDF917}Nitro\\n{33CCFF}Hidrólika\\n{FFFFFF}AutoTuning\", \"Választ\", \"Mégse\");
   }
}
}
if(dialogid == dialog_1)
{
SetPlayerSkin(playerid,strval(inputtext));
SendClientMessage(playerid,piros,\"A Skined Skieresen lecserélted!\");
return 1;
}
if(dialogid == 2)
{
    if(response)
    {
   new Float:vX, Float:vY, Float:vZ, Float:vA;
   SetVehicleNumberPlate(veh, inputtext);
   GetVehiclePos(veh,vX,vY,vZ);
            GetVehicleZAngle(veh,vA);
           SetVehicleToRespawn(veh);
            SetVehiclePos(veh,vX,vY,vZ);
             PutPlayerInVehicle(playerid,veh,0);
            SetVehicleZAngle(veh,vA);
   return 1;
}
if(dialogid == bugdialog && response){
    if(!inputtext[0]) return ShowPlayerDialog(playerid,bugdialog,DIALOG_STYLE_INPUT,\"BUG/Hiba jelentése\", \"Nem írtál be szöveget!\",\"Elküld\",\"Mégse\");
new string[128];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof name);
        new File:pos=fopen(\"bug.txt\", io_append);
//====Dátum=====
        new Year, Month, Day;
getdate(Year, Month, Day);
//====Idõ=====
new Hour, Minute, Second;
gettime(Hour, Minute, Second);
        format(string, 256, \"\\n\\r[Dátum: %02d/%02d/%d][idõ: %02d:%02d:%02d]  %s bejelentése: %s\\n\\r\",Day, Month, Year, Hour, Minute, Second, name, inputtext);
        fwrite(pos, string);
        fclose(pos);
SendClientMessage(playerid,0xFFFF00AA,\"Jelentés elküldve!\");
return 1;
}
return 1;
}
if ( dialogid == Weapons_Dialog )
{
    if ( response )
    {
        ResetPlayerWeapons( playerid );
   switch( listitem )
   {
       case 0: GivePlayerWeapon( playerid, 33, 99999 ),SendClientMessage( playerid, 0xFFBF00FF, \"Hallövõldözés:{FFFFFF} A kiválasztott {FFBF00}Country Rifle{FFFFFF} mint a fegyver!\");
       case 1: GivePlayerWeapon( playerid, 34, 99999 ),SendClientMessage( playerid, 0xFFBF00FF, \"Hallövõldözés:{FFFFFF} A kiválasztott {FFBF00}Sniper{FFFFFF} mint a fegyver!\");
       case 2: GivePlayerWeapon( playerid, 31, 99999 ),SendClientMessage( playerid, 0xFFBF00FF, \"Hallövõldözés:{FFFFFF} A kiválasztott {FFBF00}M4{FFFFFF} mint a fegyver!\");
       case 3: GivePlayerWeapon( playerid, 30, 99999 ),SendClientMessage( playerid, 0xFFBF00FF, \"Hallövõldözés:{FFFFFF} A kiválasztott {FFBF00}AK47{FFFFFF} mint a fegyver!\");
   }
   GetPlayerPos( playerid, OnArrow[ 0 ][ playerid ], OnArrow[ 1 ][ playerid ] ,OnArrow[ 2 ][ playerid ] );
        Shooting[ playerid ] = 1;
        PlayerObjects[playerid] = 20;
        Objects_Hit2[ playerid ] = 0;
        LoadAimObjects( playerid );
    for(new i=0; i<=20; i++)
   {
      new rand_val = random( sizeof( Random_Object_Speed ) );
       MovePlayerObject(playerid, A_Objects[playerid], 790.6284, AimObject[pObjectY][playerid], AimObject[pObjectZ][playerid], Random_Object_Speed[rand_val]);
   }
   GameTextForPlayer( playerid, \"~r~~n~~n~~n~~n~~n~~n~~n~Elso lövés!\", 2000, 3 );
}
 
}
return 0;
}

3
Szkript kérések / csatlakozás x/30
« Dátum: 2012. május 23. - 20:58:51 »
Sziasztok!
Olyan skriptet szeretnék tõletek kérni hogy ha valaki csatlakozik/elhaggya a szervert akkor irja ki hogy hányan vagyunk!
 
onplayerconnect alatti rész..
if(ServerInfo[ConnectMessages] == 1)
{
    new pAKA[256]; pAKA = dini_Get(\"ladmin/config/aka.txt\",tmp3);
if (strlen(pAKA) < 3) format(str,sizeof(str),\"{FF0000}>>> {0000FF}%s {33CCFF}(%d) {CDF917}Csatlakozott a szerverhez! {FF0000}<<<\", PlayerName, playerid);
else if (!strcmp(pAKA,PlayerName,true)) format(str,sizeof(str),\"{FF0000}>>> {0000FF}%s {33CCFF}(%d) {CDF917}Csatlakozott a szerverhez! {FF0000}<<<\", PlayerName, playerid);
else format(str,sizeof(str),\"{FF0000}>>> {0000FF}%s {33CCFF}(%d) {CDF917}Csatlakozott a szerverhez {33CCFF}(Aka: %s) {FF0000}<<<\", PlayerName, playerid, pAKA );
for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && playerid != i)
{
   if(PlayerInfo[Level] > 2) SendClientMessage(i,green,str);
   else {
      format(string,sizeof(string),\"{FF0000}>>> {0000FF}%s {33CCFF}(%d) {CDF917}Csatlakozott a szerverhez! {FF0000}<<<\", PlayerName, playerid);
       SendClientMessage(i,yellow,string);
   }
}
}
//-----------------------------------------------------
    if (dUserINT(PlayerName2(playerid)).(\"banned\") == 1)
    {
        SendClientMessage(playerid, red, \"Ez a név bannolva van a szerverrõl!\");
format(string,sizeof(string),\"%s ID:{CDF917}%d Kirúgva. Indok: {FF0000}A neve bannolva van a szerverrõl!\",PlayerName,playerid);
SendClientMessageToAll(red, string);  print(string);
SaveToFile(\"KickLog\",string);  Kick(playerid);
    }
//-----------------------------------------------------
if(ServerInfo[NameKick] == 1) {
for(new s = 0; s < BadNameCount; s++) {
           if(!strcmp(BadNames,PlayerName,true)) {
      SendClientMessage(playerid,red, \"A neved feketelistán van, ezért kirúgtak!\");
      format(string,sizeof(string),\"%s ID:{0019fc}%d kirúgva. {FF0000}(Indok: Tiltott név)\",PlayerName,playerid);
      SendClientMessageToAll(red, string);  print(string);
      SaveToFile(\"KickLog\",string);  Kick(playerid);
      return 1;
   }
}
}
//-----------------------------------------------------
if(ServerInfo[PartNameKick] == 1) {
for(new s = 0; s < BadPartNameCount; s++) {
   new pos;
   while((pos = strfind(PlayerName,BadPartNames,true)) != -1) for(new i = pos, j = pos + strlen(BadPartNames); i < j; i++)
   {
      SendClientMessage(playerid,red, \"A neved nincs engedélyezve a szerveren, ezért kirúgtak\");
      format(string,sizeof(string),\"%s ID:{0019fc}%d kirúgva. {FF0000}(Indok: Tíltott név)\",PlayerName,playerid);
      SendClientMessageToAll(red, string);  print(string);
      SaveToFile(\"KickLog\",string);  Kick(playerid);
      return 1;
   }
}
}
//-----------------------------------------------------
if(ServerInfo[Locked] == 1) {
PlayerInfo[playerid][AllowedIn] = false;
SendClientMessage(playerid,red,\"A szerver zárva!  Van 20 másodperced hogy beírd a jelszót, különben kirúgnak!\");
SendClientMessage(playerid,red,\"Használd: /password [jelszó]\");
LockKickTimer[playerid] = SetTimerEx(\"AutoKick\", 20000, 0, \"i\", playerid);
}
//-----------------------------------------------------
if(strlen(dini_Get(\"ladmin/config/aka.txt\", tmp3)) == 0) dini_Set(\"ladmin/config/aka.txt\", tmp3, PlayerName);
else
{
    if( strfind( dini_Get(\"ladmin/config/aka.txt\", tmp3), PlayerName, true) == -1 )
{
    format(string,sizeof(string),\"%s,%s\", dini_Get(\"ladmin/config/aka.txt\",tmp3), PlayerName);
    dini_Set(\"ladmin/config/aka.txt\", tmp3, string);
}
}
//-----------------------------------------------------
if(!udb_Exists(PlayerName2(playerid)))
{
    new lstring[256];
format(lstring,256,\"{FF0000}Üdv {0019fc}%s!\\n{CDF917}Ez a név még nincs regisztrálva!\\n\\n{057CEA}Írj be egy jelszót a felhasználó létrehozásához:\",pName(playerid));
ShowPlayerDialog(playerid,REGISZTRALO,DIALOG_STYLE_PASSWORD,\"Regisztráció\",lstring,\"Regisztrál\",\"Kilép\");
}
else
{
    PlayerInfo[playerid][Registered] = 1;
format(file,sizeof(file),\"/ladmin/users/%s.sav\",udb_encode(PlayerName));
new tmp2[256]; tmp2 = dini_Get(file,\"ip\");
if( (!strcmp(tmp3,tmp2,true)) && (ServerInfo[AutoLogin] == 1) )
{
   LoginPlayer(playerid);
   if(PlayerInfo[playerid][Level] > 0)
   {
      format(string,sizeof(string),\"{0019fc}FELHASZNÁLÓ: {FF0000}Autómatikusan bejelentkeztél! {CDF917}(Admin Szint: {33CCFF}%d)\", PlayerInfo[playerid][Level] );
      SendClientMessage(playerid,green,string);
             }
         else SendClientMessage(playerid,green,\"{0019fc}FELHASZNÁLÓ: {FF0000}Autómatikusan belelentkeztél, Jó játékot!\");
         }
   else
   {
       new lstring[256];
   format(lstring,256,\"{0019fc}Üdv {33FF33}%s! {CDF917}Játék elõtt kérlek {FF0000}jelentkezz be:\",pName(playerid));
   ShowPlayerDialog(playerid,BEJELENTKEZO,DIALOG_STYLE_PASSWORD,\"Bejelentkezés\",lstring,\"Belépés\",\"Kilépés\");
}
}
return 1;
}
onplayerdisconnect alatt:
if(ServerInfo[ConnectMessages] == 1)
{
switch (reason) {
   case 0:   format(str, sizeof(str), \">>> {0000FF}%s {33CCFF}(%d) {CDF917}Kilépett a szerverrõl {FF0000}(Idõtullépés) <<<\", PlayerName, playerid);
   case 1:   format(str, sizeof(str), \">>> {0000FF}%s {33CCFF}(%d) {CDF917}Kilépett a szerverrõl {FF0000}(Kilépés) <<<\", PlayerName, playerid);
   case 2:   format(str, sizeof(str), \">>> {0000FF}%s {33CCFF}(%d) {CDF917}Kilépett a szerverrõl {FF0000}(Kirúgva/Bannolva) <<<\", PlayerName, playerid);
}
SendClientMessageToAll(red, str);
}
if(PlayerInfo[playerid][LoggedIn] == 1)   SavePlayer(playerid);
if(udb_Exists(PlayerName2(playerid))) dUserSetINT(PlayerName2(playerid)).(\"loggedin\",0);
     PlayerInfo[playerid][LoggedIn] = 0;
PlayerInfo[playerid][Level] = 0;
PlayerInfo[playerid][Jailed] = 0;
PlayerInfo[playerid][Frozen] = 0;
PlayerInfo[playerid][AFKstatus] = 0;
if(PlayerInfo[playerid][Jailed] == 1) KillTimer( JailTimer[playerid] );
if(PlayerInfo[playerid][Frozen] == 1) KillTimer( FreezeTimer[playerid] );
if(ServerInfo[Locked] == 1)   KillTimer( LockKickTimer[playerid] );
if(PlayerInfo[playerid][pCar] != -1) CarDeleter(PlayerInfo[playerid][pCar]);
#if defined ENABLE_SPEC
for(new x=0; x<MAX_PLAYERS; x++)
    if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && PlayerInfo
  • [specID] == playerid)

               AdvanceSpectate(x);
#endif
return 1;
}

4
Szkript kérések / Ház rendszer segitség
« Dátum: 2012. május 23. - 13:12:06 »
Sziasztok!
Van ez a PPC_Housing és ugy kellene megcsinalni hogy /exithouse ne ugy legyen hogy /housemenu ---> kilépés a házból, csak 2 házat lehessen venni!
És alapból valami jobb ház belsõ legyen elõre is köszönöm!
 
#pragma tabsize 0
#include <a_samp>
#include <zcmd>
#include <dutils>
#include <sscanf2>
#include <streamer>
#pragma unused ret_memcpy
 
// ******************************************************************************************************************************
// A beállítások módosíthatóak
// ******************************************************************************************************************************
// Set timer-delay for exiting houses (this timer freezes a player when he exits a house, this allows the game to load the environment
// before the player starts to fall, also the player\'s vehicles assigned to the house he exits from, are respawned by this timer)
new ExitHouseTimer = 1000;
// This allows you to toggle the red houses on the map (bought houses appear on the map as red house icons when this is set to \"true\")
// Setting this to \"false\" doesn\'t show a bought house on the map
new bool:ShowBoughtHouses = false;
// Setting this to \"true\" will load all vehicles assigned to houses when the filterscript loads
// Setting this to \"false\" will load the vehicles assigned to a house when the house-owner logs in (they\'ll also disappear when he logs out)
// Recommended setting for popular servers (with alot of players): \"false\"
// In popular servers, the amount of cars could go over the samp-limit (2000), bugging everything when all cars stay loaded
// even when the owner of the vehicle is offline
new bool:LoadCarsDuringFSInit = false;
// Setting this to \"true\" will set all houses to have insurance by default
// Seting this to \"false\" required players to buy insurance for their vehicles from within the house
// If players don\'t have insurance, their vehicle will be gone forever if it\'s destroyed
// If players have insurance, they will get their vehicle back when it\'s destroyed
new bool:AutomaticInsurance = true;
// Default max number of players is set to 500, re-define it to 50
#undef MAX_PLAYERS
#define MAX_PLAYERS 50
// Define housing parameters
#define MAX_HOUSES               2000 // Defines the maximum number of houses that can be created
#define MAX_HOUSESPERPLAYER         20 // Defines the maximum number of houses that any player can own (useable values: 1 to 20)
#define HouseUpgradePercent         100 // Defines the percentage for upgrading a house (house of 10m can be upgraded for 5m when set to 50)
#define ParkRange                   150.0 // Defines the range for parking the vehicle around the house to which it belongs (default = 150m)
// Define path to house-files and player-files
#define HouseFile \"PPC_Housing/House%i.ini\"
// Define Dialogs
#define DialogHouseMenu             5001
#define DialogUpgradeHouse          5002
#define DialogGoHome                5003
#define DialogHouseNameChange       5004
#define DialogSellHouse             5005
#define DialogBuyCarClass           5006
#define DialogBuyCar                5007
#define DialogSellCar               5008
#define DialogBuyInsurance          5009
#define DialogGetCarSelectHouse     5010
#define DialogGetCarSelectCar       5011
// Define vehicle-classes
#define VClassBike          1
#define VClassBoat          2
#define VClassConvertible   3
#define VClassHelicopter    4
#define VClassIndustrial    5
#define VClassLowRider      6
#define VClassOffRoad       7
#define VClassPlane         8
#define VClassPublic        9
#define VClassRCVehicle     10
#define VClassSaloons       11
#define VClassSportCar      12
#define VClassStationCar    13
#define VClassTrailer       14
#define VClassUnique        15
 
// ******************************************************************************************************************************
// Enums and the array-setups that use them
// ******************************************************************************************************************************
// Setup a custom type that holds all data for houses
enum THouseData
{
PickupID, // Holds the pickup-id that is linked to this house
Text3D:DoorText, // Holds the reference to the 3DText above the house\'s pickup
MapIconID, // Holds the ID of the mapicon for the house
bool:Owned, // Holds true if the house is owned by somebody
Owner[24], // Holds the name of the owner of the house
HouseName[100], // Holds the name of the house (this will be displayed above the pickup near the house when it\'s owned)
Float:HouseX, // Holds the X-coordinate of the pickup for the house
Float:HouseY, // Holds the Y-coordinate of the pickup for the house
Float:HouseZ, // Holds the Z-coordinate of the pickup for the house
HouseLevel, // Holds the level of upgrades the house has, and defines which interior to use when you enter the house
HouseMaxLevel, // Holds the maximum level this house can be upgraded to
HousePrice, // Holds the price for buying the house, the same price applies when upgrading a house per level (multiplied by HouseUpgradePercent/100)
bool:HouseOpened, // Holds true if the house is open to the public (anyone can enter), false means: only the owner can enter it
bool:Insurance, // Holds \"true\" if the house has an insurance for the vehicles belonging to this house
VehicleIDs[10], // Holds the vehicle-id\'s of the vehicles linked to this house (max 10 vehicles per house)
bool:StaticHouse, // Holds \"true\" if the house is static (cannot be upgraded and has a fixed interior)
CarSlots // Holds the amount of carslots available
}
// Holds the data for all houses
new AHouseData[MAX_HOUSES][THouseData];
 
// Setup a custom type to hold all data about a vehicle
enum TVehicleData
{
BelongsToHouse, // Holds the HouseID to which this vehicle belongs
bool:Owned, // Holds true if the vehicle is owned by somebody
Owner[24], // Holds the name of the owner of the vehicle
Model, // Holds the vehicle-model of this vehicle
PaintJob, // Holds the ID of the paintjob applied to the vehicle
Components[14], // Holds all Component-ID\'s for all components on the vehicle
Color1, // Holds the primary color for this vehicle
Color2, // Holds the secundairy color for this vehicle
Float:SpawnX, // Holds the X-coordinate of the parking spot for this vehicle
Float:SpawnY, // Holds the Y-coordinate of the parking spot for this vehicle
Float:SpawnZ, // Holds the Z-coordinate of the parking spot for this vehicle
Float:SpawnRot // Holds the rotation of the parking spot for this vehicle
}
// Setup an array which holds all data for every vehicle, max 2000 vehicles (server limit)
new AVehicleData[2000][TVehicleData];
 
// Setup all the fields required for the player data (Speedometer TextDraw, current job, ...)
enum TPlayerData
{
Houses[20], // Holds the HouseID\'s of the houses that the player owns (index of the AHouseData array), maximum 20 houses per player
    CurrentHouse, // Holds the HouseID to track in which house the player currently is (used when accessing the housemenu)
DialogBuyVClass,
DialogGetCarHouseID
}
// Create an array to hold the playerdata for every player
new APlayerData[MAX_PLAYERS][TPlayerData];
 
// Setup a custom type that holds all data about a house-interior (selected when entering a house, based on the house-level)
enum THouseInterior
{
InteriorName[50], // Holds the name of the interior
InteriorID, // Holds the interior-id
Float:IntX, // Holds the X-coordinate of the spawn-location where you enter the house
Float:IntY, // Holds the Y-coordinate of the spawn-location where you enter the house
Float:IntZ // Holds the Z-coordinate of the spawn-location where you enter the house
}
// Holds the data for all interiors for houses (each house-level has it\'s own interior)
new AHouseInteriors[][THouseInterior] =
{
{\"Dummy\",             0,       0.0,       0.0,       0.0}, // Dummy interior (Level 0), as the house-level starts at 1
{\"Small motel room\",    10,    2262.83,    -1137.71,    1050.63}, // Level 1
{\"Small house\",       2,       2467.36,    -1698.38,    1013.51}, // Level 2
{\"Small house 2\",       1,       223.00,    1289.26,    1082.20}, // Level 3
{\"Medium house\",       10,    2260.76,    -1210.45,    1049.02}, // Level 4
{\"Medium house 2\",      8,       2365.42,    -1131.85,    1050.88}, // Level 5
{\"Duplex house\",      12,    2324.33,    -1144.79,    1050.71}, // Level 6
{\"Big house\",          15,    295.14,    1474.47,    1080.52}, // Level 7
{\"Big duplex house\",    3,       235.50,    1189.17,    1080.34}, // Level 8
{\"Huge house\",          7,       225.63,    1022.48,    1084.07}, // Level 9
{\"Mansion\",          5,       1299.14,    -794.77,    1084.00} // Level 10
};
 
// Setup a custom type that holds all data about a buyable vehicle
enum TBuyableVehicle
{
CarName[50], // Holds the name of the vehicle
VehicleClass, // Holds the ID of the vehicleclass
CarModel, // Holds the model-ID of the vehicle
Price // Holds the price for the vehicle (renting it will be 10% of this price)
}
new ABuyableVehicles[][TBuyableVehicle] =
{
{\"Admiral\", VClassSaloons, 445, 50000},
{\"Alpha\", VClassSportCar, 602, 50000},
{\"Ambulance\", VClassPublic, 416, 50000},
{\"Andromada\", VClassPlane, 592, 50000},
{\"Article Trailer\", VClassTrailer, 591, 50000},
//   {\"AT400\", VClassPlane, 577, 50000},
{\"Baggage\", VClassUnique, 485, 50000},
{\"Baggage Trailer A\", VClassTrailer, 606, 50000},
{\"Baggage Trailer B\", VClassTrailer, 607, 50000},
{\"Bandito\", VClassOffRoad, 568, 50000},
{\"Banshee\", VClassSportCar, 429, 50000},
{\"Barracks\", VClassPublic, 433, 50000},
{\"Beagle\", VClassPlane, 511, 50000},
{\"Benson\", VClassIndustrial, 499, 50000},
{\"Berkley\'s RC Van\", VClassIndustrial, 459, 50000},
{\"BF Injection\", VClassOffRoad, 424, 50000},
{\"BF-400\", VClassBike, 581, 50000},
{\"Bike\", VClassBike, 509, 50000},
{\"Blade\", VClassLowRider, 536, 50000},
{\"Blista Compact\", VClassSportCar, 496, 50000},
{\"Bloodring Banger\", VClassSaloons, 504, 50000},
{\"BMX\", VClassBike, 481, 50000},
{\"Bobcat\", VClassIndustrial, 422, 50000},
{\"Boxville 1\", VClassIndustrial, 498, 50000},
{\"Boxville 2\", VClassIndustrial, 609, 50000},
{\"Bravura\", VClassSaloons, 401, 50000},
{\"Broadway\", VClassLowRider, 575, 50000},
//   {\"Brownstreak (train)\", VClassUnique, 538, 50000},
{\"Buccaneer\", VClassSaloons, 518, 50000},
{\"Buffalo\", VClassSportCar, 402, 50000},
{\"Bullet\", VClassSportCar, 541, 50000},
{\"Burrito\", VClassIndustrial, 482, 50000},
{\"Bus\", VClassPublic, 431, 50000},
{\"Cabbie\", VClassPublic, 438, 50000},
{\"Caddy\", VClassUnique, 457, 50000},
{\"Cadrona\", VClassSaloons, 527, 50000},
{\"Camper\", VClassUnique, 483, 50000},
{\"Cargo Trailer\", VClassTrailer, 435, 50000},
{\"Cargobob\", VClassHelicopter, 548, 50000},
{\"Cement Truck\", VClassIndustrial, 524, 50000},
{\"Cheetah\", VClassSportCar, 415, 50000},
{\"Clover\", VClassSaloons, 542, 50000},
{\"Club\", VClassSportCar, 589, 50000},
{\"Coach\", VClassPublic, 437, 50000},
{\"Coastguard\", VClassBoat, 472, 50000},
{\"Combine Harvester\", VClassUnique, 532, 50000},
{\"Comet\", VClassConvertible, 480, 50000},
{\"Cropduster\", VClassPlane, 512, 50000},
{\"DFT-30\", VClassIndustrial, 578, 50000},
{\"Dinghy\", VClassBoat, 473, 50000},
{\"Dodo\", VClassPlane, 593, 50000},
{\"Dozer\", VClassUnique, 486, 50000},
{\"Dumper\", VClassUnique, 406, 50000},
{\"Dune\", VClassOffRoad, 573, 50000},
{\"Elegant\", VClassSaloons, 507, 50000},
{\"Elegy\", VClassSaloons, 562, 50000},
{\"Emperor\", VClassSaloons, 585, 50000},
{\"Enforcer\", VClassPublic, 427, 50000},
{\"Esperanto\", VClassSaloons, 419, 50000},
{\"Euros\", VClassSportCar, 587, 50000},
{\"Faggio\", VClassBike, 462, 50000},
{\"Farm Trailer\", VClassTrailer, 610, 50000},
{\"FBI Rancher\", VClassPublic, 490, 50000},
{\"FBI Truck\", VClassPublic, 528, 50000},
{\"FCR-900\", VClassBike, 521, 50000},
{\"Feltzer\", VClassConvertible, 533, 50000},
{\"Firetruck\", VClassPublic, 407, 50000},
{\"Firetruck LA\", VClassPublic, 544, 50000},
{\"Flash\", VClassSportCar, 565, 50000},
{\"Flatbed\", VClassIndustrial, 455, 50000},
{\"Fluids Trailer\", VClassTrailer, 584, 50000},
{\"Forklift\", VClassUnique, 530, 50000},
{\"Fortune\", VClassSaloons, 526, 50000},
{\"Freeway\", VClassBike, 463, 50000},
//   {\"Freight (train)\", VClassUnique, 537, 50000},
//   {\"Freight Box Trailer (train)\", VClassTrailer, 590, 50000},
//   {\"Freight Flat Trailer (train)\", VClassTrailer, 569, 50000},
{\"Glendale\", VClassSaloons, 466, 50000},
{\"Glendale Shit\", VClassSaloons, 604, 50000},
{\"Greenwood\", VClassSaloons, 492, 50000},
{\"Hermes\", VClassSaloons, 474, 50000},
{\"Hotdog\", VClassUnique, 588, 50000},
{\"Hotknife\", VClassUnique, 434, 50000},
{\"Hotring Racer 1\", VClassSportCar, 494, 50000},
{\"Hotring Racer 2\", VClassSportCar, 502, 50000},
{\"Hotring Racer 3\", VClassSportCar, 503, 50000},
{\"HPV1000\", VClassPublic, 523, 50000},
{\"Hunter\", VClassHelicopter, 425, 50000},
{\"Huntley\", VClassOffRoad, 579, 50000},
{\"Hustler\", VClassUnique, 545, 50000},
{\"Hydra\", VClassPlane, 520, 50000},
{\"Infernus\", VClassSportCar, 411, 50000},
{\"Intruder\", VClassSaloons, 546, 50000},
{\"Jester\", VClassSportCar, 559, 50000},
{\"Jetmax\", VClassBoat, 493, 50000},
{\"Journey\", VClassUnique, 508, 50000},
{\"Kart\", VClassUnique, 571, 50000},
{\"Landstalker\", VClassOffRoad, 400, 50000},
{\"Launch\", VClassBoat, 595, 50000},
{\"Leviathan\", VClassHelicopter, 417, 50000},
{\"Linerunner\", VClassIndustrial, 403, 50000},
{\"Majestic\", VClassSaloons, 517, 50000},
{\"Manana\", VClassSaloons, 410, 50000},
{\"Marquis\", VClassBoat, 484, 50000},
{\"Maverick\", VClassHelicopter, 487, 50000},
{\"Merit\", VClassSaloons, 551, 50000},
{\"Mesa\", VClassOffRoad, 500, 50000},
{\"Monster\", VClassOffRoad, 444, 50000},
{\"Monster A\", VClassOffRoad, 556, 50000},
{\"Monster B\", VClassOffRoad, 557, 50000},
{\"Moonbeam\", VClassStationCar, 418, 50000},
{\"Mountain Bike\", VClassBike, 510, 50000},
{\"Mower\", VClassUnique, 572, 50000},
{\"Mr Whoopee\", VClassUnique, 423, 50000},
{\"Mule\", VClassIndustrial, 414, 50000},
{\"Nebula\", VClassSaloons, 516, 50000},
{\"Nevada\", VClassPlane, 553, 50000},
{\"Newsvan\", VClassIndustrial, 582, 50000},
{\"NRG-500\", VClassBike, 522, 50000},
{\"Oceanic\", VClassSaloons, 467, 50000},
{\"Ore Trailer\", VClassTrailer, 450, 50000},
{\"Packer\", VClassIndustrial, 443, 50000},
{\"Patriot\", VClassOffRoad, 470, 50000},
{\"PCJ-600\", VClassBike, 461, 50000},
{\"Perenniel\", VClassStationCar, 404, 50000},
{\"Phoenix\", VClassSportCar, 603, 50000},
{\"Picador\", VClassIndustrial, 600, 50000},
{\"Pizzaboy\", VClassBike, 448, 50000},
{\"Police Car (LSPD)\", VClassPublic, 596, 50000},
{\"Police Car (LVPD)\", VClassPublic, 598, 50000},
{\"Police Car (SFPD)\", VClassPublic, 597, 50000},
{\"Police Maverick\", VClassHelicopter, 497, 50000},
{\"Police Ranger\", VClassPublic, 599, 50000},
{\"Pony\", VClassIndustrial, 413, 50000},
{\"Predator\", VClassBoat, 430, 50000},
{\"Premier\", VClassSaloons, 426, 50000},
{\"Previon\", VClassSaloons, 436, 50000},
{\"Primo\", VClassSaloons, 547, 50000},
{\"Quad\", VClassBike, 471, 50000},
{\"Raindance\", VClassHelicopter, 563, 50000},
{\"Rancher 1\", VClassOffRoad, 489, 50000},
{\"Rancher 2\", VClassOffRoad, 505, 50000},
//   {\"RC Bandit\", VClassRCVehicle, 441, 50000},
//   {\"RC Baron\", VClassRCVehicle, 464, 50000},
//   {\"RC Cam\", VClassRCVehicle, 594, 50000},
//   {\"RC Goblin\", VClassRCVehicle, 501, 50000},
//   {\"RC Raider\", VClassRCVehicle, 465, 50000},
//   {\"RC Tiger\", VClassRCVehicle, 564, 50000},
{\"Reefer\", VClassBoat, 453, 50000},
{\"Regina\", VClassStationCar, 479, 50000},
{\"Remington\", VClassLowRider, 534, 50000},
{\"Rhino\", VClassPublic, 432, 50000},
{\"Roadtrain\", VClassIndustrial, 515, 50000},
{\"Romero\", VClassUnique, 442, 50000},
{\"Rumpo\", VClassIndustrial, 440, 50000},
{\"Rustler\", VClassPlane, 476, 50000},
{\"Sabre\", VClassSportCar, 475, 50000},
{\"Sadler\", VClassIndustrial, 543, 50000},
{\"Sadler Shit\", VClassIndustrial, 605, 50000},
{\"SAN News Maverick\", VClassHelicopter, 488, 50000},
{\"Sanchez\", VClassBike, 468, 50000},
{\"Sandking\", VClassOffRoad, 495, 50000},
{\"Savanna\", VClassLowRider, 567, 50000},
{\"Seasparrow\", VClassHelicopter, 447, 50000},
{\"Securicar\", VClassUnique, 428, 50000},
{\"Sentinel\", VClassSaloons, 405, 50000},
{\"Shamal\", VClassPlane, 519, 50000},
{\"Skimmer\", VClassPlane, 460, 50000},
{\"Slamvan\", VClassLowRider, 535, 50000},
{\"Solair\", VClassStationCar, 458, 50000},
{\"Sparrow\", VClassHelicopter, 469, 50000},
{\"Speeder\", VClassBoat, 452, 50000},
{\"Squallo\", VClassBoat, 446, 50000},
{\"Stafford\", VClassSaloons, 580, 50000},
{\"Stallion\", VClassConvertible, 439, 50000},
{\"Stratum\", VClassStationCar, 561, 50000},
//   {\"Streak Trailer (train)\", VClassTrailer, 570, 50000},
{\"Stretch\", VClassUnique, 409, 50000},
{\"Stuntplane\", VClassPlane, 513, 50000},
{\"Sultan\", VClassSaloons, 560, 50000},
{\"Sunrise\", VClassSaloons, 550, 50000},
{\"Super GT\", VClassSportCar, 506, 50000},
{\"S.W.A.T.\", VClassPublic, 601, 50000},
{\"Sweeper\", VClassUnique, 574, 50000},
{\"Tahoma\", VClassLowRider, 566, 50000},
{\"Tampa\", VClassSaloons, 549, 50000},
{\"Tanker\", VClassIndustrial, 514, 50000},
{\"Taxi\", VClassPublic, 420, 50000},
{\"Tornado\", VClassLowRider, 576, 50000},
{\"Towtruck\", VClassUnique, 525, 50000},
{\"Tractor\", VClassIndustrial, 531, 50000},
//   {\"Tram\", VClassUnique, 449, 50000},
{\"Trashmaster\", VClassIndustrial, 408, 50000},
{\"Tropic\", VClassBoat, 454, 50000},
{\"Tug\", VClassUnique, 583, 50000},
{\"Tug Stairs Trailer\", VClassTrailer, 608, 50000},
{\"Turismo\", VClassSportCar, 451, 50000},
{\"Uranus\", VClassSportCar, 558, 50000},
{\"Utility Trailer\", VClassTrailer, 611, 50000},
{\"Utility Van\", VClassIndustrial, 552, 50000},
{\"Vincent\", VClassSaloons, 540, 50000},
{\"Virgo\", VClassSaloons, 491, 50000},
{\"Voodoo\", VClassLowRider, 412, 50000},
{\"Vortex\", VClassUnique, 539, 50000},
{\"Walton\", VClassIndustrial, 478, 50000},
{\"Washington\", VClassSaloons, 421, 50000},
{\"Wayfarer\", VClassBike, 586, 50000},
{\"Willard\", VClassSaloons, 529, 50000},
{\"Windsor\", VClassConvertible, 555, 50000},
    {\"Yankee\", VClassIndustrial, 456, 50000},
{\"Yosemite\", VClassIndustrial, 554, 50000},
{\"ZR-350\", VClassSportCar, 477, 50000}
};
 
// Setup an array that holds all prices for vehicle-components
new AVehicleModPrices[] =
{
400, // ID 1000, Spoiler Pro                        Certain Transfender cars
550, // ID 1001, Spoiler Win                        Certain Transfender cars
200, // ID 1002, Spoiler Drag                        Certain Transfender cars
250, // ID 1003, Spoiler Alpha                        Certain Transfender cars
100, // ID 1004, Hood Champ Scoop                     Certain Transfender cars
150, // ID 1005, Hood Fury Scoop                     Certain Transfender cars
80, // ID 1006, Roof Roof Scoop                        Certain Transfender cars
500, // ID 1007, Sideskirt Right Sideskirt               Certain Transfender cars
500, // ID 1008, Nitro 5 times                        Most cars, Most planes and Most Helicopters
200, // ID 1009, Nitro 2 times                        Most cars, Most planes and Most Helicopters
1000, // ID 1010, Nitro 10 times                          Most cars, Most planes and Most Helicopters
220, // ID 1011, Hood Race Scoop                         Certain Transfender cars
250, // ID 1012, Hood Worx Scoop                         Certain Transfender cars
100, // ID 1013, Lamps Round Fog                         Certain Transfender cars
400, // ID 1014, Spoiler Champ                           Certain Transfender cars
500, // ID 1015, Spoiler Race                            Certain Transfender cars
200, // ID 1016, Spoiler Worx                            Certain Transfender cars
500, // ID 1017, Sideskirt Left Sideskirt                Certain Transfender cars
350, // ID 1018, Exhaust Upswept                         Most cars
300, // ID 1019, Exhaust Twin                            Most cars
250, // ID 1020, Exhaust Large                           Most cars
200, // ID 1021, Exhaust Medium                        Most cars
150, // ID 1022, Exhaust Small                        Most cars
350, // ID 1023, Spoiler Fury                            Certain Transfender cars
50, // ID 1024, Lamps Square Fog                     Certain Transfender cars
1000, // ID 1025, Wheels Offroad                     Certain Transfender cars
480, // ID 1026, Sideskirt Right Alien Sideskirt         Sultan
480, // ID 1027, Sideskirt Left Alien Sideskirt            Sultan
770, // ID 1028, Exhaust Alien                            Sultan
680, // ID 1029, Exhaust X-Flow                        Sultan
370, // ID 1030, Sideskirt Left X-Flow Sideskirt          Sultan
370, // ID 1031, Sideskirt Right X-Flow Sideskirt         Sultan
170, // ID 1032, Roof Alien Roof Vent                  Sultan
120, // ID 1033, Roof X-Flow Roof Vent                    Sultan
790, // ID 1034, Exhaust Alien                        Elegy
150, // ID 1035, Roof X-Flow Roof Vent                  Elegy
500, // ID 1036, SideSkirt Right Alien Sideskirt          Elegy
690, // ID 1037, Exhaust X-Flow                        Elegy
190, // ID 1038, Roof Alien Roof Vent                  Elegy
390, // ID 1039, SideSkirt Right X-Flow Sideskirt         Elegy
500, // ID 1040, SideSkirt Left Alien Sideskirt            Elegy
390, // ID 1041, SideSkirt Right X-Flow Sideskirt         Elegy
1000, // ID 1042, SideSkirt Right Chrome Sideskirt         Broadway
500, // ID 1043, Exhaust Slamin                           Broadway
500, // ID 1044, Exhaust Chrome                        Broadway
510, // ID 1045, Exhaust X-Flow                        Flash
710, // ID 1046, Exhaust Alien                        Flash
670, // ID 1047, SideSkirt Right Alien Sideskirt          Flash
530, // ID 1048, SideSkirt Right X-Flow Sideskirt         Flash
810, // ID 1049, Spoiler Alien                        Flash
620, // ID 1050, Spoiler X-Flow                           Flash
670, // ID 1051, SideSkirt Left Alien Sideskirt           Flash
530, // ID 1052, SideSkirt Left X-Flow Sideskirt         Flash
130, // ID 1053, Roof X-Flow                        Flash
210, // ID 1054, Roof Alien                           Flash
230, // ID 1055, Roof Alien                           Stratum
520, // ID 1056, Sideskirt Right Alien Sideskirt         Stratum
430, // ID 1057, Sideskirt Right X-Flow Sideskirt         Stratum
620, // ID 1058, Spoiler Alien                        Stratum
720, // ID 1059, Exhaust X-Flow                        Stratum
530, // ID 1060, Spoiler X-Flow                        Stratum
180, // ID 1061, Roof X-Flow                        Stratum
520, // ID 1062, Sideskirt Left Alien Sideskirt            Stratum
430, // ID 1063, Sideskirt Left X-Flow Sideskirt         Stratum
830, // ID 1064, Exhaust Alien                        Stratum
850, // ID 1065, Exhaust Alien                        Jester
750, // ID 1066, Exhaust X-Flow                        Jester
250, // ID 1067, Roof Alien                           Jester
200, // ID 1068, Roof X-Flow                        Jester
550, // ID 1069, Sideskirt Right Alien Sideskirt         Jester
450, // ID 1070, Sideskirt Right X-Flow Sideskirt         Jester
550, // ID 1071, Sideskirt Left Alien Sideskirt            Jester
450, // ID 1072, Sideskirt Left X-Flow Sideskirt         Jester
1100, // ID 1073, Wheels Shadow                        Most cars
1030, // ID 1074, Wheels Mega                        Most cars
980, // ID 1075, Wheels Rimshine                     Most cars
1560, // ID 1076, Wheels Wires                        Most cars
1620, // ID 1077, Wheels Classic                     Most cars
1200, // ID 1078, Wheels Twist                        Most cars
1030, // ID 1079, Wheels Cutter                        Most cars
900, // ID 1080, Wheels Switch                        Most cars
1230, // ID 1081, Wheels Grove                        Most cars
820, // ID 1082, Wheels Import                        Most cars
1560, // ID 1083, Wheels Dollar                        Most cars
1350, // ID 1084, Wheels Trance                        Most cars
770, // ID 1085, Wheels Atomic                        Most cars
100, // ID 1086, Stereo Stereo                        Most cars
1500, // ID 1087, Hydraulics Hydraulics                  Most cars
150, // ID 1088, Roof Alien                           Uranus
650, // ID 1089, Exhaust X-Flow                        Uranus
450, // ID 1090, Sideskirt Right Alien Sideskirt         Uranus
100, // ID 1091, Roof X-Flow                        Uranus
750, // ID 1092, Exhaust Alien                        Uranus
350, // ID 1093, Sideskirt Right X-Flow Sideskirt         Uranus
450, // ID 1094, Sideskirt Left Alien Sideskirt            Uranus
350, // ID 1095, Sideskirt Right X-Flow Sideskirt         Uranus
1000, // ID 1096, Wheels Ahab                        Most cars
620, // ID 1097, Wheels Virtual                        Most cars
1140, // ID 1098, Wheels Access                        Most cars
1000, // ID 1099, Sideskirt Left Chrome Sideskirt         Broadway
940, // ID 1100, Bullbar Chrome Grill                  Remington
780, // ID 1101, Sideskirt Left `Chrome Flames` Sideskirt   Remington
830, // ID 1102, Sideskirt Left `Chrome Strip` Sideskirt   Savanna
3250, // ID 1103, Roof Convertible                     Blade
1610, // ID 1104, Exhaust Chrome                     Blade
1540, // ID 1105, Exhaust Slamin                     Blade
780, // ID 1106, Sideskirt Right `Chrome Arches`         Remington
780, // ID 1107, Sideskirt Left `Chrome Strip` Sideskirt   Blade
780, // ID 1108, Sideskirt Right `Chrome Strip` Sideskirt   Blade
1610, // ID 1109, Rear Bullbars Chrome                  Slamvan
1540, // ID 1110, Rear Bullbars Slamin                  Slamvan
55, // ID 1111, Front Sign? Little Sign?               Slamvan         ???
55, // ID 1112, Front Sign? Little Sign?               Slamvan         ???
3340, // ID 1113, Exhaust Chrome                     Slamvan
3250, // ID 1114, Exhaust Slamin                     Slamvan
2130, // ID 1115, Front Bullbars Chrome                  Slamvan
2050, // ID 1116, Front Bullbars Slamin                  Slamvan
2040, // ID 1117, Front Bumper Chrome                  Slamvan
780, // ID 1118, Sideskirt Right `Chrome Trim` Sideskirt   Slamvan
940, // ID 1119, Sideskirt Right `Wheelcovers` Sideskirt   Slamvan
780, // ID 1120, Sideskirt Left `Chrome Trim` Sideskirt      Slamvan
940, // ID 1121, Sideskirt Left `Wheelcovers` Sideskirt      Slamvan
780, // ID 1122, Sideskirt Right `Chrome Flames` Sideskirt   Remington
860, // ID 1123, Bullbars Bullbar Chrome Bars            Remington
780, // ID 1124, Sideskirt Left `Chrome Arches` Sideskirt   Remington
1120, // ID 1125, Bullbars Bullbar Chrome Lights         Remington
3340, // ID 1126, Exhaust Chrome Exhaust               Remington
3250, // ID 1127, Exhaust Slamin Exhaust               Remington
3340, // ID 1128, Roof Vinyl Hardtop                  Blade
1650, // ID 1129, Exhaust Chrome                     Savanna
3380, // ID 1130, Roof Hardtop                        Savanna
3290, // ID 1131, Roof Softtop                        Savanna
1590, // ID 1132, Exhaust Slamin                     Savanna
830, // ID 1133, Sideskirt Right `Chrome Strip` Sideskirt   Savanna
800, // ID 1134, SideSkirt Right `Chrome Strip` Sideskirt   Tornado
1500, // ID 1135, Exhaust Slamin                     Tornado
1000, // ID 1136, Exhaust Chrome                     Tornado
800, // ID 1137, Sideskirt Left `Chrome Strip` Sideskirt   Tornado
580, // ID 1138, Spoiler Alien                        Sultan
470, // ID 1139, Spoiler X-Flow                        Sultan
870, // ID 1140, Rear Bumper X-Flow                     Sultan
980, // ID 1141, Rear Bumper Alien                     Sultan
150, // ID 1142, Vents Left Oval Vents                  Certain Transfender Cars
150, // ID 1143, Vents Right Oval Vents                  Certain Transfender Cars
100, // ID 1144, Vents Left Square Vents               Certain Transfender Cars
100, // ID 1145, Vents Right Square Vents               Certain Transfender Cars
490, // ID 1146, Spoiler X-Flow                        Elegy
600, // ID 1147, Spoiler Alien                        Elegy
890, // ID 1148, Rear Bumper X-Flow                     Elegy
1000, // ID 1149, Rear Bumper Alien                     Elegy
1090, // ID 1150, Rear Bumper Alien                     Flash
840, // ID 1151, Rear Bumper X-Flow                     Flash
910, // ID 1152, Front Bumper X-Flow                  Flash
1200, // ID 1153, Front Bumper Alien                  Flash
1030, // ID 1154, Rear Bumper Alien                     Stratum
1030, // ID 1155, Front Bumper Alien                  Stratum
920, // ID 1156, Rear Bumper X-Flow                     Stratum
930, // ID 1157, Front Bumper X-Flow                  Stratum
550, // ID 1158, Spoiler X-Flow                        Jester
1050, // ID 1159, Rear Bumper Alien                     Jester
1050, // ID 1160, Front Bumper Alien                  Jester
950, // ID 1161, Rear Bumper X-Flow                     Jester
650, // ID 1162, Spoiler Alien                        Jester
450, // ID 1163, Spoiler X-Flow                        Uranus
550, // ID 1164, Spoiler Alien                        Uranus
850, // ID 1165, Front Bumper X-Flow                  Uranus
950, // ID 1166, Front Bumper Alien                     Uranus
850, // ID 1167, Rear Bumper X-Flow                     Uranus
950, // ID 1168, Rear Bumper Alien                     Uranus
970, // ID 1169, Front Bumper Alien                     Sultan
880, // ID 1170, Front Bumper X-Flow                  Sultan
990, // ID 1171, Front Bumper Alien                     Elegy
900, // ID 1172, Front Bumper X-Flow                  Elegy
950, // ID 1173, Front Bumper X-Flow                  Jester
1000, // ID 1174, Front Bumper Chrome                  Broadway
900, // ID 1175, Front Bumper Slamin                  Broadway
1000, // ID 1176, Rear Bumper Chrome                  Broadway
900, // ID 1177, Rear Bumper Slamin                     Broadway
2050, // ID 1178, Rear Bumper Slamin                  Remington
2150, // ID 1179, Front Bumper Chrome                  Remington
2130, // ID 1180, Rear Bumper Chrome                  Remington
2050, // ID 1181, Front Bumper Slamin                  Blade
2130, // ID 1182, Front Bumper Chrome                  Blade
2040, // ID 1183, Rear Bumper Slamin                  Blade
2150, // ID 1184, Rear Bumper Chrome                  Blade
2040, // ID 1185, Front Bumper Slamin                  Remington
2095, // ID 1186, Rear Bumper Slamin                  Savanna
2175, // ID 1187, Rear Bumper Chrome                  Savanna
2080, // ID 1188, Front Bumper Slamin                  Savanna
2200, // ID 1189, Front Bumper Chrome                  Savanna
1200, // ID 1190, Front Bumper Slamin                  Tornado
1040, // ID 1191, Front Bumper Chrome                  Tornado
940, // ID 1192, Rear Bumper Chrome                     Tornado
1100, // ID 1193 Rear Bumper Slamin                     Tornado
};
 
// These variables are used when starting the script and debugging purposes
new TotalHouses;
 
// ******************************************************************************************************************************
// Callbacks
// ******************************************************************************************************************************
// The main function (used only once when the server loads)
main()
{
}
// This callback gets called when the server initializes the filterscript
public OnFilterScriptInit()
{
// Loop through all houses and try to load them (HouseID 0 isn\'t used)
for (new HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
{
    // Try to load the house-file
HouseFile_Load(HouseID);
// Load housecars too if chosen to do so
if (LoadCarsDuringFSInit == true)
    HouseFile_LoadCars(HouseID);
}
    return 1;
}
// This callback gets called when a player connects to the server
public OnPlayerConnect(playerid)
{
// Setup local variables
new HouseID, HouseSlot, Name[24];
// Get the player\'s name
GetPlayerName(playerid, Name, sizeof(Name));
// Loop through all houses to find the ones which belong to this player
for (HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
{
// Check if the house exists
if (IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
{
    // Check if the house is owned
    if (AHouseData[HouseID][Owned] == true)
    {
        // Check if the player is the owner of the house
      if (strcmp(AHouseData[HouseID][Owner], Name, false) == 0)
      {
         // Add the HouseID to the player\'s account for faster reference later on
         APlayerData[playerid][Houses][HouseSlot] = HouseID;
         // Load housecars if they weren\'t loaded at FilterscriptInit
         if (LoadCarsDuringFSInit == false)
             HouseFile_LoadCars(HouseID);
         // Select the next HouseSlot
         HouseSlot++;
      }
    }
}
}
return 1;
}
// This callback gets called when a player disconnects from the server
public OnPlayerDisconnect(playerid, reason)
{
// Setup local variables
new HouseSlot;
// Loop through all Houses the player owns
for (HouseSlot = 0; HouseSlot < MAX_HOUSESPERPLAYER; HouseSlot++)
{
// Check if the house exists
if (APlayerData[playerid][Houses][HouseSlot] != 0)
{
    // Save the housefile
   HouseFile_Save(APlayerData[playerid][Houses][HouseSlot]);
}
}
// Unload housecars if they were loaded when the owner logged in
if (LoadCarsDuringFSInit == false)
{
// Loop through all Houses the player owns
for (HouseSlot = 0; HouseSlot < MAX_HOUSESPERPLAYER; HouseSlot++)
{
   // Check if the house exists
   if (APlayerData[playerid][Houses][HouseSlot] != 0)
   {
       // Unload all vehicles assigned to this house
      House_RemoveVehicles(APlayerData[playerid][Houses][HouseSlot]);
   }
}
}
// Clear all data for this player
// Loop through all Houses the player owns
for (HouseSlot = 0; HouseSlot < MAX_HOUSESPERPLAYER; HouseSlot++)
{
    // Clear the HouseID\'s
APlayerData[playerid][Houses][HouseSlot] = 0;
}
APlayerData[playerid][CurrentHouse] = 0;
APlayerData[playerid][DialogBuyVClass] = 0;
APlayerData[playerid][DialogGetCarHouseID] = 0;
return 1;
}
// This callback gets called when a player interacts with a dialog
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
// Select the proper dialog to process
switch (dialogid)
{
case DialogHouseMenu: Dialog_HouseMenu(playerid, response, listitem); // Process the main housemenu
case DialogUpgradeHouse: Dialog_UpgradeHouse(playerid, response, listitem); // Process the house-upgrade menu
case DialogGoHome: Dialog_GoHome(playerid, response, listitem); // Port to one of your houses
case DialogHouseNameChange: Dialog_ChangeHouseName(playerid, response, inputtext); // Change the name of your house
case DialogSellHouse: Dialog_SellHouse(playerid, response); // Sell the house
case DialogBuyCarClass: Dialog_BuyCarClass(playerid, response, listitem); // The player chose a vehicleclass from where he can buy a vehicle
case DialogBuyCar: Dialog_BuyCar(playerid, response, listitem); // The player chose a vehicle from the list of vehicles from the vehicleclass he chose before
case DialogSellCar: Dialog_SellCar(playerid, response, listitem);
case DialogBuyInsurance: Dialog_BuyInsurance(playerid, response);
case DialogGetCarSelectHouse: Dialog_GetCarSelectHouse(playerid, response, listitem);
case DialogGetCarSelectCar: Dialog_GetCarSelectCar(playerid, response, listitem);
}
    return 1;
}
// This callback gets called when a player spawns somewhere
public OnPlayerSpawn(playerid)
{
// Reset the HouseID where the player is located
APlayerData[playerid][CurrentHouse] = 0;
return 1;
}
// This callback gets called whenever a player dies
public OnPlayerDeath(playerid, killerid, reason)
{
// Reset the HouseID where the player is located
APlayerData[playerid][CurrentHouse] = 0;
return 1;
}
// This callback gets called when the player is selecting a class (but hasn\'t clicked \"Spawn\" yet)
public OnPlayerRequestClass(playerid, classid)
{
// Reset the HouseID where the player is located
APlayerData[playerid][CurrentHouse] = 0;
return 1;
}
// This callback is called when the player attempts to spawn via class-selection
public OnPlayerRequestSpawn(playerid)
{
// Reset the HouseID where the player is located
APlayerData[playerid][CurrentHouse] = 0;
    return 1;
}
// This callback gets called when a vehicle respawns at it\'s spawn-location (where it was created)
public OnVehicleSpawn(vehicleid)
{
// Only use this for house-vehicles
if (AVehicleData[vehicleid][Owned] == true)
{
// Re-apply the paintjob (if any was applied)
if (AVehicleData[vehicleid][PaintJob] != 0)
{
    // Re-apply the paintjob
   ChangeVehiclePaintjob(vehicleid, AVehicleData[vehicleid][PaintJob] - 1);
}
// Also update the car-color
ChangeVehicleColor(vehicleid, AVehicleData[vehicleid][Color1], AVehicleData[vehicleid][Color2]);
// Re-add all components that were installed (if they were there)
for (new i; i < 14; i++)
{
   // Remove all mods from the vehicle (all added mods applied by hackers will hopefully be removed this way when the vehicle respawns)
        RemoveVehicleComponent(vehicleid, GetVehicleComponentInSlot(vehicleid, i));
    // Check if the componentslot has a valid component-id
   if (AVehicleData[vehicleid][Components] != 0)
        AddVehicleComponent(vehicleid, AVehicleData[vehicleid][Components]); // Add the component to the vehicle
}
}
    return 1;
}
// This callback is called when the vehicle leaves a mod shop
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
// Only use this for house-vehicles
if (AVehicleData[vehicleid][Owned] == true)
{
// Let the player pay $150 for changing the color (if they have been changed)
if ((AVehicleData[vehicleid][Color1] != color1) || (AVehicleData[vehicleid][Color2] != color2))
   INT_GivePlayerMoney(playerid, -150);
// Save the colors
AVehicleData[vehicleid][Color1] = color1;
AVehicleData[vehicleid][Color2] = color2;
// If the primary color is black, remove the paintjob
if (color1 == 0)
   AVehicleData[vehicleid][PaintJob] = 0;
}
return 1;
}
// This callback gets called whenever a player mods his vehicle
public OnVehicleMod(playerid, vehicleid, componentid)
{
// Only use this for house-vehicles
if (AVehicleData[vehicleid][Owned] == true)
{
// When the player changes a component of his vehicle, reduce the price of the component from the player\'s money
INT_GivePlayerMoney(playerid, -AVehicleModPrices[componentid - 1000]);
// Store the component in the AVehicleData array
AVehicleData[vehicleid][Components][GetVehicleComponentType(componentid)] = componentid;
}
return 1;
}
// This callback gets called whenever a player VIEWS at a paintjob in a mod garage (viewing automatically applies it)
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
// Only use this for house-vehicles
if (AVehicleData[vehicleid][Owned] == true)
{
// Store the paintjobid for the vehicle (add 1 to the value, otherwise checking for an applied paintjob is difficult)
    AVehicleData[vehicleid][PaintJob] = paintjobid + 1;
}
return 1;
}
// This callback gets called whenever a vehicle enters the water or is destroyed (explodes)
public OnVehicleDeath(vehicleid)
{
// Setup local variables
new HouseID, CarSlot;
// Only use this for house-vehicles
if (AVehicleData[vehicleid][Owned] == true)
{
// Get the houseid to which this vehicle belongs
HouseID = AVehicleData[vehicleid][belongsToHouse];
// If automatic insurance has been turned off, check if the vehicle\'s house has insurance for the vehicle
if (AutomaticInsurance == false)
{
   // Check if this vehicle belongs to a house
   if (HouseID != 0)
   {
      // If the house doesn\'t have insurance for it\'s vehicles
      if (AHouseData[HouseID][insurance] == false)
      {
         // Find the CarSlot where this vehicle is stored
         for (CarSlot = 0; CarSlot < 10; CarSlot++)
         {
            // Check if the vehicle is stored in this carslot
            if (AHouseData[HouseID][VehicleIDs][CarSlot] == vehicleid)
                break; // Stop searching, because CarSlot now hold the carslot of the vehicle where it\'s stored
         }
          // Delete the vehicle, clear the data and remove it from the house it belongs to
         Vehicle_Delete(vehicleid, HouseID, CarSlot);
          // Save the house (and linked vehicles)
          HouseFile_Save(HouseID);
      }
   }
}
}
return 1;
}
// This callback gets called when the player changes state
public OnPlayerStateChange(playerid,newstate,oldstate)
{
// Setup local variables
new vid, Name[24], Msg[128], engine, lights, alarm, doors, bonnet, boot, objective;
// Check if the player became the driver of a vehicle
if (newstate == PLAYER_STATE_DRIVER)
{
// Get the ID of the player\'s vehicle
vid = GetPlayerVehicleID(playerid);
// Get the player\'s name
GetPlayerName(playerid, Name, sizeof(Name));
// Check if the vehicle is owned
if (AVehicleData[vid][Owned] == true)
{
   // Check if the vehicle is owned by somebody else (strcmp will not be 0)
   if (strcmp(AVehicleData[vid][Owner], Name, false) != 0)
   {
      // Force the player out of the vehicle
      RemovePlayerFromVehicle(playerid);
      // Turn off the lights and engine
      GetVehicleParamsEx(vid, engine, lights, alarm, doors, bonnet, boot, objective);
      SetVehicleParamsEx(vid, 0, 0, alarm, doors, bonnet, boot, objective);
      // Let the player know he cannot use somebody else\'s vehicle
      format(Msg, 128, \"{FF0000}Nem tudod használni a jármûvet, {FF0000}tulajdonosa \\\"{FFFF00}%s{FF0000}\\\"\", AVehicleData[vid][Owner]);
      SendClientMessage(playerid, 0xFFFFFFFF, Msg);
   }
}
}
return 1;
}
 
// ******************************************************************************************************************************
// Commands
// ******************************************************************************************************************************
// Lets the player add new houses (a house that can be upgraded and where the houselevel determines the amount of carslots)
COMMAND:createhouse(playerid, params[])
{
// Setup local variables
new HPrice, MaxLevel, HouseID;
// If a player hasn\'t logged in properly, he cannot use this command
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
// If the player has an insufficient admin-level (he needs level 5 or RCON admin), exit the command
// returning \"SERVER: Unknown command\" to the player
if (INT_CheckPlayerAdminLevel(playerid, 5) == 0) return 0;
// Check if the player isn\'t inside a vehicle (the admin-player must be on foot to use this command)
if (GetPlayerVehicleSeat(playerid) == -1)
{
if (sscanf(params, \"ii\", HPrice, MaxLevel)) SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Használat: \\\"/createhouse <ár> <maxlevel (1-10)>\\\"\");
else
{
   // Check if the player entered a proper maxlevel
   if ((MaxLevel >= 1) && (MaxLevel <= 10))
   {
      // Find the first free HouseID
      for (HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
         if (!IsValidDynamicPickup(AHouseData[HouseID][PickupID])) // Check if an empty house-index has been found (PickupID is 0)
             break; // Stop searching, the first free HouseID has been found now
       // Check if the house-limit hasn\'t been reached yet
       // This would seem to double-check the pickup-id, but in case there was no free houseslot found (HouseID points
      // to the last index, the last index would hold a house, so be sure to not overwrite it
      if (!IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
      {
          // Setup some local variables
         new Float:x, Float:y, Float:z, Msg[128];
         // Get the player\'s position
         GetPlayerPos(playerid, x, y, z);
         // Set some default data
         AHouseData[HouseID][Owned] = false;
         AHouseData[HouseID][Owner] = 0;
         AHouseData[HouseID][HouseX] = x;
         AHouseData[HouseID][HouseY] = y;
         AHouseData[HouseID][HouseZ] = z;
         AHouseData[HouseID][HouseLevel] = 1;
         AHouseData[HouseID][HouseMaxLevel] = MaxLevel;
         AHouseData[HouseID][HousePrice] = HPrice;
         AHouseData[HouseID][HouseOpened] = false;
         AHouseData[HouseID][insurance] = false;
         AHouseData[HouseID][staticHouse] = false;
         AHouseData[HouseID][CarSlots] = 1; // This must be equal to the house-level for a normal house
         // Add the pickup and 3DText at the location of the house-entrance (where the player is standing when he creates the house)
         House_UpdateEntrance(HouseID);
         // Save the house
         HouseFile_Save(HouseID);
         // Inform the player that he created a new house
         format(Msg, 128, \"{00FF00}Ház létrehozva, azonosító (ID): {FFFF00}%i\", HouseID);
         SendClientMessage(playerid, 0xFFFFFFFF, Msg);
      }
      else
          SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Nem lehet több házat létrehozni!\");
   }
   else
       SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Max szint: 1 - 10\");
}
}
else
    SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak gyalog lehet házat létrehozni!\");
// Let the server know that this was a valid command
return 1;
}
// Lets the player add new houses (a house that cannot be upgraded, has a fixed interior and a fixed amount of carslots)
COMMAND:createstatichouse(playerid, params[])
{
// Setup local variables
new HPrice, Carslots, HouseID, Interior;
// If a player hasn\'t logged in properly, he cannot use this command
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
// If the player has an insufficient admin-level (he needs level 5 or RCON admin), exit the command
// returning \"SERVER: Unknown command\" to the player
if (INT_CheckPlayerAdminLevel(playerid, 5) == 0) return 0;
// Check if the player isn\'t inside a vehicle (the admin-player must be on foot to use this command)
if (GetPlayerVehicleSeat(playerid) == -1)
{
if (sscanf(params, \"iii\", HPrice, Carslots, Interior)) SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Használat: \\\"/createstatichouse <ár> <Jármûhelyek (1-10)> <Interior (1-10)>\\\"\");
else
{
   // Check if the player entered a proper amount of Carslots
   if ((Carslots >= 1) && (Carslots <= 10))
   {
      // Check if the player entered a valid interior
      if ((Interior >= 1) && (Interior <= 10))
      {
         // Find the first free HouseID
         for (HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
            if (!IsValidDynamicPickup(AHouseData[HouseID][PickupID])) // Check if an empty house-index has been found (PickupID is 0)
                break; // Stop searching, the first free HouseID has been found now
          // Check if the house-limit hasn\'t been reached yet
          // This would seem to double-check the pickup-id, but in case there was no free houseslot found (HouseID points
         // to the last index, the last index would hold a house, so be sure to not overwrite it
         if (!IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
         {
             // Setup some local variables
            new Float:x, Float:y, Float:z, Msg[128];
            // Get the player\'s position
            GetPlayerPos(playerid, x, y, z);
            // Set some default data
            AHouseData[HouseID][Owned] = false;
            AHouseData[HouseID][HouseX] = x;
            AHouseData[HouseID][HouseY] = y;
            AHouseData[HouseID][HouseZ] = z;
            AHouseData[HouseID][HouseLevel] = Interior; // The house-level indicates the static interior
            AHouseData[HouseID][HouseMaxLevel] = Interior;
            AHouseData[HouseID][HousePrice] = HPrice;
            AHouseData[HouseID][HouseOpened] = false;
            AHouseData[HouseID][insurance] = false;
            AHouseData[HouseID][staticHouse] = true;
            AHouseData[HouseID][CarSlots] = Carslots;
            // Add the pickup and 3DText at the location of the house-entrance (where the player is standing when he creates the house)
            House_UpdateEntrance(HouseID);
            // Save the house
            HouseFile_Save(HouseID);
            // Inform the player that he created a new house
            format(Msg, 128, \"{00FF00}A statikus ház létrehozva, azonosító (ID): {FFFF00}%i\", HouseID);
            SendClientMessage(playerid, 0xFFFFFFFF, Msg);
         }
         else
             SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Nem lehet több házat létrehozni!\");
      }
      else
          SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Belsõ (Interior) azonosítók: 1 - 10\");
   }
   else
       SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Jármûférõhelyeket add meg! (1 - 10)\");
}
}
else
    SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak gyalog lehet házat létrehozni!\");
// Let the server know that this was a valid command
return 1;
}
// This command lets the player delete a house
COMMAND:dellhouse(playerid, params[])
{
// Setup local variables
new file[100], Msg[128];
// If a player hasn\'t logged in properly, he cannot use this command
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
// If the player has an insufficient admin-level (he needs level 5 or RCON admin), exit the command
// returning \"SERVER: Unknown command\" to the player
if (INT_CheckPlayerAdminLevel(playerid, 5) == 0) return 0;
// Check if the player isn\'t inside a vehicle (the admin-player must be on foot to use this command)
if (GetPlayerVehicleSeat(playerid) == -1)
{
// Loop through all houses
for (new HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
{
   // Check if the house exists
   if (IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
   {
      // Check if the house has no owner (owned houses cannot be deleted)
      if (AHouseData[HouseID][Owned] == false)
      {
         // Check if the player is in range of the house-pickup
         if (IsPlayerInRangeOfPoint(playerid, 2.5, AHouseData[HouseID][HouseX], AHouseData[HouseID][HouseY], AHouseData[HouseID][HouseZ]))
         {
            // Clear all data of the house
            AHouseData[HouseID][Owned] = false;
            AHouseData[HouseID][Owner] = 0;
            AHouseData[HouseID][HouseName] = 0;
            AHouseData[HouseID][insurance] = false;
            AHouseData[HouseID][HouseX] = 0.0;
            AHouseData[HouseID][HouseY] = 0.0;
            AHouseData[HouseID][HouseZ] = 0.0;
            AHouseData[HouseID][HouseLevel] = 0;
            AHouseData[HouseID][HouseMaxLevel] = 0;
            AHouseData[HouseID][HousePrice] = 0;
            AHouseData[HouseID][HouseOpened] = false;
            AHouseData[HouseID][staticHouse] = false;
            AHouseData[HouseID][CarSlots] = 0;
            // Destroy the mapicon, 3DText and pickup for the house
            DestroyDynamicPickup(AHouseData[HouseID][PickupID]);
            DestroyDynamicMapIcon(AHouseData[HouseID][MapIconID]);
            DestroyDynamic3DTextLabel(AHouseData[HouseID][DoorText]);
            AHouseData[HouseID][PickupID] = 0;
            AHouseData[HouseID][MapIconID] = 0;
            // Delete the house-file
            format(file, sizeof(file), HouseFile, HouseID); // Construct the complete filename for this house-file
            if (fexist(file)) // Make sure the file exists
               fremove(file); // Delete the file
            // Also let the player know he deleted the house
            format(Msg, 128, \"{00FF00}Törölted a {FFFF00}%i {00FF00}azonosítószámú házat!\", HouseID);
            SendClientMessage(playerid, 0xFFFFFFFF, Msg);
            // Exit the function
            return 1;
         }
      }
      else
         SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Tulajdonossal rendelkezõ házakat nem törölhetsz!\");
   }
}
// There was no house in range, so let the player know about it
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Nincs a közelben ház!\");
}
else
    SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak gyalog lehet házat törölni!\");
// Let the server know that this was a valid command
return 1;
}
// This command lets the player buy a house when he\'s standing in range of a house that isn\'t owned yet
COMMAND:buyhouse(playerid, params[])
{
// Setup local variables
new Msg[128];
// If a player hasn\'t logged in properly, he cannot use this command
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
// Check if the player isn\'t inside a vehicle (the player must be on foot to use this command)
if (GetPlayerVehicleSeat(playerid) == -1)
{
// Check if the player is near a house-pickup
for (new HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
{
   // Check if the house exists
   if (IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
   {
      // Check if the player is in range of the house-pickup
      if (IsPlayerInRangeOfPoint(playerid, 2.5, AHouseData[HouseID][HouseX], AHouseData[HouseID][HouseY], AHouseData[HouseID][HouseZ]))
      {
          // Check if the house isn\'t owned yet
          if (AHouseData[HouseID][Owned] == false)
          {
              // Check if the player can afford this house
              if (INT_GetPlayerMoney(playerid) >= AHouseData[HouseID][HousePrice])
                  House_SetOwner(playerid, HouseID); // Give ownership of the house to the player (if he has a spare houseslot)
              else
                  SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Nem engedheted meg magadnak ezt a házat! Ok: kevés pénz\"); // The player cannot afford this house
          }
          else
          {
              // Let the player know that this house is already owned by a player
            format(Msg, 128, \"{FF0000}Ezt a házat már megvették! {FF0000}Tulajdonos: {FFFF00}%s\", AHouseData[HouseID][Owner]);
            SendClientMessage(playerid, 0xFFFFFFFF, Msg);
          }
         // The player was in range of a house-pickup, so stop searching for the other house pickups
          return 1;
      }
   }
}
// All houses have been processed, but the player wasn\'t in range of any house-pickup, let him know about it
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Házvásárláshoz közel kell légy egy ház-pickuphoz!\");
}
else
    SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Nem tudsz jármûben házat venni!\");
// Let the server know that this was a valid command
return 1;
}
// This command lets the player enter the house/business if he\'s the owner
COMMAND:enterhouse(playerid, params[])
{
// Setup local variables
new HouseID, IntID;
// If a player hasn\'t logged in properly, he cannot use this command
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
// Check if the player isn\'t inside a vehicle (the player must be on foot to use this command)
if (GetPlayerVehicleSeat(playerid) == -1)
{
// Loop through all houses
for (HouseID = 1; HouseID < MAX_HOUSES; HouseID++)
{
   // Check if the house exists
   if (IsValidDynamicPickup(AHouseData[HouseID][PickupID]))
   {
      // Check if the player is in range of the house-pickup
      if (IsPlayerInRangeOfPoint(playerid, 2.5, AHouseData[HouseID][HouseX], AHouseData[HouseID][HouseY], AHouseData[HouseID][HouseZ]))
      {
         // Check if the house is closed to the public
         if (AHouseData[HouseID][HouseOpened] == false)
         {
            // The house isn\'t open to the public, so keep anyone out who isn\'t the owner of the house
            if (House_PlayerIsOwner(playerid, HouseID) == 0)
            {
                // Let the player know that this house isn\'t open to the public and he can\'t enter it
               SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Ez a ház magánház, nem léphetsz be!\");
                return 1;
            }
         }
         // The house is open to the public, or the player trying to enter is the owner, so let the player inside the house
         // Get the interior to put the player in
         IntID = AHouseData[HouseID][HouseLevel]; // Get the level of the house
         // Set the worldid so other players cannot see him anymore (but allow all players in the same house to see eachother)
         SetPlayerVirtualWorld(playerid, 5000 + HouseID);
         // Set the player inside the interior of the house
         SetPlayerInterior(playerid, AHouseInteriors[intID][interiorID]);
         // Set the position of the player at the spawn-location of the house\'s interior
         SetPlayerPos(playerid, AHouseInteriors[intID][intX], AHouseInteriors[intID][intY], AHouseInteriors[intID][intZ]);
         // Also set a tracking-variable to enable /housemenu to track in which house the player is
         APlayerData[playerid][CurrentHouse] = HouseID;
         // Also let the player know he can use /housemenu to upgrade/exit his house
         SendClientMessage(playerid, 0xFFFFFFFF, \"{00FF00}Használd a {FFFF00}/housemenu{00FF00} parancsot, hogy megváltoztasd a házad dolgait.\");
         // Exit the function
         return 1;
      }
   }
}
}
// Let the server know that this was a valid command
return 1;
}
// This command opens a menu when you\'re inside your house to allow to access the options of your house
COMMAND:housemenu(playerid, params[])
{
// Setup local variables
new OptionsList[200], DialogTitle[200], HouseID;
// If a player hasn\'t logged in properly, he cannot use this command
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
// Get the HouseID where the player has entered
HouseID = APlayerData[playerid][CurrentHouse];
// Check if the player is inside a house
if (HouseID != 0)
{
format(DialogTitle, sizeof(DialogTitle), \"Válassz opciót itt: %s\", AHouseData[HouseID][HouseName]);
// Create 2 different option-lists, based on StaticHouse
if (AHouseData[HouseID][staticHouse] == true)
{
   // Create the dialog for a static house (has the same options as a normal house, except for upgrading the house)
   format(OptionsList, sizeof(OptionsList), \"%sHáznév megváltoztatása\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sJármû vásárlás a ház mellé\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sJármû biztosítás kötése\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sHázjármû eladása\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sHáz eladása\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sHáz kinyitása a társadalomnak\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sHáz elzárása a társadalomtól\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sKilépés a házból\\n\", OptionsList);
}
else
{
   // Create the dialog for a normal house
   format(OptionsList, sizeof(OptionsList), \"%sHáznév megváltoztatása\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sHáz frissítése\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sJármû vásárlás a ház mellé\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sJármû biztosítás kötése\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sHázjármû eladása\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sHáz eladása\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sHáz kinyitása a társadalomnak\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sHáz elzárása a társadalomtól\\n\", OptionsList);
   format(OptionsList, sizeof(OptionsList), \"%sKilépés a házból\\n\", OptionsList);
}
// Show the housemenu
ShowPlayerDialog(playerid, DialogHouseMenu, DIALOG_STYLE_LIST, DialogTitle, OptionsList, \"Kiválaszt\", \"Mégsem\");
}
else
    SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Nem vagy házban!\");
// Let the server know that this was a valid command
return 1;
}
// This command teleports you to your selected house
COMMAND:gohome(playerid, params[])
{
// Setup local variables
new HouseList[1000], HouseID;
// If a player hasn\'t logged in properly, he cannot use this command
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
// Check if the player isn\'t inside a vehicle (the player must be on foot to use this command)
if (GetPlayerVehicleSeat(playerid) == -1)
{
// Ask to which house the player wants to port
for (new HouseSlot; HouseSlot < MAX_HOUSESPERPLAYER; HouseSlot++)
{
    // Get the HouseID in this slot
    HouseID = APlayerData[playerid][Houses][HouseSlot];
   // Check if this houseindex is occupied
   if (HouseID != 0)
      format(HouseList, 1000, \"%s{00FF00}%s{FFFFFF}\\n\", HouseList, AHouseData[HouseID][HouseName]);
   else
      format(HouseList, 1000, \"%s{FFFFFF}%s{FFFFFF}\\n\", HouseList, \"Üres ház\"); // Eredetileg Empty house-slot
}
ShowPlayerDialog(playerid, DialogGoHome, DIALOG_STYLE_LIST, \"Válaszd ki azt a házat ahova menni szeretnél:\", HouseList, \"Kiválaszt\", \"Mégsem\");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Gyalog kell lenned, hogy tudj a házadhoz teleportálni.\");
// Let the server know that this was a valid command
return 1;
}
// This command allows you to port a vehicle from your house to your location
COMMAND:getcar(playerid, params[])
{
// Setup local variables
new HouseList[1000], HouseID;
// If a player hasn\'t logged in properly, he cannot use this command
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
// Check if the player isn\'t inside a vehicle (the player must be on foot to use this command)
if (GetPlayerVehicleSeat(playerid) == -1)
{
// Ask to which house the player wants to port
for (new HouseSlot; HouseSlot < MAX_HOUSESPERPLAYER; HouseSlot++)
{
    // Get the HouseID in this slot
    HouseID = APlayerData[playerid][Houses][HouseSlot];
   // Check if this houseindex is occupied
   if (HouseID != 0)
      format(HouseList, 1000, \"%s{00FF00}%s{FFFFFF}\\n\", HouseList, AHouseData[HouseID][HouseName]);
   else
      format(HouseList, 1000, \"%s{FFFFFF}%s{FFFFFF}\\n\", HouseList, \"Üres ház\");
}
ShowPlayerDialog(playerid, DialogGetCarSelectHouse, DIALOG_STYLE_LIST, \"Válaszd ki a házat ahonnan ki akarod szedni a kocsit:\", HouseList, \"Select\", \"Cancel\");
}
else
SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Gyalog kell lenned, hogy egy kocsit magadhoz teleportálj.\");
// Let the server know that this was a valid command
return 1;
}
// This command checks if the player is inside a vehicle that he owns and if he\'s in range of the house where the vehicle is assigned to
COMMAND:park(playerid, params[])
{
// Setup local variables
new Float:x, Float:y, Float:z, Float:rot, vid, HouseID, Msg[128];
new engine,lights,alarm,doors,bonnet,boot,objective;
// If a player hasn\'t logged in properly, he cannot use this command
if (INT_IsPlayerLoggedIn(playerid) == 0) return 0;
// Check if the player is inside a vehicle (he must be the driver)
if (GetPlayerVehicleSeat(playerid) == 0)
{
// Get the vehicle-id
vid = GetPlayerVehicleID(playerid);
// Get the HouseID to which this vehicle belongs
HouseID = AVehicleData[vid][belongsToHouse];
// Check if this vehicle belongs to a house (if not, the vehicle cannot be parked, as it\'s not a house-vehicle)
if (HouseID != 0)
{
   // Check if the vehicle is in range of the house-entrance (you cannot park a vehicle further away from your house than 150m)
   if (IsPlayerInRangeOfPoint(playerid, ParkRange, AHouseData[HouseID][HouseX], AHouseData[HouseID][HouseY], AHouseData[HouseID][HouseZ]))
   {
      // Get the player\'s position and angle
      GetVehiclePos(vid, x, y, z);
      GetVehicleZAngle(vid, rot);
      // Save those values for the vehicle
      AVehicleData[vid][spawnX] = x;
      AVehicleData[vid][spawnY] = y;
      AVehicleData[vid][spawnZ] = z;
      AVehicleData[vid][spawnRot] = rot;
      // Loop through all carslots of this house to find the vehicle-id
      for (new CarSlot; CarSlot < 10; CarSlot++)
      {
         // Check if this carslot holds the same vehicle-id
          if (AHouseData[HouseID][VehicleIDs][CarSlot] == vid)
          {
                    House_ReplaceVehicle(HouseID, CarSlot); // Re-create the vehicle at the same spot the player wants to park his vehicle
                    PutPlayerInVehicle(playerid, AHouseData[HouseID][VehicleIDs][CarSlot], 0);
            // Turn on the engine and lights
            GetVehicleParamsEx(AHouseData[HouseID][VehicleIDs][CarSlot], engine, lights, alarm, doors, bonnet, boot, objective);
            SetVehicleParamsEx(AHouseData[HouseID][VehicleIDs][CarSlot], 1, 1, alarm, doors, bonnet, boot, objective);
                    break; // Stop the for-loop
         }
      }
      // Let the player know he parked his vehicle
      SendClientMessage(playerid, 0xFFFFFFFF, \"{00FF00}Leparkoltad a jármûved.\");
      // Save the housefile
      HouseFile_Save(HouseID);
   }
   else
   {
       format(Msg, 128, \"{FFFF00}%iméteren{FF0000} belül kell parkolj a házadhoz közel.\", ParkRange);
       SendClientMessage(playerid, 0xFFFFFFFF, Msg);
   }
}
else
    SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Nem tudod leparkolni a jármûved, mert nem a te tulajdonodban van!\");
}
else
    SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak jármûben tudod leparkolni a saját jármûvedet.\");
// Let the server know that this was a valid command
return 1;
}
 
// ******************************************************************************************************************************
// Dialog-responses
// ******************************************************************************************************************************
// This function processes the housemenu dialog
Dialog_HouseMenu(playerid, response, listitem)
{
// Just close the dialog if the player clicked \"Cancel\"
if(!response) return 1;
// Setup local variables
new UpgradeList[2000], HouseID, DialogTitle[200], Counter, UpgradePrice, Msg[128], CarSlot, VehicleClassList[1000], VehicleList[500];
    new MsgInsurance[128], BuyableCarIndex, bool:HouseHasCars = false;
// Get the HouseID of the house where the player is
HouseID = APlayerData[playerid][CurrentHouse];
// Skip listitem 1 if this house is a static house (listitem 1 = buy house-car => item 2, ...)
if (AHouseData[HouseID][staticHouse] == true)
{
// If listitem is 1 or higher, increase the listitem by 1, skipping the \"upgrade house\" option
// but still keep the \"change housename\" option (listitem 0)
if (listitem >= 1)
    listitem++;
}
// Select an option based on the selection in the list
switch(listitem)
{
    case 0: // Change house name
    {
   // Only the house-owner can use this option
   if (House_PlayerIsOwner(playerid, HouseID) == 1)
   {
        format(DialogTitle, 200, \"Régi háznév: %s\", AHouseData[HouseID][HouseName]);
      ShowPlayerDialog(playerid, DialogHouseNameChange, DIALOG_STYLE_INPUT, DialogTitle, \"Adj egy új nevet a házadnak\", \"Kiválaszt\", \"Mégsem\");
   }
   else
       SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}Csak a ház tulajdonosa tudja használni ezt az opciót.\");
    }
    case 1: // Upgrade the house
    {
   // Only the house-owner can use this option
   if (House_PlayerIsOwner(playerid, HouseID) == 1)
   {
        // Check if it\'s possible to upgrade further
      if (AHouseData[HouseID][HouseLevel] < AHouseData[HouseID][HouseMaxLevel])
      {
         // Add only the upgrades above the current house-level to the upgradelist
         for (new i = AHouseData[HouseID][HouseLevel] + 1; i <= AHouseData[HouseID][HouseMaxLevel]; i++)
         {
             Counter++; // Add 1 to the counter each time an upgrade is added to the upgradelist
             UpgradePrice = ((AHouseData[HouseID][HousePrice] * Counter) / 100) * HouseUpgradePercent;
             // Add the upgrade-info in green if the player can afford it, and in red if he cannot afford it
            if (INT_GetPlayerMoney(playerid) >= UpgradePrice)
               format(UpgradeList, 2000, \"%s{00FF00}%s (szint %i)\\t\\t$%i\\n\", UpgradeList, AHouseInteriors[interiorName], i, UpgradePrice);
            else
               format(UpgradeList, 2000, \"%s{FF0000}%s (szint %i)\\t\\t$%i\\n\", UpgradeList, AHouseInteriors[interiorName], i, UpgradePrice);
         }
           // Show another dialog to let the player select which upgrade he wants for his house
         ShowPlayerDialog(playerid, DialogUpgradeHouse, DIALOG_STYLE_LIST, \"Válaszd ki a frissítést:\", UpgradeList, \"Kiválaszt\", \"Mégsem\");
      }
      else
          SendClientMessage(playerid, 0xFFFFFFFF, \"{FF0000}A házad e

5
Szkript kérések / VIP rendszer
« Dátum: 2012. május 23. - 12:50:03 »
Nem menti rendesen a V.I.P. tagokat..
 
CMD:vcar(playerid, params[])
{
if(vip[playerid] == 1)
{
new carid;
if(sscanf(params,\"i\", carid)) { SendClientMessage(playerid,COLOR_WHITE,\"Használat: /vcar [jármú id]\"); return 1; }
SendClientMessage(playerid,COLOR_RED,\"Sikeresen lekértél egy jármût!\");
if(carid > 611 || carid < 400) { SendClientMessage(playerid,COLOR_RED,\"HIBA: Nincs ilyen jármû id!\"); return 1; }
else {
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
new car = CreateVehicle(carid,x,y,z,95.0,0,0,1000);
PutPlayerInVehicle(playerid, car, 0);
}
}
else if(vip[playerid] == 0)
{
SendClientMessage(playerid,COLOR_RED,\"HIBA: Nem vagy V.I.P!\");
}
return 1;
}
CMD:vfegyver(playerid, params[])
{
if(vip[playerid] == 1)
{
new id;
new ammo;
new weapon;
if(sscanf(params,\"uii\",id,weapon,ammo)) SendClientMessage(playerid,COLOR_WHITE,\"Használat: /giveweapon [id] [fegyver id] [lõszer]\");
else if (id == INVALID_PLAYER_ID) SendClientMessage(playerid, COLOR_RED, \"HIBA: Rossz játékos id!\");
else {
new str[128];
if(weapon > 46 || weapon < 0) { SendClientMessage(playerid,COLOR_RED,\"HIBA: Nincs ilyen fegyver id!\"); return 1; }
GetPlayerName(playerid,string,sizeof(string));
format(str,sizeof(str),\"[VIP]%s {FF6600} adott neked fegyvert! {00FF33} (Fegyver id:%d | {FF9966} Lõszer: %d)\",str,weapon,ammo);
SendClientMessage(id,COLOR_RED,str);
GetPlayerName(id,str,sizeof(str));
format(string,sizeof(string),\"{{FF9966}} Adtál %s-nak/nek fegyvert! {00FF33} (Fegyver id:%d | {FF6600} Lõszer: %d)\",str,weapon,ammo);
SendClientMessage(playerid,COLOR_RED,str);
GivePlayerWeapon(id,weapon,ammo);
}
}
else if(vip[playerid] == 0)
{
SendClientMessage(playerid,COLOR_RED,\"HIBA: Nem vagy V.I.P!\");
}
return 1;
}
CMD:vgoto(playerid, params[])
{
if(vip[playerid] == 1)
{
new id;
if(sscanf(params , \"u\" ,id)) SendClientMessage(playerid, COLOR_WHITE, \"Használat : /vgoto [id].\");
else if (id == INVALID_PLAYER_ID) SendClientMessage(playerid, COLOR_RED, \"HIBA: Rossz játékos id!\");
else {
new Float:x;
new Float:y;
new Float:z;
GetPlayerPos(id,x,y,z);
SetPlayerPos(playerid,x+1,y+1,z);
new str[128];
GetPlayerName(id,str,sizeof(str));
format(str,sizeof(str),\"{FF0000} Oda teleportáltál {EECCCC} %s-hoz/hez!\",str);
SendClientMessage(playerid,COLOR_RED,str);
}
}
else if(vip[playerid] == 0)
{
SendClientMessage(playerid,COLOR_RED,\"HIBA: Nem vagy V.I.P\");
}
}
CMD:vjail(playerid, params[])
{
if(vip[playerid] == 1)
{
new id;
if(sscanf(params , \"u\" ,id)) SendClientMessage(playerid, COLOR_WHITE, \"Használat : /vjail [id].\");
else if (id == INVALID_PLAYER_ID) SendClientMessage(playerid, COLOR_RED, \"HIBA: Rossz játékos id!\");
else {
new str[200];
GetPlayerName(playerid,str,sizeof(str));
format(str,sizeof(str),\"{00FFFF} [VIP]%s {FF6600} börtönbe zárt!\",str);
SendClientMessage(id,COLOR_RED,str);
SetPlayerPos(id,223.3760,109.9426,999.0156);
SetPlayerInterior(id,10);
TogglePlayerControllable(id, 0);
GetPlayerName(id,str,sizeof(str));
format(string,sizeof(string),\"{FF6600} Börtönbe zártad {00FFFF} %s-t!\",str);
SendClientMessage(playerid,COLOR_RED,str);
}
}
else if(vip[playerid] == 0)
{
SendClientMessage(playerid,COLOR_RED,\"HIBA: Nem vagy V.I.P\");
}
return 1;
}
CMD:vunjail(playerid, params[])
{
if(vip[playerid] == 1)
{
new id;
if(sscanf(params , \"u\" ,id)) SendClientMessage(playerid, COLOR_WHITE, \"Használat : /vunjail [id].\");
else if (id == INVALID_PLAYER_ID) SendClientMessage(playerid, COLOR_RED, \"HIBA: Rossz játékos id!\");
else {
SpawnPlayer(id);
new str[200];
GetPlayerName(playerid,str,sizeof(str));
format(str,sizeof(str),\"{00FFFF}[VIP]%s {FF6600}kiengedett a börtönbõl!\",str);
SendClientMessage(id,COLOR_RED,str);
TogglePlayerControllable(id, 1);
GetPlayerName(id,str,sizeof(str));
format(string,sizeof(string),\"{FF6600}Kiengedted a {00FFFF}börtönbõl %s-t!\",str);
SendClientMessage(playerid,COLOR_RED,str);
}
}
else if(vip[playerid] == 0)
{
SendClientMessage(playerid,COLOR_RED,\"HIBA: Nem vagy V.I.P\");
}
return 1;
}
CMD:vfix(playerid, params[])
{
if(vip[playerid] == 1)
{
if(IsPlayerInAnyVehicle(playerid))
{
new vehicle = GetPlayerVehicleID(playerid);
RepairVehicle(vehicle);
SetVehicleHealth(vehicle,1000);
SendClientMessage(playerid,COLOR_RED,\"Jármûved javítva!\");
}
else
{
SendClientMessage(playerid,COLOR_RED,\"HIBA: Nem vagy jármûben!\");
}
}
else if(vip[playerid] == 0)
{
SendClientMessage(playerid,COLOR_RED,\"HIBA: Nem vagy V.I.P!\");
}
return 1;
}
CMD:advip(playerid, params[])
{
if(IsPlayerAdmin(playerid)) {
new id;
if(sscanf(params,\"u\", id)) return SendClientMessage(playerid,COLOR_WHITE,\"Használat: /advip [id]\");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,\"HIBA: Rossz játékos id!\");
else {
new str[128];
new name[64];
GetPlayerName(id,str,sizeof(str));
format(file, sizeof(file), \"/vip/%s.ini\", name);
if(dini_Exists(file)) return SendClientMessage(playerid, COLOR_RED, \"A játékos már vip tag!\");
format(str,sizeof(str),\"Kinevezted %s-t V.I.P-nak!\",str);
dini_Create(file);
SendClientMessage(playerid,COLOR_WHITE,string);
vip[id] = 1;
GetPlayerName(playerid,string,sizeof(str));
format(str,sizeof(str), \"[Adminisztrátor]:%s V.I.P jogott adott neked, Gratulálunk!\", str);
SendClientMessage(id,COLOR_WHITE,str);
}
}
else if(AdminLevel[playerid] < 4) {
SendClientMessage(playerid,COLOR_RED,\"HIBA: Túl kicsi az admin szinted ehhez a parancshoz!\");
}
return 1;
}
CMD:vipel(playerid, params[])
{
if(IsPlayerAdmin(playerid)) {
new id;
if(sscanf(params,\"u\", id)) return SendClientMessage(playerid,COLOR_WHITE,\"Használat: /vipel [id]\");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,\"HIBA: Rossz játékos id!\");
else {
new str[126];
GetPlayerName(id,str,sizeof(str));
format(str,sizeof(str),\"Törölted %s V.I.P jogát!\",str);
dini_Remove(file);
SendClientMessage(playerid,COLOR_RED,str);
vip[id] = 0;
GetPlayerName(playerid,str,sizeof(str));
format(str,sizeof(str), \"[Adminisztrátor]:%s elvette a V.I.P jogod, sajnáljuk!\", str);
SendClientMessage(id,COLOR_RED,str);
}
}
else if(AdminLevel[playerid] < 4) {
SendClientMessage(playerid,COLOR_RED,\"HIBA: Túl kicsi az admin szinted ehhez a parancshoz!\");
}
return 1;
}

6
Szkript kérések / Banda rendszer
« Dátum: 2012. május 23. - 12:13:18 »
Sziasztok!
Szeretnék egy ebbõl a scriptbõl egy olyan scriptet irni hogy /bandak parancsal mutassa a banda tagokat...
És hogy ha valaki egy bandába lépett akkor a dini mentse..
Elõre is kösz!
 
CMD:bandalogin(playerid, params[])
     {
     if(IsPlayerInLogin[playerid] == 1) return SendClientMessage(playerid,0xAA3333AA,\"Te már loginban vagy!!!{FFFFFF}(/quitbanda)\");
     ShowPlayerDialog(playerid, 99, DIALOG_STYLE_INPUT, \"Banda Bejelentkezés!\", \"Bejelentkezéshez: {FFFFFF}Banda1 {FF0000}Kód vagy {FFFFFF}Banda2 {FF0000}kód kell!\", \"Bejelentkez!\", \"Vissza\");
     return 1;
     }
CMD:quitbanda(playerid, params[])
     {
     if(IsPlayerInLogin[playerid] == 0) return SendClientMessage(playerid,0xAA3333AA,\"{FF0000}Nem vagy bandában!!!\");
     IsPlayerInLogin[playerid] = 0;//Kiveszi a loginból
     return 1;
     }

7
Segítségkérés / Host
« Dátum: 2012. május 21. - 18:47:24 »
Sziasztok!
..::Secur::..-tól van a HOST és csak õ tudja restartolni kellene valalami program vagy nem tudom mi amire fellépek és én is tudom ujra inditani a szerót...

8
Sziasztok!
az a lényege hogz leirod meiket hasznlod OPERA, GOOGLE CHROME, MOZZILA, INTERNET EXPLORER
én: OPERA, GOOGLE CHROME

9
Képek / Videók / 30/30 jeeeeeeeeeeeeeeeeeeeeee
« Dátum: 2012. május 20. - 19:50:31 »

10
Segítségkérés / KM rosszul mér..
« Dátum: 2012. május 20. - 15:34:11 »
Sziasztok!
Ez a KM ora rosszul mér valaki segit?
 
/*
                                     Copyrightœ ® LuxurioN™
________________________________________________________________________________________________
  _                                                          _               _ _       _
| |                                                        |_|             |   \\     | |
| |                       _       _               _ _ _     _    _ _ _ _   | |\\ \\    | |
| |           | |   | |  | |     | |  | |   | |  |  _  \\   | |  |  _ _  |  | | \\ \\   | |
| |           | |   | |   | |   | |   | |   | |  | |_| /   | |  | |   | |  | |  \\ \\  | |
| |           | |   | |    | | | |    | |   | |  |  _ \\    | |  | |   | |  | |   \\ \\ | |
| |_ _ _ _ _  | |_ _| |   | |   | |   | |_ _| |  | | \\ \\   | |  | |_ _| |  | |    \\ \\| |
|_ _ _ _ _ _| |_ _ _ _|  |_|     |_|  |_ _ _ _|  |_|  \\_|  |_|  |_ _ _ _|  |_|     \\_ _|
________________________________________________________________________________________________
                  .:: Do not remove the Credits ::.
 
                                 **************************
                         LuX SpeedoMeter  v2.0
                                 **************************
*/
#include <a_samp>
#define GREEN          0x21DD00FF
#define RED          0xE60000FF
#define YELLOW          0xFFFF00FF
#define ORANGE          0xF97804FF
#define LIGHTRED       0xFF8080FF
#define LIGHTBLUE       0x00C2ECFF
#define PURPLE          0xB360FDFF
#define BLUE          0x1229FAFF
#define LIGHTGREEN       0x38FF06FF
#define DARKPINK       0xE100E1FF
#define DARKGREEN       0x008040FF
#define ANNOUNCEMENT    0x6AF7E1FF
#define GREY          0xCECECEFF
#define PINK          0xD52DFFFF
#define DARKGREY       0x626262FF
#define AQUAGREEN      0x03D687FF
#define WHITE          0xFFFFFFFF
#define PLAYERS 200
#define L_VEHICLE 200
 
//******************************************************************************
// SpeedoMeter Configurations
//******************************************************************************
//::::::::::::::::::::::::::::::::::::
// -> Functions Config <-
//::::::::::::::::::::::::::::::::::::
#define VehLockTime      1                //Define the MAX Time for Car Locked! (In Minutes!)
#define VehicleMaxSpeed  100000                //Define the Speed Limit! (KPH)
#define SpeedoLogoText   \"KM ORA\" //Define Speedo Logo (Text in Speedo Top)
#define UpdateConfig     200               //Update Speedo functions in ... (Miliseconds)
 
//::::::::::::::::::::::::::::::::::::
// -> Speedo TextDraw Config <-
//::::::::::::::::::::::::::::::::::::
#define TextBox         true   //Enable/Disable Speedo Box
#define TextTopLines    true   //Enable/Disable Speedo Top Lines
#define TextSideLines   true   //Enable/Disable Speedo Side Lines
#define LogoName        true   //Enable/Disable Speedo LogoName
//Enable = true || Disable = false
 
//::::::::::::::::::::::::::::::::::::
// -> Speedo Colors Config <-
//::::::::::::::::::::::::::::::::::::
#define BoxColor         0xffffffff     //Color of Speedo Box
#define LogoColor        0xffffffff     //Color of Seedo Logo (Define logo in \"SpeedoLogoText\" (Line 57)
#define SideLinesColor   0xffffffff     //Color of Speedo Side Lines
#define TopLinesColor    0xffffffff     //Color of Speedo Top lines
#define CategoriesColor  \"~b~\"          //Color of (Vehicle,Health,Altitude,Gps)
#define MPH_KPH_Color    \"~g~\"          //Color of (MPH,KPH)
//******************************************************************************
 
//-----------------------------------------> Change
#define MAX_ZONE_NAME 28
new Text:LBox[MAX_PLAYERS];
new Text:LLine1[MAX_PLAYERS];
new Text:LLine2[MAX_PLAYERS];
new Text:LLine3[MAX_PLAYERS];
new Text:LLine4[MAX_PLAYERS];
new Text:LCredits[MAX_PLAYERS];
new Text:Lmph[MAX_PLAYERS];
new Text:LFunc[MAX_PLAYERS];
new LuX_SpeedoMeter[MAX_PLAYERS];
new VehicleStatus[MAX_VEHICLES];
new lstring[256];
new lstr[256];
new LUnFreeze;
enum MainZone{
Zone_Name[28], Float:Zone_Area[6] };
static const SanAndreasZones[][MainZone] = {
{\"The Big Ear\",                   {-410.00,1403.30,-3.00,-137.90,1681.20,200.00}},
{\"Aldea Malvada\",               {-1372.10,2498.50,0.00,-1277.50,2615.30,200.00}},
{\"Angel Pine\",                  {-2324.90,-2584.20,-6.10,-1964.20,-2212.10,200.00}},
{\"Arco del Oeste\",              {-901.10,2221.80,0.00,-592.00,2571.90,200.00}},
{\"Avispa Country Club\",         {-2646.40,-355.40,0.00,-2270.00,-222.50,200.00}},
{\"Avispa Country Club\",         {-2831.80,-430.20,-6.10,-2646.40,-222.50,200.00}},
{\"Avispa Country Club\",         {-2361.50,-417.10,0.00,-2270.00,-355.40,200.00}},
{\"Avispa Country Club\",         {-2667.80,-302.10,-28.80,-2646.40,-262.30,71.10}},
{\"Avispa Country Club\",         {-2470.00,-355.40,0.00,-2270.00,-318.40,46.10}},
{\"Avispa Country Club\",         {-2550.00,-355.40,0.00,-2470.00,-318.40,39.70}},
{\"Back o Beyond\",               {-1166.90,-2641.10,0.00,-321.70,-1856.00,200.00}},
{\"Battery Point\",               {-2741.00,1268.40,-4.50,-2533.00,1490.40,200.00}},
{\"Bayside\",                     {-2741.00,2175.10,0.00,-2353.10,2722.70,200.00}},
{\"Bayside Marina\",              {-2353.10,2275.70,0.00,-2153.10,2475.70,200.00}},
{\"Beacon Hill\",                 {-399.60,-1075.50,-1.40,-319.00,-977.50,198.50}},
{\"Blackfield\",                  {964.30,1203.20,-89.00,1197.30,1403.20,110.90}},
{\"Blackfield\",                  {964.30,1403.20,-89.00,1197.30,1726.20,110.90}},
{\"Blackfield Chapel\",           {1375.60,596.30,-89.00,1558.00,823.20,110.90}},
{\"Blackfield Chapel\",           {1325.60,596.30,-89.00,1375.60,795.00,110.90}},
{\"Blackfield Intersection\",     {1197.30,1044.60,-89.00,1277.00,1163.30,110.90}},
{\"Blackfield Intersection\",     {1166.50,795.00,-89.00,1375.60,1044.60,110.90}},
{\"Blackfield Intersection\",     {1277.00,1044.60,-89.00,1315.30,1087.60,110.90}},
{\"Blackfield Intersection\",     {1375.60,823.20,-89.00,1457.30,919.40,110.90}},
{\"Blueberry\",                   {104.50,-220.10,2.30,349.60,152.20,200.00}},
{\"Blueberry\",                   {19.60,-404.10,3.80,349.60,-220.10,200.00}},
{\"Blueberry Acres\",             {-319.60,-220.10,0.00,104.50,293.30,200.00}},
{\"Caligula\'s Palace\",           {2087.30,1543.20,-89.00,2437.30,1703.20,110.90}},
{\"Caligula\'s Palace\",           {2137.40,1703.20,-89.00,2437.30,1783.20,110.90}},
{\"Calton Heights\",              {-2274.10,744.10,-6.10,-1982.30,1358.90,200.00}},
{\"Chinatown\",                   {-2274.10,578.30,-7.60,-2078.60,744.10,200.00}},
{\"City Hall\",                   {-2867.80,277.40,-9.10,-2593.40,458.40,200.00}},
{\"Come-A-Lot\",                  {2087.30,943.20,-89.00,2623.10,1203.20,110.90}},
{\"Commerce\",                    {1323.90,-1842.20,-89.00,1701.90,-1722.20,110.90}},
{\"Commerce\",                    {1323.90,-1722.20,-89.00,1440.90,-1577.50,110.90}},
{\"Commerce\",                    {1370.80,-1577.50,-89.00,1463.90,-1384.90,110.90}},
{\"Commerce\",                    {1463.90,-1577.50,-89.00,1667.90,-1430.80,110.90}},
{\"Commerce\",                    {1583.50,-1722.20,-89.00,1758.90,-1577.50,110.90}},
{\"Commerce\",                    {1667.90,-1577.50,-89.00,1812.60,-1430.80,110.90}},
{\"Conference Center\",           {1046.10,-1804.20,-89.00,1323.90,-1722.20,110.90}},
{\"Conference Center\",           {1073.20,-1842.20,-89.00,1323.90,-1804.20,110.90}},
{\"Cranberry Station\",           {-2007.80,56.30,0.00,-1922.00,224.70,100.00}},
{\"Creek\",                       {2749.90,1937.20,-89.00,2921.60,2669.70,110.90}},
{\"Dillimore\",                   {580.70,-674.80,-9.50,861.00,-404.70,200.00}},
{\"Doherty\",                     {-2270.00,-324.10,-0.00,-1794.90,-222.50,200.00}},
{\"Doherty\",                     {-2173.00,-222.50,-0.00,-1794.90,265.20,200.00}},
{\"Downtown\",                    {-1982.30,744.10,-6.10,-1871.70,1274.20,200.00}},
{\"Downtown\",                    {-1871.70,1176.40,-4.50,-1620.30,1274.20,200.00}},
{\"Downtown\",                    {-1700.00,744.20,-6.10,-1580.00,1176.50,200.00}},
{\"Downtown\",                    {-1580.00,744.20,-6.10,-1499.80,1025.90,200.00}},
{\"Downtown\",                    {-2078.60,578.30,-7.60,-1499.80,744.20,200.00}},
{\"Downtown\",                    {-1993.20,265.20,-9.10,-1794.90,578.30,200.00}},
{\"Downtown Los Santos\",         {1463.90,-1430.80,-89.00,1724.70,-1290.80,110.90}},
{\"Downtown Los Santos\",         {1724.70,-1430.80,-89.00,1812.60,-1250.90,110.90}},
{\"Downtown Los Santos\",         {1463.90,-1290.80,-89.00,1724.70,-1150.80,110.90}},
{\"Downtown Los Santos\",         {1370.80,-1384.90,-89.00,1463.90,-1170.80,110.90}},
{\"Downtown Los Santos\",         {1724.70,-1250.90,-89.00,1812.60,-1150.80,110.90}},
{\"Downtown Los Santos\",         {1370.80,-1170.80,-89.00,1463.90,-1130.80,110.90}},
{\"Downtown Los Santos\",         {1378.30,-1130.80,-89.00,1463.90,-1026.30,110.90}},
{\"Downtown Los Santos\",         {1391.00,-1026.30,-89.00,1463.90,-926.90,110.90}},
{\"Downtown Los Santos\",         {1507.50,-1385.20,110.90,1582.50,-1325.30,335.90}},
{\"East Beach\",                  {2632.80,-1852.80,-89.00,2959.30,-1668.10,110.90}},
{\"East Beach\",                  {2632.80,-1668.10,-89.00,2747.70,-1393.40,110.90}},
{\"East Beach\",                  {2747.70,-1668.10,-89.00,2959.30,-1498.60,110.90}},
{\"East Beach\",                  {2747.70,-1498.60,-89.00,2959.30,-1120.00,110.90}},
{\"East Los Santos\",             {2421.00,-1628.50,-89.00,2632.80,-1454.30,110.90}},
{\"East Los Santos\",             {2222.50,-1628.50,-89.00,2421.00,-1494.00,110.90}},
{\"East Los Santos\",             {2266.20,-1494.00,-89.00,2381.60,-1372.00,110.90}},
{\"East Los Santos\",             {2381.60,-1494.00,-89.00,2421.00,-1454.30,110.90}},
{\"East Los Santos\",             {2281.40,-1372.00,-89.00,2381.60,-1135.00,110.90}},
{\"East Los Santos\",             {2381.60,-1454.30,-89.00,2462.10,-1135.00,110.90}},
{\"East Los Santos\",             {2462.10,-1454.30,-89.00,2581.70,-1135.00,110.90}},
{\"Easter Basin\",                {-1794.90,249.90,-9.10,-1242.90,578.30,200.00}},
{\"Easter Basin\",                {-1794.90,-50.00,-0.00,-1499.80,249.90,200.00}},
{\"Easter Bay Airport\",          {-1499.80,-50.00,-0.00,-1242.90,249.90,200.00}},
{\"Easter Bay Airport\",          {-1794.90,-730.10,-3.00,-1213.90,-50.00,200.00}},
{\"Easter Bay Airport\",          {-1213.90,-730.10,0.00,-1132.80,-50.00,200.00}},
{\"Easter Bay Airport\",          {-1242.90,-50.00,0.00,-1213.90,578.30,200.00}},
{\"Easter Bay Airport\",          {-1213.90,-50.00,-4.50,-947.90,578.30,200.00}},
{\"Easter Bay Airport\",          {-1315.40,-405.30,15.40,-1264.40,-209.50,25.40}},
{\"Easter Bay Airport\",          {-1354.30,-287.30,15.40,-1315.40,-209.50,25.40}},
{\"Easter Bay Airport\",          {-1490.30,-209.50,15.40,-1264.40,-148.30,25.40}},
{\"Easter Bay Chemicals\",        {-1132.80,-768.00,0.00,-956.40,-578.10,200.00}},
{\"Easter Bay Chemicals\",        {-1132.80,-787.30,0.00,-956.40,-768.00,200.00}},
{\"El Castillo del Diablo\",      {-464.50,2217.60,0.00,-208.50,2580.30,200.00}},
{\"El Castillo del Diablo\",      {-208.50,2123.00,-7.60,114.00,2337.10,200.00}},
{\"El Castillo del Diablo\",      {-208.50,2337.10,0.00,8.40,2487.10,200.00}},
{\"El Corona\",                   {1812.60,-2179.20,-89.00,1970.60,-1852.80,110.90}},
{\"El Corona\",                   {1692.60,-2179.20,-89.00,1812.60,-1842.20,110.90}},
{\"El Quebrados\",                {-1645.20,2498.50,0.00,-1372.10,2777.80,200.00}},
{\"Esplanade East\",              {-1620.30,1176.50,-4.50,-1580.00,1274.20,200.00}},
{\"Esplanade East\",              {-1580.00,1025.90,-6.10,-1499.80,1274.20,200.00}},
{\"Esplanade East\",              {-1499.80,578.30,-79.60,-1339.80,1274.20,20.30}},
{\"Esplanade North\",             {-2533.00,1358.90,-4.50,-1996.60,1501.20,200.00}},
{\"Esplanade North\",             {-1996.60,1358.90,-4.50,-1524.20,1592.50,200.00}},
{\"Esplanade North\",             {-1982.30,1274.20,-4.50,-1524.20,1358.90,200.00}},
{\"Fallen Tree\",                 {-792.20,-698.50,-5.30,-452.40,-380.00,200.00}},
{\"Fallow Bridge\",               {434.30,366.50,0.00,603.00,555.60,200.00}},
{\"Fern Ridge\",                  {508.10,-139.20,0.00,1306.60,119.50,200.00}},
{\"Financial\",                   {-1871.70,744.10,-6.10,-1701.30,1176.40,300.00}},
{\"Fisher\'s Lagoon\",             {1916.90,-233.30,-100.00,2131.70,13.80,200.00}},
{\"Flint Intersection\",          {-187.70,-1596.70,-89.00,17.00,-1276.60,110.90}},
{\"Flint Range\",                 {-594.10,-1648.50,0.00,-187.70,-1276.60,200.00}},
{\"Fort Carson\",                 {-376.20,826.30,-3.00,123.70,1220.40,200.00}},
{\"Foster Valley\",               {-2270.00,-430.20,-0.00,-2178.60,-324.10,200.00}},
{\"Foster Valley\",               {-2178.60,-599.80,-0.00,-1794.90,-324.10,200.00}},
{\"Foster Valley\",               {-2178.60,-1115.50,0.00,-1794.90,-599.80,200.00}},
{\"Foster Valley\",               {-2178.60,-1250.90,0.00,-1794.90,-1115.50,200.00}},
{\"Frederick Bridge\",            {2759.20,296.50,0.00,2774.20,594.70,200.00}},
{\"Gant Bridge\",                 {-2741.40,1659.60,-6.10,-2616.40,2175.10,200.00}},
{\"Gant Bridge\",                 {-2741.00,1490.40,-6.10,-2616.40,1659.60,200.00}},
{\"Ganton\",                      {2222.50,-1852.80,-89.00,2632.80,-1722.30,110.90}},
{\"Ganton\",                      {2222.50,-1722.30,-89.00,2632.80,-1628.50,110.90}},
{\"Garcia\",                      {-2411.20,-222.50,-0.00,-2173.00,265.20,200.00}},
{\"Garcia\",                      {-2395.10,-222.50,-5.30,-2354.00,-204.70,200.00}},
{\"Garver Bridge\",               {-1339.80,828.10,-89.00,-1213.90,1057.00,110.90}},
{\"Garver Bridge\",               {-1213.90,950.00,-89.00,-1087.90,1178.90,110.90}},
{\"Garver Bridge\",               {-1499.80,696.40,-179.60,-1339.80,925.30,20.30}},
{\"Glen Park\",                   {1812.60,-1449.60,-89.00,1996.90,-1350.70,110.90}},
{\"Glen Park\",                   {1812.60,-1100.80,-89.00,1994.30,-973.30,110.90}},
{\"Glen Park\",                   {1812.60,-1350.70,-89.00,2056.80,-1100.80,110.90}},
{\"Green Palms\",                 {176.50,1305.40,-3.00,338.60,1520.70,200.00}},
{\"Greenglass College\",          {964.30,1044.60,-89.00,1197.30,1203.20,110.90}},
{\"Greenglass College\",          {964.30,930.80,-89.00,1166.50,1044.60,110.90}},
{\"Hampton Barns\",               {603.00,264.30,0.00,761.90,366.50,200.00}},
{\"Hankypanky Point\",            {2576.90,62.10,0.00,2759.20,385.50,200.00}},
{\"Harry Gold Parkway\",          {1777.30,863.20,-89.00,1817.30,2342.80,110.90}},
{\"Hashbury\",                    {-2593.40,-222.50,-0.00,-2411.20,54.70,200.00}},
{\"Hilltop Farm\",                {967.30,-450.30,-3.00,1176.70,-217.90,200.00}},
{\"Hunter Quarry\",               {337.20,710.80,-115.20,860.50,1031.70,203.70}},
{\"Idlewood\",                    {1812.60,-1852.80,-89.00,1971.60,-1742.30,110.90}},
{\"Idlewood\",                    {1812.60,-1742.30,-89.00,1951.60,-1602.30,110.90}},
{\"Idlewood\",                    {1951.60,-1742.30,-89.00,2124.60,-1602.30,110.90}},
{\"Idlewood\",                    {1812.60,-1602.30,-89.00,2124.60,-1449.60,110.90}},
{\"Idlewood\",                    {2124.60,-1742.30,-89.00,2222.50,-1494.00,110.90}},
{\"Idlewood\",                    {1971.60,-1852.80,-89.00,2222.50,-1742.30,110.90}},
{\"Jefferson\",                   {1996.90,-1449.60,-89.00,2056.80,-1350.70,110.90}},
{\"Jefferson\",                   {2124.60,-1494.00,-89.00,2266.20,-1449.60,110.90}},
{\"Jefferson\",                   {2056.80,-1372.00,-89.00,2281.40,-1210.70,110.90}},
{\"Jefferson\",                   {2056.80,-1210.70,-89.00,2185.30,-1126.30,110.90}},
{\"Jefferson\",                   {2185.30,-1210.70,-89.00,2281.40,-1154.50,110.90}},
{\"Jefferson\",                   {2056.80,-1449.60,-89.00,2266.20,-1372.00,110.90}},
{\"Julius Thruway East\",         {2623.10,943.20,-89.00,2749.90,1055.90,110.90}},
{\"Julius Thruway East\",         {2685.10,1055.90,-89.00,2749.90,2626.50,110.90}},
{\"Julius Thruway East\",         {2536.40,2442.50,-89.00,2685.10,2542.50,110.90}},
{\"Julius Thruway East\",         {2625.10,2202.70,-89.00,2685.10,2442.50,110.90}},
{\"Julius Thruway North\",        {2498.20,2542.50,-89.00,2685.10,2626.50,110.90}},
{\"Julius Thruway North\",        {2237.40,2542.50,-89.00,2498.20,2663.10,110.90}},
{\"Julius Thruway North\",        {2121.40,2508.20,-89.00,2237.40,2663.10,110.90}},
{\"Julius Thruway North\",        {1938.80,2508.20,-89.00,2121.40,2624.20,110.90}},
{\"Julius Thruway North\",        {1534.50,2433.20,-89.00,1848.40,2583.20,110.90}},
{\"Julius Thruway North\",        {1848.40,2478.40,-89.00,1938.80,2553.40,110.90}},
{\"Julius Thruway North\",        {1704.50,2342.80,-89.00,1848.40,2433.20,110.90}},
{\"Julius Thruway North\",        {1377.30,2433.20,-89.00,1534.50,2507.20,110.90}},
{\"Julius Thruway South\",        {1457.30,823.20,-89.00,2377.30,863.20,110.90}},
{\"Julius Thruway South\",        {2377.30,788.80,-89.00,2537.30,897.90,110.90}},
{\"Julius Thruway West\",         {1197.30,1163.30,-89.00,1236.60,2243.20,110.90}},
{\"Julius Thruway West\",         {1236.60,2142.80,-89.00,1297.40,2243.20,110.90}},
{\"Juniper Hill\",                {-2533.00,578.30,-7.60,-2274.10,968.30,200.00}},
{\"Juniper Hollow\",              {-2533.00,968.30,-6.10,-2274.10,1358.90,200.00}},
{\"K.A.C.C. Military Fuels\",     {2498.20,2626.50,-89.00,2749.90,2861.50,110.90}},
{\"Kincaid Bridge\",              {-1339.80,599.20,-89.00,-1213.90,828.10,110.90}},
{\"Kincaid Bridge\",              {-1213.90,721.10,-89.00,-1087.90,950.00,110.90}},
{\"Kincaid Bridge\",              {-1087.90,855.30,-89.00,-961.90,986.20,110.90}},
{\"King\'s\",                      {-2329.30,458.40,-7.60,-1993.20,578.30,200.00}},
{\"King\'s\",                      {-2411.20,265.20,-9.10,-1993.20,373.50,200.00}},
{\"King\'s\",                      {-2253.50,373.50,-9.10,-1993.20,458.40,200.00}},
{\"LVA Freight Depot\",           {1457.30,863.20,-89.00,1777.40,1143.20,110.90}},
{\"LVA Freight Depot\",           {1375.60,919.40,-89.00,1457.30,1203.20,110.90}},
{\"LVA Freight Depot\",           {1277.00,1087.60,-89.00,1375.60,1203.20,110.90}},
{\"LVA Freight Depot\",           {1315.30,1044.60,-89.00,1375.60,1087.60,110.90}},
{\"LVA Freight Depot\",           {1236.60,1163.40,-89.00,1277.00,1203.20,110.90}},
{\"Las Barrancas\",               {-926.10,1398.70,-3.00,-719.20,1634.60,200.00}},
{\"Las Brujas\",                  {-365.10,2123.00,-3.00,-208.50,2217.60,200.00}},
{\"Las Colinas\",                 {1994.30,-1100.80,-89.00,2056.80,-920.80,110.90}},
{\"Las Colinas\",                 {2056.80,-1126.30,-89.00,2126.80,-920.80,110.90}},
{\"Las Colinas\",                 {2185.30,-1154.50,-89.00,2281.40,-934.40,110.90}},
{\"Las Colinas\",                 {2126.80,-1126.30,-89.00,2185.30,-934.40,110.90}},
{\"Las Colinas\",                 {2747.70,-1120.00,-89.00,2959.30,-945.00,110.90}},
{\"Las Colinas\",                 {2632.70,-1135.00,-89.00,2747.70,-945.00,110.90}},
{\"Las Colinas\",                 {2281.40,-1135.00,-89.00,2632.70,-945.00,110.90}},
{\"Las Payasadas\",               {-354.30,2580.30,2.00,-133.60,2816.80,200.00}},
{\"Las Venturas Airport\",        {1236.60,1203.20,-89.00,1457.30,1883.10,110.90}},
{\"Las Venturas Airport\",        {1457.30,1203.20,-89.00,1777.30,1883.10,110.90}},
{\"Las Venturas Airport\",        {1457.30,1143.20,-89.00,1777.40,1203.20,110.90}},
{\"Las Venturas Airport\",        {1515.80,1586.40,-12.50,1729.90,1714.50,87.50}},
{\"Last Dime Motel\",             {1823.00,596.30,-89.00,1997.20,823.20,110.90}},
{\"Leafy Hollow\",                {-1166.90,-1856.00,0.00,-815.60,-1602.00,200.00}},
{\"Liberty City\",                {-1000.00,400.00,1300.00,-700.00,600.00,1400.00}},
{\"Lil\' Probe Inn\",              {-90.20,1286.80,-3.00,153.80,1554.10,200.00}},
{\"Linden Side\",                 {2749.90,943.20,-89.00,2923.30,1198.90,110.90}},
{\"Linden Station\",              {2749.90,1198.90,-89.00,2923.30,1548.90,110.90}},
{\"Linden Station\",              {2811.20,1229.50,-39.50,2861.20,1407.50,60.40}},
{\"Little Mexico\",               {1701.90,-1842.20,-89.00,1812.60,-1722.20,110.90}},
{\"Little Mexico\",               {1758.90,-1722.20,-89.00,1812.60,-1577.50,110.90}},
{\"Los Flores\",                  {2581.70,-1454.30,-89.00,2632.80,-1393.40,110.90}},
{\"Los Flores\",                  {2581.70,-1393.40,-89.00,2747.70,-1135.00,110.90}},
{\"Los Santos International\",    {1249.60,-2394.30,-89.00,1852.00,-2179.20,110.90}},
{\"Los Santos International\",    {1852.00,-2394.30,-89.00,2089.00,-2179.20,110.90}},
{\"Los Santos International\",    {1382.70,-2730.80,-89.00,2201.80,-2394.30,110.90}},
{\"Los Santos International\",    {1974.60,-2394.30,-39.00,2089.00,-2256.50,60.90}},
{\"Los Santos International\",    {1400.90,-2669.20,-39.00,2189.80,-2597.20,60.90}},
{\"Los Santos International\",    {2051.60,-2597.20,-39.00,2152.40,-2394.30,60.90}},
{\"Marina\",                      {647.70,-1804.20,-89.00,851.40,-1577.50,110.90}},
{\"Marina\",                      {647.70,-1577.50,-89.00,807.90,-1416.20,110.90}},
{\"Marina\",                      {807.90,-1577.50,-89.00,926.90,-1416.20,110.90}},
{\"Market\",                      {787.40,-1416.20,-89.00,1072.60,-1310.20,110.90}},
{\"Market\",                      {952.60,-1310.20,-89.00,1072.60,-1130.80,110.90}},
{\"Market\",                      {1072.60,-1416.20,-89.00,1370.80,-1130.80,110.90}},
{\"Market\",                      {926.90,-1577.50,-89.00,1370.80,-1416.20,110.90}},
{\"Market Station\",              {787.40,-1410.90,-34.10,866.00,-1310.20,65.80}},
{\"Martin Bridge\",               {-222.10,293.30,0.00,-122.10,476.40,200.00}},
{\"Missionary Hill\",             {-2994.40,-811.20,0.00,-2178.60,-430.20,200.00}},
{\"Montgomery\",                  {1119.50,119.50,-3.00,1451.40,493.30,200.00}},
{\"Montgomery\",                  {1451.40,347.40,-6.10,1582.40,420.80,200.00}},
{\"Montgomery Intersection\",     {1546.60,208.10,0.00,1745.80,347.40,200.00}},
{\"Montgomery Intersection\",     {1582.40,347.40,0.00,1664.60,401.70,200.00}},
{\"Mulholland\",                  {1414.00,-768.00,-89.00,1667.60,-452.40,110.90}},
{\"Mulholland\",                  {1281.10,-452.40,-89.00,1641.10,-290.90,110.90}},
{\"Mulholland\",                  {1269.10,-768.00,-89.00,1414.00,-452.40,110.90}},
{\"Mulholland\",                  {1357.00,-926.90,-89.00,1463.90,-768.00,110.90}},
{\"Mulholland\",                  {1318.10,-910.10,-89.00,1357.00,-768.00,110.90}},
{\"Mulholland\",                  {1169.10,-910.10,-89.00,1318.10,-768.00,110.90}},
{\"Mulholland\",                  {768.60,-954.60,-89.00,952.60,-860.60,110.90}},
{\"Mulholland\",                  {687.80,-860.60,-89.00,911.80,-768.00,110.90}},
{\"Mulholland\",                  {737.50,-768.00,-89.00,1142.20,-674.80,110.90}},
{\"Mulholland\",                  {1096.40,-910.10,-89.00,1169.10,-768.00,110.90}},
{\"Mulholland\",                  {952.60,-937.10,-89.00,1096.40,-860.60,110.90}},
{\"Mulholland\",                  {911.80,-860.60,-89.00,1096.40,-768.00,110.90}},
{\"Mulholland\",                  {861.00,-674.80,-89.00,1156.50,-600.80,110.90}},
{\"Mulholland Intersection\",     {1463.90,-1150.80,-89.00,1812.60,-768.00,110.90}},
{\"North Rock\",                  {2285.30,-768.00,0.00,2770.50,-269.70,200.00}},
{\"Ocean Docks\",                 {2373.70,-2697.00,-89.00,2809.20,-2330.40,110.90}},
{\"Ocean Docks\",                 {2201.80,-2418.30,-89.00,2324.00,-2095.00,110.90}},
{\"Ocean Docks\",                 {2324.00,-2302.30,-89.00,2703.50,-2145.10,110.90}},
{\"Ocean Docks\",                 {2089.00,-2394.30,-89.00,2201.80,-2235.80,110.90}},
{\"Ocean Docks\",                 {2201.80,-2730.80,-89.00,2324.00,-2418.30,110.90}},
{\"Ocean Docks\",                 {2703.50,-2302.30,-89.00,2959.30,-2126.90,110.90}},
{\"Ocean Docks\",                 {2324.00,-2145.10,-89.00,2703.50,-2059.20,110.90}},
{\"Ocean Flats\",                 {-2994.40,277.40,-9.10,-2867.80,458.40,200.00}},
{\"Ocean Flats\",                 {-2994.40,-222.50,-0.00,-2593.40,277.40,200.00}},
{\"Ocean Flats\",                 {-2994.40,-430.20,-0.00,-2831.80,-222.50,200.00}},
{\"Octane Springs\",              {338.60,1228.50,0.00,664.30,1655.00,200.00}},
{\"Old Venturas Strip\",          {2162.30,2012.10,-89.00,2685.10,2202.70,110.90}},
{\"Palisades\",                   {-2994.40,458.40,-6.10,-2741.00,1339.60,200.00}},
{\"Palomino Creek\",              {2160.20,-149.00,0.00,2576.90,228.30,200.00}},
{\"Paradiso\",                    {-2741.00,793.40,-6.10,-2533.00,1268.40,200.00}},
{\"Pershing Square\",             {1440.90,-1722.20,-89.00,1583.50,-1577.50,110.90}},
{\"Pilgrim\",                     {2437.30,1383.20,-89.00,2624.40,1783.20,110.90}},
{\"Pilgrim\",                     {2624.40,1383.20,-89.00,2685.10,1783.20,110.90}},
{\"Pilson Intersection\",         {1098.30,2243.20,-89.00,1377.30,2507.20,110.90}},
{\"Pirates in Men\'s Pants\",      {1817.30,1469.20,-89.00,2027.40,1703.20,110.90}},
{\"Playa del Seville\",           {2703.50,-2126.90,-89.00,2959.30,-1852.80,110.90}},
{\"Prickle Pine\",                {1534.50,2583.20,-89.00,1848.40,2863.20,110.90}},
{\"Prickle Pine\",                {1117.40,2507.20,-89.00,1534.50,2723.20,110.90}},
{\"Prickle Pine\",                {1848.40,2553.40,-89.00,1938.80,2863.20,110.90}},
{\"Prickle Pine\",                {1938.80,2624.20,-89.00,2121.40,2861.50,110.90}},
{\"Queens\",                      {-2533.00,458.40,0.00,-2329.30,578.30,200.00}},
{\"Queens\",                      {-2593.40,54.70,0.00,-2411.20,458.40,200.00}},
{\"Queens\",                      {-2411.20,373.50,0.00,-2253.50,458.40,200.00}},
{\"Randolph Industrial\",         {1558.00,596.30,-89.00,1823.00,823.20,110.90}},
{\"Redsands East\",               {1817.30,2011.80,-89.00,2106.70,2202.70,110.90}},
{\"Redsands East\",               {1817.30,2202.70,-89.00,2011.90,2342.80,110.90}},
{\"Redsands East\",               {1848.40,2342.80,-89.00,2011.90,2478.40,110.90}},
{\"Redsands West\",               {1236.60,1883.10,-89.00,1777.30,2142.80,110.90}},
{\"Redsands West\",               {1297.40,2142.80,-89.00,1777.30,2243.20,110.90}},
{\"Redsands West\",               {1377.30,2243.20,-89.00,1704.50,2433.20,110.90}},
{\"Redsands West\",               {1704.50,2243.20,-89.00,1777.30,2342.80,110.90}},
{\"Regular Tom\",                 {-405.70,1712.80,-3.00,-276.70,1892.70,200.00}},
{\"Richman\",                     {647.50,-1118.20,-89.00,787.40,-954.60,110.90}},
{\"Richman\",                     {647.50,-954.60,-89.00,768.60,-860.60,110.90}},
{\"Richman\",                     {225.10,-1369.60,-89.00,334.50,-1292.00,110.90}},
{\"Richman\",                     {225.10,-1292.00,-89.00,466.20,-1235.00,110.90}},
{\"Richman\",                     {72.60,-1404.90,-89.00,225.10,-1235.00,110.90}},
{\"Richman\",                     {72.60,-1235.00,-89.00,321.30,-1008.10,110.90}},
{\"Richman\",                     {321.30,-1235.00,-89.00,647.50,-1044.00,110.90}},
{\"Richman\",                     {321.30,-1044.00,-89.00,647.50,-860.60,110.90}},
{\"Richman\",                     {321.30,-860.60,-89.00,687.80,-768.00,110.90}},
{\"Richman\",                     {321.30,-768.00,-89.00,700.70,-674.80,110.90}},
{\"Robada Intersection\",         {-1119.00,1178.90,-89.00,-862.00,1351.40,110.90}},
{\"Roca Escalante\",              {2237.40,2202.70,-89.00,2536.40,2542.50,110.90}},
{\"Roca Escalante\",              {2536.40,2202.70,-89.00,2625.10,2442.50,110.90}},
{\"Rockshore East\",              {2537.30,676.50,-89.00,2902.30,943.20,110.90}},
{\"Rockshore West\",              {1997.20,596.30,-89.00,2377.30,823.20,110.90}},
{\"Rockshore West\",              {2377.30,596.30,-89.00,2537.30,788.80,110.90}},
{\"Rodeo\",                       {72.60,-1684.60,-89.00,225.10,-1544.10,110.90}},
{\"Rodeo\",                       {72.60,-1544.10,-89.00,225.10,-1404.90,110.90}},
{\"Rodeo\",                       {225.10,-1684.60,-89.00,312.80,-1501.90,110.90}},
{\"Rodeo\",                       {225.10,-1501.90,-89.00,334.50,-1369.60,110.90}},
{\"Rodeo\",                       {334.50,-1501.90,-89.00,422.60,-1406.00,110.90}},
{\"Rodeo\",                       {312.80,-1684.60,-89.00,422.60,-1501.90,110.90}},
{\"Rodeo\",                       {422.60,-1684.60,-89.00,558.00,-1570.20,110.90}},
{\"Rodeo\",                       {558.00,-1684.60,-89.00,647.50,-1384.90,110.90}},
{\"Rodeo\",                       {466.20,-1570.20,-89.00,558.00,-1385.00,110.90}},
{\"Rodeo\",                       {422.60,-1570.20,-89.00,466.20,-1406.00,110.90}},
{\"Rodeo\",                       {466.20,-1385.00,-89.00,647.50,-1235.00,110.90}},
{\"Rodeo\",                       {334.50,-1406.00,-89.00,466.20,-1292.00,110.90}},
{\"Royal Casino\",                {2087.30,1383.20,-89.00,2437.30,1543.20,110.90}},
{\"San Andreas Sound\",           {2450.30,385.50,-100.00,2759.20,562.30,200.00}},
{\"Santa Flora\",                 {-2741.00,458.40,-7.60,-2533.00,793.40,200.00}},
{\"Santa Maria Beach\",           {342.60,-2173.20,-89.00,647.70,-1684.60,110.90}},
{\"Santa Maria Beach\",           {72.60,-2173.20,-89.00,342.60,-1684.60,110.90}},
{\"Shady Cabin\",                 {-1632.80,-2263.40,-3.00,-1601.30,-2231.70,200.00}},
{\"Shady Creeks\",                {-1820.60,-2643.60,-8.00,-1226.70,-1771.60,200.00}},
{\"Shady Creeks\",                {-2030.10,-2174.80,-6.10,-1820.60,-1771.60,200.00}},
{\"Sobell Rail Yards\",           {2749.90,1548.90,-89.00,2923.30,1937.20,110.90}},
{\"Spinybed\",                    {2121.40,2663.10,-89.00,2498.20,2861.50,110.90}},
{\"Starfish Casino\",             {2437.30,1783.20,-89.00,2685.10,2012.10,110.90}},
{\"Starfish Casino\",             {2437.30,1858.10,-39.00,2495.00,1970.80,60.90}},
{\"Starfish Casino\",             {2162.30,1883.20,-89.00,2437.30,2012.10,110.90}},
{\"Temple\",                      {1252.30,-1130.80,-89.00,1378.30,-1026.30,110.90}},
{\"Temple\",                      {1252.30,-1026.30,-89.00,1391.00,-926.90,110.90}},
{\"Temple\",                      {1252.30,-926.90,-89.00,1357.00,-910.10,110.90}},
{\"Temple\",                      {952.60,-1130.80,-89.00,1096.40,-937.10,110.90}},
{\"Temple\",                      {1096.40,-1130.80,-89.00,1252.30,-1026.30,110.90}},
{\"Temple\",                      {1096.40,-1026.30,-89.00,1252.30,-910.10,110.90}},
{\"The Camel\'s Toe\",             {2087.30,1203.20,-89.00,2640.40,1383.20,110.90}},
{\"The Clown\'s Pocket\",          {2162.30,1783.20,-89.00,2437.30,1883.20,110.90}},
{\"The Emerald Isle\",            {2011.90,2202.70,-89.00,2237.40,2508.20,110.90}},
{\"The Farm\",                    {-1209.60,-1317.10,114.90,-908.10,-787.30,251.90}},
{\"Four Dragons Casino\",         {1817.30,863.20,-89.00,2027.30,1083.20,110.90}},
{\"The High Roller\",             {1817.30,1283.20,-89.00,2027.30,1469.20,110.90}},
{\"The Mako Span\",               {1664.60,401.70,0.00,1785.10,567.20,200.00}},
{\"The Panopticon\",              {-947.90,-304.30,-1.10,-319.60,327.00,200.00}},
{\"The Pink Swan\",               {1817.30,1083.20,-89.00,2027.30,1283.20,110.90}},
{\"The Sherman Dam\",             {-968.70,1929.40,-3.00,-481.10,2155.20,200.00}},
{\"The Strip\",                   {2027.40,863.20,-89.00,2087.30,1703.20,110.90}},
{\"The Strip\",                   {2106.70,1863.20,-89.00,2162.30,2202.70,110.90}},
{\"The Strip\",                   {2027.40,1783.20,-89.00,2162.30,1863.20,110.90}},
{\"The Strip\",                   {2027.40,1703.20,-89.00,2137.40,1783.20,110.90}},
{\"The Visage\",                  {1817.30,1863.20,-89.00,2106.70,2011.80,110.90}},
{\"The Visage\",                  {1817.30,1703.20,-89.00,2027.40,1863.20,110.90}},
{\"Unity Station\",               {1692.60,-1971.80,-20.40,1812.60,-1932.80,79.50}},
{\"Valle Ocultado\",              {-936.60,2611.40,2.00,-715.90,2847.90,200.00}},
{\"Verdant Bluffs\",              {930.20,-2488.40,-89.00,1249.60,-2006.70,110.90}},
{\"Verdant Bluffs\",              {1073.20,-2006.70,-89.00,1249.60,-1842.20,110.90}},
{\"Verdant Bluffs\",              {1249.60,-2179.20,-89.00,1692.60,-1842.20,110.90}},
{\"Verdant Meadows\",             {37.00,2337.10,-3.00,435.90,2677.90,200.00}},
{\"Verona Beach\",                {647.70,-2173.20,-89.00,930.20,-1804.20,110.90}},
{\"Verona Beach\",                {930.20,-2006.70,-89.00,1073.20,-1804.20,110.90}},
{\"Verona Beach\",                {851.40,-1804.20,-89.00,1046.10,-1577.50,110.90}},
{\"Verona Beach\",                {1161.50,-1722.20,-89.00,1323.90,-1577.50,110.90}},
{\"Verona Beach\",                {1046.10,-1722.20,-89.00,1161.50,-1577.50,110.90}},
{\"Vinewood\",                    {787.40,-1310.20,-89.00,952.60,-1130.80,110.90}},
{\"Vinewood\",                    {787.40,-1130.80,-89.00,952.60,-954.60,110.90}},
{\"Vinewood\",                    {647.50,-1227.20,-89.00,787.40,-1118.20,110.90}},
{\"Vinewood\",                    {647.70,-1416.20,-89.00,787.40,-1227.20,110.90}},
{\"Whitewood Estates\",           {883.30,1726.20,-89.00,1098.30,2507.20,110.90}},
{\"Whitewood Estates\",           {1098.30,1726.20,-89.00,1197.30,2243.20,110.90}},
{\"Willowfield\",                 {1970.60,-2179.20,-89.00,2089.00,-1852.80,110.90}},
{\"Willowfield\",                 {2089.00,-2235.80,-89.00,2201.80,-1989.90,110.90}},
{\"Willowfield\",                 {2089.00,-1989.90,-89.00,2324.00,-1852.80,110.90}},
{\"Willowfield\",                 {2201.80,-2095.00,-89.00,2324.00,-1989.90,110.90}},
{\"Willowfield\",                 {2541.70,-1941.40,-89.00,2703.50,-1852.80,110.90}},
{\"Willowfield\",                 {2324.00,-2059.20,-89.00,2541.70,-1852.80,110.90}},
{\"Willowfield\",                 {2541.70,-2059.20,-89.00,2703.50,-1941.40,110.90}},
{\"Yellow Bell Station\",         {1377.40,2600.40,-21.90,1492.40,2687.30,78.00}},
// Citys Zones
{\"Los Santos\",                  {44.60,-2892.90,-242.90,2997.00,-768.00,900.00}},
{\"Las Venturas\",                {869.40,596.30,-242.90,2997.00,2993.80,900.00}},
{\"Bone County\",                 {-480.50,596.30,-242.90,869.40,2993.80,900.00}},
{\"Tierra Robada\",               {-2997.40,1659.60,-242.90,-480.50,2993.80,900.00}},
{\"Tierra Robada\",               {-1213.90,596.30,-242.90,-480.50,1659.60,900.00}},
{\"San Fierro\",                  {-2997.40,-1115.50,-242.90,-1213.90,1659.60,900.00}},
{\"Red County\",                  {-1213.90,-768.00,-242.90,2997.00,596.30,900.00}},
{\"Flint County\",                {-1213.90,-2892.90,-242.90,44.60,-768.00,900.00}},
{\"Whetstone\",                   {-2997.40,-2892.90,-242.90,-1213.90,-1115.50,900.00}}
};
enum ReadPositions{Float:ReadX,Float:ReadY,Float:ReadZ
}
new LuX_ReadPlayerPosition[PLAYERS][ReadPositions];
new Float:VehPosX[MAX_VEHICLES], Float:VehPosY[MAX_VEHICLES], Float:VehPosZ[MAX_VEHICLES];
forward LAutoUnlock(vehicleid);
new LVehiclesName[][] =
{
   \"Landstalker\",
   \"Bravura\",
   \"Buffalo\",
   \"Linerunner\",
   \"Pereniel\",
   \"Sentinel\",
   \"Dumper\",
   \"Firetruck\",
   \"Trashmaster\",
   \"Stretch\",
   \"Manana\",
   \"Infernus\",
   \"Voodoo\",
   \"Pony\",
   \"Mule\",
   \"Cheetah\",
   \"Ambulance\",
   \"Leviathan\",
   \"Moonbeam\",
   \"Esperanto\",
   \"Taxi\",
   \"Washington\",
   \"Bobcat\",
   \"Mr Whoopee\",
   \"BF Injection\",
   \"Hunter\",
   \"Premier\",
   \"Enforcer\",
   \"Securicar\",
   \"Banshee\",
   \"Predator\",
   \"Bus\",
   \"Rhino\",
   \"Barracks\",
   \"Hotknife\",
   \"Trailer\",
   \"Previon\",
   \"Coach\",
   \"Cabbie\",
   \"Stallion\",
   \"Rumpo\",
   \"RC Bandit\",
   \"Romero\",
   \"Packer\",
   \"Monster Truck\",
   \"Admiral\",
   \"Squalo\",
   \"Seasparrow\",
   \"Pizzaboy\",
   \"Tram\",
   \"Trailer\",
   \"Turismo\",
   \"Speeder\",
   \"Reefer\",
   \"Tropic\",
   \"Flatbed\",
   \"Yankee\",
   \"Caddy\",
   \"Solair\",
   \"Berkley\'s RC Van\",
   \"Skimmer\",
   \"PCJ-600\",
   \"Faggio\",
   \"Freeway\",
   \"RC Baron\",
   \"RC Raider\",
   \"Glendale\",
   \"Oceanic\",
   \"Sanchez\",
   \"Sparrow\",
   \"Patriot\",
   \"Quad\",
   \"Coastguard\",
   \"Dinghy\",
   \"Hermes\",
   \"Sabre\",
   \"Rustler\",
   \"ZR-350\",
   \"Walton\",
   \"Regina\",
   \"Comet\",
   \"BMX\",
   \"Burrito\",
   \"Camper\",
   \"Marquis\",
   \"Baggage\",
   \"Dozer\",
   \"Maverick\",
   \"News Chopper\",
   \"Rancher\",
   \"FBI Rancher\",
   \"Virgo\",
   \"Greenwood\",
   \"Jetmax\",
   \"Hotring\",
   \"Sandking\",
   \"Blista Compact\",
   \"Police Maverick\",
   \"Boxville\",
   \"Benson\",
   \"Mesa\",
   \"RC Goblin\",
   \"Hotring Racer\",
   \"Hotring Racer\",
   \"Bloodring Banger\",
   \"Rancher\",
   \"Super GT\",
   \"Elegant\",
   \"Journey\",
   \"Bike\",
   \"Mountain Bike\",
   \"Beagle\",
   \"Cropdust\",
   \"Stunt\",
   \"Tanker\",
   \"RoadTrain\",
   \"Nebula\",
   \"Majestic\",
   \"Buccaneer\",
   \"Shamal\",
   \"Hydra\",
   \"FCR-900\",
   \"NRG-500\",
   \"HPV1000\",
   \"Cement Truck\",
   \"Tow Truck\",
   \"Fortune\",
   \"Cadrona\",
   \"FBI Truck\",
   \"Willard\",
   \"Forklift\",
   \"Tractor\",
   \"Combine\",
   \"Feltzer\",
   \"Remington\",
   \"Slamvan\",
   \"Blade\",
   \"Freight\",
   \"Streak\",
   \"Vortex\",
   \"Vincent\",
   \"Bullet\",
   \"Clover\",
   \"Sadler\",
   \"Firetruck\",
   \"Hustler\",
   \"Intruder\",
   \"Primo\",
   \"Cargobob\",
   \"Tampa\",
   \"Sunrise\",
   \"Merit\",
   \"Utility\",
   \"Nevada\",
   \"Yosemite\",
   \"Windsor\",
   \"Monster Truck\",
   \"Monster Truck\",
   \"Uranus\",
   \"Jester\",
   \"Sultan\",
   \"Stratum\",
   \"Elegy\",
   \"Raindance\",
   \"RC Tiger\",
   \"Flash\",
   \"Tahoma\",
   \"Savanna\",
   \"Bandito\",
   \"Freight\",
   \"Trailer\",
   \"Kart\",
   \"Mower\",
   \"Duneride\",
   \"Sweeper\",
   \"Broadway\",
   \"Tornado\",
   \"AT-400\",
   \"DFT-30\",
   \"Huntley\",
   \"Stafford\",
   \"BF-400\",
   \"Newsvan\",
   \"Tug\",
   \"Trailer\",
   \"Emperor\",
   \"Wayfarer\",
   \"Euros\",
   \"Hotdog\",
   \"Club\",
   \"Trailer\",
   \"Trailer\",
   \"Andromada\",
   \"Dodo\",
   \"RC Cam\",
   \"Launch\",
   \"Police Car (LS)\",
   \"Police Car (SF)\",
   \"Police Car (LV)\",
   \"Police Ranger\",
   \"Picador\",
   \"S.W.A.T. Van\",
   \"Alpha\",
   \"Phoenix\",
   \"Glendale\",
   \"Sadler\",
   \"Luggage Trailer\",
   \"Luggage Trailer\",
   \"Stair Trailer\",
   \"Boxville\",
   \"Farm Plow\",
   \"Utility Trailer\"
};
 
forward LuX_SpeedoMeterUp();
public OnFilterScriptInit()
{
   
    SetTimer(\"LuX_SpeedoMeterUp\", UpdateConfig, 1);
   
    for(new v=0; v<MAX_VEHICLES; v++){
    LuX_ReadPosition(v);}
for(new i=0; i<PLAYERS; i++){
 
//---------------------------------------------------------->
#if TextBox
LBox = TextDrawCreate(612.000000,338.000000,\"C\");
TextDrawUseBox(LBox,1);
TextDrawBoxColor(LBox,0x00000033);
TextDrawTextSize(LBox,454.000000,9.000000);
TextDrawAlignment(LBox,0);
TextDrawBackgroundColor(LBox,0x000000ff);
TextDrawFont(LBox,3);
TextDrawLetterSize(LBox,-0.000000,8.700001);
TextDrawColor(LBox,BoxColor);
TextDrawSetOutline(LBox,1);
TextDrawSetProportional(LBox,1);
TextDrawSetShadow(LBox,1);
#endif
//---------------------------------------------------------->
#if TextTopLines
LLine1 = TextDrawCreate(609.000000,341.000000,\"L\");
TextDrawUseBox(LLine1,1);
TextDrawBoxColor(LLine1,0xffffff33);
TextDrawTextSize(LLine1,457.000000,-1.000000);
TextDrawAlignment(LLine1,0);
TextDrawBackgroundColor(LLine1,0x000000ff);
TextDrawFont(LLine1,3);
TextDrawLetterSize(LLine1,-0.000000,-0.400000);
TextDrawColor(LLine1,TopLinesColor);
TextDrawSetOutline(LLine1,1);
TextDrawSetProportional(LLine1,1);
TextDrawSetShadow(LLine1,1);
//---------------------------------------------------------->
LLine2 = TextDrawCreate(609.000000,416.000000,\"L\");
TextDrawUseBox(LLine2,1);
TextDrawBoxColor(LLine2,0xffffff33);
TextDrawTextSize(LLine2,457.000000,-9.000000);
TextDrawBackgroundColor(LLine2,0x000000ff);
TextDrawFont(LLine2,3);
TextDrawLetterSize(LLine2,-0.000000,-0.400000);
TextDrawColor(LLine2,TopLinesColor);
TextDrawSetOutline(LLine2,1);
TextDrawSetProportional(LLine2,1);
TextDrawSetShadow(LLine2,1);
#endif
//---------------------------------------------------------->
#if LogoName
LCredits = TextDrawCreate(487.000000,320.000000,SpeedoLogoText);
TextDrawAlignment(LCredits,0);
TextDrawBackgroundColor(LCredits,0x000000ff);
TextDrawFont(LCredits,0);
TextDrawLetterSize(LCredits,0.399999,1.400000);
TextDrawColor(LCredits,LogoColor);
TextDrawSetOutline(LCredits,1);
TextDrawSetProportional(LCredits,1);
TextDrawSetShadow(LCredits,1);
#endif
//---------------------------------------------------------->
#if TextSideLines
LLine3 = TextDrawCreate(466.000000,343.000000,\"T\");
TextDrawUseBox(LLine3,1);
TextDrawBoxColor(LLine3,0xffffff33);
TextDrawTextSize(LLine3,457.000000,0.000000);
TextDrawAlignment(LLine3,0);
TextDrawBackgroundColor(LLine3,0x000000ff);
TextDrawFont(LLine3,3);
TextDrawLetterSize(LLine3,-0.000000,7.499998);
TextDrawColor(LLine3,SideLinesColor);
TextDrawSetOutline(LLine3,1);
TextDrawSetProportional(LLine3,1);
TextDrawSetShadow(LLine3,1);
//---------------------------------------------------------->
LLine4 = TextDrawCreate(607.000000,343.000000,\"T\");
TextDrawUseBox(LLine4,1);
TextDrawBoxColor(LLine4,0xffffff33);
TextDrawTextSize(LLine4,603.000000,-6.000000);
TextDrawAlignment(LLine4,0);
TextDrawBackgroundColor(LLine4,0x000000ff);
TextDrawFont(LLine4,3);
TextDrawLetterSize(LLine4,-0.000000,7.499999);
TextDrawColor(LLine4,SideLinesColor);
TextDrawSetOutline(LLine4,1);
TextDrawSetProportional(LLine4,1);
TextDrawSetShadow(LLine4,1);
#endif
//---------------------------------------------------------->
    format(lstring, sizeof(lstring), \"Inicializing...\");
    LFunc = TextDrawCreate(466.000000,343.000000,lstring);
TextDrawAlignment(LFunc,0);
TextDrawBackgroundColor(LFunc,0x000000ff);
TextDrawFont(LFunc,1);
TextDrawLetterSize(LFunc,0.299999,1.200000);
TextDrawColor(LFunc,0xffffffff);
TextDrawSetOutline(LFunc,1);
TextDrawSetProportional(LFunc,1);
TextDrawSetShadow(LFunc,1);
//---------------------------------------------------------->
    format(lstr, sizeof(lstr), \"Inicializing...\");
Lmph = TextDrawCreate(466.000000,400.000000,lstr);
TextDrawAlignment(Lmph,0);
TextDrawBackgroundColor(Lmph,0x000000ff);
TextDrawFont(Lmph,1);
TextDrawLetterSize(Lmph,0.299999,1.000000);
TextDrawColor(Lmph,0xffffffff);
TextDrawSetOutline(Lmph,1);
TextDrawSetProportional(Lmph,1);
TextDrawSetShadow(Lmph,1);
}
return 1;
}
public OnFilterScriptExit()
{
    for(new i=0; i<PLAYERS; i++)
    {
      TextDrawHideForPlayer(i, LBox);
TextDrawHideForPlayer(i, LLine1);
TextDrawHideForPlayer(i, LLine2);
TextDrawHideForPlayer(i, LLine3);
TextDrawHideForPlayer(i, LLine4);
TextDrawHideForPlayer(i, LCredits);
TextDrawHideForPlayer(i, Lmph);
TextDrawHideForPlayer(i, LFunc);
}
}
public LuX_SpeedoMeterUp()
{
    new Float:LPosX;
new Float:LPosY;
new Float:LPosZ;
new Float:PlayerSpeedDistance;
new value;
new Float:L_VehHealth;
new LVehicleStatus[15];
for(new i=0; i<PLAYERS; i++)
{
if(VehicleStatus[GetPlayerVehicleID(i)] == 1)
{
LVehicleStatus = \"~r~Zarva\";
}
else
{
LVehicleStatus = \"~g~Nyitva\";
}
if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i))
{
GetPlayerPos(i, LPosX, LPosY, LPosZ);
GetPlayerVehicleID(i);
GetVehicleHealth(GetPlayerVehicleID(i), L_VehHealth);
PlayerSpeedDistance = floatsqroot(floatpower(floatabs(floatsub(LPosX,LuX_ReadPlayerPosition[ReadX])),2)+floatpower(floatabs(floatsub(LPosY,LuX_ReadPlayerPosition[ReadY])),2)+floatpower(floatabs(floatsub(LPosZ,LuX_ReadPlayerPosition[ReadZ])),2));
value = floatround(PlayerSpeedDistance * 5000);
new LuxZone[MAX_ZONE_NAME];
GetPlayer2DZone(i, LuxZone, MAX_ZONE_NAME);
if(LuX_SpeedoMeter == 0){
TextDrawShowForPlayer(i, LBox);
    TextDrawShowForPlayer(i, LLine1);
TextDrawShowForPlayer(i, LLine2);
TextDrawShowForPlayer(i, LLine3);
TextDrawShowForPlayer(i, LLine4);
TextDrawShowForPlayer(i, LCredits);
TextDrawShowForPlayer(i, Lmph);
    TextDrawShowForPlayer(i, LFunc);
LuX_SpeedoMeter = 1;   }
new LMPH = floatround(value/1600);
new LKPH = floatround(value/1000);
format(lstring,sizeof(lstring),\"~b~Jarmu: ~w~%s~n~~b~Elet: ~w~%.2f~n~~b~Magassag: ~w~%.1f~n~~b~Gps: ~w~%s~n~~b~Allapot: %s\",LVehiclesName[GetVehicleModel(GetPlayerVehicleID(i))-400],L_VehHealth,LPosZ,LuxZone,LVehicleStatus);
TextDrawSetString(LFunc, lstring);
format(lstr,sizeof(lstr),\"%sKM/H: ~w~%d\",MPH_KPH_Color,LMPH,MPH_KPH_Color,LKPH);
TextDrawSetString(Lmph, lstr);
if(L_VehHealth <= 500){
format(lstring,sizeof(lstring),\"%sJármû: ~w~%s~n~%sElet: ~w~~r~%.2f~n~%sMagassag: ~w~%.1f~n~%sGps: ~w~%s\",CategoriesColor,LVehiclesName[GetVehicleModel(GetPlayerVehicleID(i))-400],CategoriesColor,L_VehHealth,CategoriesColor,LPosZ,CategoriesColor,LuxZone);
TextDrawSetString(LFunc, lstring);
    }
      if(LKPH >= VehicleMaxSpeed)
    {
TogglePlayerControllable(i,0);
LUnFreeze = SetTimer(\"LuX_UnFreezeCar\", 250, 1);
format(lstr,sizeof(lstr),\"~g~KM/H: ~r~%d\",LMPH,LKPH);
TextDrawSetString(Lmph, lstr);
    }
}
LuX_ReadPlayerPosition[ReadX] = LPosX, LuX_ReadPlayerPosition[ReadY] = LPosY, LuX_ReadPlayerPosition[ReadZ] = LPosZ;}
for(new i=0; i<PLAYERS; i++){
if(!IsPlayerInAnyVehicle(i)){
TextDrawHideForPlayer(i, LBox);
TextDrawHideForPlayer(i, LLine1);
TextDrawHideForPlayer(i, LLine2);
TextDrawHideForPlayer(i, LLine3);
TextDrawHideForPlayer(i, LLine4);
TextDrawHideForPlayer(i, LCredits);
TextDrawHideForPlayer(i, Lmph);
TextDrawHideForPlayer(i, LFunc);
LuX_SpeedoMeter = 0;
}
}
return 1;
}
forward LuX_UnFreezeCar(playerid);
public LuX_UnFreezeCar(playerid)
{
for(new i=0; i<PLAYERS; i++)
{
TogglePlayerControllable(playerid,1);
KillTimer(LUnFreeze);
}
return 1;
}
public OnVehicleSpawn(vehicleid)
{
LuX_ReadPosition(vehicleid);
return 1;
}
public OnPlayerCommandText(playerid,cmdtext[])
{
new cmd[128];
new idx;
    cmd = strtok(cmdtext, idx);
if(strcmp(cmd, \"/vlock\", true) == 0)
{
new Float:X;
new Float:Y;
new Float:Z;
if(IsPlayerConnected(playerid) && VehicleStatus[GetPlayerVehicleID(playerid)] == 0){
new VehicleState = GetPlayerState(playerid);
if(VehicleState == PLAYER_STATE_DRIVER){
for(new v = 0; v <L_VEHICLE; v++)
{
if (v != playerid)
{
SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),v, 0, 1);
    }
}
GetPlayerPos(playerid,X,Y,Z);
PlayerPlaySound(playerid,1057,X,Y,Z);
VehicleStatus[GetPlayerVehicleID(playerid)] = 1;
SetTimerEx(\"LAutoUnlock\",VehLockTime*60000,false,\"i\",GetPlayerVehicleID(playerid));
}
return 1;
}
}
if(strcmp(cmd, \"/vunlock\", true) == 0)
{
new Float:X;
new Float:Y;
new Float:Z;
if(IsPlayerConnected(playerid) && VehicleStatus[GetPlayerVehicleID(playerid)] == 1)
{
new VehicleState = GetPlayerState(playerid);
if(VehicleState == PLAYER_STATE_DRIVER)
{
for(new v = 0; v <L_VEHICLE; v++)
{
SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),v, 0, 0);
}
GetPlayerPos(playerid,X,Y,Z);
PlayerPlaySound(playerid,1057,X,Y,Z); VehicleStatus[GetPlayerVehicleID(playerid)] = 0;
}
return 1;
     }
}
return 0;
}
public LAutoUnlock(vehicleid)
{
for(new v = 0; v <L_VEHICLE; v++)
{
SetVehicleParamsForPlayer(vehicleid,v, 0, 0);
}
VehicleStatus[vehicleid] = 0;
}
public OnPlayerConnect(playerid)
{
return 1;
}
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= \' \')) { index++; }
new offset = index; new result[20];
while ((index < length) && (string[index] > \' \') && ((index - offset) < (sizeof(result) - 1)))
{ result[index - offset] = string[index]; index++; }
result[index - offset] = EOS; return result;
}
stock LuX_DistanceToPoint(vehicleid)
{
new Float:LPlayerX, Float:LPlayerY, Float:LPlayerZ, Float:LReadPos;
GetVehiclePos(vehicleid, LPlayerX, LPlayerY, LPlayerZ);
LReadPos = floatsqroot(floatpower(floatabs(floatsub(LPlayerX, VehPosX[vehicleid])), 2)+floatpower(floatabs(floatsub(LPlayerY, VehPosY[vehicleid])), 2)+floatpower(floatabs(floatsub(LPlayerZ, VehPosZ[vehicleid])), 2));
return floatround(LReadPos);
}
stock LuX_ReadPosition(vehicleid)
{
    new Float:LReadX, Float:LReadY, Float:LReadZ;
    GetVehiclePos(vehicleid, LReadX, LReadY, LReadZ);
VehPosX[vehicleid]=LReadX; VehPosY[vehicleid]=LReadY; VehPosZ[vehicleid]=LReadZ;
}
stock PlayerZone(playerid, zone[])
{
new ReadTmpZone[MAX_ZONE_NAME];
    GetPlayer3DZone(playerid, ReadTmpZone, sizeof(ReadTmpZone)); for(new i = 0; i != sizeof(SanAndreasZones); i++){
if(strfind(ReadTmpZone, zone, true) != -1)
return 1;
}
return 0;
}
 
stock GetPlayer2DZone(playerid, zone[], len)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
for(new i = 0; i != sizeof(SanAndreasZones); i++ ){
if(x >= SanAndreasZones[Zone_Area][0] && x <= SanAndreasZones[Zone_Area][3] && y >= SanAndreasZones[Zone_Area][1] && y <= SanAndreasZones[Zone_Area][4]){
return format(zone, len, SanAndreasZones[Zone_Name], 0);}
}
return 0;
}
stock GetPlayer3DZone(playerid, zone[], len)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
for(new i = 0; i != sizeof(SanAndreasZones); i++ ){
if(x >= SanAndreasZones[Zone_Area][0] && x <= SanAndreasZones[Zone_Area][3] && y >= SanAndreasZones[Zone_Area][1] && y <= SanAndreasZones[Zone_Area][4] && z >= SanAndreasZones[Zone_Area][2] && z <= SanAndreasZones[Zone_Area][5]){return format(zone, len, SanAndreasZones[Zone_Name], 0);
}
}
return 0;
}

11
Segítségkérés / Nem indul az oxford mod
« Dátum: 2012. május 20. - 11:14:36 »
Sziasztok!
nem indul az oxford mod
mitõl lehet?
 
----------
Loaded log file: \"server_log.txt\".
----------
SA-MP Dedicated Server
----------------------
v0.3e, (C)2005-2012 SA-MP Team
[12:14:46]
[12:14:46] Server Plugins
[12:14:46] --------------
[12:14:46]  Loading plugin: streamer
[12:14:46]
*** Streamer Plugin v2.6.1 by Incognito loaded ***
[12:14:46]   Loaded.
[12:14:46]  Loading plugin: Whirlpool
[12:14:46] 
[12:14:46]  ==================
[12:14:46] 
[12:14:46]   Whirlpool loaded
[12:14:46] 
[12:14:46]  ==================
[12:14:46] 
[12:14:46]   Loaded.
[12:14:46]  Loading plugin: sscanf
[12:14:46]
[12:14:46]  ===============================
[12:14:46]       sscanf plugin loaded.     
[12:14:46]    (c) 2009 Alex \"Y_Less\" Cole
[12:14:46]  ===============================
[12:14:46]   Loaded.
[12:14:46]  Loaded 3 plugins.
[12:14:46]
[12:14:46] Filterscripts
[12:14:46] ---------------
[12:14:46]   Loading filterscript \'GarHouse.amx\'...
[12:14:46] *** Streamer Plugin: Include file version (0) does not match plugin version (0x26104) (script needs to be recompiled with the latest include file)
[12:14:46] *** Streamer Plugin: Obsolete or invalid native found (script needs to be recompiled with the latest include file)
[12:14:46] 
[12:14:46]  =======================================
[12:14:46]  |                                     |
[12:14:46]  |        YSI version 1.03.0011        |
[12:14:46]  |        By Alex \"Y_Less\" Cole        |
[12:14:46]  |                                     |
[12:14:46]  |  Checking the latest YSI version..  |
[12:14:46]  |                                     |
[12:14:46]  =======================================
[12:14:46] 
[12:14:46]
>> Attempting to load GarHouse v2.0... <<
[12:14:46]
Total House Interiors Loaded: 11. Duration: 7 ms
[12:14:46]
Total Houses Loaded: 76. Duration: 107 ms
[12:14:46]
>> GarHouse v2.0 By [03]Garsino Loaded <<
[12:14:46]   Loading filterscript \'ladmin.amx\'...
[12:14:46]
________________________________________
[12:14:46] ________________________________________
[12:14:46]            LAdmin Betöltés...           
[12:14:46] ________________________________________
[12:14:46]
-Configuration Settings Loaded
[12:14:46]  -44 Forbidden Names Loaded
[12:14:46]  -10 Forbidden Tags Loaded
[12:14:46]  -9 Forbidden Words Loaded
[12:14:46]   Loading filterscript \'ScripteK.amx\'...
[12:14:46]   Loading filterscript \'serul.amx\'...
[12:14:46] -------------------------------------
[12:14:46] ------Simple-Fuel-System-BETA--------
[12:14:46] ------------NY-Gaming.com------------
[12:14:46]   Loading filterscript \'LOTTO.amx\'...
[12:14:46]   Loading filterscript \'TD.amx\'...
[12:14:46]
--------------------------------------
[12:14:46]  Text Draw Editor 1.0RC2 by Zamaroht for SA-MP 0.3 Loaded.
[12:14:46] --------------------------------------
[12:14:46]   Loading filterscript \'vkeyy.amx\'...
[12:14:46]   Loading filterscript \'L_Speedo.amx\'...
[12:14:46]   Loaded 8 filterscripts.
[12:14:46] EnableTirePopping() function is removed.
[12:14:46] Warning: EnableZoneNames() is removed since 0.3
[12:14:46] AllowAdminTeleport() : function is deprecated. Please see OnPlayerClickMap()
[12:14:46] Loading 133 pickups... Loaded successfuly !
[12:14:46] 
[12:14:46]      Oxford Roleplay
[12:14:46] ___________________________
[12:14:46]      By: Furkan & Hoodstar
[12:14:46] 
[12:14:46] Number of vehicle models: 48
[12:14:48] --- Server Shutting Down.
[12:14:48]
>> GarHouse v2.0 By [03]Garsino Unloaded <<
[12:14:48]
________________________________________
[12:14:48] ________________________________________
[12:14:48]            LAdmin Deaktiválva             
[12:14:48] ________________________________________
[12:14:48]      Dátum: 20/5/2012  Idõ: 12:14 :48   
[12:14:48] ________________________________________
[12:14:48] ________________________________________
[12:14:48]
*** Streamer Plugin v2.6.1 by Incognito unloaded ***
[12:14:48] 
[12:14:48]  ====================
[12:14:48] 
[12:14:48]   Whirlpool unloaded
[12:14:48] 
[12:14:48]  ====================
[12:14:48] 
[12:14:48]
[12:14:48]  ===============================
[12:14:48]      sscanf plugin unloaded.   
[12:14:48]  ===============================

12
Szkript kérések / /beszel parancsal lehessen beszélni
« Dátum: 2012. május 19. - 22:08:44 »
Sziasztok!
lehet most egy nagyon pro scriptet kérek!
a lényege /beszel és tudsz beszelni és halják akik játszanak
lehetséges?

13
Fórum Archívum (Témák/Fórumok) / Re:Bomba Script
« Dátum: 2012. május 19. - 21:06:51 »
Szép script használt veszem! kösz kurta999

14
Segítségkérés / Dini...
« Dátum: 2012. május 19. - 19:13:01 »
Sziasztok!
Lenne egy kérésem a /s1 parancsot mentse el ha kiléPek a szerverbõl
 
CMD:s1(playerid, params[])
{
    if(IsPlayerInAnyVehicle(playerid))
    {
        GetVehiclePos(GetPlayerVehicleID(playerid),SavePos[0][playerid],SavePos[1][playerid],SavePos[2][playerid]);
        GetVehicleZAngle(GetPlayerVehicleID(playerid),SavePos[3][playerid]);
        return SendClientMessage(playerid,0x10F441AA, \"Pozíció elmentve, a betöltéshez {FF0000}/l1\");
    }
    else
    {
        GetPlayerPos(playerid,SavePos[0][playerid],SavePos[1][playerid],SavePos[2][playerid]);
GetPlayerFacingAngle(playerid,SavePos[3][playerid]);
return SendClientMessage(playerid,0x10F441AA, \"Pozíció elmentve, a betöltéshez /l1\");
    }
}
CMD:l1(playerid, params[])
{
    if(SavePos[0][playerid] == 0 && !SavePos[1][playerid] && !SavePos[2][playerid]) return SendClientMessage(playerid,0x10F441AA, \"Pozíció betöltése sikertelen!\");
    if(IsPlayerInAnyVehicle(playerid))
    {
        SetVehiclePos(GetPlayerVehicleID(playerid),SavePos[0][playerid],SavePos[1][playerid],SavePos[2][playerid]);
        SetVehicleZAngle(GetPlayerVehicleID(playerid),SavePos[3][playerid]);
        return SendClientMessage(playerid,0x10F441AA, \"Pozíció betöltve!\");
    }
    else
    {
SetPlayerPos(playerid,SavePos[0][playerid],SavePos[1][playerid],SavePos[2][playerid]);
SetPlayerFacingAngle(playerid,SavePos[3][playerid]);
return SendClientMessage(playerid,0x10F441AA, \"Pozíció betöltve!\");
    }
}

15
Segítségkérés / x/30 slot
« Dátum: 2012. május 19. - 19:05:48 »
Sziasztok!
Valaki segit ebbe a scriptbe
 
#include <a_samp>
new Text:Textdraw32;
public OnFilterScriptInit()
{
Textdraw32 = TextDrawCreate(492.000000, 4.000000, \"15/30\");
TextDrawBackgroundColor(Textdraw32, 255);
TextDrawFont(Textdraw32, 1);
TextDrawLetterSize(Textdraw32, 0.509999, 1.700000);
TextDrawColor(Textdraw32, 65535);
TextDrawSetOutline(Textdraw32, 0);
TextDrawSetProportional(Textdraw32, 1);
TextDrawSetShadow(Textdraw32, 1);
for(new i; i < MAX_PLAYERS; i ++)
{
if(IsPlayerConnected(i))
{
   TextDrawShowForPlayer(i, Textdraw32);
}
}
return 1;
}
public OnFilterScriptExit()
{
TextDrawHideForAll(Textdraw32);
TextDrawDestroy(Textdraw32);
return 1;
}
public OnPlayerConnect(playerid)
{
TextDrawShowForPlayer(playerid, Textdraw32);
return 1;
}

Oldalak: [1] 2 3 ... 11
SimplePortal 2.3.7 © 2008-2024, SimplePortal