• 04 Juin 2026, 04:54:23


Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Taylor

Pages: [1] 2
1
Scripting SA-MP [Pawn center] / Re : [Problème] Tuto ne suit pas
« le: 05 Novembre 2011, 21:55:24 »
Je te l'ai déjà dit, le tableau avec Homme ou Femme je l'est laisser tomber...

Je suis au problème du "annuler" que sa kick pas.
Je sais ce que je fais sur le tableau et je comprend. Cependant je comprend pas comment faire pour résoudre le problème c'est tout.

Si tu veux en rester la, je te dit merci comeme de ton aide.

2
Dans ton cas, si la variable response vaut un.
Je ne comprend pas trop "si la variable response vaut un."

Je ne comprend pas aussi comment mettre la variable response qui vaut un(1) ou zéro(0)

3
response est une variable et non une fonction, je ne te demande pas de l'ajouter.
Ensuite, je te propose de travailler directement avec les valeurs reçu et non avec la fonction OnPlayerText.


Bien d'accord,  je vais faire comme tu me la proposer.

Les valeurs reçu je dois le mettre ou donc ?

4
Ce que je te propose peut régler se problème, mais tu n'as pas l'air de vouloir te bouger pour que cela fonctionne, je veux bien t'aider, mais pas te mâcher le travail.

Je peux te dire que je bouge tout les jours pour règler ce problème et je ne cherche pas à me donner le travaill directement mais de m'aider.

Je ne sais pas ce tu me propose en se moment même, je sais déjà que tu m'a proposée de ajouter la fonction response donc je l'ai ajoutée.

5
J'ai repensé à ton problème et je pense que ta démarche pourrait être amélioré.
Pourquoi utilise la fonction évènementielle OnPlayerText alors que tu peux transmettre toi même les réponses directement.
Si tu clique sur le bouton homme, tu sais que la personne est un homme, pourquoi s'embêter à renvoyer ce résultat alors que tu peux le traiter directement.
Ce que je veux dire, c'est que tu peux utiliser plusieurs tableaux successifs pour demander des informations, et aussi, les récupérer.


Oui mais tu n'a pas très bien compris le problème, quand on clique sur "homme" tout marche parfait mais c'est quand on clique sur "femme" que sa ne marche pas. Je clique sur "femme" ça m’enlève le tableau et je reste sur place freezer, connecté sans tableau, rien...

Ensuite je parle des boutons du tableau, il y a surement un bouton "Continuer" et bien "Annuler" mon problème ce pose sur le bouton "Annuler" je n'arrive pas a faire kick le joueur quand on clique sur ce bouton. J'ai bien vérifié la fonction response, le else, le kickplayer, au final quand on clique sur le bouton "Annuler" le tableau disparait sans réponse. Pour se faire kicker il faut mettre la souris sur le bouton "annuler" et appuyer entrée sur le clavier mais ce n'est pas ce que je veut.

J'ai pourtant bien suivis le wiki, tes réponses mais ça me ramène pas a la résolution de mon problème...

6
Scripting SA-MP [Pawn center] / Re : [Problème] Tuto ne suit pas
« le: 02 Novembre 2011, 12:31:33 »
Bah franchement, je compare deux dialog lun d'entre eux marche, il y'a rien a changer....

Oui je cherche à comprendre depuis le début du problème mais je ny arrive pas.

7
Scripting SA-MP [Pawn center] / Re : [Problème] Tuto ne suit pas
« le: 01 Novembre 2011, 21:27:34 »
Donc je dois utiliser la variable response comme ça:

    if(response == 0)
    {

J'ai faux ? j'ai mis comme ça mais la ça ne kick pas du tout.

8
Scripting SA-MP [Pawn center] / Re : [Problème] Tuto ne suit pas
« le: 01 Novembre 2011, 15:39:40 »
J'ai suivi comme demandé dans le wiki, ça ne résous toujours pas mon problème.

Ce que je cherche n'est pas de cliquer sur "continuer" mais de cliquer sur "Annuler" pour que l'on kick ce joueur après le click du bouton n°2.

J'ai ajouté bien évidement un "Kick(playerid);" après le else mais je viens de voir que quand tu click sur la case "annuler" avec la souris rien se passe mais quand t’appuie entrée sur le clavier ça te kick.

On se rapproche déjà donc maintenant il reste que je trouve comment kick quand on clique avec la souris dans la case "annuler"...

9
Hier j'ai mit un glaçon dans mon Coca, mais rien.

Que veut dire rien ici ? RIEN.

Dans ton avant dernier message, c'est pareil, tu nous dis vaguement ce que tu as fais -- un copier/coller surement -- et tu nous dit qu'il se passe rien.
Donne nous des détails sur ce que tu as fais, sur ce que tu en as déduit, bouge toi si tu veux que nous ont se bouge pour t'aider.

O

Bien, j'ai pris le tableau d'un autre gm et je l'ai mi dans mon gm, j'ai défini ce qu'il fallait et ensuite aller tester IG si les deux case marchait, je me suis ensuite aperçu que la deuxième case "annuler" ne marchais pas dOnc ne kick pas. J'ai chercher à changer le nom du dialogue comme "12345" et changer par "1" mais le résultat de ce changement n'a rien donner donc n'a pas kick.

PS: le problème de homme/femme est régler, je répond ici pour le problème du bouton "annuler" = kick.
 Voila, j'espère avoir été clair.

10
Scripting SA-MP [Pawn center] / Re : [Problème] Tuto ne suit pas
« le: 23 Octobre 2011, 23:34:26 »
Up.

11
Scripting SA-MP [Pawn center] / Re : [Problème] Tuto ne suit pas
« le: 21 Octobre 2011, 21:59:28 »
Ah je me suis dit aussi qu'il y avais des truck qui sert a rien.

Je viens de test IG mais toujours rien...

12
if(dialogid == TUTOMENU)
{
if(response)
{
new tmp[256];

format(tmp, 256, "homme", inputtext) || format(tmp, 256, "femme", inputtext)

return OnPlayerText(playerid, tmp);
}
else
{
new tmp[256];

format(tmp, 256, "femme", inputtext) || format(tmp, 256, "femme", inputtext)
return OnPlayerText(playerid, tmp);
}
}

J'enleve donc

}
else
{
new tmp[256];

format(tmp, 256, "femme", inputtext) || format(tmp, 256, "femme", inputtext)
return OnPlayerText(playerid, tmp);

C'est ce qu'il faut faire ou pas?

13
Scripting SA-MP [Pawn center] / [Problème] Tuto ne suit pas
« le: 21 Octobre 2011, 15:58:56 »
Bonjour,

Je rencontre un problème que je ne comprend pas d'où cela peut venir.
Je vous explique:

Quand on n'est a l'inscription, on clique si on n'est un homme ou une femme, quand je clique sur "homme" sa poursuit le tuto mais quand je clique sur "femme" sa suit pas le tutoriel et sa enlève le tableau. Donc si on veux reaparaitre le tableau tu fais "/t (texte)" et il te réafiche le tableau et ainsi de suite le problème suit...

Le truck que je trouve bizzare c'est que j'ai comparer a un autre gm, le scripte est exactement pareil et dans l'autre gm sa fonctionne...

Voilà le scripte:

Défine :
#define TUTOMENU 7 // By Tomy Copyright By InterGaming
Dans OnDialogResponse:
   if(dialogid == TUTOMENU)
   {
if(response)
{
new tmp[256];//variable pour notre format
format(tmp, 256, "homme", inputtext) || format(tmp, 256, "femme", inputtext)
return OnPlayerText(playerid, tmp);//
}
else//si pas de reponse
    {
        new tmp[256];//variable pour notre format
format(tmp, 256, "femme", inputtext) || format(tmp, 256, "femme", inputtext)
return OnPlayerText(playerid, tmp);//
    }
   }

Et le scripte du tuto: (parti 1)

public SetPlayerSpawn(playerid)
{
    if(IsPlayerNPC(playerid)) return 1;
if(IsPlayerConnected(playerid))
{
    SetPlayerSkin(playerid, PlayerInfo[playerid][pChar]);
    if(PlayerInfo[playerid][pTut] == 0)
    {
gOoc[playerid] = 1; gNews[playerid] = 1; gFam[playerid] = 1;
SetPlayerInterior(playerid, 3);
PlayerInfo[playerid][pInt] = 3;
SetPlayerPos(playerid, 330.6825,163.6688,1014.1875);
SetPlayerFacingAngle(playerid, 280);
TogglePlayerControllable(playerid, 0);
RegistrationStep[playerid] = 1;
//SendClientMessage(playerid, COLOR_YELLOW, "Veuillez remplir ce formulaire s'il vous plait. Il nous permettra d'avoir plus d'informations sur vous.");
//SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~Etape 1~~~~~~~~~~~~~~~~");
//SendClientMessage(playerid, COLOR_WHITE, "Êtes vous un Homme ou une Femme ? (Ecrivez ce que vous êtes)");
//SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
new tutomsg[256];
format(tutomsg,256,"Nous te souhaitons tout d'abord la bienvenue sur notre serveur, American World. \nNotre base de donnée demande de fournir quelques informations pour pouvoir s'inscrire correctement \n\nPremière information: Vous êtes un homme ou bien une Femme?");
ShowPlayerDialog(playerid,TUTOMENU,DIALOG_STYLE_MSGBOX,"[Menu d'inscription] ~ Informations N°1 ~ ",tutomsg,"Homme","Femme");
return 1;
    }

Suite: (parti 2)

if(RegistrationStep[playerid] > 0)
{
    if(RegistrationStep[playerid] == 1)
    {
        new idx;
    tmp = strtok(text, idx);
    if((strcmp("homme", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("homme")))
{
    PlayerInfo[playerid][pSex] = 1;
    //SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~Etape 2~~~~~~~~~~~~~~~~");
    //SendClientMessage(playerid, COLOR_YELLOW2, "D'accord, donc vous êtes un Homme.");
    //SendClientMessage(playerid, COLOR_WHITE, "Quelle est votre date de naissance? (Utilisez jj/mm/aaaa)");
    //SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
    new maleskin;
    maleskin = random(sizeof(CivMalePeds));
                new tuto1msg[256];
                SendClientMessage(playerid, COLOR_YELLOW2, "Vous avez indiquez que vous êtes donc un Homme.");
    format(tuto1msg,256,"Procédure de l'information suivante en cours... \nProcédure effectuer avec succès. \nDeuxième information : Quel est votre dâte de naissance ? \nVeuillez fournir votre date de naissance ci-dessous :");
    //format(tuto1msg,256,"Procédure de l'information suivante en cours... /nProcédure réussis avec succès./nVeuillez fournir votre date de naissance ci-dessous :");
    ShowPlayerDialog(playerid,TUTOMENU1,DIALOG_STYLE_INPUT,"[Menu du tutoriel] ~ Information N°2 ~",tuto1msg,"Valider","Annuler");
    SetPlayerSkin(playerid, maleskin);
    PlayerInfo[playerid][pChar] = maleskin;
    RegistrationStep[playerid] = 2;
    return 0;
}
else if((strcmp("femme", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("femme")))
{
    PlayerInfo[playerid][pSex] = 2;
    //SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~Etape 2~~~~~~~~~~~~~~~~");
    //SendClientMessage(playerid, COLOR_YELLOW2, "D'accord, donc vous êtes une Femme.");
    //SendClientMessage(playerid, COLOR_WHITE, "Quelle est votre date de naissance? (Utilisez jj/mm/aaaa)");
    //SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
    new femaleskin;
    femaleskin = random(sizeof(CivFemalePeds));
                new tuto1msg[256];
                SendClientMessage(playerid, COLOR_YELLOW2, "Vous avez indiquez que vous êtes donc une Femme.");
    //format(tuto1msg,256,"NQuelle Est Votre Date de votre naissance? (JJ/MM/ANNE) :");
    format(tuto1msg,256,"Notre base de donnée demande de founir votre date de naissance pour s'inscrire./n/nVeuillez fournir votre date de naissance ci-dessous :");
    ShowPlayerDialog(playerid,TUTOMENU1,DIALOG_STYLE_INPUT,"Menu Du Tutoriel Etape 2 ",tuto1msg,"Valider","Annuler");
    SetPlayerSkin(playerid, femaleskin);
    //SetPlayerSkin(playerid, femaleskin);
    PlayerInfo[playerid][pChar] = femaleskin;
    RegistrationStep[playerid] = 2;
    return 0;
}
else
{
new tutomsg[256];
format(tutomsg,256,"Je n'ai pas trés bien compris!\nVous êtes un Homme ou une Femme? :");
ShowPlayerDialog(playerid,TUTOMENU,DIALOG_STYLE_MSGBOX,"Menu D'inscription Etape 1 ",tutomsg,"Homme","Femme");
}
return 0;
}
else if(RegistrationStep[playerid] == 2)
    {
        new year, month,day;
getdate(year, month, day);
        new DateInfo[3][20];
split(text, DateInfo, '/');
if(year - strvalEx(DateInfo[2]) > 100 || strvalEx(DateInfo[2]) < 1 || strvalEx(DateInfo[2]) >= year)
{
    new tuto2msg[256];//variable pour le format
    format(tuto2msg,256,"Vous êtes beaucoup trop vieux ! \nQuelle Est Votre Date de votre naissance? (JJ/MM/ANNE) :");
    ShowPlayerDialog(playerid,TUTOMENU1,DIALOG_STYLE_INPUT,"Menu Du Tutoriel Etape 2 ",tuto2msg,"Valider","Annuler");
    return 0;
}
new check = year - strvalEx(DateInfo[2]);
if(check == year)
{
    new tuto2msg[256];//variable pour le format
    format(tuto2msg,256,"Vous êtes beaucoup trop vieux ! \nQuelle Est Votre Date de votre naissance? (JJ/MM/ANNE) :");
    ShowPlayerDialog(playerid,TUTOMENU1,DIALOG_STYLE_INPUT,"Menu Du Tutoriel Etape 2 ",tuto2msg,"Valider","Annuler");
    return 0;
}
if(strvalEx(DateInfo[1]) > month)
{
    check -= 1;
}
else if(strvalEx(DateInfo[1]) == month && strval(DateInfo[0]) > day)
{
    check -= 1;
}
PlayerInfo[playerid][pAge] = check;
SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~Etape 4~~~~~~~~~~~~~~~~");
format(string, sizeof(string), "D'accord, vous avez donc %d ans.",PlayerInfo[playerid][pAge]);
SendClientMessage(playerid, COLOR_YELLOW2, string);
RegistrationStep[playerid] = 3;
SendClientMessage(playerid, COLOR_WHITE, "Quelle est votre Origine? (Tapez : USA, Europe, Asie ou Afrique)");
SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
return 0;
    }

Merci beaucoup de votre aide.

14
Problèmes et bugs / Re : [Problème] Dialog d'inscription
« le: 18 Octobre 2011, 19:25:44 »
Upp...

15
Problèmes et bugs / Re : Re : [Problème] Dialog d'inscription
« le: 17 Octobre 2011, 13:03:20 »
à la place de "mot_de_passe" tu mets inputtext qui contient le texte entré par le joueur dans un dialog et à la place de "x" tu mets la taille minimum que le mot de passe doit faire.

Alors j'ai suivis ta réponse et j’obtiens ça:

if(dialogid == 12345)
{
     if(response)
     {
           if(strlen(inputtext) > 5)
           {
           // Si le joueur a cliqué sur le bouton de gauche ET que la longueur de son pass est suffisante <- je sais pas non plus quoi ajouté ici.
           }
           else
           {
              // Si le joueur a cliqué sur le bouton de gauche MAIS que son mot de passe est trop court <- ici non plus aussi
           }
     }
     else
     {
          Kick(playerid);
      }
      return 1;
}

Je reçois plein d'erreur car il y a un "} ou {" qui est manquant. Je l'ai repéré et je l'es mis donc ça a été comme ça:

Avant:

     }
     else
     {
          Kick(playerid);
      }
      return 1;
}

Après:
     }
     else
     {
          Kick(playerid);
          return 1;
}
}
      return 1;
}

Ensuite, je suis parti tester cela IG, rien ne fonctionne... ça me kick pas et ça me téléporte vers la pos de connexion sans tableau...

Merci de votre aide.

Pages: [1] 2