Ir para conteúdo
  • Cadastre-se

Dwarfer

Membro
  • Total de itens

    482
  • Registro em

  • Última visita

  • Dias Ganhos

    38

Tudo que Dwarfer postou

  1. Crie a loja exatamente como está na imagem que vai funcionar.
  2. Acho que você tentou usar com menos de 3 monstros para algum rank, não foi? Altere a linha: local name = monsters[number][math.random(1, #monsters)] Para: local name = monsters[number][math.random(1, #monsters[number])]
  3. Sim, é só adicionar os nomes dos monstros nessa linha: local monsters = {'rat', 'dragon'} Procure a função setCreatureName ou semelhante (caso não tenha) e adicione à source do seu servidor. Depois compile e aí será possível trocar de nome. Eu tinha colocado para pescar somente no id de água igual a 493, já que a parte dos ids de água ali no seu script não servia para nada assim como outras coisas desnecessárias. Se você testar com o id 493 vai funcionar corretamente. Se quiser que funcione com todos os ids configurados em waterIds, utilize assim:
  4. @Infused De forma simples, use assim: (Não tive como testar) Para o sistema de pesca: Para o item que captura: Lembrando que não coloquei para aparecer o nome de quem pescou em cima do nome, pois você tem que ter a função que troca o nome do monstro. Procure aqui no mesmo TK e adicione-a ao seu servidor.
  5. Fala, galerinha. Estou disponibilizando um programinha bem simples (porém útil) que eu tinha guardado há um bom tempo aqui. Trata-se de um quest maker, ou seja, um criador de scripts.lua (TFS 0.3.6/0.4 e 1.x+) para, mais precisamente, baús de quests. O Dwarfer Quest Maker (DQM) pode ser muito útil tanto para iniciantes que lotam a seção de pedidos como "Baú que dá item somente uma vez" ou "Baú que checa se player tem quest e adiciona item" quanto para quem já tem certo conhecimento e necessita criar várias quests podendo fazê-las em segundos. De forma bem resumida, as
  6. @rizen Em creaturescripts/scripts crie um arquivo.lua: local freeTownIDS = {1,2,3,4,5} -- ids das cidades free account local defaultTownID = 3 -- id da cidade para qual o player será teleportado function onLogin(cid) if not isPremium(cid) and (not isInArray(freeTownIDS, getPlayerTown(cid))) then doPlayerSetTown(cid, defaultTownID) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Your premium has expired.") end return true end Em creaturescripts.xml, adicione a tag: <event type="login" name="ch
  7. @Magrao138 Caso você queira que isso ocorra somente em uma área específica, crie um arquivo.lua em movements/scripts e adicione isso: local removeableItems = {2160, 2148, 2152} -- ids dos itens que serão removidos function onAddItem(moveitem, tileitem, position) if not isInArray(removeableItems, moveitem.itemid) then return true end doRemoveItem(moveitem.uid, moveitem.type > 0 and moveitem.type or 1) return true end Em movements.xml, adicione a tag: <movevent type="AddItem" tileitem="1" actionid="ACTION_ID_DO_PISO" event="script" value="NOMEDOARQUIVO.lua"/&g
  8. @WorkedBox Em actions/scripts crie um arquivo.lua: No actions.xml, adicione a tag: <action actionid="ACTION_ID_DOS_CORPOS" script="NOMEDOARQUIVO.lua" /> Depois, é só colocar para verificar o storage do player, por exemplo, em um piso, em uma porta ou um NPC (tais scripts você encontra aqui no fórum) que dá acesso ao local desejado. No exemplo, coloquei o storage 87431, mas você pode alterar caso queira.
  9. @DboExplorer Caso se trate de TFS 0.4, fiz um exemplo simples para você. Como não sei onde está esse item e como você está fazendo para pegar suas informações, coloquei o exemplo da talkaction como verificando os atributos do item na mão esquerda do player. Primeiramente, adicione as seguintes funções na sua lib: Para a action, você pode fazer algo como: Para a talkaction: Ao falar !addon 1, trocará para o primeiro outfit adicionado ao item lá na action, !addon 2 o segundo e por aí vai. Como disse, fiz uma forma si
  10. local t = {[1499] = function(item) doSendMagicEffect(getThingPos(item.uid), CONST_ME_POFF) doRemoveItem(item.uid) end, [2782] = function(item) doTransformItem(item.uid, 2781) doDecayItem(item.uid) end} function onUse(cid, item, fromPosition, itemEx, toPosition) local x = t[itemEx.itemid] if x then x(itemEx) return true end return destroyItem(cid, itemEx, toPosition) end
  11. if getPlayerStorageValue(cid, 40300) == -1 then setPlayerStorageValue(cid, 40300, 1) else doPlayerSendTextMessage(cid, 18, "Você já possui o storage igual a 1") end Não tem complicação nenhuma. É só armazenar o VALOR do storage e depois verificar se o VALOR corresponde ao retornado por getPlayerStorageValue(). Apesar de ser desnecessário fazer com true ou false, como não sei com que finalidade você tá fazendo isso, você poderia fazer algo assim: if getBooleanFromString(getPlayerStorageValue(cid, 40300)) == true then doPlayerSendTextMessage(cid, 18, "Verdadeiro"
  12. Em creaturescripts/scripts crie um arquivo.lua: function onDeath(cid, corpse, deathList) local killer = isCreature(deathList[1]) and (isPlayer(deathList[1]) and getPlayerName(deathList[1]) or getPlayerName(getCreatureMaster(deathList[1]))) or "Something" addEvent(doBroadcastMessage, 1, "WOW! "..killer.." has killed "..getCreatureName(cid).."!", MESSAGE_STATUS_WARNING) return true end No creaturescripts.xml: <event type="death" name="broadOnKill" event="script" value="NOMEDOARQUIVO.lua"/> No arquivo do monstro, antes de </monster>, adicione: <
  13. Isso aí é um mod. Copia qualquer arquivo xml da pasta mods, cola isso dentro e pronto.
  14. Teste antes de perguntar, cara. pqp também einh..
  15. Fiz de uma forma simplificada para vocês. Em npcs/scripts crie um arquivo.lua: Como arquivo.xml base você pode utilizar esse, faça as mudanças que desejar. <?xml version="1.0" encoding="UTF-8"?> <npc name="Dwarfer" script="NOMEDOSEUARQUIVO.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="66"/> </npc> Para os outros npcs é só copiar a mesma coisa, mudar a ordem do npc em npcOrder para (2, 3, 4...), além das palavras-chave e dos textos enviados ao player.
  16. Em actions/scripts, crie um arquivo.lua: Em actions.xml, adicione a tag: <action actionid="ACTION_ID_DO_BAÚ" script="NOMEDOARQUIVO.lua" /> Esse baú trocará todos os pontos do player na moeda configurada em moedaID.
  17. Mas é isso, vai ser colocado um número fixo e não mais aleatório.
  18. A função que calcula a % aleatória que será adicionada é essa: function getper() local n = 1 for i=1,10 do n = n+math.random(0,10) if n < 8*i then break end end return n end Caso queira adicionar uma % fixa e se você não sabe modificar o script, de uma forma mais simples para você, altere para: function getper() return 1 end Onde 1 é a % adicionada.
  19. Tá bem bagunçado isso aí carinha, na verdade não ia funcionar nada rsrsr. Testa assim: lib Em creaturescripts/scripts, crie um arquivo.lua: No login.lua, registre o evento: player:registerEvent("tptile_modal") No creaturescripts.xml, adicione a tag: <event type="modalwindow" name="tptile_modal" script="NOMEDOARQUIVO.lua"/> Em movements/scripts, crie um arquivo.lua (ou substitua pelo que tem dentro do arquivo que você já possui): No movements.xml, adicione a tag: <movevent event="StepIn" action
  20. Em actions/scripts crie um arquivo.lua: No actions.xml: <action itemid="ID_DO_ITEM" script="NOMEDOARQUIVO.lua" />
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo