Ir para conteúdo

SmiX

Conde
  • Total de itens

    963
  • Registro em

  • Última visita

  • Dias Ganhos

    2

Tudo que SmiX postou

  1. Quando for fazer uma magia coloque embaixo de "doCombat()" essas linhas: if isMonster(cid) then doCreatureSay(cid, ""..var.."", TALKTYPE_MONSTER) end Ficando mais ou menos assim: function onCastSpell(cid, var) doCombat(cid, combat, param) if isMonster(cid) then doCreatureSay(cid, ""..var.."", TALKTYPE_MONSTER) end return true end
  2. Tenta assim: Vai em creaturescript crie um arquivo e cole isso dentro: local fromPostion = { x = 1, y = 1, z = 1 } -- Posição da arena formando um quandrado local toPosition = { x = 1, y = 1, z = 1 } -- Posição da arena formando um quandrado function onStatsChange(cid, attacker, type, combat, value) if not isPlayer(cid) then return false end hit = value if isInArray(getThingPos(cid), fromPostion, toPosition) then if hit >= getCreatureHealth(cid) then doTeleportThing(cid, math.random(fromPosition, toPosition), true) doSendMagicEffect(getThingPos(cid, 21)) end end end Depois disso vá em login.lua e registre a seguinte linha: registerCreatureEvent(cid, "ArenaKill") Agorá vai em creaturescript.xml e cole isso: <event type="statschange" name="ArenaKill" event="script" value="nome do seu arquivo.lua"/>
  3. Vai no seu config.lua e procure por: premiumForPromotion = Se estiver false coloque true, e teste.
  4. Tenta assim: local function doPlayerAddSoulInSeconds(cid, soulInSeconds) doSendMagicEffect(getThingPos(cid), 13) doPlayerAddSoul(cid, soulInSeconds) addEvent(doPlayerAddSoulInSeconds, 1500, cid, soulInSeconds) end function onStepIn(cid, item, frompos, item2, topos) if item.actionid == 4839 then if not isPlayer(cid) then return true end if getPlayerSoul(cid) <= 200 then doPlayerAddSoulInSeconds(cid, soul) end end end Coloque uma actionid no piso, com o rme editor, com o número: 4839
  5. Tente assim: function onSay(cid, words, param, channel) if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.") return true end local userid = getChannelUsers(10) doPlayerSendChannelMessage(cid,"",""..users.." Users.",TALKTYPE_BLABLABLA_W,10) return true end
  6. Tente assim: local pos, actionId = {x = 1, y = 1, z = 1}, 4756 function onStepIn(cid, item, frompos, item2, topos) if item.actionid == actionId then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doSendMagicEffect(getThingPos(cid), math.random(28, 30)) end end Coloque uma actionid no teleport, com o rme editor, com o id 4756.
  7. O erro está dizendo que: nenhum item válido para o tipo de criatura, ou seja(cerveja), não estou conseguindo achar a causa do erro.
  8. Tente assim: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local config = { itemNeeded = 2160, count = 5, addonName = "Assassin", outfitId = 310, giveAddons = 2, storage = 3847, } if (msgcontains(msg, config.addonName)) then if doPlayerRemoveItem(cid, config.itemNeeded, config.count) then else selfSay('Sorry, you need a '..config.count..' of '..getItemNameById(config.itemNeeded)..' for complet a my trade.', cid) end if getPlayerStorageValue(cid, config.storage) < 1 then else return selfSay('Sorry, you this have a addon of '..config.addonName..' Outfit.', cid) end selfSay("Well I give you "..config.addonName..", the more you need to give me certain items do you accept this trade? ", cid) talkState[talkUser] = 1 elseif(msgcontains(msg, "yes")) and talkState[talkUser] == 1 then selfSay("Thank you, you can look at your inventory of outfits.",cid) talkState[talkUser] = 0 doPlayerAddOutfit(cid,config.outfitId, config.giveAddons) setPlayerStorageValue(cid, config.storage, 1) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Esse servi de base para os outros. Fale "hi", "Assassin" e "yes".
  9. Tenta esse npc para dar a storage 2124: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local vocation = { [1] = {newPromotion = 9}, -- [id da vocation], newPrmotion = id da promotion, encontrada no diretório "data/XML/vocations.xml" [2] = {newPromotion = 10}, [3] = {newPromotion = 11}, [4] = {newPromotion = 12} moneyNeeded = 2000, -- QUantidade em "dindin" que vai tirar do player storage = 2124, -- Storage Que vai dar valor = 2 -- Valor da storage } if (msgcontains(msg, 'promotion') or msgcontains(msg, 'PROMOTION')) then if doPlayerRemoveMoney(cid, vocation.moneyNeeded) then else return selfSay("Sorry, you dont have a suficient money.", cid) end selfSay("You want to be promoted?", cid) talkState[talkUser] = 1 elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then selfSay("Okay, you've earned your promotion.", cid) doPlayerSetVocation(cid, vocation[getPlayerVocation(cid)].newPromotion) doSendMagicEffect(getThingPos(cid), math.random(28, 30)) setPlayerStorageValue(cid, vocation.storage, vocation.valor) talkState[talkUser] = 0 return true end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Fale "HI", "PROMOTION" e "YES".
  10. @LuckOake Mais acho que ele pediu por essa função, por que ela permite mover o item em qualquer tipo de lugar e não apenas em slots. @Topic O script só vai funcionar se o jogador for de GM para baixo.
  11. SmiX

    Jail tibia 8.6

    Vai em creaturescript e faça um arquivo com qualquer nome e cole o seguinte código dentro: local prisaoPos, storage = {x = 1, y = 1, z = 1}, 1384, 10 function onDeath(cid, corpse, deathList) for i = 1, #deathList do local kid = deathList[i] if isPlayer(cid) and getPlayerVocation(cid) == getPlayerVocation(kid) then doTeleportThing(kid, prisaoPos, true) doSendAnimatedText(getThingPos(kid), "Jailed") doPlayerSendTextMessage(kid, 25, "You were arrested for killing a player of the same vocation as yours.") setPlayerStorageValue(kid, 1383, 1) addEvent(doTeleportThing, tempo*1000, kid, getTownTemplePosition(getPlayerTown(cid)), true) end end end Logo após feito isso, vá em login.lua e registre a seguinte linha: registerCreatureEvent(cid, "JailSystem") E depois vá em creaturescript.XML e cole a outra seguinte linha: <event type="death" name="JailSystem" event="script" value="nome do arquivo.lua"/>
  12. Substitua esse npc que você passou por este: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, 'nayoro') then if getPlayerStorageValue(cid,2124) > 1 and getPlayerStorageValue(cid, 2124) < 3 then if getPlayerItemCount(cid, 4865) >= 40 then selfSay('Vejo que você me trouxe os items...', cid) selfSay('Obrigado pela ajuda !',cid) doPlayerAddExperience(cid,53000) doPlayerAddItem(cid,2152, 60) doPlayerRemoveItem(cid, 4865, 40) setPlayerStorageValue(cid,2124,3) else selfSay('Você tem que me trazer 40 items!', cid) end else selfSay('Você deve falar com o Nayoro primeiro e ser Chuunin.',cid) end if getPlayerStorageValue(cid,2124) > 2 and getPlayerStorageValue(cid,2124) < 4 then selfSay('Parabens! Voce completou sua primeira missão rank C! Agora vá até o Kam e entregue a ele 50 itens que podem ser encontrados nos Onbas perto da cidade.',cid) end return true end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  13. SmiX

    Urgente (Talkction)

    @Baiakuda Já dei a solução para sua dúvida. Você vai precisar programar certos códigos em seu cliente ou nas sources. Por script acho impossível. Vamos parar de dar respostas não testadas, aqui.
  14. Você está testando com o GOD? Tente com um player.
  15. Tenta assim: --------------- Cofiguração --------------- local storage, valor = 2124, 2 --------------- Cofiguração --------------- local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end local node1 = keywordHandler:addKeyword({'chuunin'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Eu posso promover voce para chuunin por 20000 gold coins. Voce quer ser promovido?'}) node1:addChildKeyword({'sim'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 20000, level = 40, promotion = 1, text = 'Parabens! Voce e um Chuunin.'}) node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true}) setPlayerStorageValue(cid, storage, valor) --[[ local node2 = keywordHandler:addKeyword({'epic'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can epicize you for 200000 gold coins. Do you want me to epicize you?'}) node2:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 200000, level = 120, promotion = 2, text = 'Congratulations! You are now epicized.'}) node2:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true}) ]]-- npcHandler:addModule(FocusModule:new())
  16. SmiX

    Urgente (Talkction)

    Acho que no seu caso, iria precisar programar certos códigos em seu cliente ou nas sources. Por script acho impossível.
  17. Caso não funcione, vá em config.lua e procure por: rateLoot = Veja qual é o valor depois da virgula, tire-o e coloque o valor que quiser. Logo após isso teste.
  18. Na parte: <item id="7910" chance="700"/><!-- peanut --> Em chance você aumenta para 70000 que vai dropar praticamente toda vez.
  19. Tenta assim: local helmets = { ["demon helmet"] = {fist = 10, sword = 20, axe = 10, shield = 10}, } function onMoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status) x = helmets[getItemNameById(item.itemid)] if x then if not isPlayer(cid) then return false end if not getPlayerAccess(cid) < 4 then return false end if getPlayerSkill(cid, 0) >= x.fist and getPlayerSkill(cid, 2) >= x.sword and getPlayerSkill(cid, 3) >= x.axe and getPlayerSkill(cid, 5) >= x.shield then else return doPlayerSendCancel(cid, "Sorry, you don't have this permision") end else return false end return true end
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...