SA-MP Forums

Go Back   SA-MP Forums > Non-English > Old Languages Archive > Français/French

 
 
Thread Tools Display Modes
Old 04/06/2011, 10:56 AM   #1
DexX39
Banned
 
Join Date: Dec 2010
Location: France
Posts: 760
Reputation: 35
Default Plaque d'immatriculation

Bonjour à tous :p.

Je viens demander un petit coup de pousse ^^.

Donc, j'ai crée une commande permettant de changer la plaque d'immatriculation.

J'aimerais, lorsque le joueur tape cette commande, sa lui génère un Numéro+Lettre automatiquement sans que sa soit lui qui choisisse le numéro.

Voici la commande :

[code] if(strcmp(cmd,"/plaque",true) == 0)
{
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[128];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Usage: /v plaque");
return 1;
}
if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey] || GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey2])
{
new ownvehkey;
new car = GetPlayerVehicleID(playerid);
if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey]) { ownvehkey = PlayerInfo[playerid][pPcarkey]; }
else if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey2]) { ownvehkey = PlayerInfo[playerid][pPcarkey2]; }
else { return 1; }
if(strcmp(sendername, CarInfo[ownvehkey][cOwner], true) == 0)
{
if(GetPlayerMoney(playerid) < 5000)
{
SendClientMessage(playerid,COLOR_WHITE,"Vous avez besoin de 5000$ pour changer la plaque");
return 1;
}
//new randcarte = 100 + random(999);
//CarInfo[PlayerInfo[playerid][pPcarkey]][cPlate] = randcarte;
strmid(CarInfo[car][cPlate], result, 0, strlen(result), 999);
new vid = GetPlayerVehicleID(playerid);
GivePlayerMoney(playerid,-5000);
SetVehicleNumberPlate(vid, CarInfo[vid][cPlate]);
RemovePlayerFromVehicle(playerid);
//PlayerInfo[playerid][pPChanges] -= 1;
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
OnPropUpdate1(4, car);
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Vous devez être dans votre véhicule.");
return 1;
}
}[/code]

Merci d'avance de votre aide.

Cordialement,
DexX
DexX39 is offline  
Old 05/06/2011, 07:55 PM   #2
Varkoll_
High-roller
 
Varkoll_'s Avatar
 
Join Date: Dec 2009
Location: Peut-être pas sur Terre ?
Posts: 1,940
Reputation: 61
Default Re : Plaque d'immatriculation

Il faudrait déjà qu'on sache qu'est ce qui cloche ? Le pourquoi de ce topique, tu as juste dit que tu avait essayé de scripter cette commande x)
__________________
Varkoll_ is offline  
Old 06/06/2011, 10:30 AM   #3
DexX39
Banned
 
Join Date: Dec 2010
Location: France
Posts: 760
Reputation: 35
Default Re: Plaque d'immatriculation

Je me suis mal fait comprendre effectivement :).

Cette commande fonctionne comme cela :

/plaque [Numéro de plaque].

J'aimerais en faite, qu'il tape juste /plaque sans qu'il choisisse lui même le numéro.

J'ai essayé de faire cela avec un random mais cela ne marche pas..
DexX39 is offline  
Old 06/06/2011, 10:54 AM   #4
Shidony
High-roller
 
Shidony's Avatar
 
Join Date: Jul 2010
Location: ᶘ ᵒᴥᵒᶅ
Posts: 1,737
Reputation: 30
Default Re : Plaque d'immatriculation

Avec un random sa doit marcher mais il faut définir ton random avec par exemple un public. Il te faudra je pense 2 publics, un qui définit les caratères Alpha et dans l'autre tu crée carrément la plaque avec un random de numéros.

Cordialement
__________________
Code:
Mes releases:

• [FS]Système de kilomètres

• [Gamemode]Grand Theft Auto Roleplay
Shidony is offline  
Old 06/06/2011, 02:46 PM   #5
Varkoll_
High-roller
 
Varkoll_'s Avatar
 
Join Date: Dec 2009
Location: Peut-être pas sur Terre ?
Posts: 1,940
Reputation: 61
Default Re : Plaque d'immatriculation

[php]
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Usage: /v plaque");
return 1;
}
[/php]
je pense aussi que tu devrais mettre sa en commentaire ;)
__________________
Varkoll_ is offline  
Old 06/06/2011, 02:52 PM   #6
cristab
High-roller
 
cristab's Avatar
 
Join Date: Oct 2008
Location: france / french 68
Posts: 2,005
Reputation: 28
Default Re : Plaque d'immatriculation

il peu meme retirer tout ceci xD

[code]new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[128];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Usage: /v plaque");
return 1;
}[/code]
cristab is offline  
Old 07/06/2011, 04:36 PM   #7
DexX39
Banned
 
Join Date: Dec 2010
Location: France
Posts: 760
Reputation: 35
Default Re: Plaque d'immatriculation

Du coup oui je peux retirer ceci :

[code]new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[128];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Usage: /v plaque");
return 1;
}[/code]

Mais que je définisse mon Random dans un public ou directement dans la commande, sa change pas grand chose...
DexX39 is offline  
Old 07/06/2011, 06:42 PM   #8
Varkoll_
High-roller
 
Varkoll_'s Avatar
 
Join Date: Dec 2009
Location: Peut-être pas sur Terre ?
Posts: 1,940
Reputation: 61
Default Re : Plaque d'immatriculation

Et en retirant cela ton bug persiste ? (Parce que toute à l'heure avec le truc qu'on t'a dit d'enlever sa fesasis croire que tu devais entrer un numéro de plaque ...)
__________________
Varkoll_ is offline  
Old 18/06/2011, 10:05 AM   #9
Antoine_Cresson
Little Clucker
 
Join Date: Oct 2010
Posts: 23
Reputation: 0
Default Re : Plaque d'immatriculation

Je suis interesser par ton système de plaque d'immatriculation qu'on choisis tout seul :

[quote] if(strcmp(cmd,"/plaque",true) == 0)
{
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[128];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Usage: /v plaque");
return 1;
}
if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey] || GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey2])
{
new ownvehkey;
new car = GetPlayerVehicleID(playerid);
if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey]) { ownvehkey = PlayerInfo[playerid][pPcarkey]; }
else if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pPcarkey2]) { ownvehkey = PlayerInfo[playerid][pPcarkey2]; }
else { return 1; }
if(strcmp(sendername, CarInfo[ownvehkey][cOwner], true) == 0)
{
if(GetPlayerMoney(playerid) < 5000)
{
SendClientMessage(playerid,COLOR_WHITE,"Vous avez besoin de 5000$ pour changer la plaque");
return 1;
}
//new randcarte = 100 + random(999);
//CarInfo[PlayerInfo[playerid][pPcarkey]][cPlate] = randcarte;
strmid(CarInfo[car][cPlate], result, 0, strlen(result), 999);
new vid = GetPlayerVehicleID(playerid);
GivePlayerMoney(playerid,-5000);
SetVehicleNumberPlate(vid, CarInfo[vid][cPlate]);
RemovePlayerFromVehicle(playerid);
//PlayerInfo[playerid][pPChanges] -= 1;
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
OnPropUpdate1(4, car);
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Vous devez être dans votre véhicule.");
return 1;
}
}[/quote]

Et j'aimerai l'intégrer sur mon petit serveur, mais, où mettre toutes ses lignes ? Dans le .pwn ?

Merci.
Antoine_Cresson is offline  
Old 18/06/2011, 06:43 PM   #10
Varkoll_
High-roller
 
Varkoll_'s Avatar
 
Join Date: Dec 2009
Location: Peut-être pas sur Terre ?
Posts: 1,940
Reputation: 61
Default Re : Plaque d'immatriculation

X) il ne l'a pas mis en distribution mais dans le but qu'on l'aide à regler un problème ...
__________________
Varkoll_ is offline  
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Off
Smilies are Off
[IMG] code is Off
HTML code is Off



All times are GMT. The time now is 09:08 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.