PE

Duvida sobre um script

Por pedrowarlock, 01 de fev. de 2013 em Resolvidos

script
8
1.4k
01 de fevereiro de 2013 às 15:33

Eu estou usando tfs 0.3 e quando eu tento compilar com essas modificações da erro na compilação:

 

 

std::string valor31 = "31";

uint32_t stPlayerID = player->getID();

uint32_t stLeaderID = leader->getID(); //tentei getGUID() e não funcionou

leader->setStorage(93000,valor31);

leader->setStorage(93001,stPlayerID); //<-- Essa linha

player->setStorage(93002,stLeaderID); //<-- Essa linha

}

OneshotO
01 de fevereiro de 2013 às 20:01

Antes de tudo, movido para Pedidos e dúvidas - Programação.

 

Você declarou player e leader, por acaso?

02 de fevereiro de 2013 às 01:19

Sim sim. estão declaradas

 

 

 

258 C:\ERONDINO 12\Server Sources Poketibia Erondino Site\Server Sources revised v1.0\party.cpp initializing argument 1 of `std::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>]'

 

 

 

ERRO+COMPILER.JPG

Editado Fevereiro 2 por pedrowarlock

RicardoIanelliR
05 de fevereiro de 2013 às 23:40

Tenta assim:

 

std::stringstream valor;
valor << 31;
uint32_t stPlayerID = player->getID();
uint32_t stLeaderID = leader->getID();  //tentei getGUID() e não funcionou
leader->setStorage((uint32_t)93000, valor.str());
leader->setStorage((uint32_t)93001,stPlayerID);  //<-- Essa linha
player->setStorage((uint32_t)93002,stLeaderID);  //<-- Essa linha

06 de fevereiro de 2013 às 02:32

Não funcionou...Essa parte que você mudificou está certa. O erro está aqui:

 

	uint32_t stPlayerID = player->getID();
uint32_t stLeaderID = leader->getID();
leader->setStorage(93001,stPlayerID);
player->setStorage(93002,stLeaderID);

 

Se eu compilar com essa penultima e utima linha da esse erro:

 

 

 

 

 

 

\party.cpp invalid conversion from `uint32_t' to `const char*'

\party.cpp initializing argument 1 of `std::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>]'

Editado Fevereiro 7 por pedrowarlock

RicardoIanelliR
06 de fevereiro de 2013 às 10:46

Ah sim, desculpa, achei que fosse esse o problema, mas agora vi realmente o que é kkkk

Ontem olhei com sono, isso que dá.

 

O problema é que a setStorage recebe como parâmetro um uint32_t e uma string, e você tá passando duas uint32_t.

Tem que converter ^^

 

Muda isso:

 

 

uint32_t stPlayerID = player->getID();

uint32_t stLeaderID = leader->getID();

leader->setStorage(93001,stPlayerID);

player->setStorage(93002,stLeaderID);

 

Pra isso:

 

 

std::stringstream stPlayerID;

std::stringstream stLeaderID;

 

stPlayerID << (uint64_t)player->getID();

stLeaderID<< (uint64_t)leader->getID();

leader->setStorage(93001,stPlayerID.str());

player->setStorage(93002,stLeaderID.str());

Editado Fevereiro 6 por RicardoIanelli

07 de fevereiro de 2013 às 21:55

Funcionou! Brigadão!

SlicerS
07 de fevereiro de 2013 às 22:56

sanado, movido