Eu queria um script que não precisava remover o player para retirar o skill adicionado, parece que não da, então esse ai ta de boa!
Item que ao dar use ganhe 10 de magic level (por tempo)
By roriscrave, 20 de out. de 2013 in Scripts
info
Group: Conde
Joined: 18/07/08
Posts: 545
Reputation: +21
Tibia Character: Nem eu sei

info
Group: Marquês
Joined: 16/06/07
Posts: 1.2k
Reputation: +377
Gender: Masculino
Tibia Character: Nenhum

N vai mano, se o kra loga e removido pela db.
Sim, o que eu quis dizer é que se ele logasse e depois voltasse daria problema, mas me expressei mal.
Eu queria um script que não precisava remover o player para retirar o skill adicionado, parece que não da, então esse ai ta de boa!
Tente esse
function onUse(cid, item, fromPosition, itemEx, toPosition)
if getPlayerStorageValue(cid, 129381) < os.time() then
doPlayerAddMagLevel(cid, 10)
doSendMagicEffect(getThingPos(cid), 1)
addEvent(removeSkill, 2 * 60 * 1000, getCreatureName(cid), SKILL__MAGLEVEL, (getPlayerMagLevel(cid) - 10), getPlayerGUID(cid))
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você recebeu +10 no skill de Magic Level durante 2 minutos.")
setPlayerStorageValue(cid, 129381, os.time() + 2 * 60)
else
doPlayerSendCancel(cid, "You must wait "..getPlayerStorageValue(cid, 129381) - os.time().." seconds before you can use this again.")
end
return true
end
function removeSkill(name, skill, amount, guid)
local cid = getCreatureByName(name)
if isCreature(cid) then
doPlayerAddMagLevel(cid, -10)
else
db.executeQuery("UPDATE `player_skills` SET `value` = "..amount.." WHERE `player_id` = "..guid.. " AND `skillid` = "..skill..";")
end
return true
end
Edited Outubro 22 by omega blueheaven
info
Group: Conde
Joined: 18/07/08
Posts: 545
Reputation: +21
Tibia Character: Nem eu sei

ômega, esse ai não ta adicionando 10 de magic level, ta adicionando apenas uma porcentagem ao magic level
info
Group: Campones
Joined: 31/08/13
Posts: 93
Reputation: +17
Tibia Character: Evarin Thin

local config = {
ml = 10,
interval = 12
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
local PZ = createConditionObject(CONDITION_INFIGHT)
setConditionParam(PZ, CONDITION_PARAM_TICKS, config.interval*10000)
local SKILL= createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(SKILL, CONDITION_PARAM_STAT_MAGICLEVEL, config.ml)
if getCreatureCondition(cid, CONDITION_ATTRIBUTES) then
doPlayerSendCancel(cid,"seu magic level aumentou 10!")
else
doAddCondition(cid, PZ)
doAddCondition(cid, SKILL)
addEvent(magicadd, 1000, cid, config.interval*10)
doRemoveItem(item.uid, 1)
end
return TRUE
end
function magicadd(tid, rep)
local nb = getCreaturePosition(tid)
rep = rep - 1
if rep > 0 then
addEvent(magicadd, 1000, tid, rep)
doSendMagicEffect(nb,31)
doPlayerSendCancel(tid,"Seu magic level ira descer em "..rep.." segundos." )
end
end
Peguei um script do Adriano swatt e modifiquei n sei se vai funcionar pois nao sou bom em scripts.
info
Group: Barão
Joined: 17/01/12
Posts: 208
Reputation: +98
Tibia Character: Supreme of Destroyer

caso o dele n funcione...
se der erro reporta
actions.xml
<action itemid="ITEMX" event="script" value="addml.lua"/>
addml.lua
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, 60000)
setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, 10)
function onUse(cid, item, frompos, item2, topos)
if getPlayerStorageValue(cid, 750) < os.time() then
if(isInArray({1,5,2,6}, getPlayerVocation(cid)) == TRUE) then--vocaçoes
var = numberToVariant(cid)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
setPlayerStorageValue(cid, 750, os.time() + 2 * 60)
else
doPlayerSendCancel(cid, "Voce precisa esperar "..getPlayerStorageValue(cid, 750) - os.time().." segundos antes de usar isso novamente.")
end
end
return true
end
Edited Outubro 23 by alissonfgp
info
Group: Conde
Joined: 18/07/08
Posts: 545
Reputation: +21
Tibia Character: Nem eu sei

Alisson, o jogador da use e ganha 10 de magic, so que ao dar use novamente não aparece a mensagem negando:
doPlayerSendCancel(cid, "Voce precisa esperar "..getPlayerStorageValue(cid, 750) - os.time().." segundos antes de usar isso novamente.")
além disso a storage (750) não esta zerando, ou seja ele so pode usar 1x
info
Group: Barão
Joined: 17/01/12
Posts: 208
Reputation: +98
Tibia Character: Supreme of Destroyer

testa esse...
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, 120000)
setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, 10)
local config = {
exhausttime = 1200, -- time in seconds
exhaustion = 760
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
if(exhaustion.check(cid, 760) == false) then
if(isInArray({1,5,2,6}, getPlayerVocation(cid)) == TRUE) then--vocaçoes
var = numberToVariant(cid)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
doCreatureSay(cid, "Agora voce so pode usar este item apos 2 minutos.", TALKTYPE_ORANGE_1)
exhaustion.set(cid, 760, 120)
end
end
return true
end
info
Group: Conde
Joined: 18/07/08
Posts: 545
Reputation: +21
Tibia Character: Nem eu sei

agora quando da use não acontece nada, não da erro, não da magic level, nem aparece msg alguma
Um monte de gente tentou, tentou e não resolveu o pedido do cara.
local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, 2 * 60 * 1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, 10) setConditionParam(condition, CONDITION_PARAM_BUFF, true) setConditionParam(condition, CONDITION_PARAM_SUBID, 101) function onUse(cid, item, fromPosition, itemEx, toPosition) if getCreatureCondition(cid, CONDITION_ATTRIBUTES, 101) then return doPlayerSendCancel(cid, "Você já usou o item, aguarde o efeito acabar.") end doSendMagicEffect(fromPosition, CONST_ME_MAGIC_GREEN) return doAddCondition(cid, condition) end
Sério, hilário, um corrigindo o outro e fazendo a mesma cagada de usar querys num bagulho desse (HUE HUE) ![]()
Edited Outubro 24 by Oneshot
info
Group: Conde
Joined: 18/07/08
Posts: 545
Reputation: +21
Tibia Character: Nem eu sei

@Oneshot funcionou certinho, vou dar rep pra todos que ajudaram, vlw ae!
info
Group: Marquês
Joined: 03/02/13
Posts: 1.2k
Reputation: +254
Gender: Masculino
Tibia Character: Partiu Baladinha

Dúvida sanada, reportado para que movam.





info
Group: Marquês
Joined: 02/08/12
Posts: 1k
Reputation: +234
Tibia Character: Maurolkit
N vai mano, se o kra loga e removido pela db.