Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- ********************************************************************************
- *********************SYSTEME ACHAT VOITURE**************************************
- ********************************************************************************
- ----------------------------------REMERCIEMENT----------------------------------
- --------------------------------------------------------------------------------
- Un grand merci a [LZR]SpIrOo a [M2R]LePetitClown
- Sim pour m'avoir fait rappeler a sa maniere de mettre un systeme de code PIN^^
- Les membres de GTAOnline.fr de SA_MP.com a vous pour l'avoir telecharger
- notre forum lzrteam.tk a gilux pour nous heberger ^^
- n'hesiter surtout pas si vous trouver un bug genant a l'utilisation de ce FS
- __________________________________________________________________________
- °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
- ________________________________________________________________________________
- Je sais que vous ne laisserais surement pas le credit mais SVP faite connaitre
- ce FS qui vous sert et qui pourras surement ravire d'autre personnes ne dite pas
- que vous en êtes le créateur si tel n'est pas le cas.
- Ceci est juste un text de bonne fois.
- ________________________________________________________________________________
- °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
- ________________________________________________________________________________
- */
- #include <a_samp>
- #include <Dini>
- #include <dutils>
- #undef MAX_PLAYERS
- #pragma unused ret_memcpy
- #define MAX_VOITURE 500//ici vous devez mettre le nombre de vehicule que vous aller mettre en vente
- #define MAX_PLAYERS 10//ici veuillez renseigner le nombre de slot de votre serveur samp
- //#define DEBUG // decommenter pour utiliser la commande /cash et /carsave
- #define USEPIN//commenter pour ne pas utiliser le systeme de protection par code pin
- #define USERESETCAR //commenter pour ne pas utiliser le restecar ou pas
- #define USEDEMARRER//commenter pour ne pas utiliser le systeme pour demarer les voiture en appuyant sur TIRE
- #define USEESSENCE//commenter pour ne pas utiliser le systeme d'essence
- #define USEALARME//commenter pour ne pas utiliser le systeme d'alarme
- #define USECALLCAR//commenter pour desactiver l'utilisation de la commande /callcar
- #define TMPFILE "filetempcar.pwn"//Le nom du fichier temporaire
- //************ne pas toucher si dessous*****************************************
- #define ERRORMSG(%0) SendClientMessage(playerid,0xFF0000FF,%0)
- #define OKMSG(%0) SendClientMessage(playerid,0x00FF33AA,%0)
- #define INFOMSG(%0) SendClientMessage(playerid,0xFFFF00AA,%0)
- #define MOTEURON(%0) SetVehicleParamsEx(%0,1,0,0,0,0,0,0)
- #define MOTEUROFF(%0) SetVehicleParamsEx(%0,0,0,0,0,0,0,0)
- #define ALARMON(%0) SetVehicleParamsEx(%0,0,0,1,0,0,0,0)
- #define ALARMOFF(%0) SetVehicleParamsEx(%0,0,0,0,0,0,0,0)
- #define MIN_VEHI_ID 400
- #define MAX_VEHI_ID 611
- /*==============================================================================
- =================SYSTEME Personal Identification Number=========================
- ================================================================================*/
- #if defined USEPIN
- #define DIAPIN 23
- #define DIACHANGEPIN 24
- #define LookPin(%0) ShowPlayerDialog(playerid,DIAPIN,DIALOG_STYLE_MSGBOX ,"PIN",%0,"ok","")
- #define DPIN ShowPlayerDialog(playerid,DIACHANGEPIN,DIALOG_STYLE_INPUT,"PIN","Entrer votre nouveau code pin:","ok","annul")
- #define MAX_MAUVAISPIN 3
- #define MyPin(%0) dini_Int(CompteVoiture(%0),"Pin")
- new BADPIN[MAX_PLAYERS];
- new PINOK[MAX_PLAYERS];
- #endif
- /*==============================================================================
- ============================Systeme essence=====================================
- ================================================================================*/
- #if defined USEESSENCE
- #define MAX_ESSENCE 100 // Maximum d'essence dans un vehicule
- #define PRIX_ESSENCE 2 // Prix au litre
- new Voiture_essence[MAX_VEHICLES];
- new Remplissage[MAX_PLAYERS];
- new Menu:Essence;
- new Timer_Essence;
- new Remplissage_Timer[MAX_PLAYERS];
- static Float:Pompe[18][3] = {
- {2202.0649, 2472.6697, 10.5677},
- {2115.1929, 919.9908, 10.5266},
- {2640.7209, 1105.9565, 10.5274},
- {608.5971, 1699.6238, 6.9922},
- {618.4878, 1684.5792, 6.9922},
- {2146.3467, 2748.2893, 10.5245},
- {-1679.4595, 412.5129, 6.9973},
- {-1327.5607, 2677.4316, 49.8093},
- {-1470.0050, 1863.2375, 32.3521},
- {-2409.2200, 976.2798, 45.2969},
- {-2244.1396, -2560.5833, 31.9219},
- {-1606.0544, -2714.3083, 48.5335},
- {937.4293, -1773.1865, 13.3828},
- {-91.3854, -1169.9175, 2.4213},
- {1383.4221, 462.5385, 20.1506},
- {660.4590, -565.0394, 16.3359},
- {1381.7206, 459.1907, 20.3452},
- {-1605.7156, -2714.4573, 48.5335}
- };
- forward MAJ_Essence();
- forward Dans_Station(playerid);
- forward core_Remplissage(playerid);
- #endif
- /*==============================================================================
- ==============================Systeme Alarme====================================
- ================================================================================*/
- #if defined USEALARME
- //vehicled,engine,lights,alarm,doors,bonnet,boot,objective
- new Vehicule_Sous_Alarme[MAX_VOITURE];
- #endif
- /*================================================================================
- ======================Systeme de demarrage voiture==============================
- ===============================================================================*/
- #if defined USEDEMARRER
- new Voiture_Demarer[MAX_VEHICLES];
- new ClefTourne[MAX_PLAYERS];
- forward Demarre(playerid);
- #define KEYUTILISER KEY_FIRE
- #endif
- /*==============================================================================
- ================================================================================
- ================================================================================*/
- #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0)\
- && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
- enum PlIn
- {
- car,//-1 pas proprio
- interior,
- Argent
- };
- new PI[MAX_PLAYERS][PlIn];
- new Float:PosVoit[MAX_VOITURE][4];
- new ccolor1[MAX_VOITURE];
- new ccolor2[MAX_VOITURE];
- new cari = 0;
- new CarName[][] =
- {
- "Landstalker", "Bravura", "Buffalo", "Linerunner", "Perrenial", "Sentinel",
- "Dumper", "Firetruck", "Trashmaster", "Stretch", "Manana", "Infernus",
- "Voodoo", "Pony", "Mule", "Cheetah", "Ambulance", "Leviathan", "Moonbeam",
- "Esperanto", "Taxi", "Washington", "Bobcat", "Whoopee", "BF Injection",
- "Hunter", "Premier", "Enforcer", "Securicar", "Banshee", "Predator", "Bus",
- "Rhino", "Barracks", "Hotknife", "Trailer", "Previon", "Coach", "Cabbie",
- "Stallion", "Rumpo", "RC Bandit", "Romero", "Packer", "Monster", "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", "Boxvillde", "Benson", "Mesa", "RC Goblin",
- "Hotring Racer A", "Hotring Racer B", "Bloodring Banger", "Rancher", "Super GT",
- "Elegant", "Journey", "Bike", "Mountain Bike", "Beagle", "Cropduster", "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", "Monster", "Uranus", "Jester", "Sultan", "Stratium",
- "Elegy", "Raindance", "RC Tiger", "Flash", "Tahoma", "Savanna", "Bandito",
- "Freight Flat", "Streak Carriage", "Kart", "Mower", "Dune", "Sweeper",
- "Broadway", "Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400",
- "News Van", "Tug", "Trailer", "Emperor", "Wayfarer", "Euros", "Hotdog", "Club",
- "Freight Box", "Trailer", "Andromada", "Dodo", "RC Cam", "Launch", "Police Car",
- "Police Car", "Police Car", "Police Ranger", "Picador", "S.W.A.T", "Alpha",
- "Phoenix", "Glendale", "Sadler", "Luggage", "Luggage", "Stairs", "Boxville",
- "Tiller", "Utility Trailer"
- };
- /*==============================================================================
- ===============================Fonction=========================================
- ================================================================================*/
- stock AddStaticVehicles(id,Float:CX,Float:CY,Float:CZ,Float:CA,C1,C2,PRIX=1000,buy=1)
- {
- cari ++;
- if(!fexist(CompteVoiture(cari)))
- {
- dini_Create(CompteVoiture(cari));
- dini_IntSet(CompteVoiture(cari),"Type",id);
- dini_FloatSet(CompteVoiture(cari),"PosX",CX);
- dini_FloatSet(CompteVoiture(cari),"PosY",CY);
- dini_FloatSet(CompteVoiture(cari),"PosZ",CZ);
- dini_FloatSet(CompteVoiture(cari),"PosA",CA);
- dini_IntSet(CompteVoiture(cari),"Couleur1",C1);
- dini_IntSet(CompteVoiture(cari),"Couleur2",C2);
- dini_Set(CompteVoiture(cari),"Nom proprio","Libre");
- dini_IntSet(CompteVoiture(cari),"prix",PRIX);
- dini_IntSet(CompteVoiture(cari),"id",cari);
- dini_IntSet(CompteVoiture(cari),"SecurKill",0);
- dini_IntSet(CompteVoiture(cari),"buy",buy);
- dini_IntSet(CompteVoiture(cari),"reserve",0);
- #if defined USEALARME
- dini_IntSet(CompteVoiture(cari),"Alarme",0);
- #endif
- #if defined USEPIN
- new c1 = 0;
- new c2 = 0;
- new c3 = 0;
- new c4 = 0;
- c1 = random(10);
- c2 = random(10);
- c3 = random(10);
- c4 = random(10);
- new pin[6];
- format(pin,sizeof(pin),"%d%d%d%d",c1,c2,c3,c4);
- dini_Set(CompteVoiture(cari),"Pin",pin);
- #endif
- #if defined USEESSENCE
- dini_IntSet(CompteVoiture(cari),"Litre",MAX_ESSENCE);
- #endif
- printf("Creation fichier %d prix %d",cari,PRIX);
- new v;
- v=CreateVehicle(id,Float:CX,Float:CY,Float:CZ,Float:CA,C1,C2,-1);
- SetVehicleNumberPlate(v,"LIBRE");
- }
- else
- {
- PosVoit[cari][0]=dini_Float(CompteVoiture(cari),"PosX");
- PosVoit[cari][1]=dini_Float(CompteVoiture(cari),"PosY");
- PosVoit[cari][2]=dini_Float(CompteVoiture(cari),"PosZ");
- PosVoit[cari][3]=dini_Float(CompteVoiture(cari),"PosA");
- ccolor1[cari]=dini_Int(CompteVoiture(cari),"Couleur1");
- ccolor2[cari]=dini_Int(CompteVoiture(cari),"Couleur2");
- #if defined USEALARME
- Vehicule_Sous_Alarme[cari] = dini_Int(CompteVoiture(cari),"Alarme");
- #endif
- new v;
- v=CreateVehicle(dini_Int(CompteVoiture(cari),"Type"),PosVoit[cari][0],PosVoit[cari][1],PosVoit[cari][2],PosVoit[cari][3],ccolor1[cari],ccolor2[cari],-1);
- new val1[256];
- val1 = dini_Get(CompteVoiture(cari), "Nom proprio");
- new abuy;
- abuy = dini_Int(CompteVoiture(cari), "buy");
- if(abuy==1)
- {
- if(strcmp(val1,"Libre",false) == 0)
- {
- SetVehicleNumberPlate(v,"LIBRE");
- printf("Chargement vehicule %d %s",cari,val1);
- }
- else
- {
- SetVehicleNumberPlate(v,val1);
- printf("Chargement vehicule %d VENDU A %s",cari,val1);
- }
- }
- else
- {
- printf("Chargement vehicule %d BLOQUER A LA VENTE",cari);
- }
- }
- return 1;
- }
- stock nom(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- return name;
- }
- /*============================================================================
- ==========================Systeme fichier temporaire==========================
- ==============================================================================*/
- stock tmpval(var[])
- {
- new var2;
- if(dini_Isset(TMPFILE,var))
- {
- var2=dini_Int(TMPFILE,var);
- }
- else
- {
- var2 = -1;
- }
- return var2;
- }
- stock settmpval(var[],valu)
- {
- dini_IntSet(TMPFILE,var,valu);
- }
- stock deletetmpval(var[])
- {
- dini_Unset(TMPFILE,var);
- }
- /*==============================================================================
- ===================================Compte=======================================
- ================================================================================*/
- stock CompteVoiture(ID)
- {
- new str[25];
- format(str,sizeof(str),"%d.ini",ID);
- return str;
- }
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" Systeme de vehicule charger");
- print("--------------------------------------\n");
- #if defined USEESSENCE
- Timer_Essence = SetTimer("MAJ_Essence",11000,1);
- for(new c=0;c<MAX_VEHICLES;c++)
- {
- if(fexist(CompteVoiture(c)))
- {
- Voiture_essence[c] = dini_Int(CompteVoiture(c),"Litre");
- }
- else
- {
- Voiture_essence[c] = MAX_ESSENCE;
- }
- }
- for(new m=0;m<sizeof(Pompe);m++)
- {
- Create3DTextLabel("tape /essence\n pour avoir le menu",0xFF0000FF,Pompe[m][0],Pompe[m][1],Pompe[m][2],40.0,0,0);
- }
- Essence = CreateMenu("Choisissez votre essence",1,50,220,200,200);
- AddMenuItem(Essence,0,"Sans Plomb 95");
- AddMenuItem(Essence,0,"Sans Plomb 98");
- AddMenuItem(Essence,0,"Diesel");
- AddMenuItem(Essence,0,"Quitter");
- #endif
- AddStaticVehicles(596,-1600.2443,676.5341,-5.5206,1.2510,0,1,1800,0); // police car Voiture exemple bloquer a la vente
- AddStaticVehicles(596,-1596.5505,676.6334,-5.5213,1.6404,0,1,1563220); // police car
- AddStaticVehicles(596,-1600.0669,691.8015,-5.5204,180.4114,0,1); // police car
- AddStaticVehicles(523,-1604.4340,691.8796,-5.6723,178.8309,0,0); // hpv
- AddStaticVehicles(523,-1608.5313,691.7864,-5.6728,179.2589,0,0); // hpv
- AddStaticVehicles(523,-1612.5232,692.2579,-5.6724,177.3835,0,0); // hpv
- AddStaticVehicles(427,-1616.7412,692.7713,-5.1103,178.1325,0,1); // enforcer
- AddStaticVehicles(427,-1620.6270,692.6934,-5.1103,182.2275,0,1); // enforcer
- AddStaticVehicles(428,-1613.9460,677.6362,-4.7822,300.6578,4,75); // securicar police
- /*==============================================================================
- =====Verification et/ou systeme de creation/verification fichier temporaire=====
- ================================================================================*/
- if(!fexist(TMPFILE))
- {
- dini_Create(TMPFILE);
- }
- /*==============================================================================
- ======================Verification des defines==================================
- ================================================================================*/
- if(MAX_PLAYERS != GetMaxPlayers())
- {
- printf("La define MAX_PLAYERS est a %d or vous avez %d de slot disponible veuillez modifier la valeur de la define MAX_PLAYERS par %d",MAX_PLAYERS,GetMaxPlayers(),GetMaxPlayers());
- SendRconCommand("exit");
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- INFOMSG("Ce serveur utilise le systeme de gestion de voiture by Cristab");//une micro pub :p
- #if defined USEPIN
- PI[playerid][car] = tmpval(nom(playerid));
- BADPIN[playerid] = 0;
- if(PI[playerid][car] != -1)
- {
- PINOK[playerid]=0;
- }
- else
- {
- PINOK[playerid]=1;
- }
- #endif
- #if defined USEDEMARRER
- ClefTourne[playerid]=0;
- #endif
- #if defined USEESSENCE
- Remplissage[playerid] = 0;
- for(new m=0;m<sizeof(Pompe);m++)
- {
- SetPlayerMapIcon(playerid,m,Pompe[m][0],Pompe[m][1],Pompe[m][2],55,1);
- }
- #endif
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- #if defined USEPIN
- if(PINOK[playerid] == 0)
- {
- INFOMSG("Bonjour votre pseudo est doter d'un code PIN suite a l'achat d'un vehicule");
- INFOMSG("Veuillez taper votre PIN dans le chat MERCI.");
- }
- #endif
- return 1;
- }
- public OnPlayerDisconnect(playerid)
- {
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- if(fexist(CompteVoiture(vehicleid)))
- {
- new val1[256];
- val1 = dini_Get(CompteVoiture(vehicleid), "Nom proprio");
- if(strcmp(val1,"Libre",false) == 0)
- {
- SetVehicleNumberPlate(vehicleid,"LIBRE");
- }
- else
- {
- SetVehicleNumberPlate(vehicleid,val1);
- }
- ccolor1[cari]=dini_Int(CompteVoiture(vehicleid),"Couleur1");
- ccolor2[cari]=dini_Int(CompteVoiture(vehicleid),"Couleur2");
- ChangeVehicleColor(vehicleid,ccolor1[cari],ccolor2[cari]);
- #if defined USEESSENCE
- Voiture_essence[vehicleid] = dini_Int(CompteVoiture(vehicleid),"Litre");
- }
- else
- {
- Voiture_essence[vehicleid] = MAX_ESSENCE;
- }
- #else
- }
- #endif
- return 1;
- }
- public OnFilterScriptExit()
- {
- #if defined USEESSENCE
- DestroyMenu(Essence);
- KillTimer(Timer_Essence);
- #endif
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- #if defined USEPIN
- if(PINOK[playerid] == 0)
- {
- new PINVAL[256];
- PINVAL = dini_Get(CompteVoiture(PI[playerid][car]),"Pin");
- if(strcmp(PINVAL,text,false) == 0)
- {
- OKMSG("PIN VALIDE");
- PINOK[playerid] = 1;
- }
- else
- {
- ERRORMSG("PIN INVALIDE");
- BADPIN[playerid]++;
- if(BADPIN[playerid] == MAX_MAUVAISPIN)
- {
- Kick(playerid);
- }
- }
- return 0;
- }
- #endif
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- dcmd(buycar,6,cmdtext);
- #if defined USEESSENCE
- dcmd(essence,7,cmdtext);
- dcmd(aessence,8,cmdtext);
- #endif
- #if defined USEPIN
- if(PINOK[playerid] == 1)
- {
- #endif
- #if defined USEALARME
- dcmd(alarm,5,cmdtext);
- #endif
- dcmd(sellcar,7,cmdtext);
- #if defined USECALLCAR
- dcmd(callcar,7,cmdtext);
- #endif
- #if defined USERESETCAR
- dcmd(resetcar,8,cmdtext);
- #endif
- dcmd(changemodel,11,cmdtext);
- dcmd(parc,4,cmdtext);
- dcmd(secure,6,cmdtext);
- dcmd(carcolor,8,cmdtext);
- /* dcmd(addcar,6,cmdtext); commande reserver a une future version*/
- #if defined USEPIN
- dcmd(changepin,9,cmdtext);
- }
- else
- {
- return ERRORMSG("Vous n'avez pas taper le bon code PIN encore");
- }
- #endif
- dcmd(asellcar,8,cmdtext);
- dcmd(aparc,5,cmdtext);
- dcmd(backup,6,cmdtext);
- dcmd(rescus,6,cmdtext);
- dcmd(aprix,5,cmdtext);
- dcmd(carstaff,8,cmdtext);
- dcmd(givecar,7,cmdtext);
- #if defined DEBUG
- dcmd(cash,4,cmdtext);
- dcmd(carsave,7,cmdtext);
- #endif
- dcmd(setbuy,6,cmdtext);
- return 0;
- }
- #if defined USEALARME
- dcmd_alarm(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new voit = GetPlayerVehicleID(playerid);
- PI[playerid][car] = tmpval(nom(playerid));
- if(PI[playerid][car] == voit)
- {
- if(Vehicule_Sous_Alarme[voit] == 0)
- {
- Vehicule_Sous_Alarme[voit] =1;
- dini_IntSet(CompteVoiture(voit),"Alarme",1);
- OKMSG("Vous venez d'activer l'alarme de votre vehicule");
- }
- else
- {
- Vehicule_Sous_Alarme[voit] =0;
- dini_IntSet(CompteVoiture(voit),"Alarme",0);
- OKMSG("Vous venez de désactiver l'alarme de votre vehicule");
- }
- }
- else
- {
- ERRORMSG("Ce n'est pas votre vehicule");
- }
- return 1;
- }
- #endif
- #if defined USEESSENCE
- dcmd_essence(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new VID = GetPlayerVehicleID(playerid);
- new MOD = GetVehicleModel(playerid);
- if(!IsPlayerInAnyVehicle(playerid))
- {
- ERRORMSG("Vous n'etes pas dans un vehicule!");
- return 1;
- }
- if(MOD == 510 || MOD == 509 || MOD == 481)
- {
- ERRORMSG("Ce vehicule n'as pas besoin d'essence!");
- return 1;
- }
- if(!Dans_Station(playerid))
- {
- ERRORMSG("Vous n'etes pas dans une station!");
- return 1;
- }
- if(Voiture_essence[VID] < MAX_ESSENCE)
- {
- ShowMenuForPlayer(Essence,playerid);
- MOTEUROFF(VID);
- }
- else
- {
- ERRORMSG("Votre vehicule est déjà plein!");
- }
- return 1;
- }
- dcmd_aessence(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new VID = GetPlayerVehicleID(playerid);
- new MOD = GetVehicleModel(playerid);
- if(!IsPlayerInAnyVehicle(playerid))
- {
- ERRORMSG("Vous n'etes pas dans un vehicule!");
- return 1;
- }
- if(MOD == 510 || MOD == 509 || MOD == 481)
- {
- ERRORMSG("Ce vehicule n'as pas besoin d'essence!");
- return 1;
- }
- if(IsPlayerAdmin(playerid))
- {
- Voiture_essence[VID] = MAX_ESSENCE;
- OKMSG("Vous venez de faire le plein de ce vehicule ");
- }
- return 1;
- }
- #endif
- #if defined USEPIN
- dcmd_changepin(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- PI[playerid][car] = tmpval(nom(playerid));
- if(PI[playerid][car] != -1)
- {
- DPIN;
- }
- else
- {
- ERRORMSG("vous n'avez aucun vehicule");
- }
- return 1;
- }
- #endif
- dcmd_buycar(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new val1[256];
- new Voit;
- Voit=GetPlayerVehicleID(playerid);
- val1 = dini_Get(CompteVoiture(Voit), "Nom proprio");
- if(strcmp(val1,"Libre",false) == 0)
- {
- new val2[256];
- val2 = dini_Get(CompteVoiture(Voit),"prix");
- PI[playerid][Argent]=GetPlayerMoney(playerid);
- if(PI[playerid][Argent]>=strval(val2))
- {
- PI[playerid][car] = tmpval(nom(playerid));
- if(PI[playerid][car] == -1)
- {
- new str3[128];
- dini_Set(CompteVoiture(Voit),"Nom proprio",nom(playerid));
- settmpval(nom(playerid),Voit);
- GivePlayerMoney(playerid,-strval(val2));
- format(str3,256,"Vous venez d'achetez ce vehicule pour %d$",strval(val2));
- OKMSG(str3);
- SetVehicleToRespawn(Voit);
- #if defined USEPIN
- new str[128];
- format(str,sizeof(str),"Votre code pin est: %d\nAttention nottez le!!!",MyPin(Voit));
- LookPin(str);
- #endif
- }
- else
- {
- ERRORMSG("Vous êtes déjà pocesseur d'un vehicule");
- }
- }
- else
- {
- ERRORMSG("Vous n'avez pas l'argent necessaire pour acheter ce vehicule");
- return 1;
- }
- }
- else
- {
- ERRORMSG("Ce vehicule n'est pas a vendre");
- return 1;
- }
- return 1;
- }
- dcmd_sellcar(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new Voit;
- new val2;
- new val1[256];
- Voit=GetPlayerVehicleID(playerid);
- PI[playerid][car] = tmpval(nom(playerid));
- val1 = dini_Get(CompteVoiture(Voit), "Nom proprio");
- if(!IsPlayerInAnyVehicle(playerid))
- {
- ERRORMSG("Vous devez être dans votre vehicule");
- return 1;
- }
- if(PI[playerid][car] != -1)
- {
- if(strcmp(val1,nom(playerid),false) == 0)
- {
- val2 = dini_Int(CompteVoiture(Voit),"prix");
- GivePlayerMoney(playerid,val2);
- dini_Set(CompteVoiture(Voit),"Nom proprio","Libre");
- deletetmpval(nom(playerid));
- SetVehicleToRespawn(Voit);
- #if defined USEPIN
- new c1 = 0;
- new c2 = 0;
- new c3 = 0;
- new c4 = 0;
- c1 = random(10);
- c2 = random(10);
- c3 = random(10);
- c4 = random(10);
- new pin[6];
- format(pin,sizeof(pin),"%d%d%d%d",c1,c2,c3,c4);
- dini_Set(CompteVoiture(Voit),"Pin",pin);
- #endif
- new str3[128];
- format(str3,128,"Vous venez de vendre votre vehicule pour %d$",val2);
- OKMSG(str3);
- }
- else
- {
- ERRORMSG("Que tentez vous de faire!!!");
- return 1;
- }
- }
- else
- {
- ERRORMSG("Que tentez vous de faire!!!");
- return 1;
- }
- return 1;
- }
- #if defined USECALLCAR
- dcmd_callcar(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new Voit;
- Voit=GetPlayerVehicleID(playerid);
- PI[playerid][car] = tmpval(nom(playerid));
- PI[playerid][interior]=GetPlayerInterior(playerid);
- if(PI[playerid][interior] > 0)
- {
- ERRORMSG("Vous ne pouvez pas appeler votre vehicule si vous êtes dans un batiment");
- return 1;
- }
- else
- {
- if(PI[playerid][car]==-1)
- {
- ERRORMSG("Vous ne possedez aucun vehicule");
- return 1;
- }
- else
- {
- if(Voit == PI[playerid][car])
- {
- ERRORMSG("Vous êtes deja dans le vehicule en question");
- return 1;
- }
- else
- {
- new Float:pX, Float:pY, Float:pZ, Float:cX, Float:cY, Float:cZ;
- GetPlayerPos(playerid, pX, pY, pZ);
- GetPlayerCameraPos(playerid, cX, cY, cZ);
- new Float:vX, Float:vY, Float:vZ;
- vX = pX + ( pX - cX );
- vY = pY + ( pY - cY );
- vZ = pZ;
- for(new i=0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(IsPlayerInAnyVehicle(i))
- {
- if (GetPlayerVehicleID(i) == PI[playerid][car])
- {
- RemovePlayerFromVehicle(i);
- }
- }
- }
- }
- SetVehiclePos(PI[playerid][car],vX,vY,vZ);
- OKMSG("Voila votre vehicule");
- #if defined USERESETCAR
- ERRORMSG("Il se peut que votre vehicule n'apparaisse pas dans ce cas utiliser /resetcar");
- #else
- ERRORMSG("Votre vehicle a etait appeler si il n'apparait pas rejoignez le a pied");
- #endif
- }
- }
- }
- return 1;
- }
- #endif
- #if defined USERESETCAR
- dcmd_resetcar(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new Voit;
- Voit=GetPlayerVehicleID(playerid);
- PI[playerid][car] = tmpval(nom(playerid));
- PI[playerid][interior]=GetPlayerInterior(playerid);
- if(PI[playerid][car]==-1)
- {
- ERRORMSG("Vous ne possedez aucun vehicule");
- return 1;
- }
- if(PI[playerid][interior] > 0)
- {
- ERRORMSG("Vous ne pouvez pas utiliser /resetcar si vous êtes dans un batiment");
- return 1;
- }
- else
- {
- if(Voit == PI[playerid][car])
- {
- ERRORMSG("Vous êtes deja dans le vehicule en question");
- return 1;
- }
- else
- {
- for(new i=0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(IsPlayerInAnyVehicle(i))
- {
- if (GetPlayerVehicleID(i) == PI[playerid][car])
- {
- RemovePlayerFromVehicle(i);
- }
- }
- }
- }
- PosVoit[PI[playerid][car]][0]=dini_Float(CompteVoiture(PI[playerid][car]),"PosX");
- PosVoit[PI[playerid][car]][1]=dini_Float(CompteVoiture(PI[playerid][car]),"PosY");
- PosVoit[PI[playerid][car]][2]=dini_Float(CompteVoiture(PI[playerid][car]),"PosZ");
- PosVoit[PI[playerid][car]][3]=dini_Float(CompteVoiture(PI[playerid][car]),"PosA");
- SetVehiclePos(PI[playerid][car],PosVoit[PI[playerid][car]][0],PosVoit[PI[playerid][car]][1],PosVoit[PI[playerid][car]][2]);
- SetVehicleZAngle(PI[playerid][car],PosVoit[PI[playerid][car]][3]);
- SetPlayerPos(playerid,PosVoit[PI[playerid][car]][0],PosVoit[PI[playerid][car]][1],PosVoit[PI[playerid][car]][2]+3);
- }
- }
- return 1;
- }
- #endif
- dcmd_parc(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new Voit;
- Voit=GetPlayerVehicleID(playerid);
- PI[playerid][car] = tmpval(nom(playerid));
- if(PI[playerid][car] == -1)
- {
- ERRORMSG("Vous devez etre proprietaire d'un vehicule");
- return 1;
- }
- else
- {
- if(PI[playerid][car] == Voit)
- {
- new Float:Px,Float:Py,Float:Pz,Float:Pa;
- GetVehiclePos(Voit,Px,Py,Pz);
- GetVehicleZAngle(Voit,Pa);
- dini_FloatSet(CompteVoiture(PI[playerid][car]),"PosX",Px);
- dini_FloatSet(CompteVoiture(PI[playerid][car]),"PosY",Py);
- dini_FloatSet(CompteVoiture(PI[playerid][car]),"PosZ",Pz);
- dini_FloatSet(CompteVoiture(PI[playerid][car]),"PosA",Pz);
- OKMSG("Votre vehicule respawnera ici desormer");
- }
- }
- return 1;
- }
- dcmd_carcolor(playerid,cmdtext[])
- {
- new tmp[256];
- new tmp2[256];
- new idx;
- tmp=strtok(cmdtext, idx);
- tmp2=strtok(cmdtext, idx);
- new Voit;
- Voit=GetPlayerVehicleID(playerid);
- PI[playerid][car] = tmpval(nom(playerid));
- if(!IsPlayerInAnyVehicle(playerid))
- {
- ERRORMSG("Vous devez être dans votre propre vehicule pour cette commande");
- return 1;
- }
- else
- {
- if(!strlen(tmp) || !strlen(tmp2))
- {
- ERRORMSG("USAGE CORRECT: /carcolor couleur1 couleur2");
- return 1;
- }
- else
- {
- if(PI[playerid][car] != Voit)
- {
- ERRORMSG("Ce n'est pas votre vehicule");
- }
- else
- {
- dini_IntSet(CompteVoiture(Voit),"Couleur1",strval(tmp));
- dini_IntSet(CompteVoiture(Voit),"Couleur2",strval(tmp2));
- ChangeVehicleColor(Voit,strval(tmp),strval(tmp2));
- new string[128];
- format(string, sizeof(string), "Votre couleur seras dorenavant %d %d", strval(tmp),strval(tmp2));
- OKMSG(string);
- }
- }
- }
- return 1;
- }
- dcmd_secure(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new Voit;
- new val1[256];
- new sec;
- Voit = GetPlayerVehicleID(playerid);
- sec = dini_Int(CompteVoiture(Voit),"SecurKill");
- val1 = dini_Get(CompteVoiture(Voit), "Nom proprio");
- if(strcmp(val1,nom(playerid),false) == 0)
- {
- if(sec == 0)
- {
- dini_IntSet(CompteVoiture(Voit),"SecurKill",1);
- INFOMSG("Votre vehicule est bloquer pour tout les utilisateur ormis les administrateur");
- }
- else
- {
- dini_IntSet(CompteVoiture(Voit),"SecurKill",0);
- INFOMSG("Votre vehicule est desormer accessible a tous.");
- }
- }
- else
- {
- ERRORMSG("Ce n'est pas votre vehicule!!!");
- }
- return 1;
- }
- /***************COMMANDE STAFFCAR***********************************************/
- dcmd_asellcar(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new Voit;
- new val1[256];
- Voit=GetPlayerVehicleID(playerid);
- val1 = dini_Get(CompteVoiture(Voit), "Nom proprio");
- if(IsPlayerAdmin(playerid))
- {
- deletetmpval(val1);
- dini_Set(CompteVoiture(Voit),"Nom proprio","Libre");
- SetVehicleToRespawn(Voit);
- new c1 = 0;
- new c2 = 0;
- new c3 = 0;
- new c4 = 0;
- c1 = random(10);
- c2 = random(10);
- c3 = random(10);
- c4 = random(10);
- new pin[6];
- format(pin,sizeof(pin),"%d%d%d%d",c1,c2,c3,c4);
- dini_Set(CompteVoiture(Voit),"Pin",pin);
- new str3[128];
- format(str3,128,"Vous venez de vendre le vehicule de %s",val1);
- OKMSG(str3);
- }
- return 1;
- }
- dcmd_aparc(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new val1[256];
- new Voit;
- val1 = dini_Get(CompteVoiture(Voit), "Nom proprio");
- Voit = GetPlayerVehicleID(playerid);
- if(IsPlayerAdmin(playerid))
- {
- new Float:Px,Float:Py,Float:Pz,Float:Pa;
- GetVehiclePos(Voit,Px,Py,Pz);
- GetVehicleZAngle(Voit,Pa);
- dini_FloatSet(CompteVoiture(Voit),"PosX",Px);
- dini_FloatSet(CompteVoiture(Voit),"PosY",Py);
- dini_FloatSet(CompteVoiture(Voit),"PosZ",Pz);
- dini_FloatSet(CompteVoiture(Voit),"PosA",Pz);
- OKMSG("Le vehicule respawnera ici desormer");
- }
- return 1;
- }
- dcmd_backup(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- if(IsPlayerAdmin(playerid))
- {
- for(new i=0;i<MAX_VOITURE;i++)
- {
- new str[12];
- format(str,sizeof(str),"%d.ini",i);
- if(fexist(str))
- {
- new strs[12];
- format(strs,12,"%d.backup",i);
- DINI_fcopytextfile(str,strs);
- }
- }
- }
- return 1;
- }
- dcmd_rescus(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- if(IsPlayerAdmin(playerid))
- {
- for(new i=0;i<MAX_VOITURE;i++)
- {
- new str[150];
- format(str,150,"%d.backup",i);
- if(fexist(str))
- {
- new strs[150];
- format(strs,sizeof(strs),"%d.ini",i);
- DINI_fcopytextfile(str,strs);
- }
- }
- }
- return 1;
- }
- #if defined DEBUG
- dcmd_carsave(playerid,cmdtext[])
- {
- new tmp[256];
- new tmp2[256];
- new idx;
- tmp=strtok(cmdtext, idx);
- tmp2=strtok(cmdtext, idx);
- if(IsPlayerAdmin(playerid))
- {
- if(!strval(tmp))
- {
- ERRORMSG("USAGE CORRECT /carsave prix |commentaire(facultatif)");
- }
- else
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- new modi;
- modi=GetVehicleModel(GetPlayerVehicleID(playerid));
- new Float:mx, Float:my, Float:mz,Float:ma;
- GetVehiclePos(GetPlayerVehicleID(playerid),mx,my,mz);
- GetVehicleZAngle(GetPlayerVehicleID(playerid),ma);
- new string[256];
- format(string, sizeof string, "AddStaticVehicles(%d,%f,%f,%f,%f,-1,-1,%d); //%s\r\n",modi, mx, my, mz,ma,strval(tmp),tmp2);
- new File:pos = fopen("voiture.pwn", io_append);
- fwrite(pos, string);
- fclose(pos);
- SendClientMessage(playerid, 0xFFFFFFAA, "SAUVER");
- }
- }
- }
- return 1;
- }
- #endif
- dcmd_givecar(playerid,cmdtext[])
- {
- new Voit;
- new tmp[256];
- new idx;
- tmp=strtok(cmdtext, idx);
- Voit = GetPlayerVehicleID(playerid);
- if(IsPlayerAdmin(playerid))
- {
- if(!strval(tmp))
- {
- ERRORMSG("USAGE: /givecar [playerid]");
- return 1;
- }
- if(IsPlayerInAnyVehicle(playerid))
- {
- new val1[256];
- val1 = dini_Get(CompteVoiture(Voit), "Nom proprio");
- if(strcmp(val1,"Libre",false) == 0)
- {
- if(IsPlayerConnected(strval(tmp)))
- {
- PI[strval(tmp)][car] = tmpval(nom(strval(tmp)));
- if(PI[strval(tmp)][car] == -1)
- {
- dini_Set(CompteVoiture(Voit),"Nom proprio",nom(strval(tmp)));
- settmpval(nom(strval(tmp)),Voit);
- SendClientMessage(strval(tmp),0xFFFF00AA,"Un admin vient de vous offrire un vehicule");
- #if defined USERESETCAR
- SendClientMessage(strval(tmp),0xFFFF00AA,"/resetcar vous permettras d'aller a elle");
- #endif
- #if defined USECALLCAR
- #endif
- }
- else
- {
- ERRORMSG("Desoler ce joueur a deja un vehicule");
- }
- }
- else
- {
- ERRORMSG("ID n'est apparement pas connecter");
- }
- }
- else
- {
- ERRORMSG("Ce vehicule est n'est pas libre");
- }
- }
- else
- {
- ERRORMSG("Vous êtes dans aucun vehcule");
- }
- }
- return 1;
- }
- dcmd_aprix(playerid,cmdtext[])
- {
- new val1[256];
- new Voit;
- new tmp[256];
- new idx;
- tmp=strtok(cmdtext, idx);
- Voit = GetPlayerVehicleID(playerid);
- val1 = dini_Get(CompteVoiture(Voit), "Nom proprio");
- printf("%s",val1);
- if(IsPlayerInAnyVehicle(playerid))
- if(IsPlayerAdmin(playerid))
- {
- if(strcmp(val1,"Libre",false) == 0)
- {
- if(strval(tmp))
- {
- dini_FloatSet(CompteVoiture(Voit),"prix",strval(tmp));
- INFOMSG("Prix modifier");
- printf("%d",strval(tmp));
- }
- else
- {
- ERRORMSG("Veuillez entrer un nouveau prix");
- }
- }
- else
- {
- ERRORMSG("Vous ne pouvez pas changer le prix de ce vehicule il a était acheter.");
- }
- }
- return 1;
- }/*
- Commande pour une future version
- dcmd_addcar(playerid,cmdtext[])
- {
- new tmp[256];
- new idx;
- tmp=strtok(cmdtext, idx);
- if(IsPlayerAdmin(playerid))
- {
- if(!IsPlayerInAnyVehicle(playerid))
- {
- if(!strlen(tmp))
- {
- ERRORMSG("usage: /addcar MODELID");
- return 1;
- }
- if(!isNumeric(tmp))
- {
- ERRORMSG("l'entrer doit etre uniquement numerique");
- return 1;
- }
- if(strval(tmp) < MIN_VEHI_ID || strval(tmp)> MAX_VEHI_ID )
- {
- ERRORMSG("ID INVALIDE");
- return 1;
- }
- else
- {
- new Float:px,Float:py,Float:pz,Float:pa;
- GetPlayerPos(playerid,px,py,pz);
- GetPlayerFacingAngle(playerid,pa);
- SetPlayerPos(playerid,px-1,py-1,pz);
- AddStaticVehicles(strval(tmp),px,py,pz,pa,-1,-1);
- INFOMSG("Il vous reste a definir le prix /aprix ainsi que sont emplacement /aparc");
- }
- }
- else
- {
- ERRORMSG("Veuillez descendre du vehicule");
- }
- }
- return 1;
- }*/
- dcmd_changemodel(playerid,cmdtext[])
- {
- new Voit;
- new tmp[256];
- new idx;
- tmp=strtok(cmdtext, idx);
- Voit = GetPlayerVehicleID(playerid);
- if(IsPlayerInAnyVehicle(playerid))
- if(IsPlayerAdmin(playerid))
- {
- if(strval(tmp) < MIN_VEHI_ID || strval(tmp)> MAX_VEHI_ID )
- {
- ERRORMSG("ID INVALIDE");
- return 1;
- }
- if(!isNumeric(tmp))
- {
- ERRORMSG("l'entrer doit etre uniquement numerique");
- return 1;
- }
- else
- {
- if(fexist(CompteVoiture(Voit)))
- {
- new Float:vx,Float:vy,Float:vz,Float:va,Float:px,Float:py,Float:pz,Float:pa;
- GetVehiclePos(Voit,vx,vy,vz);
- GetVehicleZAngle(Voit,va);
- GetPlayerPos(playerid,px,py,pz);
- GetPlayerFacingAngle(playerid,pa);
- TogglePlayerControllable(playerid,0);
- SetPlayerPos(playerid,px,py,pz+3);
- DestroyVehicle(Voit);
- new vs;
- vs=CreateVehicle(strval(tmp),vx,vy,vz,va,dini_Int(CompteVoiture(Voit),"Couleur1"),dini_Int(CompteVoiture(Voit),"Couleur2"),-1);
- dini_IntSet(CompteVoiture(Voit),"Type",strval(tmp));
- PutPlayerInVehicle(playerid, vs, 0);
- TogglePlayerControllable(playerid,1);
- }
- else
- {
- ERRORMSG("Le fichier de ce vehicule est introuvable");
- }
- }
- }
- return 1;
- }
- dcmd_setbuy(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new val1[256];
- new Voit;
- new abuy;
- Voit = GetPlayerVehicleID(playerid);
- val1 = dini_Get(CompteVoiture(Voit), "Nom proprio");
- abuy = dini_Int(CompteVoiture(Voit), "buy");
- printf("%s",val1);
- if(IsPlayerInAnyVehicle(playerid))
- if(IsPlayerAdmin(playerid))
- {
- if(strcmp(val1,"Libre",false) == 0)
- {
- if(abuy == 1)
- {
- dini_IntSet(CompteVoiture(Voit),"buy",0);
- INFOMSG("Le vehicule est bloquer a la vente");
- }
- else
- {
- dini_IntSet(CompteVoiture(Voit),"buy",1);
- INFOMSG("Le vehicule est remit a la vente");
- }
- }
- else
- {
- ERRORMSG("Vous ne pouvez pas bloquer ce vehicule il a était acheter.");
- }
- }
- return 1;
- }
- dcmd_carstaff(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- new val1[256];
- new Voit;
- new scar;
- Voit = GetPlayerVehicleID(playerid);
- val1 = dini_Get(CompteVoiture(Voit), "Nom proprio");
- scar = dini_Int(CompteVoiture(Voit), "reserve");
- printf("%s",val1);
- if(IsPlayerInAnyVehicle(playerid))
- if(IsPlayerAdmin(playerid))
- {
- if(strcmp(val1,"Libre",false) == 0)
- {
- if(scar == 1)
- {
- dini_IntSet(CompteVoiture(Voit),"reserve",0);
- INFOMSG("Le vehicule est bloquer");
- }
- else
- {
- dini_IntSet(CompteVoiture(Voit),"reserve",1);
- INFOMSG("Le vehicule est deverouiller");
- }
- }
- else
- {
- ERRORMSG("Vous ne pouvez pas bloquer ce vehicule il a était acheter.");
- }
- }
- return 1;
- }
- #if defined DEBUG
- dcmd_cash(playerid,cmdtext[])
- {
- #pragma unused cmdtext
- GivePlayerMoney(playerid,150000);
- return 1;
- }
- #endif
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- new string2[80];
- format(string2,sizeof(string2)," ~n~ ~n~ ~n~ ~n~ ~n~~y~%s",CarName[GetVehicleModel(vehicleid)-400]);
- GameTextForPlayer(playerid,string2,3500,1);
- new val1[256];
- new string[128];
- new val2[256];
- new achetable;
- new reserve;
- reserve = dini_Int(CompteVoiture(vehicleid),"reserve");
- achetable = dini_Int(CompteVoiture(vehicleid),"buy");
- val1 = dini_Get(CompteVoiture(vehicleid), "Nom proprio");
- val2 = dini_Get(CompteVoiture(vehicleid),"prix");
- new sec;
- sec = dini_Int(CompteVoiture(vehicleid),"SecurKill");
- if(!ispassenger)
- if(fexist(CompteVoiture(vehicleid)))
- {
- if(reserve == 1 && !IsPlayerAdmin(playerid))
- {
- new Float:cpx,Float:cpy,Float:cpz;
- GetPlayerPos(playerid,cpx,cpy,cpz);
- SetPlayerPos(playerid,cpx,cpy,cpz+1);
- ERRORMSG("Ce vehicule est reserver");
- return 1;
- }
- if(sec == 1 && !IsPlayerAdmin(playerid) && strcmp(val1,nom(playerid),true))
- {
- new Float:cpx,Float:cpy,Float:cpz;
- GetPlayerPos(playerid,cpx,cpy,cpz);
- SetPlayerPos(playerid,cpx,cpy,cpz+1);
- ERRORMSG("Ce vehicule est reserver");
- return 1;
- }
- if(achetable == 0)
- {
- ERRORMSG("Ce vehicule n'est pas a vendre");
- return 1;
- }
- else
- {
- if(strcmp(val1,"Libre",false) == 0)
- {
- format(string,sizeof(string),"Ce vehicule est a vendre pour %d$ .",strval(val2));
- INFOMSG(string);
- }
- else if(strcmp(val1,nom(playerid),false) == 0)
- {
- format(string,sizeof(string),"Bienvenue dans votre vehicule %s!",nom(playerid));
- OKMSG(string);
- }
- else
- {
- format(string,sizeof(string),"Ce vehicule appartien a %s",val1);
- ERRORMSG(string);
- }
- }
- }
- return 1;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- INFOMSG("Le paintjob obtenue ne sera pas sauvegarder");
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- INFOMSG("Les couleur obtenue ne sont pas sauvegarder");
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- #if defined USEPIN
- if(dialogid == DIACHANGEPIN)
- {
- if(response)
- {
- if(strlen(inputtext) < 4 || strlen(inputtext)>4)
- {
- ERRORMSG("Le code PIN doit etre de 4 chiffres uiquement donc il n'a pas etait changer");
- }
- else
- {
- if(isNumeric(inputtext))
- {
- dini_Set(CompteVoiture(PI[playerid][car]),"Pin",inputtext);
- new str[128];
- format(str,sizeof(str),"Votre nouveau code pin est:\n %d\nAttention nottez le!!!",MyPin(PI[playerid][car]));
- LookPin(str);
- }
- else
- {
- ERRORMSG("Le code PIN doit être de 4 chiffres uniquement donc il n'a pas etait changer");
- }
- }
- }
- }
- #endif
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- #if defined USEDEMARRER
- new VID = GetPlayerVehicleID(playerid);
- new MOD = GetVehicleModel(playerid);
- if(newstate == PLAYER_STATE_DRIVER)
- {
- if(Voiture_Demarer[VID] == 0 && MOD != 510 && MOD != 509 && MOD != 481)
- {
- MOTEUROFF(VID);
- INFOMSG("Le moteur de ce vehicule est eteint appuie sur la touche tire pour demarer");
- }
- else
- {
- OKMSG("Chouette le moteur tourne déjà!");
- MOTEURON(VID);
- }
- }
- #endif
- #if defined USEESSENCE
- if(Voiture_essence[GetPlayerVehicleID(playerid)] < 1)
- {
- INFOMSG("Dommage ce vehicule n'as plus d'essence!");
- }
- else
- {
- new string[256];
- format(string, sizeof(string),"~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~w~|~b~Essence: ~w~%d% / %d|",Voiture_essence[GetPlayerVehicleID(playerid)],MAX_ESSENCE);
- GameTextForPlayer(playerid,string,4800,3);
- }
- if(newstate == PLAYER_STATE_ONFOOT)
- {
- GameTextForPlayer(playerid,"",4800,3);
- }
- #endif
- #if defined USEALARME
- if(fexist(CompteVoiture(GetPlayerVehicleID(playerid))))
- {
- new val1[256];
- val1 = dini_Get(CompteVoiture(GetPlayerVehicleID(playerid)), "Nom proprio");
- Vehicule_Sous_Alarme[GetPlayerVehicleID(playerid)] = dini_Int(CompteVoiture(GetPlayerVehicleID(playerid)),"Alarme");
- if(strcmp(val1,nom(playerid),false) == 0 && Vehicule_Sous_Alarme[GetPlayerVehicleID(playerid)] == 1)
- {
- INFOMSG("Votre vehicule est en mode Alarme");
- return 1;
- }
- else if(Vehicule_Sous_Alarme[GetPlayerVehicleID(playerid)] == 1)
- {
- ALARMON(GetPlayerVehicleID(playerid));
- }
- }
- #endif
- return 1;
- }
- #if defined USEDEMARRER
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if(newkeys == KEYUTILISER)
- {
- if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
- {
- if(IsPlayerConnected(playerid))
- {
- if(ClefTourne[playerid]==1)
- {
- ERRORMSG("Veuillez patientez avant de retourner la clef");
- return 1;
- }
- #if defined USEALARME
- if(Vehicule_Sous_Alarme[GetPlayerVehicleID(playerid)] == 1)
- {
- ERRORMSG("Ce vehicule est sous alarme vous ne pouvez pas la demarer");
- return 1;
- }
- #endif
- else
- {
- new VID = GetPlayerVehicleID(playerid);
- if(Voiture_Demarer[VID] == 0)
- {
- INFOMSG("Moteur en cours de mise en marche");
- ClefTourne[playerid]=1;
- SetTimerEx("Demarre",3500,0,"i",playerid);
- }
- }
- }
- }
- }
- return 1;
- }
- public Demarre(playerid)
- {
- new VID = GetPlayerVehicleID(playerid);
- new RandDemarre = random(2);
- if(IsPlayerConnected(playerid))
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- switch(RandDemarre)
- {
- case 0:
- {
- Voiture_Demarer[VID] = 1;
- MOTEURON(VID);
- OKMSG("Vehicule demarer avec succes!");
- ClefTourne[playerid]=0;
- }
- case 1:
- {
- ERRORMSG("Le moteur s'est étouffé.");
- ClefTourne[playerid]=0;
- }
- }
- }
- }
- return 1;
- }
- #endif
- #if defined USEESSENCE
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- new Menu:Current = GetPlayerMenu(playerid);
- if(Current == Essence)
- {
- switch(row)
- {
- case 0:
- {
- GameTextForPlayer(playerid,"~b~Sans plomb 95 ~n~ ~w~Vehicule en cours de remplissage ~n~~g~Veuillez patienter..",4000,3);
- Remplissage_Timer[playerid] = SetTimerEx("core_Remplissage",2000,1,"i",playerid);
- Remplissage[playerid] = 1;
- MOTEUROFF(GetPlayerVehicleID(playerid));
- }
- case 1:
- {
- GameTextForPlayer(playerid,"~b~Sans plomb 98 ~n~ ~w~Vehicule en cours de remplissage ~n~~g~Veuillez patienter..",4000,3);
- Remplissage_Timer[playerid] = SetTimerEx("core_Remplissage",2000,1,"i",playerid);
- Remplissage[playerid] = 1;
- MOTEUROFF(GetPlayerVehicleID(playerid));
- }
- case 2:
- {
- GameTextForPlayer(playerid,"~b~Diesel ~n~ ~w~Vehicule en cours de remplissage ~n~~g~Veuillez patienter..",4000,3);
- Remplissage_Timer[playerid] = SetTimerEx("core_Remplissage",2000,1,"i",playerid);
- Remplissage[playerid] = 1;
- MOTEUROFF(GetPlayerVehicleID(playerid));
- }
- case 3:
- {
- HideMenuForPlayer(Essence,playerid);
- MOTEURON(GetPlayerVehicleID(playerid));
- }
- }
- }
- return 1;
- }
- public OnPlayerExitedMenu(playerid)
- {
- MOTEURON(GetPlayerVehicleID(playerid));
- return 1;
- }
- public MAJ_Essence()
- {
- new string[128];
- for(new i=0;i<MAX_PLAYERS;i++)
- {
- new VID = GetPlayerVehicleID(i);
- new MOD = GetVehicleModel(i);
- if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
- {
- if(IsPlayerConnected(i))
- {
- if(Remplissage[i] == 0 && MOD != 510 && MOD != 509 && MOD != 481)
- {
- #if defined USEDEMARRER
- if(Voiture_Demarer[VID] == 1)
- #endif
- if(Voiture_essence[VID] >= 1)
- {
- Voiture_essence[VID] -= 1;
- format(string, sizeof(string),"~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~w~|~b~Essence: ~w~%d% / %d|",Voiture_essence[VID],MAX_ESSENCE);
- GameTextForPlayer(i,string,4800,3);
- if(fexist(CompteVoiture(VID)))
- {
- dini_IntSet(CompteVoiture(VID),"Litre",Voiture_essence[VID]);
- }
- }
- else
- {
- MOTEUROFF(VID);
- GameTextForPlayer(i,"~n~~n~~n~~n~~r~Votre voiture est sans carburant!",4000,3);
- SendClientMessage(i,0xFF0000FF,"WARN WARN WARN");
- }
- }
- }
- }
- }
- return 1;
- }
- public core_Remplissage(playerid)
- {
- new VID = GetPlayerVehicleID(playerid);
- new string[128];
- if(IsPlayerConnected(playerid))
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- if(Voiture_essence[VID] < MAX_ESSENCE)
- {
- if(GetPlayerMoney(playerid) >= PRIX_ESSENCE)
- {
- Voiture_essence[VID] ++;
- format(string, sizeof(string),"~n~~n~~n~~y~Essence: ~w~%d / %d%",Voiture_essence[VID],MAX_ESSENCE);
- GameTextForPlayer(playerid,string,2000,3);
- GivePlayerMoney(playerid,-PRIX_ESSENCE);
- }
- else
- {
- new str[128];
- format(str,128,"Vous n'avez pas %d$ pour payé",PRIX_ESSENCE);
- INFOMSG(str);
- MOTEURON(VID);
- Remplissage[playerid] = 0;
- KillTimer(Remplissage_Timer[playerid]);
- }
- }
- else
- {
- INFOMSG("Votre vehicule est desormer plein d'essence. Merci de votre visite!");
- Voiture_essence[VID] = MAX_ESSENCE;
- Remplissage[playerid] = 0;
- KillTimer(Remplissage_Timer[playerid]);
- MOTEURON(VID);
- }
- }
- }
- return 1;
- }
- public Dans_Station(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- for(new m=0;m<sizeof(Pompe);m++)
- {
- if(IsPlayerInRangeOfPoint(playerid,10.0,Pompe[m][0],Pompe[m][1],Pompe[m][2]))
- {
- return 1;
- }
- }
- }
- return 0;
- }
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement