Ir para conteúdo

Sttorm

Campones
  • Total de itens

    22
  • Registro em

  • Última visita

  • Dias Ganhos

    2

Sttorm venceu a última vez em Maio 13 2018

Sttorm had the most liked content!

Sobre Sttorm

Perfil

  • Gênero
    Masculino

Informações

  • Forma que conheci o xTibia
    Sites de Busca
  • Sou
    Scripter

Últimos Visitantes

1175 visualizações

Sttorm's Achievements

  1. Na minha opinião , nenhum. O Tibia e sua comunidade está acabando aos poucos , sendo muito difícil um Ot se tornar grande hoje em dia devido as concorrências, mesmo fazendo um excelente Ot , sempre vai haver melhores .
  2. Talkactions -- <talkaction words="!antired" event="script" value="antired.lua"/> function onSay(cid, words, param) local storage = 43686 if (param == '') then doSendMagicEffect(getCreaturePosition(cid), 2) return doPlayerSendTextMessage(cid, 25, "Digite !PVP ON ou OFF") end if (param == 'OFF') then doSendMagicEffect(getCreaturePosition(cid), 2) setPlayerStorageValue(cid, storage, 1) return doPlayerSendTextMessage(cid, 25, "Você desabilitou o PVP") end if (param == 'ON') then doSendMagicEffect(getCreaturePosition(cid), 2) setPlayerStorageValue(cid, storage, -1) return doPlayerSendTextMessage(cid, 25, "Você habilitou o PVP") end end CreatureScripts -- <event type="attack" name="offattack" event="script" value="killdeath.lua"/> -- <event type="statschange" name="offstats" event="script" value="killdeath.lua"/> -- registerCreatureEvent(cid, offattack) -- registerCreatureEvent(cid, offstats) local storage = 43686 function onAttack(cid, target) local pos = getCreaturePosition(cid) if isPlayer(cid) and isPlayer(target) and getPlayerStorageValue(cid, storage) == 1 then doPlayerSendTextMessage(cid, 23, "Você não pode atacar enquanto estiver com o PvP OFF") doSendMagicEffect(pos, 2) return false end return true end function onStatsChange(cid, attacker, type, combat, value) local storage = 43686 if value >= 1 and (type == STATSCHANGE_HEALTHLOSS or (getCreatureCondition(cid, CONDITION_MANASHIELD) and type == STATSCHANGE_MANALOSS)) and isPlayer(attacker) then if getPlayerStorageValue(attacker, storage) == 1 then doPlayerSendTextMessage(attacker, 23, "Você não pode atacar enquanto estiver com o PvP OFF") doSendMagicEffect(getCreaturePosition(attacker), 2) return false end end return true end
  3. Fala pessoal , vi muita galera com problema no look (principalmente em narutibias). Então resolvi refazer o sistema de look Crie um novo arquivo em Creaturescripts e cole isso ( Tem que registrar na XML e no login.lua, ambas tags estão na script) -- <event type="look" name="showVoc" event="script" value="showvoc.lua"/> -- registerCreatureEvent(cid, showVoc) local t = { [-1] = "Estudante", [0] = "Estudante", [1] = "Genin", [2] = "Chunnin", [3] = "Jounin", [4] = "Anbu", [5] = "Sennin" } function onLook(cid, thing, position, lookDistance) local storage = 35461 local get_description = t[getPlayerStorageValue(thing.uid, storage)] local get_sex = (getPlayerSex(thing.uid) == 0 and "She" or "He") local get_town = getTownName(getPlayerTown(thing.uid)) if isPlayer(thing.uid) and thing.uid ~= cid then doPlayerSetSpecialDescription(thing.uid, "\n ".. get_sex .." are ".. get_description ..". \n ".. get_sex .." is the resident of ".. get_town ..".") end return true end Como o sistema funciona ? como eu configuro ? Primeiramente , a script pega o valor que o player tem de uma storage e a identifica na tabela , onde o que está entre "[]" é o valor da storageExemplo : O player tem a storage 35461 e 3 como o value dela , então no look retornará Jounin Para configurar , mecha aqui local t = { [-1] = "Estudante", [0] = "Estudante", [1] = "Genin", [2] = "Chunnin", [3] = "Jounin", [4] = "Anbu", [5] = "Sennin" } Lembrando que a ultima parte não deverá conter virgula , ficando assim local t = { [-1] = "Estudante", [0] = "Estudante", [1] = "Genin" } A script não funciona se você der look em si mesmo.Chars com group maior que 2 retornarão erro ao dar look.
  4. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 38) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 31) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -21.3, -0, -21.0, -0) function onUseWeapon(cid, var) local target = getCreatureTarget(cid) local pos = getCreaturePosition(target) local s = 2 -- segundos paralizado if math.random(1,5) == 1 then doCreatureSetNoMove(target, true) addEvent(doCreatureSetNoMove, s * 1000, target, false) doSendAnimatedText(pos, "Paralyze", 18) return doCombat(cid, combat, var) else return doCombat(cid, combat, var) end end
  5. No código do summon , na primeira linha após a função principal adicione ; local from,to = {x=1001, y=705, z=7},{x=1031, y=737, z=7} -- começo e final do local if isInRange(getCreaturePosition(cid), from, to) then doPlayerSendCancel(cid, "Você não pode usar summon nessa área") return true end
  6. 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 storage = 11234 -- Storage local pos = {x = 100, y = 200, z = 7} -- Local que ele será teleportado; local item = 2150 -- ID do item local count = 10 -- Count do item local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if(msgcontains(msg, 'travel')) then if getPlayerStorageValue(cid, storage) >= 1 then if doPlayerRemoveItem(cid, item, count) then doTeleportThing(cid, pos) selfSay('Thanks!!!', cid) else selfSay('you dont have the item', cid) end else selfSay('you dont have the storage', cid) end else selfSay('say [travel]', cid) end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  7. Alguém extende um Old client 8.54 ?? Arquivos.rar
  8. A source está junto ao datapack. È simples , copie e cole a DAT e SPR em outra pasta e as passe para 8.60 , ou use o client para editar o items.otb
  9. Atualizado dia 06/07 . Acrescentado o client para editar o mapa e items.otb.
  10. ATUALIZADO DIA 06/07 Hey guys , suave ? Hoje vim trazer o rework da base Nto B&W , sendo refeita por mim , Segue as informações Se achar algum bug comente no tópico. Scan acusando vírus , já passei Nod32 e Norton e não encontrou vírus , apenas dll's necessárias para funcionar Informações Erros e Bugs Prints Downloads Créditos
  11. Créditos para o Xwhitewolf autor do script. Editado 11-06-2017 16:28 por PedroHL Tem certeza que não tem os créditos ?
  12. Script function onUse(cid, item, fromPosition, itemEx, toPosition)local waittime = 3.0 -- Tempo de exhaustionlocal storage = 9999 -- storagelocal pid = getCreaturePosition(cid)local cura = 2000 -- qnt hp/mana vai curar if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, " Exausted ... " ) else doCreatureAddMana(cid, cura) -------- LEIA : ESTA SCRIPT ESTA CONFIGURADA PARA MANA , SE QUISER QUE SEJA HP BASTA MUDAR A PALAVRA " Mana " PARA A PALAVRA " Health " doPlayerRemoveItem(cid, thing.uid, 1) exhaustion.set(cid, storage, waittime ) doSendAnimatedText(pid, "+"..cura.."", 65) end return trueend XML <action itemid="13468" event="script" value="ramen.lua"/>
  13. XML <wand id="2524" level="100" event="script" value="sound.lua"> </wand> SCRIPT local combat = createCombatObject()setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 4)setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -7.2, 1, -3.3, 1)local critical = createCombatObject()setCombatParam(critical, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)setCombatParam(critical, COMBAT_PARAM_DISTANCEEFFECT, 2)setCombatFormula(critical, COMBAT_FORMULA_LEVELMAGIC, -14.2, 1, -6.3, 1)function onUseWeapon(cid, var)local chance = 5 -- porcentagem de chance de dar criticalif isCreature(getCreatureTarget(cid)) and math.random(1,100) <= chance thendoCombat(cid, critical, var)local targetpos = getCreaturePosition(getCreatureTarget(cid))local pos = {x=targetpos.x+1, y=targetpos.y+1, z=targetpos.z}doSendMagicEffect(pos, 86)doSendAnimatedText(getCreaturePosition(cid), "S O U N D!", math.random(1,255))elsedoCombat(cid, combat, var)endreturn trueend
  14. XML <talkaction words="!saga" event="script" value="saga.lua"/> Script local saga = {-- Minato ---[11] = {727,728,729,730,731,732,733,734},-- Hashirama ---[10] = {2,3,4,5,6,7,8,9,10,11,12,13},-- Shikamaru ---[9] = {824,825,826,827,823,828},-- Tenten ---[8] = {814,815,816,817,818,819,820,821,822},-- Kakashi ---[7] = {1040, 1037, 1036, 1032, 1035, 1034, 1033, 1031, 1030, 1038, 1044, 1045},-- Hinata ---[6] = {24,327,857,858,859,860,855,600},-- Neji ---[5] = {832,833,834,835,836,837,830,831},-- Sakura ---[4] = {175,171,665,664,667,668,611,612},-- Lee ---[3] = {843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 1026, 1027, 1028, 1029},-- Sasuke ---[2] = {1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023,906,907,908, 1024, 1025},-- Naruto ---[1] = {1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1009, 1008, 1010, 1011, 1012, 1013, 1014, 1015},}local level = 25 -- Limite para liberar uma saga novafunction onSay(cid, words, param, channel)if exhaustion.check(cid, 120) == TRUE thendoPlayerSendCancel(cid, "You are exhausted.")doSendMagicEffect(getCreaturePosition(cid), 3)return TRUEend if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Digite o número da saga que você deseja.") exhaustion.set(cid, 120, 0.5) return true endif not saga[getPlayerVocation(cid)] thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce nao pode trocar de saga.")exhaustion.set(cid, 120, 0.5)return trueendlocal t = string.explode(param, ",") if(t[2]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Could not understand.") return true end if not (tonumber(t[1])) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Digite o número da saga que você deseja.") exhaustion.set(cid, 120, 0.5) return true endif tonumber(t[1]) > #saga[getPlayerVocation(cid)] or tonumber(t[1]) < 1 thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Essa saga não existe.")exhaustion.set(cid, 120, 0.5)return trueendif getPlayerLevel(cid) >= (tonumber(t[1])*level) thendoCreatureChangeOutfit(cid, {lookType = saga[getPlayerVocation(cid)][tonumber(t[1])]})doSendMagicEffect(getThingPos(cid), saga[getPlayerVocation(cid)].effect)doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce escolheu uma nova saga!")doPlayerSay(cid, "Saga!!", TALKTYPE_ORANGE_1)exhaustion.set(cid, 120, 0.5)elsedoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Desculpe, você precisa de level "..(tonumber(t[1]) * level).." usar essa saga.")endreturn trueend Como configurar ? Primeiro você coloca o ID da voc e em seguida suas outfits , com isso não precisa criar varias vezes na vocations.xml e sim apenas uma vez. Ficando ASSIM [iD DA VOCATION] = {ID DAS OUTFITS , COLOQUE VIRGULA PARA SEPARAR CADA UMA.}, Créditos para o Xwhitewolf autor do script.
  15. Venho trazer uma script que o nome ja diz tudo , você fala o nome da spell e ela invoca o summon. Spells.xml <instant name="Kuchyose gamaguren" words="Kuchyose gamaguren" lvl="200" mana="2500" prem="0" aggressive="0" exhaustion="10000" needlearn="0" event="script" value="naruto/pet.lua"> <vocation id="1"/> </instant> Configure de acordo com o que está pedindo , exemplo : Lvl : 200 -- Coloque o level que o player poderá usar a spell. Script ( Explicações na propria script ) function onCastSpell(cid, var)local from,to = {x=962, y=885, z=7},{x=973, y=892, z=7} -- começo e final do mapalocal from2,to2 = {x=979, y=901, z=7},{x=991, y=905, z=7} -- começo e final do mapalocal playerpos = getPlayerPosition(cid)local position1 = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} -- Não mechalocal position2 = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} -- Não mecha local MaximoSummon = 1 --- Maximo de Monstros Sumonados!! No Caso So Posso Sumonar 1 Cloneslocal monster = "Gamaguren" -- Nome do monstro que será sumonadolocal effect = 5local summons = getCreatureSummons(cid)if isInRange(getCreaturePosition(cid), from, to) or isInRange(getCreaturePosition(cid), from2, to2) thendoPlayerSendCancel(cid, "Você não pode usar Summons Aqui!") return trueendif(table.maxn(summons) < MaximoSummon) then -- no summonslocal clone = doCreateMonster(monster, playerpos)doConvinceCreature(cid, clone)doSendMagicEffect(position1, effect)doSendMagicEffect(position2, effect)doPlayerSendTextMessage(cid,27,'Kuchyose no Jutsu.') return TRUEendend
  • Quem Está Navegando   0 membros estão online

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