Ir para conteúdo

Movie

Membro
  • Registro em

  • Última visita

Tudo que Movie postou

  1. Sistema muito bem feito, obrigado pela contribuição.
  2. Movie postou uma resposta no tópico em Suporte Tibia OTServer
    Faz utilizando uma tabela global, inserindo o last monster que o player atacou. No exiva você só pega a informação da tabela global
  3. Como ele vai identificar em qual posição vai ser criado o item se você não declarar a posição? Tente pensar em outras formas de puxar a posição da tabela.
  4. Nas versões antigas não existe a função Position(), adapte. Só falta isso para o seu script funcionar
  5. Para mudar a cor de fontes (letras), deve-se usar o color: NumeroDaCor, e não o background-color. Você pode fazer também direto na página layouts.php, podendo usar <font color="cor"> Texto </font>
  6. Não existe a página worlds
  7. local monstros = {"Monstro1","Monstro2","Monstro3"} function onDeath(monster, corpse, killer, mostDamageKiller, unjustified, mostDamageUnjustified) if isInArray(monstros, monster:getName()) then Game.broadcastMessage("O Jogador "..killer:getName().." matou o Boss " ..monster:getName().. "! ") end return true end
  8. Vocês estão utilizando funções de 0.x em um 1.x. Várias funções não são compatíveis, verifiquem isso.
  9. Pra alterar isso tem que alterar no itens.otb.
  10. https://github.com/Fir3element/3777/ no final da página tem um tutorial.
  11. Movie postou uma resposta no tópico em Websites
    Fala pessoal, beleza? Alguns dias atrás estava procurando um site que seja compatível com o meu servidor que é downgrade (TFS 1.3 para 8.60) e percebi que (segundo minhas pesquisas) não existe nenhum. Portanto, o que eu fiz foi pegar um projeto original que já existia (esse aqui) e fiz um fork para atualizá-lo. Sintam-se à vontade para fazer issues e pull requests, assim melhoraremos o gesior juntos. O link para o repositório é esse: https://github.com/moviebr/TheRealGesiorFerobra Créditos: Gesior.pl Ricardo Souza (Vulgo Ricardin PHP) Marco Oliveira Movie (eu) e alguns outros desenvolvedores. Lembrando que para o site funcionar 100% é necessário fazer a instalação conforme o readme.
  12. local tempo = 5 -- Em segundos function onStepIn(cid, item, position, fromPosition) local n, g = getCreatureName(cid), getPlayerGuildName(cid) if getPlayerGuildId(cid) == 0 then doPlayerSendCancel(cid, "[Castle24Hrs] Apenas jogadores com guild e acima de level 100 podem entrar nessa zona.") doTeleportThing(cid, fromPosition, false) return true end if getPlayerStorageValue(cid, 9952) > os.time() then setPlayerStorageValue(cid, 9952, (os.time() + tempo * 1000)) broadcastMessage(n .." Está invadindo o [Castle24Hrs] para a guild [" .. g .. "].", MESSAGE_STATUS_WARNING) end return true end
  13. Respondi sua dúvida lá no Discord do TK Caso queira dar a solução para os outros só postar aqui.
  14. Tem que alterar em alguns lugares na source para isso ocorrer. Boa sorte para achar alguém que faça isso para você for free.
  15. Hoje estou bonzinho e vou postar mais uma coisa que eu fiz pro otserver que estou desenvolvendo e vou compartilhar com vocês. Você tem aquela nova moeda no seu servidor, mas os NPCs não aceitam ela e tal? Vou te dar a solução nesse tópico. ================================================================================================================ Testado no TFS 1.3 na versão 8.60 ================================================================================================================ Em player.cpp, procure a função Player::updateSaleShopList Troque essa linha if (itemId != ITEM_GOLD_COIN && itemId != ITEM_PLATINUM_COIN && itemId != ITEM_CRYSTAL_COIN) { por essa if (itemId != ITEM_GOLD_COIN && itemId != ITEM_PLATINUM_COIN && itemId != ITEM_CRYSTAL_COIN && itemId != ITEM_GOLD_INGOT) { ================================================================================================================ Em const.h, procure por ITEM_CRYSTAL_COIN = 2160 Abaixo dela, adicione isso ITEM_GOLD_INGOT = 9971, Sendo que o 9971 é o ID do item que gostariamos que seja a nova moeda. ================================================================================================================ Em item.cpp, procure pela função uint32_t Item::getWorth() const Troque ela toda por isso uint32_t Item::getWorth() const { switch (id) { case ITEM_GOLD_COIN: return count; case ITEM_PLATINUM_COIN: return count * 100; case ITEM_CRYSTAL_COIN: return count * 10000; case ITEM_GOLD_INGOT: return count * 1000000; default: return 0; } } ================================================================================================================ Em luascript.cpp, procure por registerEnum(ITEM_CRYSTAL_COIN) Abaixo disso, coloque isso registerEnum(ITEM_GOLD_INGOT) ================================================================================================================ Agora em actions/script/changegold.lua, troque por isso local config = { [ITEM_GOLD_COIN] = {changeTo = ITEM_PLATINUM_COIN}, [ITEM_PLATINUM_COIN] = {changeBack = ITEM_GOLD_COIN, changeTo = ITEM_CRYSTAL_COIN}, [ITEM_CRYSTAL_COIN] = {changeBack = ITEM_PLATINUM_COIN, changeTo = ITEM_GOLD_INGOT}, [ITEM_GOLD_INGOT] = {changeBack = ITEM_CRYSTAL_COIN} } function onUse(player, item, fromPosition, target, toPosition, isHotkey) local coin = config[item:getId()] if coin.changeTo and item.type == 100 then item:remove() player:addItem(coin.changeTo, 1) player:say("$$$", TALKTYPE_MONSTER_SAY, true) elseif coin.changeBack then item:remove(1) player:addItem(coin.changeBack, 100) player:say("$$$", TALKTYPE_MONSTER_SAY, true) else return false end return true end ================================================================================================================ É isso por hoje. ================================================================================================================
  16. Ah é simples de arrumar, caso o @L3K0T não arrume, eu arrumo pra você.
  17. Tenho que estudar um pouco mais pra te informar, mas acho que seria necessário alterar as sources.
  18. Olá a todos, e estou de volta pra postar alguns conteúdos... Fui atrás de um online bonus system para tfs 1.3 e não achei e portanto decidi fazer o meu, com a ajuda do @vankk. ================================================================================================================ Testado em TFS 1.3 na versão 8.60. ================================================================================================================ ================================================================================================================ No seu banco de dados, execute a seguinte query ALTER TABLE `players` ADD `online_time` int(11) NOT NULL DEFAULT 0 ================================================================================================================ O próximo passo é apenas para quem gostaria de que, a cada server save, o número seja zerado! ================================================================================================================ Em globalevents/scripts/startup.lua, após o inicio da função onStartup() adicione o seguinte código db.query("UPDATE `players` SET `online_time` = 0") ================================================================================================================ Agora crie um arquivo chamado onlinebonus.lua em creaturescripts/scripts com isso dentro local event = {} local function addOnlineToken(playerId) local player = Player(playerId) if not player then return false end if player:getIp() == 0 then event[player:getId()] = nil return false end player:addOnlineTime(1) player:getPosition():sendMagicEffect(CONST_ME_GIFT_WRAPS) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Você ganhou 1 online token por permanecer online por 1 hora sem deslogar.") player:addItem(12543, 1) event[player:getId()] = addEvent(addOnlineToken, 60 * 60 * 1000, player:getId()) end function onLogin(player) player:registerEvent("OnlineBonus") player:registerEvent("OnlineBonusLogout") if event[player:getId()] == nil then event[player:getId()] = addEvent(addOnlineToken, 60 * 60 * 1000, player:getId()) end return true end function onLogout(player) if event[player:getId()] then event[player:getId()] = nil end return true end -- <event type="login" name="OnlineBonus" script="onlineBonus.lua" /> -- <event type="logout" name="OnlineBonusLogout" script="onlineBonus.lua" /> A tag XML está no fim desse código. ================================================================================================================ Agora, na pasta lib, crie um arquivo chamado onlineTime.lua e coloque isso dentro function Player.getOnlineTime(self) local resultId = db.storeQuery(string.format('SELECT online_time FROM `players` WHERE `id` = %d', self:getGuid())) if not resultId then return 0 end local value = result.getNumber(resultId, "online_time") result.free(resultId) return value end function Player.addOnlineTime(self, amount) db.query(string.format("UPDATE `players` SET `online_time` = `online_time` + %d WHERE `id` = %d", amount, self:getGuid())) end Não esqueça de registrar essa lib no lib.lua. ================================================================================================================ Agora, na pasta talkactions/scripts, crie um arquivo chamado onlinebonus.lua com o seguinte código dentro: function onSay(player, words, param) local skill = player:getOnlineTime(player) local message = "--------[+]------- [Online Bonus System] -------[+]--------\n\nGanhe um online token a cada hora que você passa online sem deslogar.\n\n---------------------------------------------------\n Total\n Desde o server save você já ganhou " .. skill .. " online tokens." doPlayerPopupFYI(player, message) end -- <talkaction words="!onlinebonus" script="onlineBonus.lua"/> A tag XML está no fim desse código. ================================================================================================================ O usuário irá receber um item a cada hora online sem deslogar. O item está no código de creaturescripts com o id 12543, que pode ser alterado para qualquer item que seja agrupável. ================================================================================================================ É isso por hoje.
  19. @Phineasz já tem muitos scripts disponíveis desse tipo no fórum. Porém me chama no discord que faço pra você. Jaja te respondo lá.
  20. Movie postou uma resposta no tópico em Suporte Tibia OTServer
    No real tinha esse sistema, pena que não mexo mais pra 0.x pra te ajudar nesse
  21. Me manda seu game.cpp
  22. Creio que terá que alterar na source. Não tenho muita experiência, mas posso tentar. Me mande a função playerSaySpell no arquivo game.cpp
  23. Movie postou uma resposta no tópico em Suporte Tibia OTServer
    Caso ninguém resolva, me marque que eu venho aqui e faço para você.
  24. Pode ser, inclusive acho até melhor
  25. Estou precisando de um sistema de cast para tfs 1.3 Dou rep+ pra quem ajudar Ah, se não for pedir muito por favor alguém poderia arrumar um sistema de task para o mesmo obrigado ficarei no aguardo

Informação Importante

Confirmação de Termo