Ir para conteúdo

lukas13on

Artesão
  • Total de itens

    138
  • Registro em

  • Última visita

Tudo que lukas13on postou

  1. <instant name="Exori Bong" words="exori bong" lvl="65" mana="580" prem="0" exhaustion="2000" needtarget="1" range = "4" needlearn="0" script="attack/exori bong.lua"> function onCastSpell(cid, var) local exaustion = getSpellEx(2000,Ex) local playerpos = getCreaturePosition(cid) local target = getCreatureTarget(cid) local trapos = getCreaturePosition(target) local level = getPlayerLevel(cid) local numero1 = (level*1.5) -- Dano Mínimo local numero2 = (level*2.5) -- Dano Máximo for i = numero1, numero2 do levelz = (math.random(numero2)) end doExaustionSpell(Ex, 2000) doCreatureAddHealth(target, -levelz) doSendAnimatedText(trapos, levelz, 180) doCreatureAddHealth(cid, levelz) doCreatureAddMana(cid, -300) -- Quanto Vai Gastar de Mana doSendMagicEffect(trapos, 9) doSendMagicEffect(playerpos, 12) doSendDistanceShoot(trapos, playerpos, 40) end
  2. Bom dia venho apresentar a você uma versão de sistema de mineração melhorada por mim espero que gostem: -Sistema : Usar item X em item Y gerando item Z = X+Y=7<% - Npc : Troca item X+Quantidade por Item Z+Quantidade < Money Mineração Script: function onUse(cid, item, frompos, item2, topos) Level = getPlayerLevel(cid) AxeSkill = getPlayerSkill(cid,1) if item2.actionid == 6786 and Level >= 10 and AxeSkill >= 10 then rand = math.random(1,2000) if rand < 20 then doPlayerSendTextMessage(cid,22,"Um stone golem apareceu apartir da pilha de rochas!") doSummonCreature("Stone Golem", topos) elseif rand == 1300 then doPlayerSendTextMessage(cid,22,"Voce achou um golden nugget.") doPlayerAddItem(cid,2157,1) elseif rand > 1995 then doPlayerSendTextMessage(cid,22,"Voce achou uma diamond.") doPlayerAddItem(cid,2145,1) elseif rand >500 and rand <800 then doPlayerAddItem(cid,2148,7) elseif rand >700 and rand <1000 then doPlayerSendTextMessage(cid,22,"Voce achou um Iron Ore.") doPlayerAddItem(cid,5880,1) elseif rand >1000 and rand <1300 then doPlayerSendTextMessage(cid,22,"Voce achou uma Pearl.") doPlayerAddItem(cid,2143,1) elseif rand >300 and rand <600 then doPlayerSendTextMessage(cid,22,"Voce achou um Crystal Piece.") doPlayerAddItem(cid,8300,1) elseif rand >1500 and rand <1800 then doPlayerSendTextMessage(cid,22,"Voce achou um Rare Crystal.") doPlayerAddItem(cid,10613,1) elseif rand >1100 and rand <1400 then doPlayerAddItem(cid,2148,8) elseif rand >800 and rand <1100 then doPlayerAddHealth(cid,-20) doPlayerSendTextMessage(cid,22,"Voce perdeu pontos de vida pela exaustion da mineracao.") elseif rand >500 and rand <800 then doPlayerSendTextMessage(cid,22,"Voce achou um Ruby.") doPlayerAddItem(cid,2147,1) elseif rand >550 and rand <800 then doPlayerSendTextMessage(cid,22,"Um Dwarf feroz apareceu apartir da pilha de rochas!") doSummonCreature("Dwarf", topos) elseif rand == 40 then doPlayerSendTextMessage(cid,22,"Um Dwarf Guard feroz apareceu apartir da pilha de rochas!") doSummonCreature("Dwarf Guard", topos) elseif rand == 20 then doPlayerSendTextMessage(cid,22,"Um Troll fraco apareceu apartir da pilha de rochas!") doSummonCreature("Troll", topos) elseif rand >2000 then doPlayerSendTextMessage(cid,22,"Earthquake!") doPlayerAddHealth(cid,-100) elseif rand == 100 and rand <140 then doPlayerSendTextMessage(cid,22,"Um Troll fraco apareceu apartir da pilha de rochas!") doSummonCreature("Troll", topos) elseif rand == 200 then doPlayerSendTextMessage(cid,22,"Um Dwarf Soldier apareceu apartir da pilha de rochas!") doSummonCreature("Dwarf Soldier", topos) elseif rand >= 105 and rand <150 then end doSendMagicEffect(topos,3) doPlayerAddSkillTry(cid,1,0) doPlayerSay(cid,"Mining!",1) else doPlayerSendCancel(cid,"Voce nao esta minerando no lugar correto, ou nao tem level minimo.") end return 1 end Actions.XML : <action itemid="2553" event="script" value="mining.lua"/> Npc: Script: local focus = 0 local talk_start = 0 local target = 0 local following = false local attacking = false function onThingMove(creature, thing, oldpos, oldstackpos) end function onCreatureAppear(creature) end function onCreatureDisappear(cid, pos) if focus == cid then selfSay('Good bye then.') focus = 0 talk_start = 0 end end function onCreatureTurn(creature) end function msgcontains(txt, str) return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)')) end function onCreatureSay(cid, type, msg) msg = string.lower(msg) if (msgcontains(msg, 'hi') and (focus == 0)) and getDistanceToCreature(cid) < 4 then selfSay('Hello ' .. getCreatureName(cid) .. '! Eu posso fazer barras de ouro por 10 Crystal Coins).') focus = cid talk_start = os.clock() elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then selfSay('Wait you time, ' .. getCreatureName(cid) .. '!') elseif focus == cid then talk_start = os.clock() if msgcontains(msg, 'gold') or msgcontains(msg, 'gold ingot')then if getPlayerItemCount(cid,2157) >= 1 and getPlayerItemCount(cid,2152) >= 100 or getPlayerItemCount(cid,2157) >= 1 and getPlayerItemCount(cid,2160) >= 1 then selfSay('Here you are.') doPlayerAddItem(cid,9971,1) if doPlayerTakeItem(cid,2157,1) and doPlayerTakeItem(cid,2152,100) == 0 or doPlayerTakeItem(cid,2157,1) and doPlayerTakeItem(cid,2160,1) == 0 then end else selfSay('Desculpa, você nao tem o item necessario.') end elseif msgcontains(msg, 'bye') and getDistanceTo(cid) < 4 then selfSay('Good bye, ' .. getCreatureName(cid) .. '!') focus = 0 talk_start = 0 end end end function onCreatureChangeOutfit(creature) end function onThink() if (os.clock() - talk_start) > 30 then if focus > 0 then selfSay('Next Please...') end focus = 0 end if focus ~= 0 then if getDistanceToCreature(focus) > 5 then selfSay('Good bye then.') focus = 0 end end end NPC.xml <npc name="Yenous" script="data/npc/scripts/goldingot.lua" access="5" lookdir="1"> <health now="1000" max="1000"/> <look type="194" head="95" body="76" legs="95" feet="76" addons="3"/> <parameters> <parameter key="message_greet" value="Hello |PLAYERNAME|. I've been working hard these days in this project, I can now repair your dear friend {soft boots}." /> </parameters> </npc> http://www.youtube.com/watch?v=9nxCCW1-Q8Y&feature=youtu.be
  3. Strikes Terra element: efeitos de um exori tera e um "exevo gran mas tera" Script: (combinado os efeito de exori tera + exevo gran mas tera) local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_PLANTATTACK) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_EARTH) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) local distanceCombat = createCombatObject() setCombatParam(distanceCombat, COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE) setCombatParam(distanceCombat, COMBAT_PARAM_EFFECT, CONST_ME_PLANTATTACK) setCombatParam(distanceCombat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_EARTH) setCombatFormula(distanceCombat, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) function onCastSpell(cid, var) if(variantToNumber(var) ~= 0) then return doCombat(cid, distanceCombat, var) end return doCombat(cid, combat, var) end Spells.xml <instant name="tera divine" words="tera divine" lvl="15" mana="99999999" prem="0" range="7" castertargetordirection="1" blockwalls="0" exhaustion="2000" needlearn="0" event="script" value="attack/tera divine.lua"> <vocation id="1"> <vocation id="2"> <vocation id="5"> <vocation id="3"> <vocation id="7"> <vocation id="6"> <vocation id="4"> <vocation id="8"> </vocation></vocation></vocation></vocation></vocation></vocation></vocation></vocation></instant> Screenshot (Obs:no game fica mais lindo .-.) ataques tera feios nunca mais 'o' maldito screenshot n mostra os efeitos ' kkkk Ice element: Combinados efeito de Avalanche + Exori frigo = Orgasmos nerd Script: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ICEAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ICE) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) local distanceCombat = createCombatObject() setCombatParam(distanceCombat, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(distanceCombat, COMBAT_PARAM_EFFECT, CONST_ME_ICEAREA) setCombatParam(distanceCombat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ICE) setCombatFormula(distanceCombat, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) function onCastSpell(cid, var) if(variantToNumber(var) ~= 0) then return doCombat(cid, distanceCombat, var) end return doCombat(cid, combat, var) end Spells.xml <instant name="ice divine" words="ice divine" lvl="15" mana="99999999" prem="0" range="7" castertargetordirection="1" blockwalls="0" exhaustion="2000" needlearn="0" event="script" value="attack/ice divine.lua"> <vocation id="1"> <vocation id="2"> <vocation id="5"> <vocation id="3"> <vocation id="7"> <vocation id="6"> <vocation id="4"> <vocation id="8"> </vocation></vocation></vocation></vocation></vocation></vocation></vocation></vocation></instant> Screenshot (Obs:no game fica mais lindo .-.) Energy Element efeitos de um exori vis com energy beam Script: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGYBALL) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.3, -30, -1.8, 0) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Spells.xml <instant name="divine vis" words="divine vis" lvl="15" mana="99999999" prem="0" range="7" castertargetordirection="1" blockwalls="0" exhaustion="2000" needlearn="0" event="script" value="attack/divine vis.lua"> <vocation id="1"> <vocation id="2"> <vocation id="5"> <vocation id="3"> <vocation id="7"> <vocation id="6"> <vocation id="4"> <vocation id="8"> </vocation></vocation></vocation></vocation></vocation></vocation></vocation></vocation></instant> Screenshot (Obs:no game fica mais lindo .-.) Fire Element efeitos de um "exevo gran mas flam" com exori flam Script: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) local distanceCombat = createCombatObject() setCombatParam(distanceCombat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(distanceCombat, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA) setCombatParam(distanceCombat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE) setCombatFormula(distanceCombat, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) function onCastSpell(cid, var) if(variantToNumber(var) ~= 0) then return doCombat(cid, distanceCombat, var) end return doCombat(cid, combat, var) end Spells.xml <instant name="fire divine" words="fire divine" lvl="15" mana="99999999" prem="0" range="7" castertargetordirection="1" blockwalls="0" exhaustion="2000" needlearn="0" event="script" value="attack/fire divine.lua"> <vocation id="1"> <vocation id="2"> <vocation id="5"> <vocation id="3"> <vocation id="7"> <vocation id="6"> <vocation id="4"> <vocation id="8"> </vocation></vocation></vocation></vocation></vocation></vocation></vocation></vocation></instant> Screenshot (Obs:no game fica mais lindo .-.) AoE Groundshock Script: local combatx = createCombatObject() local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_EFFECT, 255) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 37) setCombatFormula(combat1, COMBAT_FORMULA_SKILL, -1.0, -1, -1, -1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 48) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -1.3, -30, -1.6, 0) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, 49) local arr1 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 1, 1, 0, 3, 0, 1, 1, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local arr2 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 3, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local arr3 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 3, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local areax = createCombatArea(arr1) setCombatArea(combatx, area1) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) function onTargetTile(cid, pos) doCombat(cid,combat1,positionToVariant(pos)) end setCombatCallback(combatx, CALLBACK_PARAM_TARGETTILE, "onTargetTile") local function onCastSpell1(parameters) doCombat(parameters.cid, combatx, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, combat2, parameters.var) end local function onCastSpell3(parameters) doCombat(parameters.cid, combat3, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 300, parameters) addEvent(onCastSpell2, 100, parameters) addEvent(onCastSpell3, 80, parameters) end SpellsXML: <instant name="groundshock" words="groundshock" lvl="15" mana="99999999" prem="0" range="7" castertargetordirection="1" blockwalls="0" exhaustion="2000" needlearn="0" event="script" value="attack/groundshock.lua"> <vocation id="1"> <vocation id="2"> <vocation id="5"> <vocation id="3"> <vocation id="7"> <vocation id="6"> <vocation id="4"> <vocation id="8"> </vocation></vocation></vocation></vocation></vocation></vocation></vocation></vocation></instant> ScreenShot: Como vocês sabem screenshot não mostra spell ;o Death Aoe*new Script: local combatx = createCombatObject() local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_EFFECT, 255) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 31) setCombatFormula(combat1, COMBAT_FORMULA_SKILL, -1.0, -1, -1, -1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 17) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, 1.0, 0, -1.3, 0) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, 38) local arr1 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local arr2 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 3, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local arr3 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 3, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local areax = createCombatArea(arr1) setCombatArea(combatx, area1) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) function onTargetTile(cid, pos) doCombat(cid,combat1,positionToVariant(pos)) end setCombatCallback(combatx, CALLBACK_PARAM_TARGETTILE, "onTargetTile") local function onCastSpell1(parameters) doCombat(parameters.cid, combatx, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, combat2, parameters.var) end local function onCastSpell3(parameters) doCombat(parameters.cid, combat3, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 300, parameters) addEvent(onCastSpell2, 100, parameters) addEvent(onCastSpell3, 80, parameters) end Spells.XML <instant name="death aoe" words="death aoe" lvl="15" mana="99999999" prem="0" range="7" casterTargetOrDirection="1" blockwalls="0" exhaustion="2000" needlearn="0" event="script" value="hpspells/death aoe.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="3"/> <vocation id="7"/> <vocation id="6"/> <vocation id="4"/> <vocation id="8"/> </instant> Screenshot Like a Ninja Script: local combatx = createCombatObject() local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_EFFECT, 255) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 7) setCombatFormula(combat1, COMBAT_FORMULA_SKILL, -1.0, -1, -1, -1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 34) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, 1.0, 0, -1.3, 0) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, 44) local arr1 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local arr2 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 3, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local arr3 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 3, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local areax = createCombatArea(arr1) setCombatArea(combatx, area1) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) function onTargetTile(cid, pos) doCombat(cid,combat1,positionToVariant(pos)) end setCombatCallback(combatx, CALLBACK_PARAM_TARGETTILE, "onTargetTile") local function onCastSpell1(parameters) doCombat(parameters.cid, combatx, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, combat2, parameters.var) end local function onCastSpell3(parameters) doCombat(parameters.cid, combat3, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 300, parameters) addEvent(onCastSpell2, 100, parameters) addEvent(onCastSpell3, 80, parameters) end SpellsXML: <instant name="like ninja" words="like ninja" lvl="15" mana="99999999" prem="0" range="7" castertargetordirection="1" blockwalls="0" exhaustion="2000" needlearn="0" event="script" value="attack/like ninja.lua"> <vocation id="1"> <vocation id="2"> <vocation id="5"> <vocation id="3"> <vocation id="7"> <vocation id="6"> <vocation id="4"> <vocation id="8"> </vocation></vocation></vocation></vocation></vocation></vocation></vocation></vocation></instant> ScreenShot: Como vocês sabem screenshot não mostra spell ;o Essa spell é realmente linda eu tive 5 orgasmos simultâneos. sabe porque? porque são 5 ataques simultâneos isso mesmo, o ataque está super balanceado, é um pouquinho mais forte que o eternal winter (exevo gran mas frigo). espero que gostem Avalon strength Script: local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 28) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECTT, 29) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat3, COMBAT_PARAM_DISTANCEEFFECT, 35) setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) local combat4 = createCombatObject() setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat4, COMBAT_PARAM_EFFECT, 41) setCombatFormula(combat4, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) local combat5 = createCombatObject() setCombatParam(combat5, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat5, COMBAT_PARAM_EFFECT, 52) setCombatFormula(combat5, COMBAT_FORMULA_LEVELMAGIC, -0.4, 0, -0.5, 0) arr1 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } arr2 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } arr3 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } arr4 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } arr5 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local area4 = createCombatArea(arr4) local area5 = createCombatArea(arr5) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) setCombatArea(combat4, area4) setCombatArea(combat5, area5) local function onCastSpell1(parameters) doCombat(parameters.cid, parameters.combat1, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, parameters.combat2, parameters.var) end local function onCastSpell3(parameters) doCombat(parameters.cid, parameters.combat3, parameters.var) end local function onCastSpell4(parameters) doCombat(parameters.cid, parameters.combat4, parameters.var) end local function onCastSpell5(parameters) doCombat(parameters.cid, parameters.combat5, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var, combat1 = combat1, combat2 = combat2, combat3 = combat3, combat4 = combat4, combat5 = combat5 } addEvent(onCastSpell1, 100, parameters) addEvent(onCastSpell2, 200, parameters) addEvent(onCastSpell3, 300, parameters) addEvent(onCastSpell4, 400, parameters) addEvent(onCastSpell5, 500, parameters) return TRUE end SpellsXML: <instant name="Avalon strength" words="Avalon strength" lvl="15" mana="99999999" prem="0" range="7" castertargetordirection="1" blockwalls="0" exhaustion="2000" needlearn="0" event="script" value="attack/Avalon strength.lua"> <vocation id="1"> <vocation id="2"> <vocation id="5"> <vocation id="3"> <vocation id="7"> <vocation id="6"> <vocation id="4"> <vocation id="8"> </vocation></vocation></vocation></vocation></vocation></vocation></vocation></vocation></instant> ScreenShot: Obs: vocês ja sabem que a spell é mto mais linda no game =) dessa vez em gif Stronderwave Script: local combatx = createCombatObject() local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_EFFECT, 255) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 33) setCombatFormula(combat1, COMBAT_FORMULA_SKILL, -1.0, -1, -1, -1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 5) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, 1.0, 0, -1.3, 0) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, 6) local arr1 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local arr2 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 3, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local arr3 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 3, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local areax = createCombatArea(arr1) setCombatArea(combatx, area1) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) function onTargetTile(cid, pos) doCombat(cid,combat1,positionToVariant(pos)) end setCombatCallback(combatx, CALLBACK_PARAM_TARGETTILE, "onTargetTile") local function onCastSpell1(parameters) doCombat(parameters.cid, combatx, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, combat2, parameters.var) end local function onCastSpell3(parameters) doCombat(parameters.cid, combat3, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 300, parameters) addEvent(onCastSpell2, 100, parameters) addEvent(onCastSpell3, 80, parameters) end SpellsXML: <instant name="exevo pala hur" words="exevo pala hur" lvl="15" mana="99999999" prem="0" range="7" castertargetordirection="1" blockwalls="0" exhaustion="2000" needlearn="0" event="script" value="attack/exevo pala hur.lua"> <vocation id="1"> <vocation id="2"> <vocation id="5"> <vocation id="3"> <vocation id="7"> <vocation id="6"> <vocation id="4"> <vocation id="8"> </vocation></vocation></vocation></vocation></vocation></vocation></vocation></vocation></instant> ScreenShot: Como vocês sabem screenshot não mostra spell ;o
  4. nossa .-. coloca mais spell pra criatura, server de high exp vc joga pra ver os efeito e não male attack kkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
  5. Por favor meu jovem, quando eu tinha sua idade já sabia pronunciar os nome certos em inglês, e quando vc fala "Aquitions" vc se diminui.
  6. kkkkkkkkkkkkkkkkkk vey na nice, esse laucher vc pego do WYD 'kkkkkkkkkkkkkkkkkkkkkkkkkk
  7. Fico quase perfeito , apenas tirar a ponte arruma o bug que tem uma parte negra em branco perto da ponte. e aquela plantinha de 2 floors troca ela por um arbusto. Feito isso perfect '-'
  8. ja tentei isso, não cola no meu server.
  9. tem como melhorar, você tem que saber combinar as effects, com coordenação exemplo tente esse: veja como fico diferente, usei seu script so mudei effect e cordenadas. script: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 52) setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 7, 12) local arr = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 2, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } local area = createCombatArea(arr) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end
  10. lukas13on

    Refsystem

    LOL meu server ja tem esse system Oo'
  11. lukas13on

    Refsystem

    *Por favor se for responder, leia tudo antes* Função: Quando usado Item X em cima do Item Y a cada refinação terá 40% de sucesso e 60% de falha, O maximo de Refinação é +9. e não pode sumir o status alterado quando logar, ou quando der save server, permanente. Fará item weapons: Addextra_attack = 2, Addextra_def = 2, Items armor,legs,helmet: Add_armor = 2 items boots: Add_Speed = 2 items Shield: Add_Shield = 2 items Wand,Staff Add_deff=3 Effect Quando sucesso Effectoncreature= 53 Effect Quando Fail Effectoncreature= 2
  12. se ele não aparece então o erro é com você pois a script ta certinha.
  13. ja conseguimos ------------------------- Reportado para moverem, Sanado
  14. O que essa script faz? Ele informa para quem o player morreu e em que level. local config = { deathAssistCount = getConfigValue('deathAssistCount') + 1, maxDeathRecords = getConfigValue('maxDeathRecords'), limit = "" } if(config.deathAssistCount > 0) then config.limit = " LIMIT 0, " .. config.deathAssistCount end function onSay(cid, words, param, channel) local target = db.getResult("SELECT `name`, `id` FROM `players` WHERE `name` = " .. db.escapeString(param) .. ";") if(target:getID() == -1) then doPlayerSendCancel(cid, "A player with that name does not exist.") return true end local targetName, targetId = target:getDataString("name"), target:getDataInt("id") target:free() local str, deaths = "", db.getResult("SELECT `id`, `date`, `level` FROM `player_deaths` WHERE `player_id` = " .. targetId .." ORDER BY `date` DESC LIMIT 0, " .. config.maxDeathRecords) if(deaths:getID() ~= -1) then repeat local killers = db.getResult("SELECT environment_killers.name AS monster_name, players.name AS player_name FROM killers LEFT JOIN environment_killers ON killers.id = environment_killers.kill_id LEFT JOIN player_killers ON killers.id = player_killers.kill_id LEFT JOIN players ON players.id = player_killers.player_id WHERE killers.death_id = " .. deaths:getDataInt("id") .. " ORDER BY killers.final_hit DESC, killers.id ASC" .. config.limit) if(killers:getID() ~= -1) then if(str ~= "") then str = str .. "\n" .. os.date("%d %B %Y %X ", deaths:getDataLong("date")) else str = os.date("%d %B %Y %X ", deaths:getDataLong("date")) end local count, i = killers:getRows(false), 0 repeat local monster = killers:getDataString("monster_name") if(i == 0 or i == (count - 1)) then monster = string.gsub(monster:gsub("an ", ""), "a ", "") end if(killers:getDataString("player_name") ~= "") then if(i == 0) then str = str .. "Killed at level " .. deaths:getDataInt("level") .. " by:\n " elseif(i == count) then str = str .. " and by " elseif(i % 4 == 0) then str = str .. ",\n " else str = str .. ", " end if(monster ~= "") then str = str .. monster .. " summoned by " end str = str .. killers:getDataString("player_name") else if(i == 0) then str = str .. "Died at level " .. deaths:getDataInt("level") .. " by:\n " elseif(i == count) then str = str .. " and by " elseif(i % 4 == 0) then str = str .. ",\n " else str = str .. ", " end str = str .. monster end i = i + 1 if(i == count) then str = str .. "." end until not(killers:next()) killers:free() end until not(deaths:next()) deaths:free() else str = "No deaths recorded." end doPlayerPopupFYI(cid, "Deathlist for player: " .. targetName .. ".\n\n" .. str) return true end TALKACTIONS.XML <talkaction words="!deathlist" event="script" value="deathlist.lua"/>
  15. Aqui está -- SCRIPT FEITO POR YUNIE -- config minlevel = 400 -- level para resetar price = 0 newlevel = 10 -- level após reset newexp = 9300 -- nova experiencia após reset -- end config function addReset(cid) resets = getResets(cid) setPlayerStorageValue(cid,36874,resets+1) return true end function getResets(cid) resets = getPlayerStorageValue(cid,36874) if resets < 0 then resets = 0 end return resets end 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, 'reset') then selfSay('Do you want to reset your character level? Your character will be logged off if you confirm. You must pay '..price..' gold coins to reset.', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then if getPlayerMoney(cid) < price then selfSay('You must pay '..price..' gold coins to reset.', cid) elseif getPlayerLevel(cid) < minlevel then selfSay('You must be at least level '.. minlevel ..' to reset.', cid) else doPlayerRemoveMoney(cid,price) addReset(cid) playerid = getPlayerGUID(cid) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `level`="..newlevel..",`experience`="..newexp.." WHERE `players`.`id`= ".. playerid .."") end talkState[talkUser] = 0 elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then talkState[talkUser] = 0 selfSay('Ok.', cid) elseif msgcontains(msg, 'quant') then selfSay('You have '..getResets(cid)..' reset(s).', cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  16. Nesse sisteminha eu e meu amigo conseguimos fazer um npc que teleporta para algum lugar casoo jogador possua a storage ! Data/Script/npc.lua local price = 50 local config = { pos1 = {x=2061,y=2140,z=10}, pos2 = {x=2061,y=2144,z=10}, } 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, 'travel')) then if getPlayerStorageValue(cid, 13595) - os.time() <= 0 then selfSay('Desculpa, você não tem acesso a area.',cid) return TRUE end talkState[talkUser] = 1 selfSay("Bem-vindo!", cid) doTeleportThing(cid, config.pos1) elseif (msgcontains(msg, 'travel')) and talkState[talkUser] == 1 then if doPlayerRemoveMoney(cid, price)==true then doTeleportThing(cid, config.pos1) else return selfSay('Você não tem dinheiro para se teleportar.',cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Data/npc.xml <?xml version="1.0"?> <npc name="Bastown" script="data/npc/scripts/npc" access="3" lookdir="1"> <health now="1" max="1"/> <look type="57" head="20" body="30" legs="40" feet="50" corpse="3128"/> </npc> Obs: Deve ter muita coisa desnecessaria na scrip (eu acho), não entendemos mto de script, mais ta ai o resultado. @Atualização Conversation Log: Hi Travel "Se tiver storage irá teleportar e falar bem-vindo" "Se falar travel e não tiver storagedará acesso negado." Creditos: Harpia look / 60% Esaus / 40%
  17. Vá ao amulet no items.xml e adicione os seguintes keys: Def contra energia + Value = Porcentagem <attribute key="absorbPercentEnergy" value="10" /> Def contra fisico + Value = Porcentagem <attribute key="absorbPercentPhysical" value="10" /> Def contra Sagrado + Value = Porcentagem <attribute key="absorbPercentHoly" value="10" /> Def contra fogo + Value = Porcentagem <attribute key="absorbPercentFire" value="10" /> Def contra gelo + Value = Porcentagem <attribute key="absorbPercentIce" value="10" /> Def contra morte + Value = Porcentagem <attribute key="absorbPercentDeath" value="10" /> ----------------------------------------------------------------------------------------- Adc em axe + Value = Pontos <attribute key="skillAxe" value="4" /> Adc em Sword + Value = Pontos <attribute key="skillSword" value="4" /> Adc em Club + Value = Pontos <attribute key="skillClub" value="4" /> Adc em Distance + Value = Pontos <attribute key="skillDist" value="4" /> Adc em Shielding + Value = Pontos <attribute key="skillShield" value="2" /> Adc em Shielding + Value = Pontos <attribute key="magiclevelpoints" value="2" />
  18. function onUse(cid, storage, fromPosition, toPosition) local teleport = {x=100, y=54, z=7} -- Coordenadas para onde o player irá ser teleportado. local Storage_id = 2195 -- ID do item que o player precisa para ser teleportado. if getPlayerStorage(cid,Storage_id) == 2195 then doTeleportThing(cid, teleport) doSendMagicEffect(getPlayerPosition(cid), 10) doPlayerSendTextMessage(cid, 22, "Ok, let's go! You are permision for make this teleport!") else doPlayerSendTextMessage(cid, 23, "Sorry, you need a permission to enter") end end .-. TENTA DNV até nos conseguirmos. esse é diferente ;-; vc coloca isso na pasta actions/scripts/arquivo.lua dai dps vc coloca em actions.xml <action actionid="2195" event="script" value="arquivo.lua"/> dai tipo vai no rme escolhe uma estatua e coloca o actionid nela dai ela vai teleporta quando tiver item.
  19. Hm tente esse 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 function oracle(cid, message, keywords, parameters, node) if(not npcHandler:isFocused(cid)) then return false end local cityNode = node:getParent():getParent() local vocNode = node:getParent() local destination = cityNode:getParameters().destination local town = cityNode:getParameters().town local vocation = vocNode:getParameters().vocation if(destination ~= nil and vocation ~= nil and town ~= nil) then if(getPlayerStorage(cid) = 7714 then npcHandler:say('Only permited players ' .. parameters.level .. '!', cid) else doPlayerSetStorage(cid, storage) doPlayerSetTown(cid, town) else doTeleportThing(cid, destination) Setdestination(cid, storage) = town = 1, destination = {x=469, y=172, z=7} doSendMagicEffect(destination, CONST_ME_MAGIC_BLUE) end end end npcHandler:resetNpc() return true end function greetCallback(cid) if(getPlayerLevel(cid) < 8) then npcHandler:say('COME BACK WHEN YOU GROW UP, CHILD!') return false else return true end end
  • Quem Está Navegando   0 membros estão online

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