ON

Monster Level

Por Oneshot, 30 de out. de 2013 em Linguagens de Programação

oneshot
monster
level
otserv
tibia
script
39
7.8k
KilluaK
31 de outubro de 2013 às 23:34

Muito, muito bom! Rep+

SlicerS
01 de novembro de 2013 às 23:33

talvez me arrependa mas...

 

soh eu achei essa linha estranha?

if(!monster->hideLevel)

ja q quem fica com o hideLevel eh o mType, monsterS.h, e n a classe Monster em si? ;x

02 de novembro de 2013 às 11:25

fui compilar, fiz tudo certinho...

só não encontrei aqui na rev 3884

no arquivo configmanager.h não encontrei "MONSTER_SPAWN_WALKBACK," ai coloquei junto com "FREE_PREMIUM," ai na hora de compilar deu este erro:

C:\ In member function `bool Map::placeCreature(const Position&, Creature*, bool, bool)':

188 C:\ class Monster' has no member named 'hideLevel'

C:\ [build Error] [obj//map.o] Error 1

rohfagundesR
02 de novembro de 2013 às 12:33

fui compilar, fiz tudo certinho...

só não encontrei aqui na rev 3884

no arquivo configmanager.h não encontrei "MONSTER_SPAWN_WALKBACK," ai coloquei junto com "FREE_PREMIUM," ai na hora de compilar deu este erro:

 

C:\ In member function `bool Map::placeCreature(const Position&, Creature*, bool, bool)':

188 C:\ class Monster' has no member named 'hideLevel'

C:\ [build Error] [obj//map.o] Error 1

como o Slicer falou

esse if(!monster->hideLevel)

parece estar errado eu compilei

tirando o hideLevel por level

usei o otx n deu mais erro

mas tb n apareceu level

Nu77N
02 de novembro de 2013 às 12:42

troquem

if(!monster->hideLevel)

por

if(!mType->hideLevel)
SlicerS
02 de novembro de 2013 às 15:32

/\ q eu saiba a classe Map n tem o mType... ;x

 

o certo seria algu como...

bool getHideLevel() { return mType->hideLevel; }

-isso no monster.h neh-

 

e dai...

if(!monster->getHideLevel())

Editado Novembro 2 por Slicer

OneshotO
02 de novembro de 2013 às 15:39

De fato, devo ter deixado algo passar, mas funciona perfeitamente do modo que passei.

 

Enfim, sigam a ideia do Slicer.

 

Abraços.

Nu77N
02 de novembro de 2013 às 16:21
/\ q eu saiba a classe Map n tem o mType... ;x

pdc, pensei que essa parte do codigo estava em monster.cpp :o

04 de novembro de 2013 às 17:12

mudei minha source para rev 3777 (mesma testada no tópico)

fiz as modificações do slicer e agora deu outro erro.

 

monster->getMaster()->getStorage((std::string)"monster_level", value);

 

 

 

C:\devcpp\obj\sources\map.cpp In member function `bool Map::placeCreature(const Position&, Creature*, bool, bool)':

193 C:\devcpp\obj\sources\map.cpp no matching function for call to `Creature::getStorage(std::string, std::string&)'

note C:\devcpp\obj\sources\creature.h:336 candidates are: virtual bool Creature::getStorage(uint32_t, std::string&) cons

C:\devcpp\obj\sources\dev-cpp\Makefile.win [build Error] [obj//map.o] Error 1

 

 

 

oneshot você poderia postar uma source (preferência a rev 3884) com o código para download?

Editado Novembro 4 por lucashgas

rDs7008R
04 de novembro de 2013 às 18:32

Lucas, esse erro ai acontece pois sua distro não suporta o index de storages como string, é só trocar por um inteiro que vai funcionar.

monster->getMaster()->getStorage((uint32_t)numero_da_storage_aqui, value);

Editado Novembro 4 por RicardoSohnn

DodgeManD
04 de novembro de 2013 às 22:07

Alguém conseguiu fazer funcionar isso? Não tem suporte do criador? Parece ser um sistema com inúmeras aplicações quero muito compilar isso

 

"challenge acepted"

MaenilseM
05 de novembro de 2013 às 13:56

esse sistema so tem suporte, ao tfs 0.4 rev3884, ou superior, no mais, nao funciona nos inferiores.

05 de novembro de 2013 às 14:40

Mas como se o autor do código "testou" na rev 3777?

OneshotO
05 de novembro de 2013 às 19:58

Desculpa, pessoal.

 

Estou trabalhando agora e sobra pouco tempo para o fórum, arrumei o erro do hideLevel que não consta de fato no monster.cpp, optei por não usar o modo que o Slicer passou e já atualizei o tópico.

 

Como tem muita gente com dificuldade de compilar, estou disponibilizando as sources trunk.r3777 já com as alterações feitas, "infelizmente", por ser uma trunk.r3777 com muitos bugfixes disponibilizada na OtLand, não é possível compilar ela com Dev-Cpp, apenas com Code::Blocks. Já tem uma compilação GUI na pasta bin/GUI.

 

É só fazer o download abaixo.

 

Dropbox

05 de novembro de 2013 às 20:23

vc poderia postar as source sem modificações ?