Lucasbaragatti 11 Postado Novembro 22, 2011 Share Postado Novembro 22, 2011 (editado) TUTORIAL DUEL SYSTEM PARA POKEMON Passos: (São 6) 1 - Recursos Necessários 2 - Instalar as funções na source 3 - Adicionar os controles na source 4 - Compilar a source 5 - Instalar o controle no servidor 6 - Configurando duelconfig.xml RECURSOS NECESSÁRIOS (DOWNLOADS) StiansDevCppRepack v2 - Clique para baixar KronoX Duel Repack v1.1 - Clique para baixar Ter sua source(distro) em mãos - Download Versão 8.54 - Versões Versão v1.0 : Versão Inicial do sistema Versão v1.1 : Tentativa de correção de bugs no Party.cpp INSTALANDO AS FUNÇÕES NECESSÁRIAS NA SOURCE Abra sua source(distro) no Dev-C++. PS (Se seu SO for windows 7 abra-o como administrador) Vá ao arquivo luascript.cpp Depois da linha: lua_register(m_luaState,"doPlayerJoinParty",LuaScriptInterface::luaDoPlayerJoinParty); Adicione: //doPlayerLeaveParty(cid) lua_register(m_luaState,"doPlayerLeaveParty",LuaScriptInterface::luaDoPlayerLeaveParty); E depois da linha: int32_t LuaScriptInterface::luaDoPlayerJoinParty(lua_State* L) Adicione: int32_t LuaScriptInterface::luaDoPlayerLeaveParty(lua_State* L) { //doPlayerLeaveParty(cid) ScriptEnviroment* env = getEnv(); Player* player = env->getPlayerByUID(popNumber(L)); if(!player) { errorEx(getError(LUA_ERROR_PLAYER_NOT_FOUND)); lua_pushboolean(L, false); } g_game.playerLeaveParty(player->getID()); lua_pushboolean(L, true); return 1; } Após isso abra o arquivo luascript.h Depois da linha: static int32_t luaDoPlayerJoinParty(lua_State* L); Adicione: static int32_t luaDoPlayerLeaveParty(lua_State* L); ADICIONANDO OS CONTROLES NA SOURCE Em seu Dev-C++ com sua source carregada navegue no canto esquerdo até encontrar um arquivo chamado Party.cpp . Clique com o lado direito nesse Party.CPP e clique em "Remove File" . Feito isso vá na aba Project , clique em Add to project e selecione o arquivo chamado Party.CPP que se encontra dentro do KronoX Duel Repack(Seção Downloads), e de Abrir. COMPILANDO SUA SOURCE Após fazer todos os passos anteriores vá na aba File e Clique Em Save All. Após isso aperte CTRL + F11 e aguarde até que sua source seja compilada. INSTALANDO CONTROLE NO SERVIDOR Abra a pasta data/creaturescripts e abra o arquivo creaturescripts.xml Abaixo de <creaturescripts> Adicione: <event type="think" name="duelsys" event="script" value="duel.lua"/> <event type="death" name="dueldie" event="script" value="dueldie.lua"/> Depois, onde está localizado esse creaturescripts.xml tera uma pasta chamada scripts. Abra essa pasta e abra o arquivo login.lua. Nesse arquivo depois da linha: registerCreatureEvent(cid, "onPrepareDeath") Adicione: registerCreatureEvent(cid, "duelsys") Salve e feche o arquivo. Nessa mesma pasta tera um arquivo chamado logout.lua. Abra ele. Apos a linha: function onLogout(cid, forceLogout) Adicione: function getDuelConfig(name) local configFile = io.open('data/creaturescripts/scripts/duelconfig.xml','r') if not configFile then return 100 end local maximo = configFile:read(-1):lower():match(''..name..'='..name:lower()..'') data:close() return maximo end local battlex = getDuelConfig('battleStorage') if getPlayerStorageValue(cid, battlex) == 1 then doPlayerSendTextMessage(cid, 27, "Sorry, you cant logout if you are in a duel!") return false end Salve e feche o arquivo. Após isso abra a pasta data/actions/scripts e abra o arquivo goback.lua (nome provavel do seu goback). OBS: Se tiver mais de um arquivo de goback (great ball/master etc..) repita este processo a seguir em todos eles. Procure por registerCreatureEvent(creature, "DiePoke") ou algo parecido com registerCreatureEvent(ALGO QUE NÃO SEJA CID, ALGO QUE PAREÇA COM DIE) Após ter localizado esta linha adicione na linha de baixo: registerCreatureEvent(O QUE ESTA AQUI NA LINHA DE CIMA,"dueldie") Atenção: Mude esse O QUE ESTA AQUI NA LINHA DE CIMA pelo que aparece escrito ali na linha de cima ("ALGO QUE NÃO SEJA CID" escrito em azul, você ira pelo que tiver em seu server) OBS: Ficará MAIS OU MENOS assim -> registerCreatureEvent(creature, "dueldie") Depois disso, na parte que volta o pokemon para a pokebola ( geralmente onde tem doRemoveCreature ): Adicione na linha abaixo: setPlayerStorageValue(cid,93000,50) Salve e feche o arquivo. Após isso copie os arquivos duelsys.lua , dueldie.lua e duelconfig.xml que estão no KronoX Duel Repack e coloque eles na pasta data/creaturescripts/scripts. CONFIGURANDO SEU DUELCONFIG.XML (BETA) vá na pasta data/creaturescripts/scripts e abra o arquivo duelconfig.xml com o bloco de notas. Atenção: Este arquivo não pode ser editado, com excessão da função usablePokes. O Erro da versão BETA é que ainda não se pode escolher o número de pokemons na batalha, pois esse número é editado no arquivo duelconfig.xml. Para escolher o tanto de pokes que irá usar por duelo , nesse arquivo, basta mudar a opção usablePokes=3 para usablePokes=NumeroDePokes Lembrando que não pode ser mais que 6 e que o carry system do server deve ser por cap. Como usar: Apenas Clique com ctrl e lado direito no adversário e clique em "Invite to party" (Que pode ser modificado no client). Como sair do duelo: Apenas Clique com ctrl e lado direito em VOCÊ e clique em "Leave Party" (Que pode ser modificado no client). É isso aí, não tá perfeito mas jajá a gente chega lá! Créditos: Stians pelo stians devcpp repack (DevC++ pra tibia) e Lucasbaragatti (eu) por fazer o sistema e postar aqui no XTibia. ;D Gostou? Dê REP+ , não cai o dedo =P Qualquer erro no sistema favor postar aqui! Obrigado! Editado Janeiro 11, 2012 por LucasBrt Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/ Compartilhar em outros sites More sharing options...
BrunooAngel 41 Postado Novembro 22, 2011 Share Postado Novembro 22, 2011 no devccp da pra extrai sources tambem? os cara que posta ot mais n posta source :s Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137480 Compartilhar em outros sites More sharing options...
Lucasbaragatti 11 Postado Novembro 22, 2011 Autor Share Postado Novembro 22, 2011 No caso da versão 8.54 -> source http://otland.net/subversion.php?svn=public&file=dl.php&repname=forgottenserver&path=%2Ftags%2F0.3.6pl1%2F&rev=96&peg=96&isdir=1 Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137488 Compartilhar em outros sites More sharing options...
BrunooAngel 41 Postado Novembro 22, 2011 Share Postado Novembro 22, 2011 No caso da versão 8.54 -> source http://otland.net/su...&peg=96&isdir=1 e que kero ja com as funçoes do meu ot :S [do pfield v2 ou do wolfvr] Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137492 Compartilhar em outros sites More sharing options...
Lucasbaragatti 11 Postado Novembro 22, 2011 Autor Share Postado Novembro 22, 2011 No caso da versão 8.54 -> source http://otland.net/su...&peg=96&isdir=1 e que kero ja com as funçoes do meu ot :S [do pfield v2 ou do wolfvr] Aí você teria que falar com alguem dos criadores e ver se eles te desponibilizam a source. =X Tenta aí, talvez você consegue Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137494 Compartilhar em outros sites More sharing options...
SkyDangerous 395 Postado Novembro 22, 2011 Share Postado Novembro 22, 2011 Legal. Porém, desorganizando o tópico. Posta em codes para ficar melhorar visualizar ! Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137498 Compartilhar em outros sites More sharing options...
Lucasbaragatti 11 Postado Novembro 22, 2011 Autor Share Postado Novembro 22, 2011 Vou ter que ir no ingles daqui a pouco, chegando eu arrumo certinho. =D Valeu pelo comment pq eu so novo aqui no xtibia xD Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137500 Compartilhar em outros sites More sharing options...
Demonbholder 420 Postado Novembro 22, 2011 Share Postado Novembro 22, 2011 Legal, você fez o sistema? Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137505 Compartilhar em outros sites More sharing options...
aspratextibia 3 Postado Novembro 22, 2011 Share Postado Novembro 22, 2011 Rep+ para vc meu caro ^^ vai me ajudar muito Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137507 Compartilhar em outros sites More sharing options...
Lucasbaragatti 11 Postado Novembro 22, 2011 Autor Share Postado Novembro 22, 2011 Legal, você fez o sistema? Sim. Rep+ para vc meu caro ^^ vai me ajudar muito Qualquer dúvida estou a disposição ;p Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137550 Compartilhar em outros sites More sharing options...
drakylucas 160 Postado Novembro 22, 2011 Share Postado Novembro 22, 2011 bem bolado... não to mexendo + com pokemons porem irá ajudar muita gente =D rep+ [esse foi merecido, faz tempo q o xtibia nao tem scripts inovadores ;D] Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137633 Compartilhar em outros sites More sharing options...
Lucasbaragatti 11 Postado Novembro 23, 2011 Autor Share Postado Novembro 23, 2011 bem bolado... não to mexendo + com pokemons porem irá ajudar muita gente =D rep+ [esse foi merecido, faz tempo q o xtibia nao tem scripts inovadores ;D] Obrigado xD, eu fiz pra ajudar mesmo! Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1137955 Compartilhar em outros sites More sharing options...
lailton 0 Postado Novembro 23, 2011 Share Postado Novembro 23, 2011 Erro na hora de compilar, tanto com o source do meu ot server, qnto com o postado no topico. =] Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1138012 Compartilhar em outros sites More sharing options...
Lucasbaragatti 11 Postado Novembro 23, 2011 Autor Share Postado Novembro 23, 2011 @Lailton Qual o erro ? Poste aqui o erro que arrumo. Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1138024 Compartilhar em outros sites More sharing options...
zFuzion 2 Postado Novembro 23, 2011 Share Postado Novembro 23, 2011 Da esse erro, quando eu tento compilar! ../luascript.cpp:8362: error: expected initializer before "int32_t" ../luascript.cpp:8363: error: expected declaration before '}' token make.exe: *** [obj//luascript.o] Error 1 Link para o comentário https://xtibia.com/forum/topic/173167-beta-duel-system-v11/#findComment-1138140 Compartilhar em outros sites More sharing options...
Posts Recomendados