Postado Setembro 25, 2013 13 anos Amigos, estou usando esse script para 1 certo item ser de double exp em meu servidor.... local config = { rate = 2, -- 4x More Experience time = 1, -- Hours of Exp Time storage = 21123 } local function endExpRate(cid) if isPlayer(cid) == TRUE then doPlayerSetRate(cid, SKILL__LEVEL, 1) -- config.lua rate setPlayerStorageValue(cid, config.storage, -1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Your extra experience time has ended.") end end function onUse(cid, item, fromPosition, itemEx, toPosition) if(getPlayerStorageValue(cid, config.storage) < 0) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your extra experience rate is now: " .. config.rate .. ". It will last for ".. config.time .." hours.") doPlayerSetRate(cid, SKILL__LEVEL, config.rate) setPlayerStorageValue(cid, config.storage, os.time() + config.time * 3600) addEvent(endExpRate, config.time * 3600 * 1000, cid) doRemoveItem(item.uid, 1) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You still have extra experience time left.") end return TRUE end Mas o mesmo está sempre bugando e virando no tinhoso..... Tipo as vezes o player usa e fica 100% normal mas as vezes o player usa, quando precisar usa novamente o mesmo não funciona alguém poderia me ajudar?
Postado Setembro 25, 2013 13 anos O tópico foi movido para a área correta, preste mais atenção da próxima vez!Leia as regras do fórum: http://tibiaking.com/forum/topic/1281-regras-gerais/?p=7680Este tópico foi movido:De: "OTServ → Anuncie seu Servidor → Open PVP" Para: "OTServ → Suporte OTServ" @EDIT O script a cima está programado para você poder usar de 24 em 24 horas. Ou seja, ao usar, você terá que esperar o tempo acabar para usar de novo.
Postado Setembro 25, 2013 13 anos Autor Problema, que preciso que ele funcione por 2 horas... e quando termine o tempo possa usar novamente, o item.... Estranho encima la falava que é 1 hora, o senhor poderia me ajudar a arrumar ele pra fica 100% ou até mesmo algum que senhor use? desculpe posta errado não sei onde estava com a cabeça.
Postado Setembro 25, 2013 13 anos Bem, no caso esse script tem uma grande falha, pois se o player der logout com o Double XP, creio que ele não perderá o bônus depois do tempo. local config = { rate = 2, -- 4x More Experience time = 2, -- Hours of Exp Time storage = 21123 } local function endExpRate(cid) if isPlayer(cid) == TRUE then doPlayerSetRate(cid, SKILL__LEVEL, 1) -- config.lua rate setPlayerStorageValue(cid, config.storage, -1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Your extra experience time has ended.") end end function onUse(cid, item, fromPosition, itemEx, toPosition) if(getPlayerStorageValue(cid, config.storage) < 0) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your extra experience rate is now: " .. config.rate .. ". It will last for ".. config.time .." hours.") doPlayerSetRate(cid, SKILL__LEVEL, config.rate) setPlayerStorageValue(cid, config.storage, os.time() + config.time * 3600) addEvent(endExpRate, config.time * 3600 * 1000, cid) doRemoveItem(item.uid, 1) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You still have extra experience time left.") end return TRUE end Bem, quanto tempo mais ou menos o script está funcionando para um player ?
Postado Setembro 25, 2013 13 anos Autor Então é como o senhor escreveu se ele da logout o mesmo falha realmente kkkk, ele funciona cerca de 1 hora ou 2... As vezes ele funciona até pessoa deslogar, e as vezes ele nunca para de funcionar. ... Não sei mais o que fazer testei uns 3 script e todos bugan e etc... Meu servidor versão 9.80 a 9.86 ....
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.