Ir para conteúdo

Adriano SwaTT

Membro
  • Registro em

  • Última visita

Tudo que Adriano SwaTT postou

  1. Testa assim: function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS and isPlayer(cid) and value >= 1 then if getPlayerStorageValue(cid, 4329) == 1 then if getPlayerStorageValue(cid, 19280) == -1 then setPlayerStorageValue(cid, 19280, 1) local value1 = value*3 addEvent(Triple_Hit, attacker, 100) return true -- TESTE TRUE E FALSE else setPlayerStorageValue(cid, 19280, -1) end end end return true end function Triple_Hit(attacker) doTargetCombatHealth(attacker, cid, COMBAT_PHYSICALDAMAGE, -value1, -value1, 43) end Boa sorte.
  2. No log está vindo tipo assim?: Em um hit de 10 de dano... 10 hit points. 20 hit points.
  3. Então agora está 100% o script? #edit Sim, esqueci deste detalhes, chatinho este onStatsChange, eu usei muito no meu server, mas fiz correndo esta linha do script.
  4. Exatamente, porque os outros arquivos são "LUA" e não estão mostrando .lua diretamente no nome, então seu arquivo está assim: ferreiro.lua.lua Renomeie para "ferreiro" que ficará certo. Boa sorte.
  5. Teste assim: function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS and isPlayer(cid) and value >= 1 then if getPlayerStorageValue(cid, 4329) == 1 then if getPlayerStorageValue(cid, 19280) == -1 then setPlayerStorageValue(cid, 19280, 1) value1 = value*3 doTargetCombatHealth(cid, getCreatureTarget(cid), COMBAT_PHYSICALDAMAGE, -value1, -value1, 43) doSendAnimatedText(getCreaturePosition(cid)," "..value,COLOR_RED) else setPlayerStorageValue(cid, 19280, -1) end end end return true end Boa sorte.
  6. O erro que está acusando na distro e porque o arquivo "ferreiro.lua" não está na pasta ou está com alguma letra escrita errada em seu nome, fazendo com que o script não seja encontrado pelo launcher. Confira se na sua pasta "data/actions/scripts" tem o arquivo ferreiro.lua, escrito exatamente assim. E por você colocar um objeto de madeira abaixo dos caixotes, agora o stackpos de ambos passará de 1 para 2, ficando assim: local box1 = {x=1035, y=995, z=7, stackpos=2} -- Coordenada da Caixa de Combinação local box2 = {x=1037, y=995, z=7, stackpos=2} -- Coordenada da Caixa Final E por motivo das caixas serem diferentes, precisamos declarar a id de ambas. Sendo a primeira o boxid1 e a segunda (de presente, baú tesouro) o boxid2. O script ficará basicamente assim: Falta só por a ID da caixa de tesouro na segunda linha do script, substituindo os XXXX e arrumar o nome do arquivo na pasta. Pronto. Boa sorte.
  7. Pode-se tentar usar outra distro, de preferência OpenSource.
  8. local boxid = XXXX -- Aqui é a ID do CONTAINER que ficará no chão, onde colocará os itens. local box1 = {x=000, y=000, z=0, stackpos=1} -- Coordenada do CONTAINER onde os itens que serão combinados estarão. local box2 = {x=000, y=000, z=0, stackpos=1} -- Coordenada da CONTAINER onde o item final aparecerá após a combinação. local item1, item2 = XXXX, XXXX -- ID do ITEM1, ID do ITEM2 (os itens que serão combinado) Ex: 2160, 3450 (coloque a ID do Item) local reward = XXXX -- ID do Item Recompensa Até dava, vi uma base do MaxWellden, mas só que achei um pouco desnecessário, ele iria checar todos os itens da BOX e criar uma tabela, acho que não precisa de tudo isso, serão usado apenas 2 itens e um item final.
  9. Certo, teste e me avise se funcionou. Comigo funcionou perfeitamente. Boa sorte.
  10. Certo, então agora segue os passos e vai clicando em Prosseguir para configurar o site. Quanto a versão do XAMPP, o site está com melhor compatibilidade com o XAMPP antigo, por isso o downgrade pode solucionar alguns dos problemas. Boa sorte.
  11. Muito obrigado.. Andei sumido por uns dias, maior correria por aqui, aí para não enferrujar ainda mais me lancei um desafio de procurar um pedido de script e fazê-lo por completo. Me deparei com este, que é um modelo de script pelo qual nunca havia feito, de identificar mais de um item dentro de container e depois removê-los ainda. Comigo o script funcionou perfeitamente, tomara que funcione com o dono do tópico. Abraços e mais uma vez obrigado pela consideração, vem fazendo um ótimo trabalho.
  12. Boa noite. Após vários testes e correções de bugs, e é claro, estudar algumas tags. Segue abaixo seu script: Em actions.xml adicione a seguinte tag: <action actionid="XXXXX" script="ferreiro.lua"/> Registre a actionID de acordo com a alavanca registrada no MapEditor. Lembre-se de adicionar alguma actiondID nos caixotes para que não possam ser arrastados, pois adicionei uma parte no script pelo qual só funciona se o caixote estiver no lugar, mas vale a pena deixá-los fixo. Agora crie o arquivo "ferreiro.lua" na pasta script e cole o seguinte código: local boxid = XXXX -- ID da Caixa que receberá os itens local box1 = {x=000, y=000, z=0, stackpos=1} -- Coordenada da Caixa de Combinação local box2 = {x=000, y=000, z=0, stackpos=1} -- Coordenada da Caixa Final local item1, item2 = XXXX, XXXX -- ID do ITEM1, ID do ITEM2 local reward = XXXX -- ID do Item Recompensa function onUse(cid, item, fromPosition, itemEx, toPosition) local container, container2 = getTileItemById(box1, boxid), getTileItemById(box2, boxid) if container.uid > 0 then if container2.uid > 0 then if getContainerItem(container.uid, 0).uid >= 1 then if getContainerItem(container.uid, 0).itemid == item1 then if getContainerItem(container.uid, 1).itemid == item2 then doRemoveItem(getContainerItem(container.uid, 0).uid, 1) doRemoveItem(getContainerItem(container.uid, 0).uid, 1) doAddContainerItem(getThingFromPos(box2).uid, reward) doPlayerSendTextMessage(cid, 4, "Parabéns pela combinação.") return false else doPlayerSendCancel(cid, "Você precisa de um "..getItemNameById(item2).." no segundo slot para combinar.") return true end else doPlayerSendCancel(cid, "Você precisa de um "..getItemNameById(item1).." no primeiro slot para combinar.") return true end else doPlayerSendCancel(cid, "Não há itens no caixote.") end else doPlayerSendCancel(cid, "O caixote de premiação não está no lugar correto.") end else doPlayerSendCancel(cid, "O caixote não está no lugar correto.") end return true end Lembre-se de configurar a parte inicial do script. Testei e funcionou perfeitamente comigo. Teste e poste o resultado. Boa sorte.
  13. A base deste script é: doTargetCombatHealth(cid, target, type, min, max, effect) Tente configurar como manda acima e teste novamente. Qualquer coisa poste e tento fazer pra ti. Boa sorte.
  14. Tenta abrir o arquivo assim: localhost/install.php?page Boa sorte.
  15. Adriano SwaTT postou uma resposta no tópico em Websites
    Mais simples, abra sua pasta do XAMPP e abra a pasta PHP (geralmente em: C:\xampp\php) em seguida o arquivo "php.ini". Dentro do mesmo, procure por "error_reporting =" (sem aspas, mas com o sinal de igual), em seguida substitua esta linha por esta: error_reporting = E_ALL & ~E_NOTICE Não me lembro de precisa reiniciar o Apache, mas teste reiniciá-lo e reabra o site. Boa sorte.
  16. Olhei nas talkactions e não encontrei, talvez esteja diretamente nas sources.
  17. Sou horrível com Spells, senão faria.. Mas em Talkactions eu consigo. Caso queira.
  18. Adriano SwaTT postou uma resposta no tópico em Websites
    Me parece que não encontrou o arquivo responsável pela página que foi digitada no navegador.
  19. É, realmente não vem em scripts nesta versão.. Nas sources eu não manjo muito, mals. :/
  20. Você pode usar a versão compatível, mesmo sem as sprites pois a intenção real não é jogar e sim apenas testar se as frases serão enviadas.
  21. Aí seria em programação C++, o que não há tanta gente preparada para tal aqui no fórum. Tenho quase certeza de que já vi este script em LUA em OTServers, cole em Spoiler seu creaturescripts.xml aqui.
  22. Exato, mas provavelmente tem um script a mais responsável por esta ação.
  23. Talvez na SS que enviou, mais para cima mostre o nome do arquivo que esteja causando o erro, o que podemos analisar é que está no seu sistema de Reflect, agora pode ser em arquivos LUA ou algum MOD. Com a função onStatsChange, ou seja, assim que algum monstro ou player da um hit em alguém. Confira na sua distro se no início do erro não mostra o arquivo referente ao mesmo. Ficamos aguardando.
  24. Este critical tem scripts na pasta CreatureScripts né? Se tiver, poste aqui para que possamos editar. Aguardo.
  25. Tentou logar em client tradicional da CipSoft pra ver se isso ocorre? Porque nunca vi, mas se ocorrer aí já da pra saber que é em scripts do OTServ, caso contrário será realmente no OTClient.

Informação Importante

Confirmação de Termo