Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Simple Vehicle System 1.2 by BlackFoX_UD_
- (c) 2012 by BlackFoX_UD_
- Released under Creative Commons
- --- Credits :
- > DJson 1.6.2 > Draco Blue
- > SA-MP Functions > Sa-mp Team
- > Diese Methode & Skript : BlackFoX_UD_
- - > Die Mitwirkenden dürfen nicht gelöscht werden < -*/
- /* ** In diesem Skript muss nichts extra angelegt werden ** */
- #include <a_samp>
- #include <djson>
- #define DIAG_KAUFEN 11
- #define VERKAUF_DIAG 12
- #define MAX_AUTOS 100
- #define COLOR_WARN 0xB72C00FF
- #define COLOR_MESS 0xB7BC21FF
- #define COLOR_GRUEN 0x007E32F6
- #define F_DATEI "autos.txt"
- // Neon Typen
- #define NEON_BLUE 18648
- #define NEON_RED 18647
- #define NEON_GREEN 18649
- #define NEON_WHITE 18652
- #define NEON_PINK 18651
- #define NEON_YELLOW 18650
- #define NEON_PRICE 200
- #define OFF_X -0.8
- #define OFF_X2 0.8
- #define OFF_Z -0.70
- #define NEON_DIAG 13
- #define NEON_STRING "Blau\nRot\nGruen\nWeiss\nPink\nGelb\nNeons entfernen"
- /* Show Fahrzeuge , diese dienen nur zur besichtigung und zum Kauf , das heißt, es wird
- an einem Ausgangspunkt ein neues Auto erstellt... */
- enum fstruk{model,Float:fxa,Float:fya,Float:fza,Float:faa,farb1,farb2,preis,v_id,v_name[70],Text3D:lbl,xlichter,xreifen,xteile,xtueren,
- sf_mod0,sf_mod1,sf_mod2,sf_mod3,sf_mod4,sf_mod5,sf_mod6,sf_mod7,sf_mod8,sf_mod9,sf_mod10,sf_mod11,sf_mod12,sf_mod13};
- new const ShowCars[][fstruk] = {
- // Los Santos , Golfplatz Autohaus
- {496,561.27502441406,-1289.6413574219,17.03596496582,0.0,-1,-1,10000,-1,"Blista Compact",Text3D:-1,0,0,0,0},
- {529,553.16064453125,-1289.4180908203,16.986125946045,0.0,-1,-1,4000,-1,"Willard",Text3D:-1,0,0,0,0},
- {412,548.64807128906,-1289.2490234375,17.198238372803,0.0,-1,-1,7000,-1,"Voodoo",Text3D:-1,0,0,0,0},
- {475,543.83178710938,-1289.5731201172,17.14218711853,227.00598144531,-1,-1,15000,-1,"Sabre",Text3D:-1,0,0,0,0},
- {411,540.71215820313,-1274.9818115234,17.042186737061,225.02099609375,-1,-1,20000,-1,"Infernus",Text3D:-1,0,0,0,0},
- // Los Santos , Autohändler (Jefferson Hotel)
- {489,2132.9795,-1144.6666,24.4788,58.3774,-1,-1,35000,-1,"Rancher",Text3D:-1,0,0,0,0},
- {422,2133.6545,-1135.9943,25.3423,55.3919,-1,-1,15000,-1,"Bobcat",Text3D:-1,0,0,0,0},
- {400,2133.2439,-1128.6438,25.2889,62.9068,-1,-1,17500,-1,"Landstalker",Text3D:-1,0,0,0,0},
- {466,2121.0027,-1124.9131,25.1069,316.7444,-1,-1,4500,-1,"Glendale",Text3D:-1,0,0,0,0},
- {475,2120.3127,-1137.4817,24.8203,323.4742,-1,-1,15000,-1,"Sabre",Text3D:-1,0,0,0,0},
- {415,2122.9878,-1145.9969,24.2833,319.0516,-1,-1,18900,-1,"Cheetah",Text3D:-1,0,0,0,0},
- {562,2127.0681,-1141.8029,24.7228,196.4488,-1,-1,24000,-1,"Elegy",Text3D:-1,0,0,0,0},
- // San Fierro Autohaus (Grotti)
- {461,-1667.8892,1206.6256,20.7870,293.8904,-1,-1,9500,-1,"PCJ-600",Text3D:-1,0,0,0,0},
- {522,-1654.7445,1209.0161,20.7866,355.8456,-1,-1,12500,-1,"NRG-500",Text3D:-1,0,0,0,0},
- {429,-1663.1536,1221.0186,20.7858,248.4099,-1,-1,22555,-1,"Banshee",Text3D:-1,0,0,0,0},
- {559,-1665.4897,1222.3932,13.3826,279.1780,-1,-1,23000,-1,"Jester",Text3D:-1,0,0,0,0,1158,1067,1069,0,1010,1066,1079,0,0,1160,1159,0,0},
- {447,-1658.3732,1213.2249,13.3699,37.9135,-1,-1,30000,-1,"ZR-350",Text3D:-1,0,0,0,0},
- {451,-1657.6660,1213.6195,6.9295,282.6953,-1,-1,34000,-1,"Turismo",Text3D:-1,0,0,0,0}
- };
- // model,x,y,z,a,farbe1,farbe2,Preis,id = immer -1 , Fahrzeug Name, 3D Label = immer -1, lichter Status, reifen Status, angebaute Teile Status, Tueren Status, Komponenten 0 - 13 [...]
- // Ausgänge (Platz für IsPlayerInRangeOfPoint)
- new const Float:show_ausgang_range[][] = {
- {550.8542,-1278.8704,17.2482},
- {2127.7141,-1138.2197,25.3854},
- {-1662.8794,1212.7354,7.2500}};
- // Spawns ( Je nach Platz daher Platz1 = Spawn1 usw. ^^ )
- new const Float:Fahrzeug_Spawn[][] = {
- {559.0435,-1263.5776,17.2422,20.0072},
- {2119.0046,-1114.6011,24.8807,73.8906},
- {-1644.1483,1216.0748,6.7635,224.2379}};
- /* Spieler Fahrzeug Daten zum ändern & Speichern einzelner Spieler Fahrzeuge */
- enum spieler_auto
- {
- vmodel,
- Float:v_xc,
- Float:v_yc,
- Float:v_zc,
- Float:v_ac,
- vfarbe1,
- vfarbe2,
- vmod0,vmod1,vmod2,vmod3,vmod4,vmod5,vmod6,vmod7,vmod8,vmod9,vmod10,vmod11,vmod12,vmod13,
- vkey[MAX_PLAYER_NAME],
- id_x,
- paintjob,
- preisx,
- // Position
- Float:n_xx,
- Float:n_yy,
- Float:n_zz,
- Float:n_aa,
- // aktuellen Status Variablen
- lichter,
- reifen,
- teile,
- tueren,
- frozen_lichter, // Standardwerte beim kauf von Auto, Praefix frozen_
- frozen_reifen,
- frozen_teile,
- frozen_tueren,
- cclocked, // verschlossen oder nicht ?
- neon_type,
- neon_obj0,
- neon_obj1,
- bool:streamed_neon
- }
- new PlayerAuto[MAX_AUTOS][spieler_auto];
- /* Für den Verkauf */
- enum verkaufx
- {
- autoid,
- verkaufspartner,
- preiss,
- current_unlock
- }
- new VerkaufDat[MAX_PLAYERS][verkaufx];
- public OnFilterScriptInit()
- {
- djson_GameModeInit();
- new tform[128];
- print("\n--------------------------------------");
- print(" Simple Vehicle System 1.x By BlackFoX_UD_");
- print("--------------------------------------\n");
- for(new i = 0;i<sizeof(ShowCars);i++)
- {
- format(tform,sizeof tform,"%s\nPreis : %d$",ShowCars[i][v_name],ShowCars[i][preis]);
- ShowCars[i][lbl] = Create3DTextLabel(tform,COLOR_MESS,0.0,0.0,0.75,7.0,0,0);
- ShowCars[i][v_id] = CreateVehicle(ShowCars[i][model],ShowCars[i][fxa],ShowCars[i][fya],ShowCars[i][fza],ShowCars[i][faa],ShowCars[i][farb1],ShowCars[i][farb2],1200000);
- UpdateVehicleDamageStatus(ShowCars[i][v_id],ShowCars[i][xteile],ShowCars[i][xtueren],ShowCars[i][xlichter],ShowCars[i][xreifen]);
- Attach3DTextLabelToVehicle(ShowCars[i][lbl],ShowCars[i][v_id],0.0,0.0,0.75);
- }
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- format(tform,sizeof tform,"auto_%d",i);
- if(djIsSet(F_DATEI,tform))
- {
- format(tform,sizeof tform,"auto_%d/model",i);
- PlayerAuto[i][vmodel] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/x",i);
- PlayerAuto[i][v_xc] = djFloat(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/y",i);
- PlayerAuto[i][v_yc] = djFloat(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/z",i);
- PlayerAuto[i][v_zc] = djFloat(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/a",i);
- PlayerAuto[i][v_ac] = djFloat(F_DATEI,tform,false);
- PlayerAuto[i][n_xx] = PlayerAuto[i][v_xc];
- PlayerAuto[i][n_yy] = PlayerAuto[i][v_yc];
- PlayerAuto[i][n_zz] = PlayerAuto[i][v_zc];
- PlayerAuto[i][n_aa] = PlayerAuto[i][v_ac];
- format(tform,sizeof tform,"auto_%d/mod0",i);
- PlayerAuto[i][vmod0] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod1",i);
- PlayerAuto[i][vmod1] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod2",i);
- PlayerAuto[i][vmod2] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod3",i);
- PlayerAuto[i][vmod3] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod4",i);
- PlayerAuto[i][vmod4] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod5",i);
- PlayerAuto[i][vmod5] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod6",i);
- PlayerAuto[i][vmod6] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod7",i);
- PlayerAuto[i][vmod7] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod8",i);
- PlayerAuto[i][vmod8] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod9",i);
- PlayerAuto[i][vmod9] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod10",i);
- PlayerAuto[i][vmod10] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod11",i);
- PlayerAuto[i][vmod11] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod12",i);
- PlayerAuto[i][vmod12] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/mod13",i);
- PlayerAuto[i][vmod13] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/farbe1",i);
- PlayerAuto[i][vfarbe1] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/farbe2",i);
- PlayerAuto[i][vfarbe2] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/paintjob",i);
- PlayerAuto[i][paintjob] = djInt(F_DATEI,tform,false);
- // States
- format(tform,sizeof tform,"auto_%d/lichter",i);
- PlayerAuto[i][lichter] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/reifen",i);
- PlayerAuto[i][reifen] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/teile",i);
- PlayerAuto[i][teile] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/tueren",i);
- PlayerAuto[i][tueren] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/flichter",i);
- PlayerAuto[i][frozen_lichter] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/freifen",i);
- PlayerAuto[i][frozen_reifen] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/fteile",i);
- PlayerAuto[i][frozen_teile] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/ftueren",i);
- PlayerAuto[i][frozen_tueren] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/lock",i);
- PlayerAuto[i][cclocked] = djInt(F_DATEI,tform,false);
- format(tform,sizeof tform,"auto_%d/neonT",i);
- PlayerAuto[i][neon_type] = djInt(F_DATEI,tform,false);
- PlayerAuto[i][id_x] = CreateVehicle(PlayerAuto[i][vmodel],PlayerAuto[i][v_xc],PlayerAuto[i][v_yc],PlayerAuto[i][v_zc],PlayerAuto[i][v_ac],PlayerAuto[i][vfarbe1],PlayerAuto[i][vfarbe2],-1);
- FahrzeugTunen(PlayerAuto[i][id_x]);
- format(tform,sizeof tform,"auto_%d/key",i);
- strmid(PlayerAuto[i][vkey],dj(F_DATEI,tform,false),0,MAX_PLAYER_NAME,MAX_PLAYER_NAME);
- printf("Fahrzeug : %d geladen und gefunden. [BESITZER : %s]",i,dj(F_DATEI,tform,false));
- }
- }
- return 1;
- }
- public OnFilterScriptExit()
- {
- djson_GameModeExit();
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
- return 1;
- }
- stock FahrzeugTunen(vehicle,playerid = -1)
- {
- for(new j = 1;j<MAX_AUTOS;j++)
- {
- if(PlayerAuto[j][id_x] == vehicle)
- {
- if(PlayerAuto[j][cclocked] && playerid > -1)SetVehicleParamsForPlayer(vehicle,playerid,0,1);
- if(PlayerAuto[j][vmod0])AddVehicleComponent(vehicle,PlayerAuto[j][vmod0]);
- if(PlayerAuto[j][vmod1])AddVehicleComponent(vehicle,PlayerAuto[j][vmod1]);
- if(PlayerAuto[j][vmod2])AddVehicleComponent(vehicle,PlayerAuto[j][vmod2]);
- if(PlayerAuto[j][vmod3])AddVehicleComponent(vehicle,PlayerAuto[j][vmod3]);
- if(PlayerAuto[j][vmod4])AddVehicleComponent(vehicle,PlayerAuto[j][vmod4]);
- if(PlayerAuto[j][vmod5])AddVehicleComponent(vehicle,PlayerAuto[j][vmod5]);
- if(PlayerAuto[j][vmod6])AddVehicleComponent(vehicle,PlayerAuto[j][vmod6]);
- if(PlayerAuto[j][vmod7])AddVehicleComponent(vehicle,PlayerAuto[j][vmod7]);
- if(PlayerAuto[j][vmod8])AddVehicleComponent(vehicle,PlayerAuto[j][vmod8]);
- if(PlayerAuto[j][vmod9])AddVehicleComponent(vehicle,PlayerAuto[j][vmod9]);
- if(PlayerAuto[j][vmod10])AddVehicleComponent(vehicle,PlayerAuto[j][vmod10]);
- if(PlayerAuto[j][vmod11])AddVehicleComponent(vehicle,PlayerAuto[j][vmod11]);
- if(PlayerAuto[j][vmod12])AddVehicleComponent(vehicle,PlayerAuto[j][vmod12]);
- if(PlayerAuto[j][vmod13])AddVehicleComponent(vehicle,PlayerAuto[j][vmod13]);
- if(PlayerAuto[j][neon_type] > 0 && !PlayerAuto[j][streamed_neon])
- {
- PlayerAuto[j][neon_obj0] = CreateObject(PlayerAuto[j][neon_type],0,0,0,0,0,0);
- PlayerAuto[j][neon_obj1] = CreateObject(PlayerAuto[j][neon_type],0,0,0,0,0,0);
- AttachObjectToVehicle(PlayerAuto[j][neon_obj0], PlayerAuto[j][id_x], OFF_X, 0.0, OFF_Z, 0.0, 0.0, 0.0);
- AttachObjectToVehicle(PlayerAuto[j][neon_obj1], PlayerAuto[j][id_x], OFF_X2, 0.0, OFF_Z, 0.0, 0.0, 0.0);
- PlayerAuto[j][streamed_neon] = true;
- }
- ChangeVehiclePaintjob(vehicle,PlayerAuto[j][paintjob]);
- ChangeVehicleColor(vehicle,PlayerAuto[j][vfarbe1],PlayerAuto[j][vfarbe2]);
- UpdateVehicleDamageStatus(vehicle,PlayerAuto[j][teile],PlayerAuto[j][tueren],PlayerAuto[j][lichter],PlayerAuto[j][reifen]);
- return 1;
- }
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- VerkaufDat[playerid][verkaufspartner] = -1;
- VerkaufDat[playerid][autoid] = -1;
- VerkaufDat[playerid][preiss] = -1;
- VerkaufDat[playerid][current_unlock] = -1;
- return 1;
- }
- public OnPlayerDisconnect(playerid,reason)
- {
- if(VerkaufDat[playerid][verkaufspartner] > -1)
- {
- TogglePlayerControllable(VerkaufDat[playerid][verkaufspartner],1);
- ShowPlayerDialog(playerid,-1,0," "," "," "," ");
- }
- VerkaufDat[playerid][verkaufspartner] = -1;
- VerkaufDat[playerid][autoid] = -1;
- VerkaufDat[playerid][preiss] = -1;
- VerkaufDat[playerid][current_unlock] = -1;
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new tmp[128],cmd[128],idx,str[128];
- new Float:pos[3];
- cmd = strtok(cmdtext, idx);
- if (strcmp(cmd, "/neonkaufen", true) ==0 )
- {
- ShowPlayerDialog(playerid,NEON_DIAG,DIALOG_STYLE_LIST,"Neon Shop",NEON_STRING,"Kaufen","Abbrechen");
- return 1;
- }
- if (strcmp(cmd, "/autoverkaufen", true) ==0 )
- {
- if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,COLOR_WARN,"Du musst im Fahrzeug sitzen!");
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- if(PlayerAuto[i][id_x] == GetPlayerVehicleID(playerid))
- {
- if(strcmp(PlayerAuto[i][vkey],Spielername(playerid),false))return SendClientMessage(playerid,COLOR_WARN,"Dieses Auto gehört nicht dir!");
- format(str,sizeof str,"auto_%d",i);
- djUnset(F_DATEI,str);
- fremove(str);
- PlayerAuto[i][vmodel] = 0;
- GivePlayerMoney(playerid,PlayerAuto[i][preisx]);
- PlayerAuto[i][vkey] = '\0';
- PlayerAuto[i][v_xc] = (0.0);
- PlayerAuto[i][v_yc] = (0.0);
- PlayerAuto[i][v_zc] = (0.0);
- PlayerAuto[i][v_ac] = (0.0);
- PlayerAuto[i][vmod0] = (0);
- PlayerAuto[i][vmod1] = (0);
- PlayerAuto[i][vmod2] = (0);
- PlayerAuto[i][vmod3] = (0);
- PlayerAuto[i][vmod4] = (0);
- PlayerAuto[i][vmod5] = (0);
- PlayerAuto[i][vmod6] = (0);
- PlayerAuto[i][vmod7] = (0);
- PlayerAuto[i][vmod8] = (0);
- PlayerAuto[i][vmod9] = (0);
- PlayerAuto[i][vmod10] = (0);
- PlayerAuto[i][vmod11] = (0);
- PlayerAuto[i][vmod12] = (0);
- PlayerAuto[i][vmod13] = (0);
- DestroyVehicle(PlayerAuto[i][id_x]);
- PlayerAuto[i][id_x] = (0);
- PlayerAuto[i][vfarbe1] = (0);
- PlayerAuto[i][vfarbe2] = (0);
- PlayerAuto[i][paintjob] = (0);
- PlayerAuto[i][teile] = 0;
- PlayerAuto[i][tueren] = 0;
- PlayerAuto[i][lichter] = 0;
- PlayerAuto[i][reifen] = 0;
- PlayerAuto[i][frozen_teile] = 0;
- PlayerAuto[i][frozen_tueren] = 0;
- PlayerAuto[i][frozen_lichter] = 0;
- PlayerAuto[i][frozen_reifen] = 0;
- PlayerAuto[i][neon_type] = 0;
- DestroyObject(PlayerAuto[i][neon_obj0]);
- DestroyObject(PlayerAuto[i][neon_obj1]);
- PlayerAuto[i][neon_obj0] = -1;
- PlayerAuto[i][neon_obj1] = -1;
- PlayerAuto[i][streamed_neon] = false;
- return 1;
- }
- }
- return 1;
- }
- if (strcmp(cmd, "/parken", true) ==0 )
- {
- if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,COLOR_WARN,"Du musst im Fahrzeug sitzen!");
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- if(PlayerAuto[i][id_x] == GetPlayerVehicleID(playerid))
- {
- if(strcmp(PlayerAuto[i][vkey],Spielername(playerid),false))return SendClientMessage(playerid,COLOR_WARN,"Dieses Auto gehört nicht dir!");
- GetVehiclePos(GetPlayerVehicleID(playerid),PlayerAuto[i][n_xx],PlayerAuto[i][n_yy],PlayerAuto[i][n_zz]);
- GetVehicleZAngle(GetPlayerVehicleID(playerid),PlayerAuto[i][n_aa]);
- SendClientMessage(playerid,COLOR_GRUEN,"Auto wurde nun hier abgestellt.");
- format(str,sizeof str,"auto_%d/x",i);
- djSetFloat(F_DATEI,str,PlayerAuto[i][n_xx]);
- format(str,sizeof str,"auto_%d/y",i);
- djSetFloat(F_DATEI,str,PlayerAuto[i][n_yy]);
- format(str,sizeof str,"auto_%d/z",i);
- djSetFloat(F_DATEI,str,PlayerAuto[i][n_zz]);
- format(str,sizeof str,"auto_%d/a",i);
- djSetFloat(F_DATEI,str,PlayerAuto[i][n_aa]);
- return 1;
- }
- }
- return 1;
- }
- if (strcmp(cmd, "/verkaufan", true) ==0 )
- {
- if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,COLOR_WARN,"Du musst im Fahrzeug sitzen!");
- tmp = strtok(cmdtext,idx);
- if(!tmp[0])return SendClientMessage(playerid,COLOR_WARN,"Info : /verkaufan [spielerid] [preis]");
- new userx = strval(tmp);
- if(userx == playerid)return SendClientMessage(playerid,COLOR_WARN,"Du kannst dir selber das Auto nicht verkaufen!");
- if(!IsPlayerConnected(userx))return SendClientMessage(playerid,COLOR_WARN,"Dieser Spieler ist nicht Aktiv!");
- if(VerkaufDat[userx][verkaufspartner] > -1)return SendClientMessage(playerid,COLOR_WARN,"Der Spieler befasst sich gerade mit einem Angebot!");
- GetPlayerPos(userx,pos[0],pos[1],pos[2]);
- if(!IsPlayerInRangeOfPoint(playerid,5.0,pos[0],pos[1],pos[2]))return SendClientMessage(playerid,COLOR_WARN,"Du bist zu weit weg vom Spieler!");
- tmp = strtok(cmdtext,idx);
- if(!tmp[0])return SendClientMessage(playerid,COLOR_WARN,"Info : /verkaufan [spielerid] [preis]");
- new prs = strval(tmp);
- if(GetPlayerMoney(userx) < prs)return SendClientMessage(playerid,COLOR_WARN,"Der Spieler hat so viel Geld nicht!");
- VerkaufDat[userx][verkaufspartner] = playerid;
- VerkaufDat[playerid][verkaufspartner] = userx;
- VerkaufDat[userx][preiss] = prs;
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- if(PlayerAuto[i][id_x] == GetPlayerVehicleID(playerid))
- {
- if(strcmp(PlayerAuto[i][vkey],Spielername(playerid),false))return SendClientMessage(playerid,COLOR_WARN,"Dieses Auto gehört nicht dir!");
- VerkaufDat[userx][autoid] = i;
- TogglePlayerControllable(playerid,0);
- GameTextForPlayer(playerid,"~r~Warte auf Antwort...",2000,3);
- format(str,sizeof str,"Fahrzeug Verkaufs-Angebot von %s\nPreis : %d$",Spielername(playerid),prs);
- ShowPlayerDialog(userx,VERKAUF_DIAG,0,"Fahrzeug Kauf Angebot...",str,"Annehmen","Ablehnen");
- return 1;
- }
- }
- return 1;
- }
- if (strcmp(cmd, "/lockit", true) ==0 )
- {
- if(VerkaufDat[playerid][current_unlock] == -1)return 1;
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- if(PlayerAuto[i][id_x] == VerkaufDat[playerid][current_unlock])
- {
- if(strcmp(PlayerAuto[i][vkey],Spielername(playerid),false))return SendClientMessage(playerid,COLOR_WARN,"Dieses Auto gehört nicht dir!");
- if(PlayerAuto[i][cclocked])
- {
- PlayerAuto[i][cclocked] = 0;
- SetVehicleParamsForPlayer(PlayerAuto[i][id_x],playerid,0,0);
- SendClientMessage(playerid,COLOR_GRUEN,"-> Das Auto wurde entriegelt.");
- }
- else
- {
- PlayerAuto[i][cclocked] = 1;
- SetVehicleParamsForPlayer(PlayerAuto[i][id_x],playerid,0,1);
- SendClientMessage(playerid,COLOR_GRUEN,"-> Das Auto wurde abgeschlossen.");
- }
- format(str,sizeof str,"auto_%d/lock",i);
- djSetInt(F_DATEI,str,PlayerAuto[i][cclocked]);
- break;
- }
- }
- return 1;
- }
- return 0;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- new form[128];
- if(newstate == 2)
- {
- for(new j = 0;j<sizeof(ShowCars);j++)
- {
- if(ShowCars[j][v_id] == GetPlayerVehicleID(playerid))
- {
- new sid = j;
- format(form,sizeof form,"Fahrzeug : %s\nFahrzeug Kosten : %d$",ShowCars[sid][v_name],ShowCars[sid][preis]);
- ShowPlayerDialog(playerid,DIAG_KAUFEN,0,"Fahrzeug Kauf",form,"Kaufen","Abbrechen");
- TogglePlayerControllable(playerid,0);
- return 1;
- }
- }
- for(new j = 1;j<MAX_AUTOS;j++)
- {
- if(PlayerAuto[j][id_x] == GetPlayerVehicleID(playerid))
- {
- if(strcmp(PlayerAuto[j][vkey],Spielername(playerid),false))
- {
- SendClientMessage(playerid,COLOR_WARN,"Du bist nicht der Besitzer dieses Autos!");
- RemovePlayerFromVehicle(playerid);
- }
- return 1;
- }
- }
- }
- return 1;
- }
- stock Spielername(playerid)
- {
- new xn[MAX_PLAYER_NAME];
- GetPlayerName(playerid,xn,sizeof xn);
- return xn;
- }
- IsPlayerVehicle(vehicleid)
- {
- new getval_n = -1;
- for(new j = 1;j<MAX_AUTOS;j++)
- {
- if(PlayerAuto[j][id_x] == vehicleid)
- {
- getval_n = j;
- break;
- }
- }
- return getval_n;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- new tform[128];
- for(new j = 1;j<MAX_AUTOS;j++)
- {
- if(PlayerAuto[j][id_x] == vehicleid)
- {
- new type = GetVehicleComponentType(componentid);
- switch(type)
- {
- case 0:
- {
- format(tform,sizeof tform,"auto_%d/mod0",j);
- PlayerAuto[j][vmod0] = componentid;
- }
- case 1:
- {
- format(tform,sizeof tform,"auto_%d/mod1",j);
- PlayerAuto[j][vmod1] = componentid;
- }
- case 2:
- {
- format(tform,sizeof tform,"auto_%d/mod2",j);
- PlayerAuto[j][vmod2] = componentid;
- }
- case 3:
- {
- format(tform,sizeof tform,"auto_%d/mod3",j);
- PlayerAuto[j][vmod3] = componentid;
- }
- case 4:
- {
- format(tform,sizeof tform,"auto_%d/mod4",j);
- PlayerAuto[j][vmod4] = componentid;
- }
- case 5:
- {
- format(tform,sizeof tform,"auto_%d/mod5",j);
- PlayerAuto[j][vmod5] = componentid;
- }
- case 6:
- {
- format(tform,sizeof tform,"auto_%d/mod6",j);
- PlayerAuto[j][vmod6] = componentid;
- }
- case 7:
- {
- format(tform,sizeof tform,"auto_%d/mod7",j);
- PlayerAuto[j][vmod7] = componentid;
- }
- case 8:
- {
- format(tform,sizeof tform,"auto_%d/mod8",j);
- PlayerAuto[j][vmod8] = componentid;
- }
- case 9:
- {
- format(tform,sizeof tform,"auto_%d/mod9",j);
- PlayerAuto[j][vmod9] = componentid;
- }
- case 10:
- {
- format(tform,sizeof tform,"auto_%d/mod10",j);
- PlayerAuto[j][vmod10] = componentid;
- }
- case 11:
- {
- format(tform,sizeof tform,"auto_%d/mod11",j);
- PlayerAuto[j][vmod11] = componentid;
- }
- case 12:
- {
- format(tform,sizeof tform,"auto_%d/mod12",j);
- PlayerAuto[j][vmod12] = componentid;
- }
- case 13:
- {
- format(tform,sizeof tform,"auto_%d/mod13",j);
- PlayerAuto[j][vmod13] = componentid;
- }
- default:return 1;
- }
- djSetInt(F_DATEI,tform,componentid);
- return 1;
- }
- }
- return 1;
- }
- stock getShowCarID(vehicleid)
- {
- new identorx = -1;
- for(new j = 0;j<sizeof ShowCars;j++)
- {
- if(ShowCars[j][v_id] == vehicleid)
- {
- identorx = j;
- break;
- }
- }
- return identorx;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- new tform[128];
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- if(PlayerAuto[i][id_x] == vehicleid)
- {
- format(tform,sizeof tform,"auto_%d/paintjob",i);
- djSetInt(F_DATEI,tform,paintjobid);
- return 1;
- }
- }
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- new tform[128];
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- if(PlayerAuto[i][id_x] == vehicleid)
- {
- format(tform,sizeof tform,"auto_%d/farbe1",i);
- djSetInt(F_DATEI,tform,color1);
- format(tform,sizeof tform,"auto_%d/farbe2",i);
- djSetInt(F_DATEI,tform,color2);
- return 1;
- }
- }
- return 1;
- }
- public OnVehicleStreamIn(vehicleid, forplayerid)
- {
- for(new i = 0;i<sizeof ShowCars;i++)
- {
- if(ShowCars[i][v_id] == vehicleid)
- {
- if(ShowCars[i][sf_mod0])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod0]);
- if(ShowCars[i][sf_mod1])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod1]);
- if(ShowCars[i][sf_mod2])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod2]);
- if(ShowCars[i][sf_mod3])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod3]);
- if(ShowCars[i][sf_mod4])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod4]);
- if(ShowCars[i][sf_mod5])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod5]);
- if(ShowCars[i][sf_mod6])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod6]);
- if(ShowCars[i][sf_mod7])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod7]);
- if(ShowCars[i][sf_mod8])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod8]);
- if(ShowCars[i][sf_mod9])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod9]);
- if(ShowCars[i][sf_mod10])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod10]);
- if(ShowCars[i][sf_mod11])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod11]);
- if(ShowCars[i][sf_mod12])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod12]);
- if(ShowCars[i][sf_mod13])AddVehicleComponent(vehicleid,ShowCars[i][sf_mod13]);
- UpdateVehicleDamageStatus(vehicleid,ShowCars[i][xteile],ShowCars[i][xtueren],ShowCars[i][xlichter],ShowCars[i][xreifen]);
- return 1;
- }
- }
- FahrzeugTunen(vehicleid,forplayerid);
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- if(PlayerAuto[i][id_x] == vehicleid)
- {
- if(PlayerAuto[i][n_xx] != PlayerAuto[i][v_xc] || PlayerAuto[i][n_yy] != PlayerAuto[i][v_yc] || PlayerAuto[i][n_zz] != PlayerAuto[i][v_zc] || PlayerAuto[i][n_aa] != PlayerAuto[i][v_ac])
- {
- DestroyObject(PlayerAuto[i][neon_obj0]);
- DestroyObject(PlayerAuto[i][neon_obj1]);
- PlayerAuto[i][neon_obj0] = -1;
- PlayerAuto[i][neon_obj1] = -1;
- PlayerAuto[i][streamed_neon] = false;
- DestroyVehicle(PlayerAuto[i][id_x]);
- PlayerAuto[i][v_xc] = PlayerAuto[i][n_xx];PlayerAuto[i][v_yc] = PlayerAuto[i][n_yy];PlayerAuto[i][v_zc] = PlayerAuto[i][n_zz];PlayerAuto[i][v_ac] = PlayerAuto[i][n_aa];
- PlayerAuto[i][id_x] = CreateVehicle(PlayerAuto[i][vmodel],PlayerAuto[i][n_xx],PlayerAuto[i][n_yy],PlayerAuto[i][n_zz],PlayerAuto[i][n_aa],PlayerAuto[i][vfarbe1],PlayerAuto[i][vfarbe2],1200000);
- }
- return 1;
- }
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- new sform[128];
- if(response)
- {
- if(dialogid == DIAG_KAUFEN)
- {
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- format(sform,sizeof sform,"auto_%d",i);
- if(!djIsSet(F_DATEI,sform))
- {
- new preis_veh;
- for(new a = 0;a<sizeof(ShowCars);a++)
- {
- if(ShowCars[a][v_id] == GetPlayerVehicleID(playerid))
- {
- preis_veh = ShowCars[a][preis];
- }
- }
- if(GetPlayerMoney(playerid) < preis_veh)
- {
- TogglePlayerControllable(playerid,1);
- RemovePlayerFromVehicle(playerid);
- return SendClientMessage(playerid,COLOR_WARN,"Du hast zu wenig Geld!");
- }
- new Float:bx,Float:by,Float:bz,Float:ba,found = 0;
- for(new j = 0;j<sizeof(show_ausgang_range);j++)
- {
- if(IsPlayerInRangeOfPoint(playerid,20.0,show_ausgang_range[j][0],show_ausgang_range[j][1],show_ausgang_range[j][2]))
- {
- if(!found)
- {
- bx = Fahrzeug_Spawn[j][0];
- by = Fahrzeug_Spawn[j][1];
- bz = Fahrzeug_Spawn[j][2];
- ba = Fahrzeug_Spawn[j][3];
- found = 1;
- }
- }
- }
- if(!found)
- {
- TogglePlayerControllable(playerid,1);
- RemovePlayerFromVehicle(playerid);
- return SendClientMessage(playerid,COLOR_WARN,"Dieses Auto ist zu weit vom Händler entfernt!");
- }
- format(sform,sizeof sform,"auto_%d/model",i);
- djSetInt(F_DATEI,sform,GetVehicleModel(GetPlayerVehicleID(playerid)));
- format(sform,sizeof sform,"auto_%d/x",i);
- djSetFloat(F_DATEI,sform,bx);
- format(sform,sizeof sform,"auto_%d/y",i);
- djSetFloat(F_DATEI,sform,by);
- format(sform,sizeof sform,"auto_%d/z",i);
- djSetFloat(F_DATEI,sform,bz);
- format(sform,sizeof sform,"auto_%d/a",i);
- djSetFloat(F_DATEI,sform,ba);
- format(sform,sizeof sform,"auto_%d/key",i);
- djSet(F_DATEI,sform,Spielername(playerid));
- format(sform,sizeof sform,"auto_%d/farbe1",i);
- djSetInt(F_DATEI,sform,-1);
- format(sform,sizeof sform,"auto_%d/farbe2",i);
- djSetInt(F_DATEI,sform,-1);
- new reget[4];
- GetVehicleDamageStatus(GetPlayerVehicleID(playerid),reget[0],reget[1],reget[2],reget[3]);
- format(sform,sizeof sform,"auto_%d/teile",i);
- djSetInt(F_DATEI,sform,reget[0]);
- format(sform,sizeof sform,"auto_%d/tueren",i);
- djSetInt(F_DATEI,sform,reget[1]);
- format(sform,sizeof sform,"auto_%d/lichter",i);
- djSetInt(F_DATEI,sform,reget[2]);
- format(sform,sizeof sform,"auto_%d/reifen",i);
- djSetInt(F_DATEI,sform,reget[3]);
- PlayerAuto[i][vmodel] = GetVehicleModel(GetPlayerVehicleID(playerid));
- new showCar_get = getShowCarID(GetPlayerVehicleID(playerid));
- PlayerAuto[i][v_xc] = (bx);
- PlayerAuto[i][v_yc] = (by);
- PlayerAuto[i][v_zc] = (bz);
- PlayerAuto[i][v_ac] = (ba);
- PlayerAuto[i][n_xx] = (bx);
- PlayerAuto[i][n_yy] = (by);
- PlayerAuto[i][n_zz] = (bz);
- PlayerAuto[i][n_aa] = (ba);
- PlayerAuto[i][vfarbe1] = -1;
- PlayerAuto[i][vfarbe2] = -1;
- PlayerAuto[i][neon_type] = 0;
- PlayerAuto[i][teile] = reget[0];
- PlayerAuto[i][tueren] = reget[1];
- PlayerAuto[i][lichter] = reget[2];
- PlayerAuto[i][reifen] = reget[3];
- PlayerAuto[i][frozen_teile] = reget[0];
- PlayerAuto[i][frozen_tueren] = reget[1];
- PlayerAuto[i][frozen_lichter] = reget[2];
- PlayerAuto[i][frozen_reifen] = reget[3];
- PlayerAuto[i][id_x] = CreateVehicle(PlayerAuto[i][vmodel],PlayerAuto[i][v_xc],PlayerAuto[i][v_yc],PlayerAuto[i][v_zc],PlayerAuto[i][v_ac],PlayerAuto[i][vfarbe1],PlayerAuto[i][vfarbe2],1200000);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod0]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod1]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod2]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod3]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod4]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod5]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod6]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod7]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod8]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod9]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod10]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod11]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod12]);
- OnVehicleMod(playerid,PlayerAuto[i][id_x],ShowCars[showCar_get][sf_mod13]);
- OnVehicleStreamIn(PlayerAuto[i][id_x],playerid);
- strmid(PlayerAuto[i][vkey],Spielername(playerid),0,MAX_PLAYER_NAME,MAX_PLAYER_NAME);
- GivePlayerMoney(playerid,-preis_veh);
- PlayerAuto[i][preisx] = preis_veh/2;
- SendClientMessage(playerid,COLOR_GRUEN,"Glückwunsch zum neuen Auto!");
- TogglePlayerControllable(playerid,1);
- RemovePlayerFromVehicle(playerid);
- return 1;
- }
- }
- }
- if(dialogid == VERKAUF_DIAG)
- {
- if(!IsPlayerConnected(VerkaufDat[playerid][verkaufspartner]))
- {
- TogglePlayerControllable(playerid,1);
- VerkaufDat[playerid][verkaufspartner] = -1;
- VerkaufDat[playerid][preiss] = -1;
- VerkaufDat[playerid][autoid] = -1;
- return SendClientMessage(playerid,COLOR_WARN,"Dein Verkaufspartner scheint nicht mehr da zu sein...");
- }
- format(sform,sizeof sform,"auto_%d",VerkaufDat[playerid][autoid]);
- if(!djIsSet(F_DATEI,sform))return SendClientMessage(playerid,COLOR_WARN,"Dieses Auto ist kein gültiges Kaufauto!");
- GivePlayerMoney(playerid,-VerkaufDat[playerid][preiss]);
- SendClientMessage(VerkaufDat[playerid][verkaufspartner],COLOR_GRUEN,"Der Spieler hat angenommen...");
- GivePlayerMoney(VerkaufDat[playerid][verkaufspartner],VerkaufDat[playerid][preiss]);
- TogglePlayerControllable(VerkaufDat[playerid][verkaufspartner],1);
- RemovePlayerFromVehicle(VerkaufDat[playerid][verkaufspartner]);
- TogglePlayerControllable(playerid,1);
- format(sform,sizeof sform,"auto_%d/key",VerkaufDat[playerid][autoid]);
- djSet(F_DATEI,sform,Spielername(playerid));
- strmid(PlayerAuto[VerkaufDat[playerid][autoid]][vkey],Spielername(playerid),0,MAX_PLAYER_NAME,MAX_PLAYER_NAME);
- SendClientMessage(playerid,COLOR_GRUEN,"Du hast das Auto erfolgreich erworben.");
- VerkaufDat[VerkaufDat[playerid][verkaufspartner]][verkaufspartner] = -1;
- VerkaufDat[VerkaufDat[playerid][verkaufspartner]][preiss] = -1;
- VerkaufDat[VerkaufDat[playerid][verkaufspartner]][autoid] = -1;
- VerkaufDat[playerid][verkaufspartner] = -1;
- VerkaufDat[playerid][preiss] = -1;
- VerkaufDat[playerid][autoid] = -1;
- }
- if(dialogid == NEON_DIAG)
- {
- new neon_veh = IsPlayerVehicle(GetPlayerVehicleID(playerid));
- if(neon_veh == -1)return SendClientMessage(playerid,COLOR_WARN,"-> Dieses Fahrzeug kann nicht mit Neon ausgestattet werden, es gehoert nicht dir!");
- if(GetPlayerMoney(playerid) < NEON_PRICE)return SendClientMessage(playerid,COLOR_WARN,"Du brauchst mindestens 200$ um Neons zu erwerben!");
- new neon_object = 0;
- switch(listitem)
- {
- case 0:neon_object = NEON_BLUE;
- case 1:neon_object = NEON_RED;
- case 2:neon_object = NEON_GREEN;
- case 3:neon_object = NEON_WHITE;
- case 4:neon_object = NEON_PINK;
- case 5:neon_object = NEON_YELLOW;
- case 6:
- {
- if(!IsValidObject(PlayerAuto[neon_veh][neon_obj0]))return SendClientMessage(playerid,COLOR_MESS,"-> Keine Neons vorhanden.");
- GivePlayerMoney(playerid,(NEON_PRICE/2));
- DestroyObject(PlayerAuto[neon_veh][neon_obj0]);
- DestroyObject(PlayerAuto[neon_veh][neon_obj1]);
- PlayerAuto[neon_veh][neon_obj0] = -1;
- PlayerAuto[neon_veh][neon_obj1] = -1;
- SendClientMessage(playerid,COLOR_MESS,"Neons wurden für die haelfte des Kaufpreises verkauft.");
- PlayerAuto[neon_veh][neon_type] = 0;
- format(sform,sizeof sform,"auto_%d/neonT",neon_veh);
- djSetInt(F_DATEI,sform,PlayerAuto[neon_veh][neon_type]);
- PlayerAuto[neon_veh][streamed_neon] = false;
- }
- default:return 1;
- }
- if(neon_object > 0)
- {
- if(IsValidObject(PlayerAuto[neon_veh][neon_obj0]))
- {
- GivePlayerMoney(playerid,(NEON_PRICE/2));
- DestroyObject(PlayerAuto[neon_veh][neon_obj0]);
- DestroyObject(PlayerAuto[neon_veh][neon_obj1]);
- PlayerAuto[neon_veh][neon_obj0] = -1;
- PlayerAuto[neon_veh][neon_obj1] = -1;
- SendClientMessage(playerid,COLOR_MESS,"Dein Auto hatte bereits Neons diese wurden für die haelfte des Kaufpreises verkauft.");
- PlayerAuto[neon_veh][neon_type] = 0;
- PlayerAuto[neon_veh][streamed_neon] = false;
- }
- PlayerAuto[neon_veh][streamed_neon] = true;
- PlayerAuto[neon_veh][neon_obj0] = CreateObject(neon_object,0,0,0,0,0,0);
- PlayerAuto[neon_veh][neon_obj1] = CreateObject(neon_object,0,0,0,0,0,0);
- PlayerAuto[neon_veh][neon_type] = neon_object;
- AttachObjectToVehicle(PlayerAuto[neon_veh][neon_obj0], PlayerAuto[neon_veh][id_x], OFF_X, 0.0, OFF_Z, 0.0, 0.0, 0.0);
- AttachObjectToVehicle(PlayerAuto[neon_veh][neon_obj1], PlayerAuto[neon_veh][id_x], OFF_X2, 0.0, OFF_Z, 0.0, 0.0, 0.0);
- format(sform,sizeof sform,"auto_%d/neonT",neon_veh);
- djSetInt(F_DATEI,sform,neon_object);
- GivePlayerMoney(playerid,-200);
- }
- }
- }
- else
- {
- if(dialogid == DIAG_KAUFEN)
- {
- SendClientMessage(playerid,COLOR_GRUEN,"ok dann nicht...");
- TogglePlayerControllable(playerid,1);
- RemovePlayerFromVehicle(playerid);
- }
- if(dialogid == VERKAUF_DIAG)
- {
- if(!IsPlayerConnected(VerkaufDat[playerid][verkaufspartner]))
- {
- TogglePlayerControllable(playerid,1);
- VerkaufDat[playerid][verkaufspartner] = -1;
- VerkaufDat[playerid][preiss] = -1;
- VerkaufDat[playerid][autoid] = -1;
- return SendClientMessage(playerid,COLOR_WARN,"Dein Verkaufspartner scheint nicht mehr da zu sein...");
- }
- TogglePlayerControllable(playerid,1);
- VerkaufDat[VerkaufDat[playerid][verkaufspartner]][verkaufspartner] = -1;
- VerkaufDat[VerkaufDat[playerid][verkaufspartner]][preiss] = -1;
- VerkaufDat[VerkaufDat[playerid][verkaufspartner]][autoid] = -1;
- VerkaufDat[playerid][verkaufspartner] = -1;
- VerkaufDat[playerid][preiss] = -1;
- VerkaufDat[playerid][autoid] = -1;
- TogglePlayerControllable(VerkaufDat[playerid][verkaufspartner],1);
- SendClientMessage(VerkaufDat[playerid][verkaufspartner],COLOR_WARN,"Der Spieler hat abgelehnt...");
- }
- }
- return 1;
- }
- public OnVehicleDamageStatusUpdate(vehicleid, playerid)
- {
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- if(PlayerAuto[i][id_x] == vehicleid)
- {
- new sform[64];
- GetVehicleDamageStatus(GetPlayerVehicleID(playerid),
- PlayerAuto[i][teile],
- PlayerAuto[i][tueren],
- PlayerAuto[i][lichter],
- PlayerAuto[i][reifen]);
- if( (!PlayerAuto[i][teile] && PlayerAuto[i][teile] != PlayerAuto[i][frozen_teile]))PlayerAuto[i][teile] = PlayerAuto[i][frozen_teile];
- if( (!PlayerAuto[i][tueren] && PlayerAuto[i][tueren] != PlayerAuto[i][frozen_tueren]))PlayerAuto[i][tueren] = PlayerAuto[i][frozen_tueren];
- if( (!PlayerAuto[i][lichter] && PlayerAuto[i][lichter] != PlayerAuto[i][frozen_lichter]))PlayerAuto[i][lichter] = PlayerAuto[i][frozen_lichter];
- if( (!PlayerAuto[i][reifen] && PlayerAuto[i][reifen] != PlayerAuto[i][frozen_reifen]))PlayerAuto[i][reifen] = PlayerAuto[i][frozen_reifen];
- UpdateVehicleDamageStatus(vehicleid,PlayerAuto[i][teile],PlayerAuto[i][tueren],PlayerAuto[i][lichter],PlayerAuto[i][reifen]);
- format(sform,sizeof sform,"auto_%d/teile",i);
- djSetInt(F_DATEI,sform,PlayerAuto[i][teile]);
- format(sform,sizeof sform,"auto_%d/tueren",i);
- djSetInt(F_DATEI,sform,PlayerAuto[i][tueren]);
- format(sform,sizeof sform,"auto_%d/lichter",i);
- djSetInt(F_DATEI,sform,PlayerAuto[i][lichter]);
- format(sform,sizeof sform,"auto_%d/reifen",i);
- djSetInt(F_DATEI,sform,PlayerAuto[i][reifen]);
- break;
- }
- }
- return 1;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- for(new i = 1;i<MAX_AUTOS;i++)
- {
- if(PlayerAuto[i][id_x] == vehicleid)
- {
- VerkaufDat[playerid][current_unlock] = vehicleid;
- break;
- }
- }
- 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;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement