Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.
Avez-vous perdu votre courriel d'activation?
Connexion avec identifiant, mot de passe et durée de la session

 
avancée

254691 Messages dans 14036 Fils de discussion- par 6619 Membres - Dernier membre: djalal

23 Mai 2012 à 14:22:09
GTAOnline.frSan Andreas MultiplayerScripting SA-MP [Pawn center] (Modérateurs: S!m, Xartrick)/vetement , petit problème.
Pages: [1]   Bas de page
Imprimer
Auteur Fil de discussion: /vetement , petit problème.  (Lu 152 fois)
0 Membres et 2 Invités sur ce fil de discussion.
Raptor2x
Hors ligne Hors ligne

Petit nouveau
*

Messages: 7


« le: 15 Janvier 2012 à 17:21:25 »

Bonjour à tous, je suis nouveau sur le forum (Que je trouve vraiment pas mal), j'ai un petit problème à vous exposer.
Donc j'ai un serveur avec le GameMode " Une deuxième chance 2.0.3 " de Mehdi Jumper (U2C fait par FullDrive mais j'ai une modification de Mehdi Jumper, bref)
Et en allant au binco, j'ai trouver le système de /vetements avec suivant etc pas top.
/vetements de base :
Code:
}
if(strcmp(cmd, "/vetements", true) == 0 || strcmp(cmd, "/vetement", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
        if(PlayerInfo[playerid][pMember] >= 1)
        {
            if(IsAtClothShop(playerid))
{
    if(PlayerInfo[playerid][pMember] == 1) { ChosenSkin[playerid] = 280; SetPlayerSkin(playerid, 280); }
else if(PlayerInfo[playerid][pMember] == 2) { ChosenSkin[playerid] = 286; SetPlayerSkin(playerid, 286); }
else if(PlayerInfo[playerid][pMember] == 3) { ChosenSkin[playerid] = 287; SetPlayerSkin(playerid, 287); }
else if(PlayerInfo[playerid][pMember] == 4) { ChosenSkin[playerid] = 70; SetPlayerSkin(playerid, 70); }
else if(PlayerInfo[playerid][pMember] == 5) { ChosenSkin[playerid] = 117; SetPlayerSkin(playerid, 117); }
else if(PlayerInfo[playerid][pMember] == 6) { ChosenSkin[playerid] = 111; SetPlayerSkin(playerid, 111); }
else if(PlayerInfo[playerid][pMember] == 8) { ChosenSkin[playerid] = 249; SetPlayerSkin(playerid, 249); }
//else if(PlayerInfo[playerid][pMember] == 9) { ChosenSkin[playerid] = 148; SetPlayerSkin(playerid, 148); }
//else if(PlayerInfo[playerid][pJob] == 13) { ChosenSkin[playerid] = 255; SetPlayerSkin(playerid, 255); }
//else if(PlayerInfo[playerid][pMember] == 11) { ChosenSkin[playerid] = 59; SetPlayerSkin(playerid, 59); }
else if(PlayerInfo[playerid][pMember] == 14) { ChosenSkin[playerid] = 169; SetPlayerSkin(playerid, 169); }
else if(PlayerInfo[playerid][pMember] == 15) { ChosenSkin[playerid] = 127; SetPlayerSkin(playerid, 127); }
else if(PlayerInfo[playerid][pMember] == 16) { ChosenSkin[playerid] = 184; SetPlayerSkin(playerid, 184); }
else { return 1; }
GetPlayerPos(playerid, ChangePos[playerid][0],ChangePos[playerid][1],ChangePos[playerid][2]);
ChangePos2[playerid][0] = GetPlayerInterior(playerid);
ChangePos2[playerid][1] = 1;
    SetPlayerInterior(playerid,0);
new rand = random(sizeof(gInviteSpawns));
SetPlayerPos(playerid, gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]); // Warp the player
SetPlayerFacingAngle(playerid, gInviteSpawns[rand][3]);
SetPlayerCameraPos(playerid,gInviteSpawns[rand][0] + 3, gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
SetPlayerCameraLookAt(playerid,gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
TogglePlayerControllable(playerid, 0);
SelectChar[playerid] = 255;
SelectCharID[playerid] = PlayerInfo[playerid][pMember];
SelectCharPlace[playerid] = 1;
PlayerInfo[playerid][pModel] = ChosenSkin[playerid];
    PlayerInfo[playerid][pChar] = ChosenSkin[playerid];
    SendClientMessage(playerid, COLOR_LIGHTRED, "Utilisez 'suivant' pour passer au skin suivant.");
    SendClientMessage(playerid, COLOR_LIGHTRED, "Si vous avez trouvé le skin qui vous convient. Tapez 'terminer'.");
changementvetements[playerid] = 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, "Vous n'êtes pas dans un magasin de vêtements!");
return 1;
}
        }
        else
        {
            if(PlayerInfo[playerid][pLeader] != 0)
            {
                SendClientMessage(playerid, COLOR_GRAD2, "Vous ne pouvez pas changer de vêtements vous ête chef!");
                return 1;
            }
            if(IsAtClothShop(playerid))
            {
                if(PlayerInfo[playerid][pSex] == 1) { ChosenSkin[playerid] = 2; SetPlayerSkin(playerid, 2); PlayerInfo[playerid][pChar] = 2; }
                else if(PlayerInfo[playerid][pSex] == 2) { ChosenSkin[playerid] = 55; SetPlayerSkin(playerid, 55); PlayerInfo[playerid][pChar] = 55; }
                else { return 1; }
                GetPlayerPos(playerid, ChangePos[playerid][0],ChangePos[playerid][1],ChangePos[playerid][2]);
ChangePos2[playerid][0] = GetPlayerInterior(playerid);
ChangePos2[playerid][1] = 1;
SetPlayerInterior(playerid,0);
new rand = random(sizeof(gInviteSpawns));
SetPlayerPos(playerid, gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]); // Warp the player
SetPlayerFacingAngle(playerid, gInviteSpawns[rand][3]);
SetPlayerCameraPos(playerid,gInviteSpawns[rand][0] + 3, gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
SetPlayerCameraLookAt(playerid,gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
TogglePlayerControllable(playerid, 0);
SelectChar[playerid] = 255;
if(PlayerInfo[playerid][pSex] == 1) { SelectCharID[playerid] = 20; }
else if(PlayerInfo[playerid][pSex] == 2) { SelectCharID[playerid] = 30; }
else { return 1; }
SelectCharPlace[playerid] = 1;
PlayerInfo[playerid][pModel] = ChosenSkin[playerid];
PlayerInfo[playerid][pChar] = ChosenSkin[playerid];
SendClientMessage(playerid, COLOR_LIGHTRED, "Utilisez 'suivant' pour passer au skin suivant.");
    SendClientMessage(playerid, COLOR_LIGHTRED, "Si vous avez trouvé le skin qui vous convient. Tapez 'terminer'.");
            }
        }
    }
    return 1;

J'ai décider d'aller voir un peu sur Google si je pouvais trouver un système de /vetement [ID Du skin] j'en ai trouver quelque un que j'ai modifié à ma guise, au final, ça donne ça :

Code:
}
if (strcmp(cmdtext, "/vetement", true)==0)
{
        if(IsPlayerConnected(playerid))
    {
        if(IsAtClothShop(playerid))
{
                                        if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /vetement [skin id]");
return 1;
}
new pskin;
tmp = strtok(cmdtext, idx);
pskin = strval(tmp);
{
    PlayerInfo[playerid][pChar] = pskin;
SetPlayerSkin(playerid, pskin);
SendClientMessage(playerid,COLOR_GREEN,"Cette tenue vous va très bien!");
}
}
}
return 1;

Mais il y a un petit problème que je ne comprend pas, quand je vais IG au binco et que je fais /vetement, cela me mais bien USAGE: /vetement [skin id], mais quand je fais /vetement [ID d'un skin] cela me mais que la commande n’existe pas..
Je ne comprends pas trop ou est l'erreur, je demande donc un peu d'aide.
(Je ne veux surtout pas passer pour le type qui demande le script tout entier et qui s’en fou du reste, je voudrais juste un peu d'aide et qu'on m’explique ou est l'erreur)
Bonne journée !
[/b]
Journalisée
Xartrick
Hors ligne Hors ligne


Moderateur
GTAOnline Addict
*

C & Pawn Programmer

Messages: 1206


WWW
« Répondre #1 le: 15 Janvier 2012 à 17:26:24 »

Code:
if (strcmp(cmdtext, "/vetement", true)==0)

Code:
if (strcmp(cmdtext, "/vetement", true, 9) == 0)

Citation de: Wiki
strcmp(const string1[], const string2[], bool:ignorecase, length)

length (optional)   When this length is set, the first x chars will be compared - doing "Hello" and "Hell No" with a length of 4 will say it's the same string.
Journalisée

Raptor2x
Hors ligne Hors ligne

Petit nouveau
*

Messages: 7


« Répondre #2 le: 15 Janvier 2012 à 17:39:25 »

Bonjour,
Tout d'abord merci beaucoup de ton aide, mais maintenant, quand je fais /vetement [Id d'un skin], il ne me dit plus que la commande n'existe pas, mais il me redit " USAGE: /vetement [skin id] "
Étrange, en tout cas merci de ton aide !


Code:
}
if (strcmp(cmdtext, "/vetement", true, 9) == 0)
{
        if(IsPlayerConnected(playerid))
    {
        if(IsAtClothShop(playerid))
{
                                        if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /vetement [skin id]");
return 1;
}
new pskin;
tmp = strtok(cmdtext, idx);
pskin = strval(tmp);
                if((pskin >= 163 && pskin <= 166) || (pskin >= 274 && pskin <= 287) || pskin > 300 || pskin < 0)
{
    PlayerInfo[playerid][pChar] = pskin;
SetPlayerSkin(playerid, pskin);
SendClientMessage(playerid,COLOR_GREEN,"Cette tenue vous va très bien!");
}
}
}
return 1;
Journalisée
S!m
Hors ligne Hors ligne


Moderateur
GTAOnline Fan Boy
*

Messages: 2260


« Répondre #3 le: 15 Janvier 2012 à 18:20:52 »

Salut,

regarde ça:

Code:
                                if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /vetement [skin id]");
return 1;
}
new pskin;
tmp = strtok(cmdtext, idx);

tu ne trouve pas qu'il y a un petit problème?

tu tente d'évaluer la longueur du texte contenu dans la variable tmp et tu y stocke du texte après... normalement on fait l'inverse:

Code:
tmp = strtok(cmdtext, idx);
if(strlen(tmp) == 0)
...

bonne chance

++Sim++
Journalisée





Raptor2x
Hors ligne Hors ligne

Petit nouveau
*

Messages: 7


« Répondre #4 le: 15 Janvier 2012 à 18:47:34 »

Salut S!m, et merci de ton aide.
Donc maintenant j'ai fait ça :
Code:
}
if (strcmp(cmdtext, "/vetement", true, 9) == 0)
{
      if(IsPlayerConnected(playerid))
   {
       if(IsAtClothShop(playerid))
{
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /vetement [skin id]");
return 1;
}
                new pskin;
tmp = strtok(cmdtext, idx);
                if(strlen(tmp) == 0)
{
   PlayerInfo[playerid][pChar] = pskin;
SetPlayerSkin(playerid, pskin);
SendClientMessage(playerid,COLOR_GREEN,"Cette tenue vous va très bien!");
}

}
}
return 1;
}
Mais quand je compile, ça me donne ça :
Code:
C:\Documents and Settings\HP_Administrateur\Bureau\2.0.3\gamemodes\u2c-rp.pwn(51615) : warning 225: unreachable code

Pourquoi  " warning 225: unreachable code "? Ou est l'erreur ?
Merci encore
« Dernière édition: 15 Janvier 2012 à 18:49:27 par Raptor2x » Journalisée
Xartrick
Hors ligne Hors ligne


Moderateur
GTAOnline Addict
*

C & Pawn Programmer

Messages: 1206


WWW
« Répondre #5 le: 15 Janvier 2012 à 19:12:42 »

Code:
if (strcmp(cmdtext, "/vetement", true, 9) == 0)
{
    if (IsPlayerConnected(playerid))
    {
        if (IsAtClothShop(playerid))
        {
            { // ?
                SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /vetement [skin id]");
               
                return 1;
            } // ?
           
            new pskin;
           
            tmp = strtok(cmdtext, idx);
           
            if(strlen(tmp) == 0)
            {
                PlayerInfo[playerid][pChar] = pskin; // pskin toujours égal à 0, aucune attribution de valeur.
               
                SetPlayerSkin(playerid, pskin); // pskin toujours égal à 0, aucune attribution de valeur.
                SendClientMessage(playerid, COLOR_GREEN, "Cette tenue vous va très bien!");
            }
        }
    }
   
    return 1;
}
Journalisée

Antonio_Pedretti
Hors ligne Hors ligne

Petit nouveau
*

Codeur Pawn, HTLM, CSS++

Messages: 33


WWW
« Répondre #6 le: 17 Janvier 2012 à 18:44:30 »

les warnings ne sont pas très important, tant que ta le fichier .amx quand tu compiles, c'est bon.
Journalisée

FR_SalutSSBB
Stunter
Hors ligne Hors ligne

Grand Banditisme
*

Stunter - Killer - SSBB Wii - Pro !

Messages: 88






« Répondre #7 le: 19 Janvier 2012 à 16:56:41 »

Mais sa risque a ton code de le pas faire marcher ou avoir des problème avec ton code

les warnings ne sont pas très important, tant que ta le fichier .amx quand tu compiles, c'est bon.
« Dernière édition: 19 Janvier 2012 à 17:06:38 par FR_SalutSSBB » Journalisée

Y'en à marre des personnes avec un script de serveur stunt de 2000 lignes ?

Cliquez ici pour un script de 15672 lignes !

Et regardez bien pour voir si je suis bête ou pas ! Je sais scripter et un peu mapper mais je suis pas ça :

Clique dedans ! Tu vas bien aimer ta leçon !!


Pages: [1]   Haut de page
Imprimer
Aller à:  

Theme créé par padexx et modifié par GTAOnline.fr
Page générée en 0.175 secondes avec 22 requêtes.
Forum GTAOnline.fr 2.0 | Design par : Lalu et GtaManiac
Merci a toute la communaute pour son support !
Copyright © 2004-2012 - GTAOnline.fr | GTAPro.com | Contact