Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: V_More poslato Jul 20, 2013, 16:25:29 POSLE PODNE

Naslov: [POMOC]Netačan password
Poruka od: V_More poslato Jul 20, 2013, 16:25:29 POSLE PODNE
Skripta koju koristim: Moj mod od 0
Detaljan opis problema: Pa ako neko pogreÅ¡i password da ga kickuje sa servera ali pre toga ispiÅ¡e poruku. Sada trenutno ako nema poklapanja sa unesenim imenom i passwordom onda ne uradi server niÅ¡ta nego samo skloni dialog i to je to, a kada izaÄ'em svi statsi se restartuju jer čuva podatke 0 jer nisu ubačeni iz baze podaci pravi jer nije unio tačan password i to mi stvara problem.
Dio skripte:
case DIALOG_LOGIN:
        {
            if (!response)
{
Kick (playerid);
}
            if( response )
            {       
mysql_format(connectionHandle, Query, "SELECT * FROM `users` WHERE `Ime i prezime` = '%e' AND Password = '%e'", GetName(playerid), inputtext);
mysql_function_query(connectionHandle, Query, false, "LoginPlayer", "ds", playerid, inputtext);
//kako ovde da stavim da provjeri ako nema podudaranja na liniji gde formiram query, ne ova iznad, već dve iznad ove, else nece.
                    {
                    SendClientMessage(playerid, -1, "{039EFF}MG:RP || {FFFFFF}Password koji ste unijeli nije tacan, kickovani ste!");
                    Kick(playerid);
}
}
}
             

Neke slike/video za lakse dobivanje pomoci(neobavezno): //

Ako može samo što prije, hitno je.
Naslov: Odg: [POMOC]Netačan password
Poruka od: V_More poslato Jul 20, 2013, 17:02:29 POSLE PODNE
Izvinjavam se za double post:

Stavio sam sada ovako, ali sada i kada ukucam i tačan i netačan igrač može da uÄ'e na server, statistika se očita i sve:

        case DIALOG_LOGIN:
        {
            if (!response)
{
Kick (playerid);
}
            if( response )
            {       
mysql_format(connectionHandle, Query, "SELECT * FROM `users` WHERE `Ime i prezime` = '%e' AND Password = '%e'", GetName(playerid), inputtext);
new result = mysql_function_query(connectionHandle, Query, false, "LoginPlayer", "ds", playerid, inputtext);

if(result == 0)
                    {
                    SendClientMessage(playerid, -1, "{039EFF}MG:RP || {FFFFFF}Password koji ste unijeli nije tacan, kickovani ste!");
                    Kick(playerid);
}
}
}
Naslov: Odg: [POMOC]Netačan password
Poruka od: Joey_ poslato Jul 22, 2013, 00:36:20 PRE PODNE
Koju verziju mySQL plugina koristiš?
Naslov: Odg: [POMOC]Netačan password
Poruka od: V_More poslato Jul 22, 2013, 12:33:35 POSLE PODNE
Hmm, gde da proverim, davno sam ga skinuo pa se ne sjećam ?
Naslov: Odg: [POMOC]Netačan password
Poruka od: Joey_ poslato Jul 22, 2013, 15:10:00 POSLE PODNE
Server log.
Naslov: Odg: [POMOC]Netačan password
Poruka od: V_More poslato Jul 22, 2013, 21:27:31 POSLE PODNE
mySQL R7 od BlueG, al' to sam skinuo kad je 0.3d bio jedino ako treba opet možda neki koji je za SAMP 0.3e prilagoÄ'en ?

edit: skinuo sam sad trenutni nije do toga.
Naslov: Odg: [POMOC]Netačan password
Poruka od: Joey_ poslato Jul 23, 2013, 00:22:27 PRE PODNE
Već neko vrijeme nisam radio u mySQL, al' ako se ne varam da bi ovo trebalo radit.


case DIALOG_LOGIN:
{
if (!response)
{
Kick (playerid);
}
if( response )
{       
mysql_format(connectionHandle, Query, "SELECT * FROM `users` WHERE `Ime i prezime` = '%e' AND Password = '%e'", GetName(playerid), inputtext);
mysql_function_query(connectionHandle, Query, false, "LoginPlayer", "ds", playerid, inputtext);
}
}

forward LoginPlayer(playerID, password[]);
public LoginPlayer(playerID, password[])
{
mysql_store_result();

if (mysql_num_rows() == 0)
{
SendClientMessage(playerid, -1, "{039EFF}MG:RP || {FFFFFF}Password koji ste unijeli nije tacan, kickovani ste!");
        Kick(playerid);
}

mysql_free_result();
return 1;
}
Naslov: Odg: [POMOC]Netačan password
Poruka od: V_More poslato Jul 23, 2013, 14:52:23 POSLE PODNE
Hvala Joey, tako sam bio uradio kad sam ovo vidio meÄ'utim opet se bila restatovala statistika igrača, to jest sve varijable u bazi za toga igrača jer ustvari očitavanje i stavljanje u Enume je bilo kad se igrač uloguje ako je tačan password, a onda sačuva te Enume, a poÅ¡to ih nije mogao učitati jer nije ulogovan sve su ostale nule prilikom sačuvavanja pa sam učitavanje premestio odmah prilikom pojavljivanja dialoga i sada to radi, no pojavila su se dva nova sitna problema ( sva sreća sitna ). To su da neće da ispiÅ¡e onu poruku ako se Å¡ifra pogreÅ¡i kao Kikovani ste jer ste pogreÅ¡li password... nego samo piÅ¡e Server closed to connection ono, a poruku ne ispiÅ¡e.

Dalje, kad se registrujem pojavilo se ono dole <<, >>, Spawn dugmad pa ne znam sad kako to da uklonim ...
Naslov: Odg: [POMOC]Netačan password
Poruka od: Joey_ poslato Jul 23, 2013, 18:24:32 POSLE PODNE
Za poruku poslije kicka: to je novo uvedeno u 0.3x verziji SA:MP-a i svaka poruka poslana neposredno prije Kick() funkcije neće bit poslana. Zato moraš napraviti jedan timer koji će se izvršiti recimo za 1 sekundu i u njoj kickat igrača, a u liniji prije pokretanja timera staviš da pošalje poruku igraču vezano uz kick.

Što se tiče spawn gumba i ostalog oko toga, moraš koristit TogglePlayerSpectating() u OnPlayerConnect callbacku, a da igrača odmah spawnaš koristi odmah poslije logina SpawnPlayer() funkciju.
Naslov: Odg: [POMOC]Netačan password
Poruka od: V_More poslato Jul 23, 2013, 19:01:31 POSLE PODNE
Da radim sa SetTimer ili kako, jer ako radmi sa SetTimer onda će mi tražiti dole u funkciji ono playerid, a ne znam kako u funkciju da ga proslijedim ?

A to TogglePlayerSpectating() to ako pozovem u OnPlayerConnect callbacku i ako imam više dijaloga on će i nakon toga ostati ono bez te dugmadi ili ? A SpawnPlayer anravno to je već namešteno tako da u LoginPlayer() bude spawnan ako upiše tačan passwor što sada radi.
Naslov: Odg: [POMOC]Netačan password
Poruka od: V_More poslato Jul 24, 2013, 14:35:01 POSLE PODNE
Rešio sam ovo za dugmad, a za poruku ne, ovaj timer kako onda treba biti ?

SetTimer("kickujigraca(playerid)" ... ili SetTimer("kickujigraca[MAX_PLAYERS] .. ?
Naslov: Odg: [POMOC]Netačan password
Poruka od: caupton poslato Jul 24, 2013, 15:57:38 POSLE PODNE
Kao sto ti je Joey_ reko odradi da posalje poruku,pa onda timer da pozoves koji ce kick igraca za 1 sec.
Primer:
SetTimerEx("KickIgraca",1000,false,"i",playerid);


forward KickIgraca(playerid);
public KickIgraca(playerid)
{
        Kick(playerid);
return 1;
}


http://wiki.sa-mp.com/wiki/SetTimerEx
Naslov: Odg: [POMOC]Netačan password
Poruka od: V_More poslato Jul 24, 2013, 19:43:49 POSLE PODNE
Zahvaljujem, sve sam sredio :)

Možete mi samo reći kako da povećam onu distance da mi ono zgrade i svi objekti budu vidljivi sa veće udaljenosti ? :)
Naslov: Odg: [POMOC]Netačan password
Poruka od: Joey_ poslato Jul 24, 2013, 23:09:57 POSLE PODNE
Otvori streamer.inc i naÄ'i liniju:
native CreateDynamicObject(modelid, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz, worldid = -1, interiorid = -1, playerid = -1, Float:streamdistance = 200.0);

I promijeni ovo 200.0 na kraju na udaljenost koju ti želiš i to je to. Ili kod svake linije gdje koristiš CreateDynamicObject() funkciju, na kraju nje staviš: .streamdistance = 200.0
S time da ovo 200.0 promijeniš na svoju udaljenost.
Naslov: Odg: [POMOC]Netačan password
Poruka od: V_More poslato Jul 24, 2013, 23:51:57 POSLE PODNE
Lakše mi je ovako na jednu liniju da promjenim nego na svaku pojedinačno, nego ovo će kočiti server nešto, usporavati ili nema nikakvih posljedica ako povećam ? :)
Naslov: Odg: [POMOC]Netačan password
Poruka od: Joey_ poslato Jul 25, 2013, 00:32:14 PRE PODNE
Ako povećaš onda će se na većem prostoru streamat više objekata. Slobodno povećaj, al' imaj na umu da streamer može stvorit samo do 1000 objekata na jednom mjestu.
Naslov: Odg: [POMOC]Netačan password
Poruka od: V_More poslato Jul 25, 2013, 16:12:43 POSLE PODNE
Stavio sam sad da je 1000.00 ali opet se loše vidi, do kolikomogu maksimum ići, da stavim maksimum pa ako bude uzrokovalo probleme ja ću snižavati.
Naslov: Odg: [POMOC]Netačan password
Poruka od: Joey_ poslato Jul 25, 2013, 16:20:47 POSLE PODNE
300.0 je čist oke udaljenost. Postaj kod da vidim kako si stavio.
Naslov: Odg: [POMOC]Netačan password
Poruka od: V_More poslato Jul 25, 2013, 16:28:24 POSLE PODNE
native CreateDynamicObject(modelid, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz, worldid = -1, interiorid = -1, playerid = -1, Float:streamdistance = 1000.0);

I npr. sad promenio sam sve zgrade oko trga i tek kad doÄ'em kod ulaza na policijski parking vidim onu zgradu koja je ispred mene, ona Å¡to je pored autoputa, koja je nasuprot opÅ¡tine.