Szerző Téma: Kisebb kérdések  (Megtekintve 164845 alkalommal)

Nem elérhető huhboy

  • 894
  • huhboy
    • Profil megtekintése
Kisebb kérdések
« Válasz #1170 Dátum: 2014. Április 20. - 17:42:29 »
0 Show voters
Idézetet írta: Campe3r date=1398008056\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"11181\" data-ipsquote-contentclass=\"forums_Topic
Hogyan tudom az Input textjét egy változóban elmenteni?
 


new bevitel[MAX_PLAYERS];
//ezt dialogos cuccok alá, ahol elakarod menteni...
bevitel[playerid] = strval(inputtext);

Kisebb kérdések
« Válasz #1171 Dátum: 2014. Április 20. - 17:59:45 »
0 Show voters
Köszönöm, megy a +, azt esetleg nem tudjátok hogyan lehet leellenõrizni azt, hogy egy változónak van-e értéke?

Nem elérhető KovaNovik

  • 1121
  • KovaNovik
    • Profil megtekintése
Kisebb kérdések
« Válasz #1172 Dátum: 2014. Április 20. - 18:08:21 »
0 Show voters
Idézetet írta: Campe3r date=1398009585\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"11181\" data-ipsquote-contentclass=\"forums_Topic
Köszönöm, megy a +, azt esetleg nem tudjátok hogyan lehet leellenõrizni azt, hogy egy változónak van-e értéke?
 
Szia. Ha létrehozol egy változót, annak alapból 0 lesz az értéke, ha csak nem adod meg azt a létrehozásánál. Ergo, if(!valtozo), vagy ami biztosabb if(valtozo == 0) //valami

Kisebb kérdések
« Válasz #1173 Dátum: 2014. Április 20. - 18:09:09 »
0 Show voters
Köszönöm

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Kisebb kérdések
« Válasz #1174 Dátum: 2014. Április 20. - 20:21:29 »
0 Show voters
Idézetet írta: huhboy date=1398008549\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"11181\" data-ipsquote-contentclass=\"forums_Topic


Hogyan tudom az Input textjét egy változóban elmenteni?
 


new bevitel[MAX_PLAYERS];
//ezt dialogos cuccok alá, ahol elakarod menteni...
bevitel[playerid] = strval(inputtext);

 

[/quote]
Ha szöveget akar elmenteni, akkor ez nem jó megoldás. Ugyanis így átalakítja az inputtextet számmá, majd azt tárolja el egy integer típusú változóba. Ha mindig szám lesz megadva inputtextnek, akkor jó ez a megoldás, de amúgy nem. Ha szöveges változóba szeretnél menteni, használhatsz formatot, de nagyon egyszerûen trükközhetsz is:
 
new Valtozod[888888888888]; // 888888888888 helyére amennyire szükséged van.
strins(Valtozod, inputtext, 0);

Kisebb kérdések
« Válasz #1175 Dátum: 2014. Április 21. - 13:47:21 »
0 Show voters
Hogyan tudom egy változó karakterjeinek összegét lekérni és átalakítani egy változót ugyanannyi karakterre amennyi elötte volt, csak nem ugyan azok a karakterek lesznek, hanem *(jelszóhoz kellene)

Nem elérhető huhboy

  • 894
  • huhboy
    • Profil megtekintése
Kisebb kérdések
« Válasz #1176 Dátum: 2014. Április 21. - 15:46:13 »
0 Show voters
Idézetet írta: Campe3r date=1398080841\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"11181\" data-ipsquote-contentclass=\"forums_Topic
Hogyan tudom egy változó karakterjeinek összegét lekérni és átalakítani egy változót ugyanannyi karakterre amennyi elötte volt, csak nem ugyan azok a karakterek lesznek, hanem *(jelszóhoz kellene)
 
a dudb include-dal :)
http://sampforum.hu/index.php?topic=3075.msg36705#msg36705

Kisebb kérdések
« Válasz #1177 Dátum: 2014. Április 21. - 17:23:19 »
0 Show voters
Olvasd el jobban a kérdést, és aztán válaszolj..
E.: Már megoldottam
[mod]Õ legalább próbált segíteni. Amúgy a kérdésed sem volt túl érthetõ, szóval nem csoda, hogy számodra nem megfelelõ választ adott. Ha megoldottad, akkor a megoldást közöld velünk, hogy mások is tanulhassanak belõle. Ha egyszer kérdeztél. A dupla hozzászólás helyett pedig használd a szerkesztés gombot![/mod]

Dupla hozzászólás automatikusan összefûzve. ( 2014. Április 21. - 17:35:53 )

Valaki el tudná nekem magyarázni, hogy mysql-ben hogyan is történik ez a feldarabolás sscanf-fal?
Példa:
 
sscanf(Data, \"p<|>s[24]s[64]i\", MyPassword, MyUserName, MyAdminLevel);
« Utoljára szerkesztve: 2014. Április 21. - 19:19:07 írta Dfoglalo »

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Kisebb kérdések
« Válasz #1178 Dátum: 2014. Április 21. - 19:22:51 »
0 Show voters
Az általad írt példában:
p<|> - | jelekkel darabolunk
s[24] - az elsõ lekérdezett adat string típusú és maximum 24 karakter hosszú lehet, majd eltároljuk ezt egy string típusú valtozóba
s[64] - az második lekérdezett adat string típusú és maximum 64 karakter hosszú lehet, majd eltároljuk ezt egy másik string típusú valtozóba
i - A harmadik adat integer típusú lehet, melyet eltárolunk egy integer típusú változóba

Kisebb kérdések
« Válasz #1179 Dátum: 2014. Április 21. - 19:32:49 »
0 Show voters
Köszönöm, +
E.:
Sziasztok! Lekértem egy integert mysql-el, de valamiért nem jó. Mi lehet a gond?
Itt ahol definiálom a változót amibe lekérem
 
enum KarakterInfoEnum:
{
ID[16],
Felhasznalo[32],
Karakternev[32]
};
new KarakterInfo[MAX_PLAYERS][KarakterInfoEnum];

 
És itt, ahol lekérem mysql-el, és kiiratom teszt miatt:
 
sscanf(Line,\"p<|>is[32]s[32]\", KarakterInfo[playerid][iD], KarakterInfo[playerid][Felhasznalo], KarakterInfo[playerid][Karakternev]);
SendClientMessage(playerid, -1, KarakterInfo[playerid][iD]);
« Utoljára szerkesztve: 2014. Április 21. - 19:54:45 írta Campe3r »

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Kisebb kérdések
« Válasz #1180 Dátum: 2014. Április 21. - 22:51:32 »
0 Show voters
Nem tudom, hogy mi van veled, az inttel és a stringgel, de nagyon nem találjátok az összhangot... Most nem stringet akartál intbe menteni, hanem intet stringbe menteni.
 
ID[16],

 
helyett
 
ID,

Kisebb kérdések
« Válasz #1181 Dátum: 2014. Április 22. - 11:34:24 »
0 Show voters
Hát igen, régen scripteltem pawn-t :D A lua viszont még nehezebb volt aztán olyasmi módszereket próbálok alkalmazni. Vissza kell szoknom még :D
E.: Melyik változót használjam idõ lekéréshez mysql-en?
E.: Sziasztok! Valami gond van a mysql lekérésemmel sscanf-ba, nem tudjátok mi lehet a gond?
Kód:
 
                format(Query, sizeof(Query), \"SELECT * FROM felhasznalok WHERE felhasznalonev = \'%s\'\", FelhasznaloInfo[playerid][Felhasznalonev]);
                mysql_query(Query);
                mysql_store_result();
                if(mysql_num_rows() != 0)
                {
                        if(mysql_num_rows() != 0)
                        {
                                if(mysql_fetch_row_format(Line))
                                {
                                        sscanf(Line, \"p<|>ds[32]s[32]s[32]d\", FelhasznaloInfo[playerid][iD], FelhasznaloInfo[playerid][Felhasznalonev], FelhasznaloInfo[playerid][Jelszo], FelhasznaloInfo[playerid][Email], FelhasznaloInfo[playerid][AdminSzint]);
                                        SendClientMessage(playerid, -1, \"Sikeresen bejelentkeztél!\");
                                        InfoBox(playerid, 1, \"Sikeresen bejelentkeztél!\");
                                        Betolt(playerid);
                                        FelhasznaloInfo[playerid][bejelentkezve] = 1;
                                        mysql_free_result();
                                }
                        }
                        else
                        {
                                SendClientMessage(playerid, -1, \"Hibás jelszó!\");
                                InfoBox(playerid, 3, \"Hibás jelszó!\");
                        }
                }
                else
                {
                        SendClientMessage(playerid, -1, \"Nem létezõ felhasználó!\");
                        InfoBox(playerid, 2, \"Nem létezik ilyen nevû felhasználó!\");
                }
                mysql_free_result();

 
Enum:
 
enum FelhasznaloInfoEnum
{
Felhasznalonev[32],
Jelszo[32],
Email[32],
AdminSzint,
Bejelentkezve
};
new FelhasznaloInfo[MAX_PLAYERS][FelhasznaloInfoEnum];

 
Hiba:
 
warning 213: tag mismatch

 
amit erre a sorra ír:
 
sscanf(Line, \"p<|>ds[32]s[32]s[32]d\", FelhasznaloInfo[playerid][iD], FelhasznaloInfo[playerid][Felhasznalonev], FelhasznaloInfo[playerid][Jelszo], FelhasznaloInfo[playerid][Email], FelhasznaloInfo[playerid][AdminSzint]);
« Utoljára szerkesztve: 2014. Április 23. - 21:59:27 írta Campe3r »

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Kisebb kérdések
« Válasz #1182 Dátum: 2014. Április 23. - 22:18:17 »
0 Show voters
Én ilyet nem látok az enumban:
 
FelhasznaloInfo[playerid][iD]

Kisebb kérdések
« Válasz #1183 Dátum: 2014. Április 23. - 22:20:49 »
0 Show voters
Tényleg, észre sem vettem. :) köszönöm
E: Csinálnám a barát rendszeremet, hogy a chatbe, /me-be, /do-ba csak az látja a nevét az embernek aki csinálja, akinek megvan barátnak. Valamiért nem jó :S
 
CMD:me(playerid, params[])
{
if(IsPlayerConnected(playerid))
{
new String[256];
new String2[256];
new Nev[MAX_PLAYER_NAME];
new Float:PosX;
new Float:PosY;
new Float:PosZ;
GetPlayerPos(playerid, PosX, PosY, PosZ);
GetPlayerName(playerid, Nev, sizeof(Nev));
if(sscanf(params, \"s[256]\", String)) return SendNGRPMessage(playerid, 3, \"/me [cselekvés]\");
for(new i = 0; i < MAX_PLAYERS; i++)
{
   if(IsPlayerConnected(i))
   {
      if(IsPlayerInRangeOfPoint(i, 30.00, PosX, PosY, PosZ))
      {
         if(IsPlayerBarat(i, Nev))
         {
            format(String2, sizeof(String2), \"{f041be}* %s %s.{f041be}\", Nev, String);
            SendClientMessage(i, -1, String2);
         }
         else
         {
            format(String2, sizeof(String2), \"{f041be}* Valaki %s.{f041be}\", String);
            SendClientMessage(i, -1, String2);
         }
      }
   }
}
}
return 1;
}

 

forward IsPlayerBarat(playerid, KarakterNev[]);

 

public IsPlayerBarat(playerid, KarakterNev[])
{
new Nev[MAX_PLAYER_NAME];
GetPlayerName(playerid, Nev, sizeof(Nev));
format(Query, sizeof(Query), \"SELECT * FROM baratok WHERE karakter = \'%s\' AND barat = \'%s\'\", KarakterNev, Nev);
mysql_query(Query);
return 1;
}

 
[mod]Javítottam a code tageket.[/mod]
« Utoljára szerkesztve: 2014. Április 24. - 22:41:59 írta Dfoglalo »

Nem elérhető KovaNovik

  • 1121
  • KovaNovik
    • Profil megtekintése
Kisebb kérdések
« Válasz #1184 Dátum: 2014. Április 24. - 21:02:57 »
0 Show voters
Sziasztok! A Whirlpool pluginnal kapcsolatban lenne egy rövid kérdésem? Ugye a jelszónak minimum 129 cellás karakterlánc kell. Akkora méretben is kell mentenem, vagy elég a 32 (max. jelszó hossz, titkosítatlanul.)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal