Jump to content

Notícias e Discussões - OTServ

Grrr... O que há de novo?


  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Popular Contributors

  • Topics

  • Últimos Posts

    • local UPGRADE_ITEM_ID = 5902 -- The upgrade item, in this case, the "scary blue eye" local LIFE_LEECH_INCREMENT = 1 -- Percentage to be added to Life Leech local MANA_LEECH_INCREMENT = 1 -- Percentage to be added to Mana Leech local MAX_LEECH_PERCENT = 100 -- Maximum limit for Life Leech and Mana Leech local FIXED_DAMAGE = 100000000000 -- Fixed damage to be dealt function onUse(cid, item, fromPosition, itemEx, toPosition) -- Check if the player is valid if not isPlayer(cid) then return false end -- Get the weapon the player is holding (left or right hand) local weapon = getPlayerSlotItem(cid, CONST_SLOT_LEFT) if weapon.itemid == 0 then weapon = getPlayerSlotItem(cid, CONST_SLOT_RIGHT) end -- Check if the player is holding a weapon if weapon.itemid == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_SMALL, "You need to be holding a weapon to upgrade it.") return false end -- Get the current Life Leech and Mana Leech values (if they exist) local currentLifeLeech = tonumber(getItemAttribute(weapon.uid, "lifeLeech")) or 0 local currentManaLeech = tonumber(getItemAttribute(weapon.uid, "manaLeech")) or 0 -- Accumulate new leech values, limited by the maximum local newLifeLeech = math.min(currentLifeLeech + LIFE_LEECH_INCREMENT, MAX_LEECH_PERCENT) local newManaLeech = math.min(currentManaLeech + MANA_LEECH_INCREMENT, MAX_LEECH_PERCENT) -- Apply the new Life Leech and Mana Leech values to the weapon doItemSetAttribute(weapon.uid, "lifeLeech", newLifeLeech) doItemSetAttribute(weapon.uid, "manaLeech", newManaLeech) -- Modify the weapon's description to show the new leech values local description = getItemAttribute(weapon.uid, "description") or "" description = "This weapon now has " .. newLifeLeech .. "% Life Leech and " .. newManaLeech .. "% Mana Leech. The maximum is 100%." doItemSetAttribute(weapon.uid, "description", description) -- Send a message to the player informing about the upgrade doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your weapon has been upgraded! It now has " .. newLifeLeech .. "% Life Leech and " .. newManaLeech .. "% Mana Leech. The maximum is 100%.") -- Display animated text "+Leech!!!" in green (color 35) local position = getCreaturePosition(cid) doSendAnimatedText(position, "+Leech!!!", 35) -- The line that removed the upgrade item has been removed to allow infinite use -- doRemoveItem(item.uid, 1) -- REMOVED -- Combat logic: damage with the weapon local target = getCreatureTarget(cid) if isCreature(target) then -- Check if the weapon has reached the limit for Life Leech and Mana Leech if newLifeLeech == MAX_LEECH_PERCENT and newManaLeech == MAX_LEECH_PERCENT then -- Fixed damage from the weapon local damage = FIXED_DAMAGE -- Apply the damage to the target doTargetCombatHealth(cid, target, COMBAT_UNDEFINEDDAMAGE, -damage, -damage, CONST_ME_EXPLOSIONHIT) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You dealt " .. damage .. " damage with your weapon!") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_SMALL, "Your weapon has not reached the limit to deal damage.") end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_SMALL, "You do not have a valid target to attack.") end return true end  
    • [URL=https://matchnow.info]Find Womans in your city for night[/URL]
    • local portalId, t = 25058, { ["glacius death"] = { message = "You have defeated Glacius Death!", config = { createPos = {}, -- O portal será criado onde o monstro morrer. toPos = {x = 32202, y = 31863, z = 13}, -- Posição onde o portal irá teleportar portalTime = 1, -- Duração do portal em minutos } }, } --------------------------------------------------------------------------------------- -- Fim da Configuração --------------------------------------------------------------------------------------- local function spectatorStartCountdown(time, position) local spectators = Game.getSpectators(position, false, false, 5, 5, 5, 5) if #spectators > 0 then for i = 1, #spectators do if time > 1 then spectators:say("" .. time .. "", TALKTYPE_MONSTER_SAY, false, spectators, position) else spectators:say("Time out!", TALKTYPE_MONSTER_SAY, false, spectators, position) break end end end local portal = Tile(position):getItemById(portalId) if portal then addEvent(spectatorStartCountdown, 1000, time - 1, position) end end local function removePortal(position) local portal = Tile(position):getItemById(portalId) if portal then portal:remove() end end local deathMonsterCreatePortal = CreatureEvent("deathMonsterCreatePortal") function deathMonsterCreatePortal.onDeath(creature, corpse, killer, mostDamageKiller) if not creature:isMonster() or creature:getMaster() then return true end local k = t[creature:getName():lower()] if not k then return true end local pos = creature:getPosition() local cPos = k.config.createPos if next(cPos) == nil then cPos = pos end if Tile(cPos):getItemById(portalId) then return true end local item = Game.createItem(portalId, 1, cPos) if item:isTeleport() then item:setDestination(k.config.toPos) end local pt = k.config.portalTime addEvent(spectatorStartCountdown, 500, pt * 60, cPos) addEvent(removePortal, pt * 60 * 1000, cPos) return true end deathMonsterCreatePortal:type("death") deathMonsterCreatePortal:register() --------------------------------------------------------------------------------------- -- Registrar script onLogin --------------------------------------------------------------------------------------- local monsterDeathLogin = CreatureEvent("monsterDeathLogin") function monsterDeathLogin.onLogin(player) player:registerEvent("deathMonsterCreatePortal") return true end monsterDeathLogin:type("login") monsterDeathLogin:register()  
    • [URL=https://datingnow.site]Pretty Girls in your city[/URL]
    • [URL=https://datingnow.site]Search Beautiful Girls in your town for night[/URL]
×
×
  • Create New...