Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
  • 0

ExploiTT
 Compartilhar

Pergunta

É necessário se cadastrar para acessar o conteúdo.

 

Estou tendo erro com a varivel "put", exemplo quando eu uso o comando "/item" apenas assim "/item 2370" não recebo o erro mas após eu usar assim "/item 2370 2 120 3 120 43 9" recebo a seguinte mensagem na "TMSRV" - stack around the variable "put" corrupted c++, alguem pode me dar uma ajuda?

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
olha nao entende de programação mas pelo menos as source que tenho aqui

os adicionais nao são colocados ai :2 120 3 120 43 9

Os adicionais só dei como exemplo porque tipo quando é feito o item com adicional da erro na variavel entendeu?

Link para o comentário
Compartilhar em outros sites

  • 0

Nesse caso seria interessante voce fazer o scanf em variáveis separadas, através de um if verificando se todos os valores foram atribuídos, e após isso transferir as variáveis para a struct do item, e por fim p PutItem

 

Mais ou menos isso:

 

#define m_index 0

#define m_ef1 1

#define m_efv1 2

#define m_ef2 3

#define m_efv2 4

#define m_ef3 5

#define m_efv3 6

#define MAX_ITEMLIST 6500

#define MAX_ITEMEFFECT 127

#define MAX_ITEMVALUE 255

 

int ItemData[7];

int Size = sizeof(ItemData) / sizeof(int);

 

STRUCT_ITEM put;

memset(&put, 0, sizeof(STRUCT_ITEM));

 

if(scanf_s(packet->Msg, "%d %d %d %d %d %d %d", &ItemData[m_index], &ItemData[m_ef1], &ItemData[m_efv1],

&ItemData[m_ef2], &ItemData[m_efv2], &ItemData[m_ef3],

&ItemData[m_efv3]) == Size)

{

if(ItemData[m_index] < 0 || ItemData[m_ef1] > MAX_ITEMLIST)

return;

 

if(ItemData[m_ef1] < 0 || ItemData[m_ef1] > MAX_ITEMEFFECT)

return;

 

if(ItemData[m_efv1] < 0 || ItemData[m_efv1] > MAX_ITEMVALUE)

return;

 

if(ItemData[m_ef2] < 0 || ItemData[m_ef2] > MAX_ITEMEFFECT)

return;

 

if(ItemData[m_efv2] < 0 || ItemData[m_efv2] > MAX_ITEMVALUE)

return;

 

if(ItemData[m_ef3] < 0 || ItemData[m_ef3] > MAX_ITEMEFFECT)

return;

 

if(ItemData[m_efv3] < 0 || ItemData[m_efv3] > MAX_ITEMVALUE)

return;

 

put.sIndex = ItemData[m_index];

put.EF1 = ItemData[m_ef1];

put.EFV1 = ItemData[m_efv1];

put.EF2 = ItemData[m_ef2];

put.EFV2 = ItemData[m_efv2];

put.EF3 = ItemData[m_ef3];

put.EFV3 = ItemData[m_efv3];

 

if(PutItem(connId, &put))

SendClientMessage(connId, "Item adicionado!");

else

SendClientMessage(connId, "Falta espaco no inventario.");

}

else

SendClientMessage(connId, "Coloque todos os adicionais!");

 

 

kraftweerk_body.png

Link para o comentário
Compartilhar em outros sites

  • 0
Nesse caso seria interessante voce fazer o scanf em variáveis separadas, através de um if verificando se todos os valores foram atribuídos, e após isso transferir as variáveis para a struct do item, e por fim p PutItem

 

Mais ou menos isso:

Entendi, sera que pode me adicionar no skype para me ajudar nessa questão? hotkeybr3

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.