sscanf warning: 'z' is deprecated, consider using 'S' instead.
#1

This is commands always show warning sscanf...
can help?

PHP код:

CMD
:editbiz(playeridparams[])
{
    new 
Usage[128], idstring128 ];
    if( 
sscanfparams"dz"idUsage) )
    {
        if( 
PlayerInfo[playerid][pAdmin] >= 9)
        {
            
SendClientMessageplayeridCOLOR_WHITE"USAGE: /movebiz [businessid] [name]" );
            
SendClientMessageplayeridCOLOR_GREY"Available Names: Exterior, Interior" );
        }
    }
    else
    {
        if( 
PlayerInfo[playerid][pAdmin] >= 9)
        {
            
formatstringsizeof( string ), "Businesses/Business_%d.ini"id);
            if(
strcmp(Usage"exterior"true) == )
            {
                if(!
dini_Exists(string))
                {
                    
SendClientMessageplayeridCOLOR_GREY"Invalid Business ID!" );
                    return 
1;
                }
                else
                {
                    
BizzInfo[id][bExteriorID] = GetPlayerInteriorplayerid );
                    
GetPlayerPosplayeridBizzInfo[id][bEntranceX], BizzInfo[id][bEntranceY], BizzInfo[id][bEntranceZ]);
                    if(
BizzInfo[id][bOwned] == 1)
                    {
                        new 
id;
                        
DestroyDynamicPickup(BizzInfo[id][bPickupID]);
                        
DestroyDynamic3DTextLabel(business1[id]);
                        
BizzInfo[id][bPickupID] = CreateDynamicPickup(1913323BizzInfo[id][bEntranceX], BizzInfo[id][bEntranceY], BizzInfo[id][bEntranceZ], 0, -1, -1150.0 );
                        
format(stringsizeof(string), "{FF0000}[%s]\n"YELLOW_E"Owner: %s\n"GREEN_E"%s\n"YELLOW_E"Status : %s\n"GREEN_E"Bizz ID: %d",BT(id), BizzInfo[i][bOwner], BizzInfo[i][bMessage],BL(id),i);
                        
business1[id] = CreateDynamic3DTextLabel(stringCOLOR_WHITEBizzInfo[id][bEntranceX], BizzInfo[id][bEntranceY], BizzInfo[id][bEntranceZ]+0.75,10.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,0,-1,-1100.0);
                    }
                    else
                    {
                        
DestroyDynamicPickup(BizzInfo[id][bPickupID]);
                        
DestroyDynamic3DTextLabel(business2[id]);
                        
BizzInfo[id][bPickupID] = CreateDynamicPickup(1913323BizzInfo[id][bEntranceX], BizzInfo[id][bEntranceY], BizzInfo[id][bEntranceZ], 0, -1, -1150.0 );
                        
format(stringsizeof(string), "{FF0000}[%s Dijual]\n"YELLOW_E"Harga: $%d\n"GREEN_E"Level: %d\n"YELLOW_E"Bizz ID: %d\n((/buybiz)) "BT(id),BizzInfo[id][bBuyPrice],BizzInfo[id][bLevelNeeded], id);
                        
business2[id] = CreateDynamic3DTextLabel(stringCOLOR_WHITEBizzInfo[id][bEntranceX], BizzInfo[id][bEntranceY], BizzInfo[id][bEntranceZ]+0.75,10.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,0,-1,-1100.0);
                    }
                    
SendClientMessageplayeridCOLOR_WHITE"Exterior changed!" );
                    
SaveBusiness(id);
                }
            }
            else if(
strcmp(Usage"interior"true) == )
            {
                if(!
dini_Exists(string))
                {
                    
SendClientMessageplayeridCOLOR_GREY"Invalid Business ID!" );
                    return 
1;
                }
                else
                {
                    
GetPlayerPosplayeridBizzInfo[id][bExitX], BizzInfo[id][bExitY], BizzInfo[id][bExitZ]);
                    
BizzInfo[id][bInteriorID] = GetPlayerInteriorplayerid );
                    
SendClientMessageplayeridCOLOR_WHITE"Interior changed!" );
                    
SaveBusiness(id);
                }
            }
        }
    }
    return 
1;

PHP код:
[03:13:55] [zcmd] [Dandy Corleone]: /editbiz
[03:14:05] [zcmd] [Dandy Corleone]: /editbiz 41 exterior
[03:14:05sscanf warning'z' is deprecatedconsider using 'S' instead.
[
03:14:05sscanf warningNo default value found.
[
03:14:05sscanf warningStrings without a length are deprecatedplease add a destination size.
[
03:14:14] [zcmd] [Dandy Corleone]: /editbiz 41 exterior
[03:14:14sscanf warning'z' is deprecatedconsider using 'S' instead.
[
03:14:14sscanf warningNo default value found.
[
03:14:14sscanf warningStrings without a length are deprecatedplease add a destination size.
[
03:14:20] [zcmd] [Dandy Corleone]: /clearbiz
[03:14:23] [zcmd] [Dandy Corleone]: /clearbiz 0 3 
Reply
#2

Try this. The error explains all.

PHP код:
CMD:editbiz(playeridparams[]) 

    new 
Usage[128], idstring128 ]; 
    if( 
sscanfparams"ds[128]"idUsage) ) 
    { 
        if( 
PlayerInfo[playerid][pAdmin] >= 9
        { 
            
SendClientMessageplayeridCOLOR_WHITE"USAGE: /movebiz [businessid] [name]" ); 
            
SendClientMessageplayeridCOLOR_GREY"Available Names: Exterior, Interior" ); 
        } 
    } 
    else 
    { 
        if( 
PlayerInfo[playerid][pAdmin] >= 9
        { 
            
formatstringsizeof( string ), "Businesses/Business_%d.ini"id); 
            if(
strcmp(Usage"exterior"true) == 
            { 
                if(!
dini_Exists(string)) 
                { 
                    
SendClientMessageplayeridCOLOR_GREY"Invalid Business ID!" ); 
                    return 
1
                } 
                else 
                { 
                    
BizzInfo[id][bExteriorID] = GetPlayerInteriorplayerid ); 
                    
GetPlayerPosplayeridBizzInfo[id][bEntranceX], BizzInfo[id][bEntranceY], BizzInfo[id][bEntranceZ]); 
                    if(
BizzInfo[id][bOwned] == 1
                    { 
                        new 
id
                        
DestroyDynamicPickup(BizzInfo[id][bPickupID]); 
                        
DestroyDynamic3DTextLabel(business1[id]); 
                        
BizzInfo[id][bPickupID] = CreateDynamicPickup(1913323BizzInfo[id][bEntranceX], BizzInfo[id][bEntranceY], BizzInfo[id][bEntranceZ], 0, -1, -1150.0 ); 
                        
format(stringsizeof(string), "{FF0000}[%s]\n"YELLOW_E"Owner: %s\n"GREEN_E"%s\n"YELLOW_E"Status : %s\n"GREEN_E"Bizz ID: %d",BT(id), BizzInfo[i][bOwner], BizzInfo[i][bMessage],BL(id),i); 
                        
business1[id] = CreateDynamic3DTextLabel(stringCOLOR_WHITEBizzInfo[id][bEntranceX], BizzInfo[id][bEntranceY], BizzInfo[id][bEntranceZ]+0.75,10.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,0,-1,-1100.0); 
                    } 
                    else 
                    { 
                        
DestroyDynamicPickup(BizzInfo[id][bPickupID]); 
                        
DestroyDynamic3DTextLabel(business2[id]); 
                        
BizzInfo[id][bPickupID] = CreateDynamicPickup(1913323BizzInfo[id][bEntranceX], BizzInfo[id][bEntranceY], BizzInfo[id][bEntranceZ], 0, -1, -1150.0 ); 
                        
format(stringsizeof(string), "{FF0000}[%s Dijual]\n"YELLOW_E"Harga: $%d\n"GREEN_E"Level: %d\n"YELLOW_E"Bizz ID: %d\n((/buybiz)) "BT(id),BizzInfo[id][bBuyPrice],BizzInfo[id][bLevelNeeded], id); 
                        
business2[id] = CreateDynamic3DTextLabel(stringCOLOR_WHITEBizzInfo[id][bEntranceX], BizzInfo[id][bEntranceY], BizzInfo[id][bEntranceZ]+0.75,10.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,0,-1,-1100.0); 
                    } 
                    
SendClientMessageplayeridCOLOR_WHITE"Exterior changed!" ); 
                    
SaveBusiness(id); 
                } 
            } 
            else if(
strcmp(Usage"interior"true) == 
            { 
                if(!
dini_Exists(string)) 
                { 
                    
SendClientMessageplayeridCOLOR_GREY"Invalid Business ID!" ); 
                    return 
1
                } 
                else 
                { 
                    
GetPlayerPosplayeridBizzInfo[id][bExitX], BizzInfo[id][bExitY], BizzInfo[id][bExitZ]); 
                    
BizzInfo[id][bInteriorID] = GetPlayerInteriorplayerid ); 
                    
SendClientMessageplayeridCOLOR_WHITE"Interior changed!" ); 
                    
SaveBusiness(id); 
                } 
            } 
        } 
    } 
    return 
1

Reply
#3

That's because "z" specifier is no longer available. It states you should use "S" specifier for optional strings and reading the documentation in sscanf thread (something you should have done already), you'd see how you can use it.

Looking at your code, you don't even need an optional string as the player should give if they want interior or exterior. Use normal string specifier ("s[size_here]" specifier).
Reply
#4

ahh.. i see, thanks for helping
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)