-
Total de Posts
19 -
Registro em
-
Última visita
-
Dias Ganhos
1
Tipo de Conteúdo
Fóruns
Downloads
Galeria
Perfis
Tudo que Jynko postou
-
ANSWERED Pedido spell Kamehameha TFS 1.4.2
Jynko respondeu ao tópico de Nother em Suporte C++, LUA E etc
Como tu colocou na tag do spells.xml? Lembrando que deve ativar o direction se não me engano. direction="1" -
ANSWERED Pedido spell Kamehameha TFS 1.4.2
Jynko respondeu ao tópico de Nother em Suporte C++, LUA E etc
Não sei se vai funcionar, nem cheguei a testar, mas creio que deva funcionar, segue o mesmo principio das do 0.3.6: local combat = Combat() combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) combat:setParameter(COMBAT_PARAM_EFFECT, 255) local area = createCombatArea({ {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0} }) combat:setArea(area) function onCastSpell(creature, variant) local lookDir = creature:getDirection() local cPos = creature:getPosition() local effectPositions = { [NORTH] = {pos = Position(cPos.x + 1, cPos.y - 1, cPos.z), effect = 86}, [EAST] = {pos = Position(cPos.x + 2, cPos.y + 1, cPos.z), effect = 89}, [SOUTH] = {pos = Position(cPos.x + 1, cPos.y + 2, cPos.z), effect = 87}, [WEST] = {pos = Position(cPos.x - 1, cPos.y + 1, cPos.z), effect = 88} } local effectData = effectPositions[lookDir] effectData.pos:sendMagicEffect(effectData.effect) return combat:execute(creature, variant) end -
Esse sistema não utiliza parte nenhuma no servidor, é tudo via API, você precisa escrever API, pode ser em .php, c++, python.. a linguagem que tu mais se identifica, o que o sistema faz é enviar uma requisição com as informações colocadas no modulo e a API retorna o QRCODE do Mercado Pago.
-
O POTA tem uma função que busca a pokeball que esta sendo utilizada, logo tu vai trabalhar o sistema em cima dela em vez de buscar o slot feet.
-
Sim, tu só precisa adaptar as funções e altera-las para a forma que o TFS 1.2 funciona, mas geralmente estes sistemas usam o atributo na pokeball.. então é tranquilo!
-
[PROJETO-DEVZ] Pokémon Dash Revolution - Open Source
Jynko respondeu ao tópico de Tungs em Servidores Poketibia
É uma boa base para quem quer algo "clean" e de fácil edição, eu peguei para mexer na mesma, removi todas as tabelas relacionadas aos moves e deixei a configuração no .xml do Pokémon. Refiz também toda a parte de status (buff/ debuff), deixei um pouco mais organizada. -
O mais importante, que é a verificação do atributo, não tem! Você precisa colocar para verificar se é um ditto ou shiny ditto, verificar se ele esta transformado provavelmente pelo atributo getItemAttribute(item, "ehshinyditto") e getItemAttribute(item, "ehditto"), isso no arquivo dos moves. Porque o PDA em si não usa o ehditto e ehshinyditto, ele usa storage.
-
Como Proteger Devidamente seu OTCv8 (Cryptografia)
Jynko respondeu ao tópico de kowalski em OTClient Mehah, V8 e derivados
Para quem quer usar o próprio hex, aqui tem um site para converter: [Hidden Content]- 13 respostas
-
- 46
-
-
-
-
-
-
Aqui: Essa atualiza o HP da barra, só seguir o esquema e montar o module com as outras informação!
-
Venda Servidor PokeSky (PStorm 3.20) c/ source
Jynko postou um tópico no fórum em Venda de Servidores/Derivados
Estou vendendo meu antigo servidor feito em cima da PSTORM 3.20, o mesmo foi feito e refeito diversas coisas para melhor se adaptar ao publico da base! Possui a maioria/ quase todos dos sistemas originais do PSTORM 3.20 funcionando perfeitamente e possui alguns sistemas extras que julguei necessário para a mesma! Sistemas extras: cooldown bar; catch window; count brokes; memory ditto; pokemon bar; ditto c/ ajuste na força do mesmo quando transformado; respawn de shiny aleatório e respawn fixo; Ela conta com uma configuração de 80% do pokémon direto do .xml do mesmo e todo o sistema de spells (moves) feito pela src, precisando criar apenas 1 spell dentro da pasta spells do seu servidor. Algumas imagens: É um servidor simples, o único diferencial é source do mesmo, estou vendendo pois já não tenho mais o tempo que tinha para administrar um servidor! -
A diferença é que por exemplo esta que postei tu pode utilizar em action, talkaction, creatureevent, etc.. Um exemplo bem tosco de uma talkaction: function onSay(player, words, param) for _, ball in pairs(player:getPokeballs()) do if (ball:getPokeballInfo().name == "Pikachu") then item = ball end end if item then player:moveItem(item.uid, {y = CONST_SLOT_FEET, z = 0}) else player:sendCancelMessage("Sorry, not possible move this item") end return false end E ela não é para bloquear ou fazer algo para depois que mover o item ou tentar mover o mesmo, ela serve para MOVER o item para o SLOT ou BAG, etc..
-
Fala galera, depois de apanhar muito tentando fazer a item:moveTo() funcionar e não conseguir o resultado que eu queria, resolvi adaptar a doMovePlayerItem(cid, itemuid, toPosition[, indexWhereever = false])) presente na 0.3.6, para o TFS 1.5: - Primeiro em luascript.h: static int luaPlayerMoveItem(lua_State* L); Depois em luascript.cpp: registerMethod("Player", "moveItem", LuaScriptInterface::luaPlayerMoveItem); - int LuaScriptInterface::luaPlayerMoveItem(lua_State* L) { // player:moveItem(itemuid, toPosition[, indexWhereever = false]) bool indexWherever = false; if (lua_gettop(L) > 3) indexWherever = lua_toboolean(L, 4); const Position& toPosition = getPosition(L, 3); Item* item = getScriptEnv()->getItemByUID(getNumber<uint32_t>(L, 2)); if (!item) { pushBoolean(L, false); return 1; } Player* player = getUserdata<Player>(L, 1); if (!player) { reportErrorFunc(L, getErrorDesc(LUA_ERROR_PLAYER_NOT_FOUND)); pushBoolean(L, false); return 1; } if (indexWherever) { g_game.internalMoveItem(item->getParent(), player, INDEX_WHEREEVER, item, item->getItemCount(), NULL, FLAG_NOLIMIT); } else { uint8_t toIndex = 0; if (toPosition.y & 0x40) toIndex = static_cast<uint8_t>(toPosition.z); else toIndex = static_cast<uint8_t>(toPosition.y); g_game.internalMoveItem(item->getParent(), player, toIndex, item, item->getItemCount(), NULL, FLAG_NOLIMIT); } lua_pushboolean(L, true); return 1; } - Método de uso: player:moveItem(item.uid, {y = CONST_SLOT_FEET, z = 0}) Deste jeito ira forçar o item a ser movido para o slot feet!
-
pedido [Pedido] Base Pokémon Draw (Linux)
Jynko respondeu ao tópico de qrcode em Servidores Poketibia
Eu tenho esta base, só tenho que achar onde ta aqui no pc.. Mas você tem a src ou esta abrindo sem a src? - Se não tiver a src, me chama eu tenho uma funcional que ficou online durante uns meses (PokeSky). -
Este erro é uma coisa tão besta e até hoje vejo gente quebrando a cabeça: O problema esta ai, esta tentando puxar uma informação invalida, basta alterar para "getCreatureMaster(target)". Já enviei o arquivo com a correção! pokemon moves.lua
-
[POTA] Barra de Troca c/ atualização de life
Jynko postou um tópico no fórum em TFS 0.X, Compartilhe seu código C++, LUA, PHP e etc
Salve galera, eu estava meio que com ranço daquela barra de troca do POTA então resolvi atualizar a mesma para um modelo com life e atualização da life! kk -- -- -- Em newfunctions.lua na pasta lib coloque: function Player:sendPokeballsInfo(add, remove) local pokeballs = self:getPokeballs() local opcode = "" for i, pokeball in ipairs(pokeballs) do local name = pokeball:getSpecialAttribute("pokeName") local portrait = ItemType(MonsterType(name):portraitId()):getClientId() local health = pokeball:getSpecialAttribute("pokeHealth") if pokeball:getSpecialAttribute("isBeingUsed") == 1 then local summons = self:getSummons() local summon = Creature(summons[1]) health = summon:getHealth() end local healthMax = MonsterType(name):getMaxHealth() local currentPercent = math.ceil(health / healthMax * 100) if not name then -- fix ball bug pokeball:remove() print("WARNING! Player " .. self:getName() .. " had one ball removed!") else opcode = opcode .. "," .. portrait .. ":" .. name .. ":" .. currentPercent end end self:sendExtendedOpcode(181, opcode) end Para ativar basta procurar por refreshPokemonBar em todos os arquivos da base POTA e substituir por sendPokeballsInfo! -- Para que a life do pokémon atualize quando o mesmo tomar dano basta ir em creaturescripts/monsterhealthchange.lua abaixo de: if attacker:isPokemon() and creature:isPokemon() then --duel between players localDamageMultiplier = localDamageMultiplier / 7.0 end E adicionar: if creature:getMaster() then master = creature:getMaster() master:sendPokeballsInfo({}, {}) end -- Faça dowload do modulo e seja feliz 🙂 game_pokemons.rar- 4 respostas
-
- 22
-
-
-
[PROJETO-DEVZ] Pokémon Dash Revolution - Open Source
Jynko respondeu ao tópico de Tungs em Servidores Poketibia
Se conseguir hospedar o .spr e .dat pois no link do github não tem, é uma ótima base para quem esta começando e quer aprender!
×
- Criar Novo...