Postado Julho 30, 2015 9 anos Bom dia galera do TK , venho aqui pedir se possível que alguém adicione uma Tag na script que estou usando para que quando o player combine o item de +7 a superior, enviasse uma mensagem no World pra todos verem de vermelho. "O jogador X combinou seu Y para +7 com sucesso" local conf = { ["level"] = { -- [item_level] = {successPercent= CHANCE TO UPGRADE ITEM, downgradeLevel = ITEM GETS THIS LEVEL IF UPGRADE FAILS} [1] = {successPercent = 100, downgradeLevel = 1}, [2] = {successPercent = 100, downgradeLevel = 2}, [3] = {successPercent = 100, downgradeLevel = 3}, [4] = {successPercent = 45, downgradeLevel = 4}, [5] = {successPercent = 30, downgradeLevel = 5}, [6] = {successPercent = 15, downgradeLevel = 6}, [7] = {successPercent = 10, downgradeLevel = 7}, [8] = {successPercent = 7, downgradeLevel = 8}, [9] = {successPercent = 5, downgradeLevel = 9}, [10] = {successPercent = 3, downgradeLevel = 9} }, ["upgrade"] = { -- how many percent attributes are rised? attack = 1, -- attack % defense = 1, -- defense % extraDefense = 1, -- extra defense % armor = 1, -- armor % hitChance = 2, -- hit chance % } } -- // do not touch // -- -- Upgrading system by Azi [Ersiu] -- -- Edited for TFS 1.1 by Zbizu -- local upgrading = { upValue = function (value, level, percent) if value < 0 then return 0 end if level == 0 then return value end local nVal = value for i = 1, level do nVal = nVal + (math.ceil((nVal/100*percent))) end return nVal > 0 and nVal or value end, getLevel = function (item) local name = Item(item):getName():split('+') if (#name == 1) then return 0 end return math.abs(name[2]) end, } function onUse(cid, item, fromPosition, itemEx, toPosition) local it = ItemType(itemEx.itemid) if((it:getWeaponType() > 0 or getItemAttribute(itemEx.uid, ITEM_ATTRIBUTE_ARMOR) > 0) and not isItemStackable(itemEx.itemid))then local level = upgrading.getLevel(itemEx.uid) if(level < #conf["level"])then local nLevel = (conf["level"][(level+1)].successPercent >= math.random(1,100)) and (level+1) or conf["level"][level].downgradeLevel if(nLevel > level)then doSendMagicEffect(toPosition, CONST_ME_MAGIC_GREEN) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Awesome! Your " .. it:getName() .. " upgrade to +" .. nLevel .. " successfully!") else doSendMagicEffect(toPosition, CONST_ME_BLOCKHIT) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Failed, your gem broken.") end doItemSetAttribute(itemEx.uid, ITEM_ATTRIBUTE_NAME, it:getName()..((nLevel>0) and "+"..nLevel or "")) doItemSetAttribute(itemEx.uid, ITEM_ATTRIBUTE_ATTACK, upgrading.upValue(it:getAttack(), nLevel, conf["upgrade"].attack)) doItemSetAttribute(itemEx.uid, ITEM_ATTRIBUTE_DEFENSE, upgrading.upValue(it:getDefense(), nLevel, conf["upgrade"].defense)) doItemSetAttribute(itemEx.uid, ITEM_ATTRIBUTE_EXTRADEFENSE, upgrading.upValue(it:getExtraDefense(), nLevel, conf["upgrade"].extraDefense)) doItemSetAttribute(itemEx.uid, ITEM_ATTRIBUTE_ARMOR, upgrading.upValue(it:getArmor(), nLevel, conf["upgrade"].armor)) doItemSetAttribute(itemEx.uid, ITEM_ATTRIBUTE_HITCHANCE, upgrading.upValue(it:getHitChance(), nLevel, conf["upgrade"].hitChance)) doRemoveItem(item.uid, 1) else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You cannot upgrade your " .. it:getName() .. " more or this item need more Ranks for use this gem.") end else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You cannot upgrade this item.") end end Obrigado ai jovens, quem tiver como me ajudar, vai me ajudar demais s2 Conheça agora os planos e preços da TKS Host. Qualidade e Preço Justo! www.tkshost.com
Postado Julho 30, 2015 9 anos só colocar logo embaixo de doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Awesome! Your " .. it:getName() .. " upgrade to +" .. nLevel .. " successfully!") if nLevel >= 7 then --- função de dar broadcast aqui end Não sei como funciona a função de broadcast pra 1.0> mas em 0.4 é usando: doBroadcastMessage("O jogador ".. getCreatureName(cid) .." combinou seu ".. it:getName() .." para +".. nLevel .." com sucesso", MESSAGE_STATUS_CONSOLE_RED) Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Julho 30, 2015 9 anos Autor Parceiro, se deveria ficar assim: doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Awesome! Your " .. it:getName() .. " upgrade to +" .. nLevel .. " successfully!") if nLevel >= 7 then doBroadcastMessage("O jogador ".. getCreatureName(cid) .." combinou seu ".. it:getName() .." para +".. nLevel .." com sucesso", MESSAGE_STATUS_CONSOLE_RED) end Nao funcionou, deu este erro no console: "nao sei postar imagem sem ser de upload em site :/" http://imgur.com/pRNRop0 Editado Julho 30, 2015 9 anos por Tryaron (veja o histórico de edições) Conheça agora os planos e preços da TKS Host. Qualidade e Preço Justo! www.tkshost.com
Postado Julho 30, 2015 9 anos ele tá dizendo q não existe a função doBroadcastMessage, foi oque eu falei pra vc.. preciso q vc me diga como faz pra dar broadcast em 1.0> pra trocar a função ali.. Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Julho 30, 2015 9 anos Autor Voce nao conseguiria ver nao? Onde eu vejo essas funções pra ver como eh? Conheça agora os planos e preços da TKS Host. Qualidade e Preço Justo! www.tkshost.com
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.