Zaključano

Problem - SSCANF WARNING

pre 6 godina
1,316
pregleda
12
postova
Ova tema je zaključana. Samo moderatori i administratori mogu odgovarati.
Hare Brt
Hustler
pre 6 godina
Problem(error/warning): Ovako,imam dva problema..Prvi je taj da kada nekog unbanujem izbacuje mi u konzoli dva warninga

-sscanf warning: Invalid data length.
-sscanf warning: Invalid character in data length.

Dio skripte:
CMD:unban( playerid, const params[] )
{
    if( PlayerInfo[ playerid ][ xAdmin ] >= 3 )
    {
        if( PlayerInfo[ playerid ][ xAdmin ] <= 3 && !AdminDuty[ playerid ] ) return SendErrorMessage( playerid, "Da bi koristili ovu komandu morate biti Admin na duznosti." );
     
        new imeigraca[ MAX_PLAYER_NAME ];
        if( sscanf( params, "s", imeigraca ) ) return SendUsageMessage( playerid, "/unban ");

        new query;
        mysql_format( mSQL, query, sizeof(query), "SELECT `user_id` FROM `banned` WHERE `user_name` = '%e' LIMIT 1", imeigraca );
        mysql_pquery( mSQL, query, "CheckPlayerUnBan", "is", playerid, imeigraca );
    }
    else return SendErrorMessage( playerid, "Niste u mogucnosti koristiti ovu komandu." );
    return(true);
}

Drugi problem je u tome da kad kreiram "poklon" server pukne i mora se rr.Ukoliko neke zna rješenje neka cima , hvala unapred.
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log):
Slika/video ingame problema(obavezno ako je ingame problem): link slike
Ivan_Ino
Kingpin
pre 6 godina
Ne mozes ovo ovako koristiti
"s"


radije
"s" 

ili
sprintf("s[%d]", MAX_PLAYER_NAME)





Quote
Drugi problem je u tome da kad kreiram "poklon" server pukne i mora se rr.Ukoliko neke zna rješenje neka cima , hvala unapred.


Niti nam dao dio koda gdje kreiras nekakav "poklon" ni crashdetect log, ne mozemo znati kakav je tvoj kod, ¯\_(ツ)_/¯
RuKripter
Rookie
pre 6 godina
Za drugi problem pošalji AmxBackTrace a za prvi se ne slažem sa Ino-m jer može #MAX_PLAYER_NAME jer verujem da nisi došao do toga da stavljaš zagrade (  (24)  )
Ivan_Ino
Kingpin
pre 6 godina

#define STR_SIZE 32
new
    str,
    val;
sscanf("hello\\ there 27", "s[" #STR_SIZE "]i", str, val);
RuKripter
Rookie
pre 6 godina
Ja npr koristim (value) pa nmg tako.jpg
Hare Brt
Hustler
pre 6 godina
radije
"s" 


Buraz hvala ti na ovome , radi.

Što se tiče tog "poklona" bukvalno server samo pukne i ništa mi ne izbacuje u logu(crashdetect) , eo cod https://pastebin.com/rknDj8Mp
RahimPAWNO
OG Legend
pre 6 godina
^^ debugaj, pa salji
haris25
Shot Caller
pre 6 godina
sscanf(params, "p<|>isdudududu", ...);
or
sscanf(szFileStr, "p<|>isffffiiiiiiiiiiiiii", ...);
Hare Brt
Hustler
pre 6 godina
Uradio sam printf na svaku od akcija

    #if ZIMSKI_MOD == 0
            new i = 0;
for( new j = 1; j < MAX_PRESENTS; j++ )
{
if( presentsInfo[ j ][ presSQLID ] == -1 )
{
    i = j;
    break;
}
}

printf("akcija 1"); // ovo jedino izbaci u server logu.

if( i != 0 ) return SendErrorMessage( playerid, "Vec je jedan poklon u procesu izgradnje, nije dovrsen, sacekajte(sigurnost baze)." );

i = -1;
for( new j = 1; j < MAX_PRESENTS; i++)
{
    if( presentsInfo[ j ][ presSQLID ] == 0 )
{
i = j;
break;
  }
}

printf("akcija 2");

if( presentsInfo[ (MAX_PRESENTS-1) ][ presSQLID ] != 0 ) return SendErrorMessage( playerid, "Ima maksimalno kreiranih poklona." );

if( presentsInfo != 0 ) return SendErrorMessage( playerid, "ID tog poklona vec postoji." );
printf("akcija 3");
    new Float:x, Float:y, Float:z, Float:angle;
GetPlayerPos( playerid, x, y, z);
GetPlayerFacingAngle( playerid, angle );
presentsInfo[ i ][ presPos ][ 0 ] = x;
presentsInfo[ i ][ presPos ][ 1 ] = y;
  presentsInfo[ i ][ presPos ][ 2 ] = z;
  presentsInfo[ i ][ presPos ][ 3 ] = 0;
    presentsInfo[ i ][ presPos ][ 4 ] = 0;
    presentsInfo[ i ][ presPos ][ 5 ] = 0;
    presentsInfo[ i ][ presTaken ] = false;
presentsInfo[ i ][ presObject ] = CreateDynamicObject( 19054, x+2, y, z+0.6, 0.0, 0.0, angle );

printf("akcija 4");

    Streamer_Update( playerid );
EditDynamicObject( playerid, presentsInfo[ i ][ presObject ] );
EditPresents[ playerid ] = i;
mSQL_CreatePresent( i );
printf("akcija 5"); //
#else
SendErrorMessage( playerid, "Nije ukljucen zimski mod." );
#endif
Danisoni
Godfather
pre 6 godina
Pa šta zadnje printuje prije nego server pukne?
Hare Brt
Hustler
pre 6 godina
printf("akcija 1"); // ovo jedino izbaci u server logu.
Hare Brt
Hustler
pre 6 godina
Bump

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava