Postado Outubro 28, 2014 10 anos if(param == "skilldistance") then if getPlayerSkillLevel(cid, SKILL_DISTANCE) >= 350 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.") return TRUE end if not isPaladin(cid) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Paladins podem comprar skill de distance.") return TRUE end if getPlayerItemCount(cid, 9971) >= 1 then local pid = getPlayerGUID(cid) local distance = getPlayerSkillLevel(cid, SKILL_DISTANCE) doPlayerRemoveItem(cid, 9971, 1) setPlayerStorageValue(cid,11548,os.time()+0) doRemoveCreature(cid) db.executeQuery("UPDATE `player_skills` SET `value` = " .. (distance + 1) .. ", `count` = 0 WHERE `skillid` = 4 and `player_id` = " .. pid .. ";") return TRUE else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.") return TRUE end end Olá mentes brilhantes do TK, gostaria de saber se tem como adicionar alguma função não contar o skill que o utito tempo san adiciona a pessoa, assim não possibilitando bugar o comando citado acima, que quando usado utito tempo san e comprado um skill ele adiciona o valor do buff + o 1 do skill. Desde-ja agradeço. Muito Obrigado. '' Uma ideia é apenas uma ideia, até ser desenvolvida, mastigada, retratada, analisada e por fim se tornar uma boa ideia. ''
Postado Outubro 28, 2014 10 anos Solução Tenta assim: if(param == "skilldistance") then local buff = getCreatureCondition(cid, CONDITION_ATTRIBUTES) if not isPaladin(cid) and not buff and getPlayerSkillLevel(cid, SKILL_DISTANCE) >= 350 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Paladins podem comprar skill de distance.") else if getPlayerItemCount(cid, 9971) >= 1 then local pid = getPlayerGUID(cid) local distance = getPlayerSkillLevel(cid, SKILL_DISTANCE) doPlayerRemoveItem(cid, 9971, 1) setPlayerStorageValue(cid, 11548, os.time()+0) doRemoveCreature(cid) db.executeQuery("UPDATE `player_skills` SET `value` = " .. (distance + 1) .. ", `count` = 0 WHERE `skillid` = 4 and `player_id` = " .. pid .. ";") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.") end end return true end Se não der experimenta trocar isso: local buff = getCreatureCondition(cid, CONDITION_ATTRIBUTES) por isso local buff = getCreatureCondition(cid, CONDITION_PARAM_SKILL_DISTANCEPERCENT) STYLLER OT 2022
Postado Outubro 28, 2014 10 anos Autor Vlw... Rep+ Para versão 10.10 não funcionou amigo... Será que tem algum problema? '' Uma ideia é apenas uma ideia, até ser desenvolvida, mastigada, retratada, analisada e por fim se tornar uma boa ideia. ''
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.