Jump to content
  • 0

Ajutor sex varsta etc..


Bogdan's

Question

Problema intalnita (descriere): Salut si bine v-am gasit.Am intalnit  o problema si anume,am vrut sa ''updatez'' gm-ul si sa il pun pe dialog total,ei bine am reusit asta,dar mai am doar cateva comenzi si inregistrarea de facut pe dialog.Ei bine...Ce am patit?As vrea sa stiu unde am gresit si ce trebuie facut ca sa nu mai gresesc,am incercat sa fac mai multe smecherii pe care le cunosteam,eu trebuia sa scriu sexul pe chat ca sa ma dea mai departe in tutorial etc... la varsta si asa mai departe si acum vreau sa il adaug pe dialog sub forma de intrebare(mod INPUT).Si imi da erorile astea:
Ero(area / rile) / warning-(ul / urile):

a2viata.pwn(4067) : warning 202: number of arguments does not match definition
a2viata.pwn(4067) : error 017: undefined symbol "tmp"
a2viata.pwn(4082) : error 017: undefined symbol "tmp"
Pawn compiler 3.2.3664              Copyright (c) 1997-2006, ITB CompuPhase


2 Errors.

Liniile de cod / sursa / script-ul(obligatoriu):

#define DIALOG_SEXX
if(dialogid == SEXX)
        {
           if(response)
           {
//             if(listitem == 0)
    //         {
             //EROARE  LA TMP  if((strcmp("masculin") && (strlen(tmp) == strlen("masculin")))
            {
                PlayerInfo[playerid][pSex] = 1;
                SendClientMessage(playerid, COLOR_GREEN, "Esti de sex masculin.");
                ShowPlayerDialog(playerid,VARSTA,DIALOG_STYLE_INPUT,"{F81414}Varsta","Scrie ce varsta ai!(ZI/LUNA/AN)","OK","");
                new maleskin;
                maleskin = random(sizeof(CivMalePeds));
                SetPlayerSkin(playerid, maleskin);
                PlayerInfo[playerid][pChar] = maleskin;
                RegistrationStep[playerid] = 2;
                OnPlayerUpdateEx(playerid);
                return 0;
            }
//             else if(listitem == 1)
    //         {
               //EROARE LA TMP  else if((strcmp("feminin", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("feminin")))
            {
                PlayerInfo[playerid][pSex] = 2;
                SendClientMessage(playerid, COLOR_GREEN, "Esti de sex feminin.");
                new femaleskin;
                femaleskin = random(sizeof(CivFemalePeds));
                SetPlayerSkin(playerid, femaleskin);
                SetPlayerSkin(playerid, femaleskin);
                PlayerInfo[playerid][pChar] = femaleskin;
                RegistrationStep[playerid] = 2;
                OnPlayerUpdateEx(playerid);
                ShowPlayerDialog(playerid,VARSTA,DIALOG_STYLE_INPUT,"{F81414}Varsta","Scrie ce varsta ai!(ZI/LUNA/AN)","OK","");
                return 0;
             }
           }
        }

Imagini / Video (optional):
Ati incercat sa rezolvati singur?:Va rog frumos sa ma ajutati,nu stiu ce sa ii mai fac.

Edited by WopsS
Adaugat codul formatat pentru C++.
Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Trebuia sa ne marchezi liniile, dar am vazut unde ai probleme deci nu imi mai trebuie.

if((strcmp("masculin") && (strlen(tmp) == strlen("masculin")))

Aici nu trebuie sa ai asa. strcmp are parametrii diferiti (din pacate nu o avem pe wiki.sa-mp.ro).

Trebuie sa ai

strcmp("text1", "text2", true) // De ce ultimul parametru este "true" (adevarat)? Pai pentru ca vrei sa ignori diferentele de litere mari si litere mici.

Aici compari text1 cu text2 sa vezi daca sunt egale, dar nu sunt. Daca vrei sa fie egale trebuie sa fie text1 si text1.

La tine o sa fie urmatorul cod

strcmp("masculin", inputtext, true)

Aici

(strlen(tmp) == strlen("masculin"))

sincer nu ii vad rostul.

De ce?

Pentru ca tu deja compari fiecare caracter sa vezi daca cele doua texte sunt egale, deci n-o sa fie unul mai mare ca celalalt.

Ce poti sa mai faci acolo?

Sa pui ultimul parametru la strcmp (dupa true) sa fie

strlen("masculin")

Dar ai grija, daca jucatorul o sa scrie Masculin ca vreau si tu o sa compari primele 8 caractere, deci o sa ia doar Masculin din ce a scris jucatorul. (La fel, zic ca nu isi are rostul)

 

La fel si la

else if((strcmp("feminin", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("feminin")))

 

Edited by WopsS
  • Upvote 1
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.