GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Showroom SA:MP => Discussion démarrée par: inbox le 30 Mai 2008, 22:44:26
-
[Effacer]
-
Cest un code pour les rpg cest ca ??
Ca m'alair bien, mais au début jai cru que c'était pour sauver 5 position diférents :lmfao
++
nikko
-
oui c'est un système de save pos et retour, non ??
-
Non c'est pour save 5 voitures /joueur
tu peux mettre plus moi j'ai fait 5 car c'est quand meme pas mal
A vous de le changer.
Cordialement,
-
Faut pas oublier de préciser qu'il faut avoir dini et dudb et tout le tralala
++
nikko
-
très bon code ;)
-
je n'arrive pas à le faire fonctionner
-
pas mal je trouve
-
Je propose quelques petites améliorations: notamment, le tunnage automatique de la voiture puis le PutPlayerInVehicle. Et une correction de la sauvegarde des fichiers par pseudo car elle ne marchait pas très bien, le fichier ne s'appelait pas pinouf42_voiture_1.sav mais _voiture_1.sav comme ceci donc tout le monde avait les mêmes voitures.
else if(strcmp(cmd, "/sv", true)==0){
new vehicleid = GetPlayerVehicleID(playerid);
new model;
new pseudo;
new pname[250];
new voiture[MAX_PLAYERS];
if(!IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid,COLOR_RED,"Vous n'etes pas dans une voiture !");
return 1;
}
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_RED, "Usage: /sv [1 a 5]");
return 1;
}
new car;
car = strval(tmp);
if(car < 1 || car > 5)
{
SendClientMessage(playerid, COLOR_RED, "=========================================");
SendClientMessage(playerid, 0xFFFFFFAA, "* Choisissez entre 1 et 5");
SendClientMessage(playerid, 0xFFFFFFAA, "* Usage: /sv [1 a 5]");
SendClientMessage(playerid, COLOR_RED, "=========================================");
return 1;
}
format(string, sizeof(string),"%s_voiture_%s.sav",pseudo, tmp);
if(dini_Exists(string))
{
format(string, sizeof(string), "La voiture Existe deja tapez [/del %s] pour la supprimer",tmp);
SendClientMessage(playerid, COLOR_RED, string);
return 1;
}
vehicleid = GetPlayerVehicleID(playerid);
GetVehiclePos(vehicleid,X,Y,Z);
GetVehicleZAngle(vehicleid,Angle);
model = GetVehicleModel(vehicleid);
SendClientMessage(playerid, COLOR_RED, "=========================================");
SendClientMessage(playerid, 0xFFFFFFAA, "Sauvegarde de la voiture avec Succès");
SendClientMessage(playerid, COLOR_RED, "=========================================");
voiture[playerid]+=1;
GetPlayerName(playerid, pname, sizeof(pname));
format(string, sizeof(string),"%s_voiture_%s.sav",pname,tmp);
if(!dini_Exists(string)){
dini_Create(string);
dini_IntSet(string,"model",model);
dini_FloatSet(string,"X",X);
dini_FloatSet(string,"Y",Y);
dini_FloatSet(string,"Z",Z);
dini_FloatSet(string,"Angle",Angle);
}
return 1;
}
if(strcmp(cmd, "/rp", true)==0){
new pname[250];
new model;
new delvtuser[MAX_PLAYERS];
new vtuser[MAX_PLAYERS];
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, 0xFFFFFFAA, "Usage: /rp [1 a 5]");
return 1;
}
GetPlayerName(playerid, pname, sizeof(pname));
format(string, sizeof(string),"%s_voiture_%s.sav",pname, tmp);
if(!dini_Exists(string))
{
format(string, sizeof(string), "La voiture [%s] N'existe pas.",tmp);
SendClientMessage(playerid, COLOR_RED, string);
return 1;
}
GetPlayerName(playerid, pname, sizeof(pname));
format(string, sizeof(string),"%s_voiture_%s.sav",pname, tmp);
if(dini_Exists(string)){
tmp = dini_Get(string,"model");
model = strval(tmp);
tmp = dini_Get(string,"X");
X = strval(tmp);
tmp = dini_Get(string,"Y");
Y = strval(tmp);
tmp = dini_Get(string,"z");
Z = strval(tmp);
tmp = dini_Get(string,"Angle");
Angle = strval(tmp);
if(delvtuser[playerid] == 1)
{
DestroyVehicle (vtuser[playerid]);
}
GetPlayerPos(playerid, X, Y, Z);
SetPlayerPos(playerid, X+2, Y, Z);
vtuser[playerid] = CreateVehicle(model,X,Y,Z,Angle,-1,-1,3000000000);
PutPlayerInVehicle(playerid, vtuser[playerid], 0);
SendClientMessage(playerid,0xFFFFFFFF,"Votre Voiture est disponible Bonne route :)");
AddVehicleComponent(vtuser[playerid],1010);
AddVehicleComponent(vtuser[playerid],1087);
AddVehicleComponent(vtuser[playerid],1086);
AddVehicleComponent(vtuser[playerid],1085);
delvtuser[playerid] = 1;
}
return 1;
}
if(strcmp(cmd, "/del", true)==0){
new pname[250];
new voiture[MAX_PLAYERS];
new voituredel[MAX_PLAYERS];
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_RED, "Usage: /del [1 a 5]");
return 1;
}
new car;
car = strval(tmp);
if(car < 1 || car > 5)
{
SendClientMessage(playerid, COLOR_RED, "=========================================");
SendClientMessage(playerid, 0xFFFFFFAA, "* Choisissez entre 1 et 5");
SendClientMessage(playerid, 0xFFFFFFAA, "* Usage: /del [1 a 5]");
SendClientMessage(playerid, COLOR_RED, "=========================================");
return 1;
}
GetPlayerName(playerid, pname, sizeof(pname));
format(string, sizeof(string),"%s_voiture_%s.sav",pname, tmp);
if(!dini_Exists(string))
{
format(string, sizeof(string), "La voiture [%s] N'existe pas",tmp);
SendClientMessage(playerid, COLOR_RED, string);
return 1;
}
SendClientMessage(playerid, COLOR_RED, "=========================================");
SendClientMessage(playerid, 0xFFFFFFAA, "Effacement de la voiture avec Succés");
SendClientMessage(playerid, COLOR_RED, "=========================================");
voiture[playerid]-=1;
voituredel[playerid]+=1;
GetPlayerName(playerid, pname, sizeof(pname));
format(string, sizeof(string),"%s_voiture_%s.sav",pname,tmp);
dini_Remove(string);
return 1;
}