Vulva 0 #61 Posted January 2, 2007 Sim eu nunka mexi com programação nem que eu tenha que da uma lida pra poder colocar em ot 7.9 pq eu to loko para abrir mais 100 rotkey nao rola.. Tem como faze uns corre e lança uma pra nois? vlw.. Share this post Link to post
Guest Victor Hugo #62 Posted January 3, 2007 Ow, eu fiz tudo certinho, pelo - eu axo, e deu um erro.. mas tipo eu nao entendi direito quando vc falo "adicione em public", o que seria isso exatamente? Share this post Link to post
Guest EjNs #63 Posted January 3, 2007 #Victor Hugo Após você modificar as Sources você tem que compilar elas, não me pergunte como que eu não sei, só sei que um programa que todos recomendam é o Dev-C++, que pode ser encontrado no link a seguir: Download Dev-C++: ttp://www.bloodshed.net/dev/devcpp.html (Retirei do Topico do DarkIgor) Agora vou a minha duvida xD. Tem como eu após compilar as sources eu adicionar no Config.Lua algum comando para eu poder Ativar/Desativar as Hotkeys por lá? Desde já grato. Share this post Link to post
Guest Victor Hugo #64 Posted January 3, 2007 Originally posted by EjNs #Victor Hugo Após você modificar as Sources você tem que compilar elas, não me pergunte como que eu não sei, só sei que um programa que todos recomendam é o Dev-C++, que pode ser encontrado no link a seguir: Download Dev-C++: ttp://www.bloodshed.net/dev/devcpp.html (Retirei do Topico do DarkIgor) Agora vou a minha duvida xD. Tem como eu após compilar as sources eu adicionar no Config.Lua algum comando para eu poder Ativar/Desativar as Hotkeys por lá? Desde já grato. #EjNs Kara, o que vc disse nao tem nada a ver com a minha dúvida, mas blz... ->Seguinte, eu fiz todo o processo de novo, e o erro que deu foi nessa função: Item* Player::getHotkeyItem(uint16_t itemId, uint8_t itemType) { std::list<const Container*> listContainer; ItemList::const_iterator cit; Container* tmpContainer = NULL; Item* item = NULL; for(int i = SLOT_FIRST; i < SLOT_LAST; i++){ if(item = inventory[i]){ if(item->getClientID() == itemId){ if(item->isFluidContainer() && fluidMap[item->getFluidType()] == itemType){ return item; } else if(!item->isFluidContainer()){ return item; } } if(tmpContainer = item->getContainer()){ listContainer.push_back(tmpContainer); } } } while(listContainer.size() > 0){ const Container* container = listContainer.front(); listContainer.pop_front(); for(cit = container->getItems(); cit != container->getEnd(); ++ cit){ if((*cit)->getClientID() == itemId){ if((*cit)->isFluidContainer() && fluidMap[(*cit)->getFluidType()] == itemType){ return (*cit); } else if(!(*cit)->isFluidContainer()){ return (*cit); } } if(tmpContainer = (*cit)->getContainer()){ listContainer.push_back(tmpContainer); } } } return NULL; } uint32_t Player::getTotalCharges(uint16_t itemId) const { std::list<const Container*> listContainer; ItemList::const_iterator cit; Container* tmpContainer = NULL; Item* item = NULL; uint32_t charges = 0; for(int i = SLOT_FIRST; i < SLOT_LAST; i++){ if(item = inventory[i]){ if(item->getID() == itemId){ if(item->isRune()){ charges += item->getItemCharge(); } if(tmpContainer = item->getContainer()){ listContainer.push_back(tmpContainer); } } } while(listContainer.size() > 0){ listContainer.pop_front(); const Container* container = listContainer.front(); for(cit = container->getItems(); cit != container->getEnd(); ++cit){ if((*cit)->isRune()){ charges += (*cit)->getItemCharge(); } } if(tmpContainer = (*cit)->getContainer()){ listContainer.push_back(tmpContainer); } } } return charges; } na qual voce pediu para colocar no final do arquivo player.cpp, como voce nao especificou o que seria esse final, eu puis depois do ultimo "}". Se eu fiz errado, me avise. O erro que deu foi o seguinte: C:\~\otserv\player.cpp In member function `Item* Player::getHotkeyItem(uint16_t, uint8_t)': 2960 C:\~\otserv\player.cpp `fluidMap' undeclared (first use this function) /* Na linha: if(item->isFluidContainer() && fluidMap[item->getFluidType()] == itemType){*/ (Each undeclared identifier is reported only once for each function it appears in.) C:\~\otserv\Makefile.win [build Error] [player.o] Error 1 Share this post Link to post
Guest EjNs #65 Posted January 3, 2007 Ow, eu fiz tudo certinho, pelo - eu axo, e deu um erro.. mas tipo eu nao entendi direito quando vc falo "adicione em public", o que seria isso exatamente? Eu não estava tentando tirar a sua duvida, mesmo porque você não tinha postado qual era o erro, eu estava somente monstrando que adicionar em public que pelo o que um amigo me disse é compilar as Sources...Não tenho certeza se é isso pois to começando agora tambem, mas acho que é sim. Abraços Share this post Link to post
Guest Victor Hugo #66 Posted January 3, 2007 #EjNs Kara, adicionar em public n eh compilar as sources... eu descobri o que ele quis dizer, na verdade que em player.h, em baxo de "public" ou em baxo de onde esta escrito "public:" era pra por o code que ele passou... cuidado para nao flar coisas erradas cara.. flw! to esperando minha resposta xD Share this post Link to post
punkndisaster 0 #67 Posted January 3, 2007 @ Victor Hugo Vá em Networkmessage.cpp logo após os includes vc vai encontrar long fluidMap[] = {FLUID_EMPTY_1, FLUID_BLUE_1, FLUID_RED_1, FLUID_BROWN_1, FLUID_GREEN_1, FLUID_YELLOW_1, FLUID_WHITE_1, FLUID_PURPLE_1}; comente issu ficando assim //long fluidMap[] = {FLUID_EMPTY_1, FLUID_BLUE_1, FLUID_RED_1, FLUID_BROWN_1, //FLUID_GREEN_1, FLUID_YELLOW_1, FLUID_WHITE_1, FLUID_PURPLE_1}; Agora vá em player.h e após os includes coloque issu: #include "networkmessage.h" const long fluidMap[] = {FLUID_EMPTY_1, FLUID_BLUE_1, FLUID_RED_1, FLUID_BROWN_1, FLUID_GREEN_1, FLUID_YELLOW_1, FLUID_WHITE_1, FLUID_PURPLE_1, FLUID_RED_2, FLUID_BROWN_2, FLUID_PURPLE_2}; É issu se der erro avise. Share this post Link to post
Guest EjNs #68 Posted January 3, 2007 #Victor Hugo Sussa tambem não entendo nada, só falei o que um amigo me disse mas um dia aprendo tambem valeu ai xD Share this post Link to post
Guest gunbaleiro #69 Posted January 4, 2007 POw no meu o código aparesse diferente Share this post Link to post
Guest DarLoRk #70 Posted January 7, 2007 n intendi funfa pra darkonia????7.81? eskeci de fala ....... eu uso xml e o meu n tem esse tal de cpp no fim.... alguem me ajuda........ Share this post Link to post
Guest Zeh'Piken0u #71 Posted January 7, 2007 pow manero vlw! pow soh q depois eu terei pois meu serv eh pvp-enforced ai fik dificil de um matar o otro mas vlw belo trabalho Share this post Link to post
Guest tibiaa4e #72 Posted January 7, 2007 Axo o o rappa devia postar as correções Por que esse codigo é muito util msm para os ots flws Share this post Link to post
Lithium o original 0 #73 Posted January 11, 2007 ta bugado esse code la na parte de game.cpp tem muitos erros no script Share this post Link to post
Vitor Terrível 0 #74 Posted January 13, 2007 Originally posted by Muzode. Desculpa a pergunta besta mais eh q eu nao sei mecher muito bem nisso eu fiz tudo certinho ... Oq eh public ??? Vlw ae //Muzode -- Edited -- Eu tambem queria saber depois q eu fiz td como q eu faço pra da rebuild all ? ele da um erro ak se tiver algum tutorial ai vlws Execute -> Rebuild All. Public é uma área de acesso das variáveis ué. Share this post Link to post
Vitor Terrível 0 #75 Posted January 13, 2007 Originally posted by Rappa Carnaúba Reefe, irei ver isso segunda feira e fixo isso....obrigado... ------ Edited ----- @Reefe tente usar isto.... uint32_t Player::getTotalCharges(Cylinder* cylinder) const { if(cylinder == NULL) return 0; std::list<Container*> listContainer; ItemList::const_iterator it; Container* tmpContainer = NULL; Thing* thing = NULL; Item* item = NULL; uint32_t charges = 0; for(int i = cylinder->__getFirstIndex(); i < cylinder->__getLastIndex(); ++i){ if(!(thing = cylinder->__getThing(i))) continue; if(!(item = thing->getItem())) continue; if(tmpContainer = item->getContainer()){ listContainer.push_back(tmpContainer); } else{ if(item->isRune()){ charges += item->getItemCharge(); } } } while(listContainer.size() > 0) { Container* container = listContainer.front(); listContainer.pop_front(); for(it = container->getItem(); it != container->getEnd(); ++it) { Item* item = (*it); if(listContainer = item->getContainer()){ listContainer.push_back(tmpContainer); } else{ if(item->isRune()){ charges += item->getItemCharges(); } } } return charges; } Fiz isso de cabeça agora....me baseando na funcão getMoney da CVS Claro que esse código só não está mais errado porque não foi o Honux (hihihihi) que escreveu. E o código está horrível ineficiente e inútil, então esperem nós fazermos pra vocês (Não que eu esteja esperando algo muito melhor do SVN, eles andam terríveis ultimamente). PS: Obviamente aquilo sobre o honux foi brincadeira. Share this post Link to post
Jackson Zani 1 #77 Posted February 9, 2007 rappa mandando bem nos codes valeu! Share this post Link to post
Jackson Zani 1 #78 Posted February 9, 2007 rappa mandando bem nos codes valeu! Share this post Link to post
FenixAdm 0 #79 Posted April 21, 2007 Kra muito legal mais..... ONDE COLOCA PRA IR EM GAME.CPP =/ Share this post Link to post
mateus FBP 0 #80 Posted January 1, 2008 gente alguem me ajuda naun consigo abri meu otserv fis mais n abre n sei oq e ajuda aew plz Share this post Link to post