[Ajuda] Comando nгo estб executando completamente
#1

E aн galera, eu estou botando um sistema aqui na minha GM, quando eu me deparei com esse bug, o comado nгo executa totalmente.

Bug: Eu digito o comando '/criarcctv [descriзгo]', ele cria o objeto, porйm nгo realiza mais nenhuma funзгo, print no console que eu botei para testar, mensagem no chat, funзгo de editar o objeto, nada mesmo!
Код:
CMD:criarcctv(playerid, params[])
{
	if(PlayerData[playerid][pAdmin] < 5)
		return SendErrorMessage(playerid, "Vocк nгo tem permissгo para usar esse comando.");
		
	new objectid, string[150], interior, name[30], Float:X, Float:Y, Float:Z;
	if(sscanf(params,"s[256]", name)) return SendSyntaxMessage(playerid, "/criarcctv [Descriзгo]");
	GetPlayerPos(playerid, X, Y, Z);
	interior = GetPlayerInterior(playerid);
	objectid = CreateDynamicObject(1616, X, Y, Z, 0.0, 0.0, 0.0, -1, -1, -1, 200.0);
	CCTVInfo[objectid][tvPosX] = X;
	CCTVInfo[objectid][tvPosY] = Y;
	CCTVInfo[objectid][tvPosZ] = Z;
	CCTVInfo[objectid][tvPosRX] = 0.0;
	CCTVInfo[objectid][tvPosRY] = 0.0;
	CCTVInfo[objectid][tvPosRZ] = 0.0;
	CCTVInfo[objectid][tvObjectOn] = 1;
	CCTVInfo[objectid][tvInterior] = interior;
	CCTVInfo[objectid][tvVirtualWorld] = GetPlayerVirtualWorld(playerid);
	format(CCTVInfo[objectid][tvName], 256, "%s", name);
	CCTVInfo[objectid][tvObject] = objectid;
	AddCameraToFile(objectid, interior, GetPlayerVirtualWorld(playerid), X, Y, Z, name);
	print("Executado2");
	SetPVarInt(playerid, "EditingCCTV", 1);
	SetPVarInt(playerid, "ObjectEditing", objectid);
	EditDynamicObject(playerid, CCTVInfo[objectid][tvObject]);
	format(string, sizeof(string), "Uma nova CCTV dinвmica foi adicionada, [Descriзгo: %s]", CCTVInfo[objectid][tvName]);
	SendAdminAlert(COLOR_LIGHTRED, string);
	return 1;
}
Reply
#2

o erro estб aqui:

PHP код:
    new objectidstring[150], interiorname[30], Float:XFloat:YFloat:Z;
    if(
sscanf(params,"s[256]"name)) return SendSyntaxMessage(playerid"/criarcctv [Descriзгo]"); 
Vocк criou uma array com 30 cйlulas, na funзгo sscanf vocк estб querendo armazenar 256 cйlulas nela.
Reply
#3

Valeu.. vou testar aqui.
Reply
#4

Continuou bugado.
Reply
#5

Tente:

pawn Код:
CMD:criarcctv(playerid, params[])
{
    if(PlayerData[playerid][pAdmin] < 5)
        return SendErrorMessage(playerid, "Vocк nгo tem permissгo para usar esse comando.");

    new objectid, string[150], interior, name[30], Float:X, Float:Y, Float:Z;
    if(sscanf(params,"s[256]", name)) return SendSyntaxMessage(playerid, "/criarcctv [Descriзгo]");
    GetPlayerPos(playerid, X, Y, Z);
    interior = GetPlayerInterior(playerid);
    objectid = CreateDynamicObject(1616, X, Y, Z, 0.0, 0.0, 0.0, -1, -1, -1, 200.0);
    CCTVInfo[objectid][tvPosX] = X;
    CCTVInfo[objectid][tvPosY] = Y;
    CCTVInfo[objectid][tvPosZ] = Z;
    CCTVInfo[objectid][tvPosRX] = 0.0;
    CCTVInfo[objectid][tvPosRY] = 0.0;
    CCTVInfo[objectid][tvPosRZ] = 0.0;
    CCTVInfo[objectid][tvObjectOn] = 1;
    CCTVInfo[objectid][tvInterior] = interior;
    CCTVInfo[objectid][tvVirtualWorld] = GetPlayerVirtualWorld(playerid);
    format(CCTVInfo[objectid][tvName], 256, "%s", name);
    CCTVInfo[objectid][tvObject] = objectid;
    AddCameraToFile(objectid, interior, GetPlayerVirtualWorld(playerid), X, Y, Z, name);
    print("Executado2");
    SetPVarInt(playerid, "EditingCCTV", 1);
    SetPVarInt(playerid, "ObjectEditing", objectid);
    SetTimerEx("EditDynObject", 1000, false, "ii", playerid, CCTVInfo[objectid][tvObject]);
    format(string, sizeof(string), "Uma nova CCTV dinвmica foi adicionada, [Descriзгo: %s]", CCTVInfo[objectid][tvName]);
    SendAdminAlert(COLOR_LIGHTRED, string);
    return 1;
}

forward EditDynObject(playerid, objectid);
public EditDynObject(playerid, objectid) return EditDynamicObject(playerid, objectid);
Reply
#6

Quote:
Originally Posted by willttoonn
Посмотреть сообщение
Tente:

pawn Код:
CMD:criarcctv(playerid, params[])
{
    if(PlayerData[playerid][pAdmin] < 5)
        return SendErrorMessage(playerid, "Vocк nгo tem permissгo para usar esse comando.");

    new objectid, string[150], interior, name[30], Float:X, Float:Y, Float:Z;
    if(sscanf(params,"s[256]", name)) return SendSyntaxMessage(playerid, "/criarcctv [Descriзгo]");
    GetPlayerPos(playerid, X, Y, Z);
    interior = GetPlayerInterior(playerid);
    objectid = CreateDynamicObject(1616, X, Y, Z, 0.0, 0.0, 0.0, -1, -1, -1, 200.0);
    CCTVInfo[objectid][tvPosX] = X;
    CCTVInfo[objectid][tvPosY] = Y;
    CCTVInfo[objectid][tvPosZ] = Z;
    CCTVInfo[objectid][tvPosRX] = 0.0;
    CCTVInfo[objectid][tvPosRY] = 0.0;
    CCTVInfo[objectid][tvPosRZ] = 0.0;
    CCTVInfo[objectid][tvObjectOn] = 1;
    CCTVInfo[objectid][tvInterior] = interior;
    CCTVInfo[objectid][tvVirtualWorld] = GetPlayerVirtualWorld(playerid);
    format(CCTVInfo[objectid][tvName], 256, "%s", name);
    CCTVInfo[objectid][tvObject] = objectid;
    AddCameraToFile(objectid, interior, GetPlayerVirtualWorld(playerid), X, Y, Z, name);
    print("Executado2");
    SetPVarInt(playerid, "EditingCCTV", 1);
    SetPVarInt(playerid, "ObjectEditing", objectid);
    SetTimerEx("EditDynObject", 1000, false, "ii", playerid, CCTVInfo[objectid][tvObject]);
    format(string, sizeof(string), "Uma nova CCTV dinвmica foi adicionada, [Descriзгo: %s]", CCTVInfo[objectid][tvName]);
    SendAdminAlert(COLOR_LIGHTRED, string);
    return 1;
}

forward EditDynObject(playerid, objectid);
public EditDynObject(playerid, objectid) return EditDynamicObject(playerid, objectid);
Continua bugado.
Reply
#7

Nгo testei, esto migrando para o Linux e estou sem GTA. Apуs que compilar, mande-me oque apresentou no server.log.




PHP код:

CMD
:criarcctv(playeridparams[])
{
    if(
PlayerData[playerid][pAdmin] < 5)
        return 
SendErrorMessage(playerid"Vocк nгo tem permissгo para usar esse comando.");
        
    new 
        
name[30]
    ;

    if(
sscanf(params,"s[30]"name)) 
            return 
SendSyntaxMessage(playerid"/criarcctv [Descriзгo]");
    
    new 
        
objectidstring[128], interiorFloat:XFloat:YFloat:Z
    
;

    
GetPlayerPos(playeridXYZ);


    
interior GetPlayerInterior(playerid);
    
objectid CreateDynamicObject(1616XYZ0.00.00.0, -1, -1, -1200.0);


        
printf("Estamos tentando acessar o objeto ID:%i na array CCTVInfo"objectid);
    
CCTVInfo[objectid][tvPosX] = X;
    
CCTVInfo[objectid][tvPosY] = Y;
    
CCTVInfo[objectid][tvPosZ] = Z;
    
CCTVInfo[objectid][tvPosRX] = 0.0;
    
CCTVInfo[objectid][tvPosRY] = 0.0;
    
CCTVInfo[objectid][tvPosRZ] = 0.0;
    
CCTVInfo[objectid][tvObjectOn] = 1;
    
CCTVInfo[objectid][tvInterior] = interior;
    
CCTVInfo[objectid][tvVirtualWorld] = GetPlayerVirtualWorld(playerid);
    
CCTVInfo[objectid][tvObject] = objectid;

    
format(CCTVInfo[objectid][tvName], 30"%s"name);

    
    
AddCameraToFile(objectidinteriorGetPlayerVirtualWorld(playerid), XYZname);

    print(
"Executado2");

    
SetPVarInt(playerid"EditingCCTV"1);
    
SetPVarInt(playerid"ObjectEditing"objectid);

    
EditDynamicObject(playeridCCTVInfo[objectid][tvObject]);

    
    
format(stringsizeof(string), "Uma nova CCTV dinвmica foi adicionada, [Descriзгo: %s]"CCTVInfo[objectid][tvName]);
    
SendAdminAlert(COLOR_LIGHTREDstring);
    return 
1;

Reply
#8

Quote:
Originally Posted by zSuYaNw
Посмотреть сообщение
Nгo testei, esto migrando para o Linux e estou sem GTA. Apуs que compilar, mande-me oque apresentou no server.log.




PHP код:

CMD
:criarcctv(playeridparams[])
{
    if(
PlayerData[playerid][pAdmin] < 5)
        return 
SendErrorMessage(playerid"Vocк nгo tem permissгo para usar esse comando.");
        
    new 
        
name[30]
    ;
    if(
sscanf(params,"s[30]"name)) 
            return 
SendSyntaxMessage(playerid"/criarcctv [Descriзгo]");
    
    new 
        
objectidstring[128], interiorFloat:XFloat:YFloat:Z
    
;
    
GetPlayerPos(playeridXYZ);
    
interior GetPlayerInterior(playerid);
    
objectid CreateDynamicObject(1616XYZ0.00.00.0, -1, -1, -1200.0);
        
printf("Estamos tentando acessar o objeto ID:%i na array CCTVInfo"objectid);
    
CCTVInfo[objectid][tvPosX] = X;
    
CCTVInfo[objectid][tvPosY] = Y;
    
CCTVInfo[objectid][tvPosZ] = Z;
    
CCTVInfo[objectid][tvPosRX] = 0.0;
    
CCTVInfo[objectid][tvPosRY] = 0.0;
    
CCTVInfo[objectid][tvPosRZ] = 0.0;
    
CCTVInfo[objectid][tvObjectOn] = 1;
    
CCTVInfo[objectid][tvInterior] = interior;
    
CCTVInfo[objectid][tvVirtualWorld] = GetPlayerVirtualWorld(playerid);
    
CCTVInfo[objectid][tvObject] = objectid;
    
format(CCTVInfo[objectid][tvName], 30"%s"name);
    
    
AddCameraToFile(objectidinteriorGetPlayerVirtualWorld(playerid), XYZname);
    print(
"Executado2");
    
SetPVarInt(playerid"EditingCCTV"1);
    
SetPVarInt(playerid"ObjectEditing"objectid);
    
EditDynamicObject(playeridCCTVInfo[objectid][tvObject]);
    
    
format(stringsizeof(string), "Uma nova CCTV dinвmica foi adicionada, [Descriзгo: %s]"CCTVInfo[objectid][tvName]);
    
SendAdminAlert(COLOR_LIGHTREDstring);
    return 
1;

[13:31:48] Estamos tentando acessar o objeto ID:3852 na array CCTVInfo.

@edit
A funзгo de editar nгo funcionou, e tambйm o SendAdminAlert, nгo aconteceu nada disso.
Reply
#9

Poste a declaraзгo da variбvel CCTVInfo.
Reply
#10

Quote:
Originally Posted by zSuYaNw
Посмотреть сообщение
Poste a declaraзгo da variбvel CCTVInfo.
Код:
enum cctvInfo
{
    tvID,
    Float:tvPosX,
    Float:tvPosY,
    Float:tvPosZ,
    Float:tvPosRX,
    Float:tvPosRY,
    Float:tvPosRZ,
    tvInterior,
    tvVirtualWorld,
    tvName,
    tvObjectOn,
    tvObject
}
new CCTVInfo[MAX_OBJECTS][cctvInfo];
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)