Jump to content

Fabi Marzan

Member
  • Content Count

    85
  • Joined

  • Last visited

  • Days Won

    1

Reputation Activity

  1. Like
    Fabi Marzan got a reaction from Cat in Fazer o Buff trocar de vocation por 30 min depois voltar ao normal.   
    local tempo = 30 local effect = {80} local effect1 = {80} local outfit = {lookType = 3} local voc = 6 --- VOCATION local points = 20 local combat = createCombatObject() local health = 0.05 setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, points) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, points) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, points) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, points) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, points) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, points) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, points) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) function doHealthSecond(cid, amount, delay) -- function by vodka if not isCreature(cid) then return LUA_ERROR end doCreatureAddHealth(cid, amount) if delay ~= 1 then addEvent(doHealthSecond, 1000, cid, amount, delay -1) end end local function Magica(tempo2,tempo3,cid) if isCreature(cid) then for i=1, #effect do local position = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z} local position1 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z} doSendMagicEffect(position, effect[i]) doSendMagicEffect(position1, effect1[i]) end end end local function Outfitzinha(cid) doRemoveCondition(cid, CONDITION_OUTFIT) end function onCastSpell(cid, var) registerCreatureEvent(cid, "stordeath") setPlayerStorageValue(cid, voc_stor, getPlayerVocation(cid)) doPlayerSetVocation(cid, voc) addEvent(doPlayerSetVocation,tempo,cid,getPlayerStorageValue(cid, voc_stor)) addEvent(setPlayerStorageValue,tempo,cid,voc_stor,0) if exhaustion.check(cid, 102053) == FALSE then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(Magica, tempo2, tempo2, tempo*1000, cid) addEvent(Outfitzinha, tempo*1000, cid) tempo2 = tempo2 + 1000 end local position = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z} exhaustion.set(cid, 102053, tempo) doCreatureSay(cid, "KAIOKEEEEEEEN", TALKTYPE_MONSTER) doSendMagicEffect(position, 80) doHealthSecond(cid, -getCreatureMaxHealth(cid) * health, tempo) doSetCreatureOutfit(cid, outfit) else doPlayerSendCancel(cid, "Desculpe, voce ja esta Transformado.") end end  
    Em creaturescripts/scripts/
    function onDeath(cid, corpse, deathList) local i = getPlayerStorageValue(cid, voc_stor) if i > 0 then doPlayerSetVocation(cid, i) setPlayerStorageValue(cid, voc_stor, 0) end return true end <event type="death" name="stordeath" event="script" value="stordeath.lua"/>  
  2. Like
    Fabi Marzan got a reaction from Cat in Perder life por segundo ao usar buff   
    Nao sei se isso vai te ajudar
    doCreatureAddHealth(cid, -1500)  
  3. Like
    Fabi Marzan got a reaction from Cat in coom consertar esse "bug" o efeito não acompanha o player   
    E igual, e um outfit com efeito, nao tem outro jeito. A unica maneira seria diminuir o intervalo para 1, mas o que vejo e lento, entao voce ta ussando um TFS 0.4?
     
    Com um OTX2 isso nao aconteceria. O efeito sairia mais rapido.
     
    Ou coloque um script do repeticao no script pra tornarlo mais rapido.
     
     
     
     
     
  4. Like
    Fabi Marzan got a reaction from Cat in Saga System???????   
    E como pegar qualquer script do mission (npc), se voce sabe como os storages funcionam, sabera fazer o resto.
     
    Ex: A primeira missao e matar Mizuki, o que voce tem que fazer e aceitar a missao que Iruka te deixa, e quando voce aceita a missao ele te da o storage xxx, e isso torna possive atacar Mizuki, enquanto voce ataca Mizuki, voce precisa do storage xxx que Iruka deu a ele; ao derrotar Mizuki, voce recebera outro storage xxx que quando voce voltar para Iruka, permitira que voce prossiga para a proxima missao.
     
    E ao falar com Tsunade por exemplo, voce nao sera capaz de falar com ela ate que tenha storage xxx.
     
    Entao digo que se voce sabe como funcionam os storages, voce sabera fazer o resto e outra coisa e saber tambem como acomodar o npc, pois ja vi outros narutos que para as sagas nao funcionam tao bem.
     
    Eu apenas deixo a ideia para voce e seja criativo.
  5. Like
    Fabi Marzan got a reaction from Cat in NÃO CONSIGO CRIAR TELEPORT NO MEU REMERES (HELP PFV)   
    Se voce nao puder, e tao simples quanto colocar um movements.
     
    function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition) if getPlayerLevel(cid) >= 10 then -- Level to go down the ladder if item.actionid == 13528 then -- ActionId SQM (Portal, Stairs) doTeleportThing(cid, {x = 905, y = 939, z = 7}) -- Position where it will take you doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT) else doPlayerSendCancel(cid, "You dont have enough level to down the stairs.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) doTeleportThing(cid, fromPosition, FALSE) end end return true end <movevent type="StepIn" actionid="13528" event="script" value="Portal.lua"/>  
  6. Like
    Fabi Marzan got a reaction from Cat in Alguém sabe como deixa os effect "grudado" no personagem?   
    Tente diminuir o atraso
     
    <globalevent name="effect" interval="100" event="script" value="effect.lua"/> Teste ai, agr e mais rapido em sair o efeito.
  7. Like
    Fabi Marzan got a reaction from Cat in coom consertar esse "bug" o efeito não acompanha o player   
    effect = 141 --- EFEITO doSendMagicEffect({x = pos.x+1, y = pos.y+1, z = pos.z}, config.effect) TEM Q COLOCAR ISSO PRA TROCAR DO POSICAO.
    Nao e necessario tocar no cliente necessariamente, simplesmente inserindo um codigo que o faca mover a posicao do efeito, uma vez que esses efeitos nao sao centralizados.
  8. Like
    Fabi Marzan got a reaction from Cat in Mensagem do player desalinhada com a sprite   
    tem q ussar slicer do object builder, e tente la.
  9. Upvote
    Fabi Marzan got a reaction from Heyron in (Resolvido)Qual servidor tem essas sprite?   
    OBS
    VV
    VV
    VV
     
    Sprites Stone.rar
  10. Like
    Fabi Marzan got a reaction from Cat in Spell com erro em target   
    Testa ai, so q tem um problema quando um target ta correndo.
  11. Like
    Fabi Marzan got a reaction from Cat in Spell com erro em target   
    Hmm nao e um error, so q esse Spell(scripts) e assim.
    Passa seu scripts pra passar outro aqui q tenho.
  12. Like
    Fabi Marzan got a reaction from Ajuka2 in Alguém tem as novas Spriting de wodbo?   
    Sprites do DBOGLOBAL!
    Tibia.dat
     
    Tibia.spr
    Sprites do DBOADVENTURER!
    Tibia.dat
    Tibia.spr
    Sprites do DBOOLD!
    Tibia.spr
    Tibia.dat
     
     
     
  13. Like
    Fabi Marzan got a reaction from Cat in (Resolvido)Training Spell - Spell usada X vezes vira outra spell   
    algo assim?
     
    local config = { effects_per_level = { [1] = 25, -- efeito no [level 1] [2] = 177 -- efeito no [level 2] }, casts_to_up = 300, -- quantas vezes tem que soltar para alcançar o level 2 storages = {level = 46890, cast = 46891} -- só modifique se necessário } local function getPlayerRasenganLevel(cid) return getPlayerStorageValue(cid, config.storages.level) end local function getPlayerRasenganCasts(cid) return getPlayerStorageValue(cid, config.storages.cast) > 0 and getPlayerStorageValue(cid, config.storages.cast) or 0 end local function doPlayerRasenganUp(cid, round) return setPlayerStorageValue(cid, config.storages.cast, getPlayerRasenganCasts(cid) + round) end local combat = {} for i = 1, 2 do combat[i] = createCombatObject() setCombatParam(combat[i] , COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat[i] , COMBAT_PARAM_EFFECT, config.effects_per_level[i]) function onGetFormulaValues(cid, level, maglevel) min = -(level * 0.28 + maglevel * 1.48) * 1.0 * getPlayerRasenganLevel(cid) max = -(level * 0.34 + maglevel * 2.34) * 1.0 * getPlayerRasenganLevel(cid) return min, max end setCombatCallback(combat[i], CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") end function onCastSpell(cid, var) if getPlayerRasenganLevel(cid) == -1 then setPlayerStorageValue(cid, config.storages.level, 1) end if getPlayerRasenganLevel(cid) ~= 2 then doPlayerRasenganUp(cid, 1) local casts, str = getPlayerRasenganCasts(cid), '' if casts == 1 then str = "First time casting Rasengan! You need "..config.casts_to_up.." casts to advance to level 2 and improve its power!" elseif casts == (config.casts_to_up / 2) then str = "You reached 50% on Rasengan level 1. Now you need "..(config.casts_to_up/2).. " casts to advance to level 2." elseif casts == config.casts_to_up then str = "Congratulations! You advanced the Rasengan jutsu from level 1 to level 2." setPlayerStorageValue(cid, config.storages.level, 2) end if str ~= '' then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, str) end end return doCombat(cid, combat[getPlayerRasenganLevel(cid)], var) end  
  14. Upvote
    Fabi Marzan got a reaction from Enenra in (Resolvido)Training Spell - Spell usada X vezes vira outra spell   
    algo assim?
     
    local config = { effects_per_level = { [1] = 25, -- efeito no [level 1] [2] = 177 -- efeito no [level 2] }, casts_to_up = 300, -- quantas vezes tem que soltar para alcançar o level 2 storages = {level = 46890, cast = 46891} -- só modifique se necessário } local function getPlayerRasenganLevel(cid) return getPlayerStorageValue(cid, config.storages.level) end local function getPlayerRasenganCasts(cid) return getPlayerStorageValue(cid, config.storages.cast) > 0 and getPlayerStorageValue(cid, config.storages.cast) or 0 end local function doPlayerRasenganUp(cid, round) return setPlayerStorageValue(cid, config.storages.cast, getPlayerRasenganCasts(cid) + round) end local combat = {} for i = 1, 2 do combat[i] = createCombatObject() setCombatParam(combat[i] , COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat[i] , COMBAT_PARAM_EFFECT, config.effects_per_level[i]) function onGetFormulaValues(cid, level, maglevel) min = -(level * 0.28 + maglevel * 1.48) * 1.0 * getPlayerRasenganLevel(cid) max = -(level * 0.34 + maglevel * 2.34) * 1.0 * getPlayerRasenganLevel(cid) return min, max end setCombatCallback(combat[i], CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") end function onCastSpell(cid, var) if getPlayerRasenganLevel(cid) == -1 then setPlayerStorageValue(cid, config.storages.level, 1) end if getPlayerRasenganLevel(cid) ~= 2 then doPlayerRasenganUp(cid, 1) local casts, str = getPlayerRasenganCasts(cid), '' if casts == 1 then str = "First time casting Rasengan! You need "..config.casts_to_up.." casts to advance to level 2 and improve its power!" elseif casts == (config.casts_to_up / 2) then str = "You reached 50% on Rasengan level 1. Now you need "..(config.casts_to_up/2).. " casts to advance to level 2." elseif casts == config.casts_to_up then str = "Congratulations! You advanced the Rasengan jutsu from level 1 to level 2." setPlayerStorageValue(cid, config.storages.level, 2) end if str ~= '' then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, str) end end return doCombat(cid, combat[getPlayerRasenganLevel(cid)], var) end  
  15. Like
    Fabi Marzan got a reaction from Cat in (Resolvido)Colocar posição de efeito nesse action   
    local position = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}             doSendMagicEffect(position, efeitosAura[i])  
  16. Like
    Fabi Marzan got a reaction from XGaduX in Spell com custo programável a cada hit   
    Usando essa funcao
    doCreatureAddMana(cid, -2000) Vida
    doCreatureAddHealth(cid, -2000)  
  17. Like
    Fabi Marzan got a reaction from Cat in Spell com custo programável a cada hit   
    Usando essa funcao
    doCreatureAddMana(cid, -2000) Vida
    doCreatureAddHealth(cid, -2000)  
  18. Like
    Fabi Marzan got a reaction from Cat in Alterando dimensao do Shoot Effects   
    ¿Isso?
    local pos = getCreaturePosition(target) doSendDistanceShoot({x=getCreaturePosition(target).x-2,y=getCreaturePosition(target).y-2,z=getCreaturePosition(target).z}, getCreaturePosition(target), 97)  
  19. Like
    Fabi Marzan got a reaction from Cat in [Error - Spell Interface]   
    USSA ESSE MELHOR:
    local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_HITCOLOR, 210) setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 125) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -4.4, 1, -4.5, 1) local function onCastSpell1(parameters) doCombat(parameters.cid, parameters.combat1, parameters.var) end function SPELL(cid) -- <<< FUNCAO if isCreature(cid) and isCreature(getCreatureTarget(cid)) then local position = {x=getThingPosition(getCreatureTarget(cid)).x+2, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z} doSendMagicEffect(position, 310) end end function onCastSpell(cid, var) local waittime = 1 -- Tempo de exhaustion local storage = 3 -- não mecha if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Usted esta cansado.") doSendMagicEffect(getCreaturePosition(cid), 2) return false end local parameters = {cid = cid, var = var, combat1 = combat1 , combat2 = combat2} for i = 1, 4 do addEvent(function() if isCreature(cid) then addEvent(onCastSpell1, 100, parameters) addEvent(SPELL,100,cid) end end, 1 + ((i-1) * 275)) end exhaustion.set(cid, storage, waittime) return true end  
  20. Like
    Fabi Marzan got a reaction from Cat in spells que trapa a frente do jogador   
    é muito parecido com o que você quer local combat_lv1 = createCombatObject() setCombatParam(combat_lv1, COMBAT_PARAM_EFFECT, 111) setCombatParam(combat_lv1, COMBAT_PARAM_CREATEITEM, 1706) local combat_lv2 = createCombatObject() setCombatParam(combat_lv2, COMBAT_PARAM_EFFECT, 111) setCombatParam(combat_lv2, COMBAT_PARAM_CREATEITEM, 1706) local combat_lv3 = createCombatObject() setCombatParam(combat_lv3, COMBAT_PARAM_EFFECT, 111) setCombatParam(combat_lv3, COMBAT_PARAM_CREATEITEM, 1706) local combat_lv4 = createCombatObject() setCombatParam(combat_lv4, COMBAT_PARAM_EFFECT, 111) setCombatParam(combat_lv4, COMBAT_PARAM_CREATEITEM, 1706) local area_lv1 = createCombatArea({ {1, 0, 1}, {1, 0, 1}, {0, 1, 0}, {0, 2, 0} }) local area_lv2 = createCombatArea({ {0, 1, 0}, {1, 1, 1}, {1, 1, 1}, {0, 1, 0}, {0, 2, 0} }) local area_lv3 = createCombatArea({ {1, 1, 1, 1, 1}, {1, 1, 1, 1, 1}, {1, 1, 1, 1, 1}, {0, 1, 1, 1, 0}, {0, 0, 1, 0, 0}, {0, 0, 2, 0, 0} }) local area_lv4 = createCombatArea({ {1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 2, 0, 0, 0} }) setCombatArea(combat_lv1, area_lv1) setCombatArea(combat_lv2, area_lv2) setCombatArea(combat_lv3, area_lv3) setCombatArea(combat_lv4, area_lv4) local function onCastSpell1(parameters) doCombat(parameters.cid, combat_lv1, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, combat_lv2, parameters.var) end local function onCastSpell3(parameters) doCombat(parameters.cid, combat_lv3, parameters.var) end local function onCastSpell4(parameters) doCombat(parameters.cid, combat_lv4, parameters.var) end function onCastSpell(cid, var) local waittime = 10 -- Tempo de exhaustion local storage = 5439 if exhaustion.check(cid, storage) then return false end local from,to = {x=901, y=701, z=7},{x=931, y=733, z=7} -- começo e final do mapa if isInRange(getCreaturePosition(cid), from, to) then doPlayerSendCancel(cid, "Você não pode usar esse jutsu nessa area!") return true end local position = getCreaturePosition(cid) local t = { [0] = {x = position.x, y = position.y - 3, z = position.z}, [1] = {x = position.x + 3, y = position.y, z = position.z}, [2] = {x = position.x, y = position.y + 3, z = position.z}, [3] = {x = position.x - 3, y = position.y, z = position.z}, [4] = {x = position.x - 3, y = position.y, z = position.z}, } local parameters = { cid = cid, var = var} local spell_storage = 42552 if getPlayerStorageValue(cid, spell_storage) < 100 then addEvent(onCastSpell1, 0, parameters) setPlayerStorageValue(cid, spell_storage, getPlayerStorageValue(cid, spell_storage)+1) elseif getPlayerStorageValue(cid, spell_storage) == 100 then addEvent(onCastSpell2, 0, parameters) setPlayerStorageValue(cid, spell_storage, getPlayerStorageValue(cid, spell_storage)+1) doPlayerSendTextMessage(cid, 22, "Seu jutsu progrediu para o level 2") doSendMagicEffect(getCreaturePosition(cid),28) doSendAnimatedText(getCreaturePosition(cid), 'Jutsu UP', 210) elseif getPlayerStorageValue(cid, spell_storage) > 100 and getPlayerStorageValue(cid, spell_storage) < 300 then addEvent(onCastSpell2, 0, parameters) setPlayerStorageValue(cid, spell_storage, getPlayerStorageValue(cid, spell_storage)+1) elseif getPlayerStorageValue(cid, spell_storage) == 300 then addEvent(onCastSpell3, 0, parameters) setPlayerStorageValue(cid, spell_storage, getPlayerStorageValue(cid, spell_storage)+1) doPlayerSendTextMessage(cid, 22, "Seu jutsu progrediu para o level 3") doSendMagicEffect(getCreaturePosition(cid),28) doSendAnimatedText(getCreaturePosition(cid), 'Jutsu UP', 210) elseif getPlayerStorageValue(cid, spell_storage) > 300 and getPlayerStorageValue(cid, spell_storage) < 500 then addEvent(onCastSpell3, 0, parameters) setPlayerStorageValue(cid, spell_storage, getPlayerStorageValue(cid, spell_storage)+1) elseif getPlayerStorageValue(cid, spell_storage) == 500 then addEvent(onCastSpell4, 0, parameters) setPlayerStorageValue(cid, spell_storage, getPlayerStorageValue(cid, spell_storage)+1) doPlayerSendTextMessage(cid, 22, "Seu jutsu progrediu para o level 4") doSendMagicEffect(getCreaturePosition(cid),28) doSendAnimatedText(getCreaturePosition(cid), 'Jutsu UP', 210) elseif getPlayerStorageValue(cid, spell_storage) > 500 then addEvent(onCastSpell4, 0, parameters) setPlayerStorageValue(cid, spell_storage, getPlayerStorageValue(cid, spell_storage)+1) end exhaustion.set(cid, storage, waittime) return TRUE end  
  21. Upvote
    Fabi Marzan got a reaction from Cat in TFS para OTX   
    Usei Tfs 0.4 ate usar as mesmas sources do NTO HARD e a partir dai comecei do novo.
  22. Thanks
    Fabi Marzan got a reaction from ilLusioN in Pack de sprites free   
    BOM
  23. Thanks
    Fabi Marzan reacted to ilLusioN in Pack de sprites free   
    Bom eu sou novo aq no TK, e resolvi postar umas sprites "minhas" por conta de desavenças com 1 certo ADM não vou citar nomes nem nd, bom é isso.
     
    Caso as sprites tenham algum bug de posição, peço q me desculpem pois teve algumas q não testei.


    Scan: https://www.virustotal.com/gui/file/a3e38f7b19163c088bb8b4efc33b2bdc780e580f90f3308607f6fdd606288d43/detection
     
    Download: http://www.mediafire.com/file/tcsum7vaqzgwqg6/Packzinho+de+gratís.rar/file
     
    Bom uso !
     

  24. Upvote
    Fabi Marzan got a reaction from Cat in Sprites NDBO!   
    Verifica os clientes ai
    https://mega.nz/file/ePw22QhK#oOaSVi1NOtGryfXUaaqEKT4OLahIJ23QG3RIwLVJ3YI
  25. Thanks
    Fabi Marzan got a reaction from H3ITORR in Sprites NDBO!   
    Verifica os clientes ai
    https://mega.nz/file/ePw22QhK#oOaSVi1NOtGryfXUaaqEKT4OLahIJ23QG3RIwLVJ3YI
×
×
  • Create New...

Important Information

Confirmação de Termo