Ir para conteúdo

Reds

Membro
  • Registro em

  • Última visita

Tudo que Reds postou

  1. Reds postou uma resposta no tópico em Suporte Tibia OTServer
    local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function onGetFormulaValues(cid, level, maglevel) skill = getPlayerSkill(cid,3) min = -((skill*5)+level) max = -((skill*10)+level) return min, max end setCombatCallback(combat1, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_EFFECT, 31) setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function onGetFormulaValues(cid, level, maglevel) skill = getPlayerSkill(cid,3) min = -((skill*7)+level*2) max = -((skill*12)+level*3) return min, max end setCombatCallback(combat2, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_EFFECT, 31) setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function onGetFormulaValues(cid, level, maglevel) skill = getPlayerSkill(cid,3) min = -((skill*7)+level*2) max = -((skill*12)+level*3) return min, max end local deathpowder = createConditionObject(CONDITION_PHYSICAL) setConditionParam(deathpowder, CONDITION_PARAM_DELAYED, 1) addDamageCondition(deathpowder, 8, 3000, -80) setCombatCondition(combat3, deathpowder) local deathpowder = createConditionObject(CONDITION_PHYSICAL) setConditionParam(deathpowder, CONDITION_PARAM_DELAYED, 1) addDamageCondition(deathpowder, 8, 3000, -80) setCombatCondition(combat2, deathpowder) setCombatCallback(combat3, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") function onUseWeapon(cid, var) Critical = math.random(1,100) if Critical > 80 then doSendAnimatedText(getPlayerPosition(cid), "Critical!", TEXTCOLOR_GREY) doCombat(cid, combat2, var) end Critical = math.random(1,100) if Critical < 2 then doSendAnimatedText(getPlayerPosition(cid), "Critical!...", TEXTCOLOR_GREY) doCombat(cid, combat3, var) else doCombat(cid, combat1, var) end end
  2. weapons.xml : <melee id="2392" range="1" enabled="1" exhaustion="0" hitchance="100" script="lifesteal/life1.lua"></melee> Script: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1) setCombatParam(combat, COMBAT_PARAM_BLOCKSHIELD, 1) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 1.0, 0) function onUseWeapon(cid, var) local skill = getPlayerSkill(cid,SKILL_SWORD) -- Change this to the type of weapon you are using local mat = 0.085*0.5*50*skill+(getPlayerLevel(cid)/5) -- Change 50 to the attack of the weapon local min = 5 -- this means 5% minimum healing local max = 15 -- this means 15% maximum healing local addhealth = math.random((mat * (min/100)), (mat * (max/100))) if getPlayerLevel(cid) >= 20 then doCreatureAddHealth(cid, addhealth) doSendAnimatedText(getPlayerPosition(cid),"+"..addhealth.."", TEXTCOLOR_GREEN) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) doCombat(cid, combat, var) else doPlayerSendCancel(cid, 'You need level 20 to use this weapon.') end end
  3. nao funciona, o setnomove em monstros, por mais que seja temporizado, o player nao se meche depois, pelo menos qnd eu testei foi assim
  4. só peguei uma parte da spell que eu tinha adaptado function onCastSpell(cid, var) if getPlayerStorageValue(cid, config.storagCooldown) - os.time() <= 0 then setPlayerStorageValue(cid, config.storagCooldown, os.time() + config.cooldown) else doPlayerSendCancel(cid, "Your skill is in cooldown, wait more ".. getPlayerStorageValue(cid, config.storagCooldown) - os.time() .." seconds to use it.") return false end doSendAnimatedText(getCreaturePosition(cid), "Cursed", COLOR_ORANGE) local time = onCastChannel(cid, getCreatureTarget(cid), config.delaycast, config.effect, config.key) addEvent(function() if isCreature(cid) and getPlayerStorageValue(cid, config.key) == 11 then doCreatureSay(cid, "cursed finished", 20) addEvent(function() if isCreature(variantToNumber(var)) then local target = getCreatureTarget(cid) doCreatureAddHealth(target, -getCreatureHealth(target)) end end, config.delay * (config.walks + 1)) elseif isCreature(cid) then doPlayerSendCancel(cid, "You broke the channeling spell so the cast was canceled.") end end, time) return true end
  5. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY) function onCastSpell(cid, var) return doCombat(cid, combat, var) local target = getCreatureTarget(cid) doCreatureAddHealth(target, -getCreatureHealth(target)) end
  6. Reds postou uma resposta no tópico em Suporte Tibia OTServer
    2) local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true) local muted = createConditionObject(CONDITION_MUTED) setConditionParam(muted, CONDITION_PARAM_TICKS, 2000) setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1) setCombatParam(combat, COMBAT_PARAM_BLOCKSHIELD, 1) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_STUN) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_HUNTINGSPEAR) setCombatFormula(combat, COMBAT_FORMULA_SKILL, 5, 1, 3.0, 0) function onCastSpell(cid, var) if exhaustion.check(cid, 23005) == false then exhaustion.set(cid, 23005, 11) local target = variantToNumber(var) local exhausted = createConditionObject(CONDITION_EXHAUST) setConditionParam(exhausted, CONDITION_PARAM_TICKS,4000) doCreatureSetNoMove(target, true) doAddCondition(target, muted) doAddCondition(target, exhausted) addEvent(doCreatureSetNoMove, 2000, target, false) return doCombat(cid, combat, var) else doPlayerSendCancel(cid, "Cooldown for Stun is " ..exhaustion.get(cid, 23005).." seconds") return false end return true end tava dando erro na distro, n lembro se arrumei, qlqr coisa manda ai o feedback
  7. tem que declarar no movements, ja declarou?
  8. Reds postou uma resposta no tópico em Suporte & Pedidos
    achei bem legal, mapeio mas nao sou aquele expert, só daria uma mudada nos andares acima daquela caverna
  9. Reds postou uma resposta no tópico em Suporte Tibia OTServer
    tem como, que o radbr usa isso, mas como fazem nao sei
  10. se vc usa o dev c++ deve ser dele, pq aqui tb, eu pego as sources, deixo exatamente igual e da erro
  11. ---Config local conf = { maxSlotCount=2, ignoredIds={} } --End function choose(...) local arg = {...} return arg[math.random(1,#arg)] end if not getItemAttack then function getItemAttack(uid) return getItemAttribute(uid,'attack') end function getItemDefense(uid) return getItemAttribute(uid,'defense') end end local function isArmor(uid) -- Function by Mock the bear. if (getItemInfo(uid.itemid).armor ~= 0) and (getItemWeaponType(uid.uid) == 0) then return true end return false end local function isWeapon(uid) -- Function by Mock the bear. uid = uid or 0 local f = getItemWeaponType(uid) if f == 1 or f == 2 or f == 3 then return true end return false end local function isShield(uid) -- Function by Mock the bear. uid = uid or 0 if getItemWeaponType(uid) == 4 then return true end return false end local function isBow(uid) -- Function by Mock the bear. uid = uid or 0 if getItemWeaponType(uid) == 5 and not isItemStackable(uid) then return true end return false end local function getWeaponLevel(uid) -- Function by Mock the bear. uid = uid or 0 local name = getItemName(uid.uid) or getItemInfo(uid.itemid).name or '' local lvl = string.match(name,'%s%+(%d+)%s*') return tonumber(lvl) or 0 end function onUse(cid, item, fromPosition, itemEx, toPosition) if item.uid == 0 or item.itemid == 0 then return false end toPosition.stackpos = 255 if item.uid == 0 or item.itemid == 0 then return false end toPosition.stackpos = 255 if isInArray(conf.ignoredIds, itemEx.itemid) or (not getItemWeaponType(itemEx.uid) or getItemWeaponType(itemEx.uid) > 5) or (getItemWeaponType(itemEx.uid) == 0 and not isArmor(itemEx)) or itemEx.itemid == 0 or itemEx.type > 1 or isItemStackable(itemEx.uid) then doPlayerSendCancel(cid, "You cant reset this item.") return TRUE end if isCreature(itemEx.uid) then return FALSE end local level = getWeaponLevel(itemEx) if level > 0 then upgrade = refine doSendMagicEffect(toPosition,30) setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level)) doPlayerSendCancel(cid, "All slots were removed.") doRemoveItem(item.uid,1) else doSendMagicEffect(toPosition,30) setItemName(itemEx.uid, getItemNameById(itemEx.itemid)) doPlayerSendCancel(cid, "All slots were removed.") doRemoveItem(item.uid,1) end return true end tenho esse que ta na pasta do meu sv, se n der, de tarde eu faço para vc
  12. Funcionou perfeitamente, muito obrigado.
  13. tem versões antigas que não tem no RME, como o 7.92, contém nesse?
  14. seila, eu acho esse que eu tenho muito melhor, pq da para usar em monstros
  15. Reds postou uma resposta no tópico em Suporte & Pedidos
    isso sim que eu considero rpg, o paladin vai ser corpo a corpo neh?
  16. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function onGetFormulaValues(cid, level, maglevel) skill = getPlayerSkill(cid,1) min = -((skill*0)+level) max = -((skill*8)+level) return min, max end setCombatCallback(combat1, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_EFFECT, 31) setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function onGetFormulaValues(cid, level, maglevel) skill = getPlayerSkill(cid,1) min = -((skill*24)+level) max = -((skill*26)+level) return min, max end setCombatCallback(combat2, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_EFFECT, 31) setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function onGetFormulaValues(cid, level, maglevel) skill = getPlayerSkill(cid,1) min = -((skill*24)+level) max = -((skill*28)+level) return min, max end setCombatCallback(combat3, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") function onUseWeapon(cid, var) Critical = math.random(1,100) if Critical > 80 then doSendAnimatedText(getPlayerPosition(cid), "Critical!", TEXTCOLOR_DARKORANGE) doCombat(cid, combat2, var) end Critical = math.random(1,100) if Critical < 2 then doSendAnimatedText(getPlayerPosition(cid), "Critical!", TEXTCOLOR_DARKORANGE) doCombat(cid, combat3, var) else doCombat(cid, combat1, var) end end Weapons.xml <melee id="2391" range="1" enabled="1" exhaustion="0" hitchance="100" script="Critical/club/critical_A.lua"></melee> eu uso esse sistema de critico, e acho até melhor que esse do seu link
  17. Eaí pessoal, vi esse sistema em um outro ot, funciona +- assim: O jogador possui um aol, quando ele morre não perde os itens (até essa parte igual ao aol comum). Ao invés do aol sumir quando ele morre, ele se transforma em um outro amuleto. Enfim só quero que ao invés de o aol sumir ele se transforme.
  18. Reds postou uma resposta no tópico em Suporte Tibia OTServer
    é erro da sua distro, provavelmente vc pegou um sistema de cast e usa sql
  19. Reds postou uma resposta no tópico em Scripts tfs 0.4 (OLD)
    exatamente jhubber, eu quando testei esse script podia passar do 21 e automaticamente ganhar, e o outro jogo tb tava bugado
  20. Reds postou uma resposta no tópico em Suporte Tibia OTServer
    vc precisa 1 adicionar 1 sprite para esse iten antes
  21. pelo menos vcc consegue com hamachi neh, kk eu nem da
  22. nao está aplicando os efeitos
  23. se para logar no acc manager é 1/1 e vc criar tipo uma senha: 31254 ele vai bloquear por conter o 1
  24. É o seguinte galera eu tinha 1 magia que silenciava (exhaust) o alvo, e pensei em por ela em área e sem fazer pegar pk, para ser usada para wars pequenas em times... O problema está em: setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true) não sei muito sobre a função, percebi que a função é para que as conditions muted e exhausted funcionem e ao por false, nao exhausta o inimigo, e true a spell não sai e da erro na distro a cada segundo. Como posso resolver?
  25. Reds postou uma resposta no tópico em Suporte Tibia OTServer
    kk, eu estou respondendo, tem q deixar assim como mandei no weapons e no items: <item id="7424" article="an" name="Energy Staff"> <attribute key="weight" value="3700"/> <attribute key="weaponType" value="wand" /> <attribute key="shootType" value="energy" /> <attribute key="range" value="6"/> </item>

Informação Importante

Confirmação de Termo