
Tudo que xWhiteWolf postou
-
(Resolvido)Teleport
actions\scripts function isWalkable(pos, creature, proj, pz)-- by Nord if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end if getTopCreature(pos).uid > 0 and creature then return false end if getTileInfo(pos).protection and pz then return false, true end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end function onUse(cid, item, frompos, itemEx, topos) if isWalkable(topos, true, true, true) then doTeleportThing(cid, topos) addEvent(function() if isPlayer(cid) then doSendMagicEffect(getCreaturePosition(cid), 10) end end, 100) doSendMagicEffect(frompos, 10) else doPlayerSendCancel(cid, "This position is not reachable") end return false end e no actions.xml <action itemid="2379" script="kunai.lua" allowfaruse="1"/> Testado e funcionando em 8.54, vc só vai ter que garantir que não exista nenhum outro script usando esse mesmo id.
-
(Resolvido)Deixa Clone Com Buff
local tempo = 180 -- tempo em segundos. local effect = {208} -- effect no player, caso queira apenas 1, basta remover os outros numeros. local ml = 30 -- quantos ira aumentar o skill de ML local skillfist = 55 -- quantos ira aumentar o skill de Fist local skillsword = 15 -- quantos ira aumentar o skill de Sword local skillaxe = 15 -- quantos ira aumentar o skill de Axe local skillclub = 55 -- quantos ira aumentar o skill de Club local skilldistance = 15 -- quantos ira aumentar o skill de Distance local skillshield = 15 -- quantos ira aumentar o skill de Shield local health = 80 -- A cada 1 segundo quantos aumentar de vida local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield) setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 250) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setCombatCondition(combat, condition) function magicEffect3(tempo2,tempo3,cid) if (isCreature(cid)) then if getPlayerStorageValue(cid, 102053) > 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then for i=1, #effect do local position = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(position, effect[i]) -- parte modificada local summons = getCreatureSummons(cid) if #summons > 0 then for k = 1, #summons do local pos = getCreaturePosition(summons[k]) local positions = {x = pos.x + 1, y = pos.y, z = pos.z} doSendMagicEffect(positions, effect[i]) end end -- fim da parte modificada end end end end function onCastSpell(cid, var) local position129 = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} if getPlayerStorageValue(cid, 102053) ~= 1 or getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(magicEffect3, tempo2, tempo2, tempo*1000, cid) tempo2 = tempo2 + 300 end setPlayerStorageValue(cid, 102053,1) -- storage verifica transformado, quando = 1 player esta transformado. doCreatureSay(cid, "Kyuubi Furie", TALKTYPE_MONSTER) doSendMagicEffect(position129, 130) else doPlayerSendCancel(cid, "Sorry, you are transformed.") end end deve resolver, só alterei a função pra funcionar com cada summon;
- Anel de Sauron
-
[Pedido]Sistema de adicionar e remove storage em x tempo
if os.time() - getPlayerStorageValue(cid,55342) > 0 then end só fazer assim que vai dar certo.
-
(Resolvido)[Pedido] "Gema" REP+
o cristal não é um item de player, é um item grande.. os id's dele tão no actions.xml ali no spoiler, só ver e colocar. Qualquer action de apertar alavanca e criar item pode ser usada nesse sistema pra deixar ele mais bonito (tem várias aqui no tk, dá uma procurada);
-
[Spell] LIFESTEAL - útil
não mas é bem tranquilo.. só preciso que ele diga uma fórmula de dano que ele queira
-
[Pedido]Sistema de adicionar e remove storage em x tempo
tá cara, mas pra que vc quer tirar a storage??? vc não tá respondendo as coisas que eu to te perguntando :/ fica dificil te ajudar assim... é muito mais simples colocar os.time() + o tempo e quando for fazer a checagem por outro script fazer os.time() - o valor do storage anterior.
-
(Resolvido)[Pedido] "Gema" REP+
é só baixar, passar scan com antivirus e deletar o executável que fica tranquilo.. em todo caso agora já foi hahaha
-
[Spell] LIFESTEAL - útil
Amigo, submoderação é contra as regras... tome cuidado.
-
(Resolvido)[Pedido] "Gema" REP+
mas você é muito preguiçoso viu... PS: eu apenas peguei os arquivos que vem no server "Mapa FoxWorld 1.0", os créditos são de quem fez. As spells são todas feitas pelo Jovial, é o script dele de meteor cast. O resto foi feito baseado no foxworld.
- Regeneraçao do player se mantem VIP
-
Porta que só abre para um determinado nível
local tab = { lvl = 300 } function onUse(cid, item, frompos, item2, topos) if getPlayerLevel(cid) <= tab.lvl then doTeleportThing(cid, topos) doSendMagicEffect(frompos, CONST_ME_MAGIC_BLUE) else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Apenas players até o level "..tab.lvl.." podem entrar.") doSendMagicEffect(frompos, CONST_ME_POFF) end return true end testa agr
-
[Pedido]Sistema de adicionar e remove storage em x tempo
esse script já está com exhaust entre um uso.. oque mais vc quer?
-
Ser ateu..
discordo. Ser agnóstico é isso daí que você disse, ser ateu é acreditar na crença de que não existe nada. Ser ateu é ser cético ao ponto de não ter a mente aberta pra teorias que provavelmente estariam certas mas por não ter um embasamento científico bem definido (ainda) são descartadas. Se quiser que eu explique o porque eu penso assim me chama PM que eu te dou fortes argumentos que comprovam oque eu falei; Lembrando que isso daí eu estou considerando o Ateu e agnóstico teóricos, porque na realidade oque temos é muito diferente.. geralmente são uns adolescentes que não sabem nem 1% doque acontece na terra e querem ter opinião formada sobre assuntos esotéricos
-
(Resolvido)Deixa Clone Com Buff
a cada up que vc der vai ser um dia a mais que eu vou demorar pra resolver isso pra ti. Eu já falei que vou fazer cara, para de ficar pressionando... já é o terceiro script que eu vou resolver pra você e eu te digo que não gosto de ser pressionado e você continua pressionando.. não vai haver uma próxima vez.
-
[Pedido]Sistema de adicionar e remove storage em x tempo
posta aqui seu sistema que eu faço as alterações
-
Porta que só abre para um determinado nível
testa aí cara, não tem como a gente saber.. se não funcionar diga o erro que dá que a gente tenta arrumar.
-
summons n ataca magia
agora vai! haha
-
(Resolvido){PEDIDO} Script de TRAPP Narutibia
existe uma função que faz isso que é a doCreatureSetNoMove(cid, cannotMove). Pra usar ela vc faz assim: doCreatureSetNoMove(uid, true) --- faz o cara não andar addEvent(doCreatureSetNoMove, segundos trapado * 1000, uid, false) --- faz o cara andar e vai ser executada depois de x segundos. Se eu quiser deixar o cara 15 segundos preso eu faço: e esse uid aí é o unique id da criatura que eu quero que seja trapada. Se for o cara que vai castar a spell vc troca uid por cid, se for um target vc faz local target = getCreatureTarget(cid) doCreatureSetNoMove(target, true) addEvent(doCreatureSetNoMove, 15 * 1000, target, false) Espero que tenha ajudado.
-
[Pedido]Sistema de adicionar e remove storage em x tempo
amigo, fica muito mais fácil de alguém te ajudar se você apresentar o problema pra gente... você quer esse sistema pra que? Podem ter outras formas mais inteligentes de resolver oque você quer!
-
Script Refine
testa assim e me diz se resolve local vocations = {11, 16, 21} local ids_bloqueados = {2160, 5706, 7893, 7892, 7894, 7895, 7896, 7897, 7898, 7899, 7901, 7902, 2640, 6132, 2195, 9932, 9933, 11350, 11297, 3982, 8857, 8855, 8856, 7438, 8858, 8854, 2456, 7366, 5907, 3965, 7378, 2389, 7367, 7368, 2425, 9932} local controle = { {level = 0, quantOre = 1, chance = 48}, {level = 1, quantOre = 2, chance = 33}, {level = 2, quantOre = 3, chance = 28}, {level = 3, quantOre = 4, chance = 27}, {level = 4, quantOre = 5, chance = 24}, {level = 5, quantOre = 6, chance = 20}, {level = 6, quantOre = 7, chance = 10}, {level = 7, quantOre = 8, chance = 8}, {level = 8, quantOre = 9, chance = 5}, {level = 9, quantOre = 10, chance = 2} } function getItemLevel(uid) if uid > 0 then return getItemAttribute(uid, "lvl") or 0 end return false end function doItemAddLevel(uid, count) if uid > 0 and tonumber(count) > 0 then return doItemSetAttribute(uid, "lvl", getItemLevel(uid) + count) end return false end function onUse(cid, item, fromPosition, itemEx, toPosition) if not isInArray(vocations, getPlayerVocation(cid)) then return doPlayerSendCancel(cid, "Apenas blacksmiths podem refinar.") elseif isInArray(ids_bloqueados, itemEx.uid) then return doPlayerSendCancel(cid, "Este item nao pode ser refinado.") end if getItemInfo(itemEx.itemid).attack > 0 or getItemInfo(itemEx.itemid).defense > 0 or getItemInfo(itemEx.itemid).armor > 0 then for _, upgrade in pairs(controle) do local atk = getItemAttribute(itemEx.uid, "attack") or getItemInfo(itemEx.itemid).attack local def = getItemAttribute(itemEx.uid, "defense") or getItemInfo(itemEx.itemid).defense local arm = getItemAttribute(itemEx.uid, "armor") or getItemInfo(itemEx.itemid).armor local chance = math.random(1, 100) if getItemLevel(itemEx.uid) == upgrade.level then if doPlayerRemoveItem(cid, 5880, upgrade.quantOre) then doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_CRAPS) if chance <= upgrade.chance then if getItemLevel(itemEx.uid) == 0 then doItemSetAttribute(itemEx.uid, "description", "Esse item foi refinado por " ..getCreatureName(cid)) end doItemAddLevel(itemEx.uid, 1) doItemSetAttribute(itemEx.uid, "name", getItemNameById(itemEx.itemid).. " + " ..getItemLevel(itemEx.uid)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce refinou com sucesso!") if atk > 0 then doItemSetAttribute(itemEx.uid, "attack", atk + 1) return true elseif arm > 0 then doItemSetAttribute(itemEx.uid, "armor", arm + 1) return true elseif def > 0 then doItemSetAttribute(itemEx.uid, "defense", def + 1) return true end else doTransformItem(itemEx.uid, 2256) doItemSetAttribute(itemEx.uid, 'name', "metal trash") doItemSetAttribute(itemEx.uid, 'attack', 0) doItemSetAttribute(itemEx.uid, 'armor', 0) doItemSetAttribute(itemEx.uid, 'defense', 0) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce falhou.") return true end else doPlayerSendCancel(cid, "Voce nao tem iron ores o suficiente. Voce precisa de "..upgrade.quantOre.." iron ores.") end end end else doPlayerSendCancel(cid, "Esse item nao pode ser refinado.") end return true end
- Regeneraçao do player se mantem VIP
-
[PEDIDO] Item se tornar unique ao ser comprado no Shop
1) que versão é o server? 2) o shop que vc usa é o do gesior mesmo? 3) Teria como colocar pra ele editar o item antes de adicionar? 4) Você vai querer que fique o nome do player gravado no item? exemplo: "Fire Sword" ficaria -> "xWhiteWolf's Fire Sword" Responde essas perguntas que eu vejo de fazer pra ti. Edit: Achei isso daqui pelo fórum, vê se é util pra você http://www.tibiaking.com/forum/topic/2879-sistema-de-owner-para-equips/
-
Oquê vocês serão?
ban saber
-
(Resolvido)[Ajuda] Como fazer magias "vip"
setCombatArea(xCombat, area) <<-- você colocou "xCombat" e o combat na verdade se chama "xcombat"