Postado Fevereiro 4, 2016 9 anos Posta o seu script! Editado Fevereiro 4, 2016 9 anos por Komic (veja o histórico de edições)
Postado Fevereiro 4, 2016 9 anos 42 minutos atrás, Komic disse: Posta o seu script! é esse do xwhitewolf Em 17/06/2014 08:30:11, xWhiteWolf disse: Eae galera do TK, vim trazer pra vocês um script do Fox World que já me pediram no suporte um monte de vezes, é a magma boots absorvendo metade do dano e podendo ser usado a cada 2 minutos. Pra quem não entendeu tenta acompanhar aqui nas screenshots: Conteúdo Oculto Conteúdo Oculto Nesse caso o player iria tomar 1124 de dano, mas ele tomou só 562 e a bota absorveu a outra metade do dano! Bom, vamos ao script: em actions.xml adicione: <action itemid="7891" script="magmaboots.lua"/> agora em actions\scripts\magmaboots.lua adicione: local config = { storagetempo = 19500, -- storage que contará os segundos storageskill = 19501, -- storage que vai dizer se a skill está ativada ou desativada itemid = 7891, -- id da boots itemplace = 8, -- feet tempo = 2*60 -- tempo em segundo (2 minutos) } function onUse(cid, item, frompos, item2, topos) if getPlayerStorageValue(cid, config.storageskill) <= 0 and (getPlayerSlotItem(cid, config.itemplace).itemid == config.itemid) then if getPlayerStorageValue(cid, config.storagetempo) - os.time() <= 0 then timenow = os.time() + config.tempo setPlayerStorageValue(cid, config.storagetempo, timenow) setPlayerStorageValue(cid, config.storageskill, 1) doPlayerSendTextMessage(cid, 23, "You activated your "..getItemNameById(config.itemid)..", it's ready to absorb damages!") for j= 0,(config.tempo -1) do addEvent(function() if isPlayer(cid) then doPlayerSendCancel(cid, "Time until next use: ".. config.tempo - j .." second(s)") end end, (50+(j*1000))) end else doPlayerSendTextMessage(cid, 23, "You have to wait ".. getPlayerStorageValue(cid, config.storagetempo) - os.time() .." second(s) until you can use it again!") end else doPlayerSendTextMessage(cid, 23, "Your "..getItemNameById(config.itemid).." is already active or it isn't equiped.") end return true end em creaturescripts.xml adicione essa linha: <event type="statschange" name="magmaboots" event="script" value="magmaboots.lua"/> agora crie o script magmaboots.lua em creaturescripts\scripts e adicione o seguinte nele: local config = { percent = 0.5, --- porcentagem do dano que irá levar (0.5 = 50%) storageskill = 19501, -- storage da skill itemplace = 8, -- lugar q ela deve estar (8 é o feet) itemid = 7891, -- id do item damagemin = 100 --- minimo de dano que deve ser pro player absorver } function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS and isCreature(attacker) and value >= config.damagemin then if getPlayerSlotItem(cid, config.itemplace).itemid == config.itemid then if getPlayerStorageValue(cid, config.storageskill) >= 1 then value = math.ceil(value*(config.percent)) setPlayerStorageValue(cid, config.storageskill, getPlayerStorageValue(cid, config.storageskill)-1) doTargetCombatHealth(attacker, cid, combat, -value, -value, 255) doPlayerSendTextMessage(cid, 23, "Your "..getItemNameById(config.itemid).." absorved "..value.." of damage.") return false end end end return true end feito isso você só vai ter que ir no login.lua que fica em creaturescripts\scripts e adicionar essas linhas antes do ultimo return true: ----------MAGMA BOOTS DO FOX---------------- registerCreatureEvent(cid, "magmaboots") if getPlayerStorageValue(cid, 19501) ~= 0 then setPlayerStorageValue(cid, 19501, 0) end --------------------------------------- Não tem muito oque configurar, no actions você pode editar isso daqui: e em creaturescripts vc pode editar isso daqui: Se vc ativar ela e deslogar, vc vai precisar ativar de novo quando logar. Testei em 8.54 então se não funcionar no seu server 12.0 nao é problema meu, procura as funções que mudaram e faça as alterações necessárias. Não me peça pra adaptar o script pra 7.51, eu não sou programmer e não sei fazer isso. Bom é isso, qualquer coisa manda nos comentários que eu tento ajudar ou explicar melhor. Abraço pra vocês 42 minutos atrás, Komic disse: Posta o seu script! é esse do xwhitewolf Em 17/06/2014 08:30:11, xWhiteWolf disse: Eae galera do TK, vim trazer pra vocês um script do Fox World que já me pediram no suporte um monte de vezes, é a magma boots absorvendo metade do dano e podendo ser usado a cada 2 minutos. Pra quem não entendeu tenta acompanhar aqui nas screenshots: Conteúdo Oculto Conteúdo Oculto Nesse caso o player iria tomar 1124 de dano, mas ele tomou só 562 e a bota absorveu a outra metade do dano! Bom, vamos ao script: em actions.xml adicione: <action itemid="7891" script="magmaboots.lua"/> agora em actions\scripts\magmaboots.lua adicione: local config = { storagetempo = 19500, -- storage que contará os segundos storageskill = 19501, -- storage que vai dizer se a skill está ativada ou desativada itemid = 7891, -- id da boots itemplace = 8, -- feet tempo = 2*60 -- tempo em segundo (2 minutos) } function onUse(cid, item, frompos, item2, topos) if getPlayerStorageValue(cid, config.storageskill) <= 0 and (getPlayerSlotItem(cid, config.itemplace).itemid == config.itemid) then if getPlayerStorageValue(cid, config.storagetempo) - os.time() <= 0 then timenow = os.time() + config.tempo setPlayerStorageValue(cid, config.storagetempo, timenow) setPlayerStorageValue(cid, config.storageskill, 1) doPlayerSendTextMessage(cid, 23, "You activated your "..getItemNameById(config.itemid)..", it's ready to absorb damages!") for j= 0,(config.tempo -1) do addEvent(function() if isPlayer(cid) then doPlayerSendCancel(cid, "Time until next use: ".. config.tempo - j .." second(s)") end end, (50+(j*1000))) end else doPlayerSendTextMessage(cid, 23, "You have to wait ".. getPlayerStorageValue(cid, config.storagetempo) - os.time() .." second(s) until you can use it again!") end else doPlayerSendTextMessage(cid, 23, "Your "..getItemNameById(config.itemid).." is already active or it isn't equiped.") end return true end em creaturescripts.xml adicione essa linha: <event type="statschange" name="magmaboots" event="script" value="magmaboots.lua"/> agora crie o script magmaboots.lua em creaturescripts\scripts e adicione o seguinte nele: local config = { percent = 0.5, --- porcentagem do dano que irá levar (0.5 = 50%) storageskill = 19501, -- storage da skill itemplace = 8, -- lugar q ela deve estar (8 é o feet) itemid = 7891, -- id do item damagemin = 100 --- minimo de dano que deve ser pro player absorver } function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS and isCreature(attacker) and value >= config.damagemin then if getPlayerSlotItem(cid, config.itemplace).itemid == config.itemid then if getPlayerStorageValue(cid, config.storageskill) >= 1 then value = math.ceil(value*(config.percent)) setPlayerStorageValue(cid, config.storageskill, getPlayerStorageValue(cid, config.storageskill)-1) doTargetCombatHealth(attacker, cid, combat, -value, -value, 255) doPlayerSendTextMessage(cid, 23, "Your "..getItemNameById(config.itemid).." absorved "..value.." of damage.") return false end end end return true end feito isso você só vai ter que ir no login.lua que fica em creaturescripts\scripts e adicionar essas linhas antes do ultimo return true: ----------MAGMA BOOTS DO FOX---------------- registerCreatureEvent(cid, "magmaboots") if getPlayerStorageValue(cid, 19501) ~= 0 then setPlayerStorageValue(cid, 19501, 0) end --------------------------------------- Não tem muito oque configurar, no actions você pode editar isso daqui: e em creaturescripts vc pode editar isso daqui: Se vc ativar ela e deslogar, vc vai precisar ativar de novo quando logar. Testei em 8.54 então se não funcionar no seu server 12.0 nao é problema meu, procura as funções que mudaram e faça as alterações necessárias. Não me peça pra adaptar o script pra 7.51, eu não sou programmer e não sei fazer isso. Bom é isso, qualquer coisa manda nos comentários que eu tento ajudar ou explicar melhor. Abraço pra vocês 42 minutos atrás, Komic disse: Posta o seu script! é esse do xwhitewolf Em 17/06/2014 08:30:11, xWhiteWolf disse: Eae galera do TK, vim trazer pra vocês um script do Fox World que já me pediram no suporte um monte de vezes, é a magma boots absorvendo metade do dano e podendo ser usado a cada 2 minutos. Pra quem não entendeu tenta acompanhar aqui nas screenshots: Conteúdo Oculto Conteúdo Oculto Nesse caso o player iria tomar 1124 de dano, mas ele tomou só 562 e a bota absorveu a outra metade do dano! Bom, vamos ao script: em actions.xml adicione: <action itemid="7891" script="magmaboots.lua"/> agora em actions\scripts\magmaboots.lua adicione: local config = { storagetempo = 19500, -- storage que contará os segundos storageskill = 19501, -- storage que vai dizer se a skill está ativada ou desativada itemid = 7891, -- id da boots itemplace = 8, -- feet tempo = 2*60 -- tempo em segundo (2 minutos) } function onUse(cid, item, frompos, item2, topos) if getPlayerStorageValue(cid, config.storageskill) <= 0 and (getPlayerSlotItem(cid, config.itemplace).itemid == config.itemid) then if getPlayerStorageValue(cid, config.storagetempo) - os.time() <= 0 then timenow = os.time() + config.tempo setPlayerStorageValue(cid, config.storagetempo, timenow) setPlayerStorageValue(cid, config.storageskill, 1) doPlayerSendTextMessage(cid, 23, "You activated your "..getItemNameById(config.itemid)..", it's ready to absorb damages!") for j= 0,(config.tempo -1) do addEvent(function() if isPlayer(cid) then doPlayerSendCancel(cid, "Time until next use: ".. config.tempo - j .." second(s)") end end, (50+(j*1000))) end else doPlayerSendTextMessage(cid, 23, "You have to wait ".. getPlayerStorageValue(cid, config.storagetempo) - os.time() .." second(s) until you can use it again!") end else doPlayerSendTextMessage(cid, 23, "Your "..getItemNameById(config.itemid).." is already active or it isn't equiped.") end return true end em creaturescripts.xml adicione essa linha: <event type="statschange" name="magmaboots" event="script" value="magmaboots.lua"/> agora crie o script magmaboots.lua em creaturescripts\scripts e adicione o seguinte nele: local config = { percent = 0.5, --- porcentagem do dano que irá levar (0.5 = 50%) storageskill = 19501, -- storage da skill itemplace = 8, -- lugar q ela deve estar (8 é o feet) itemid = 7891, -- id do item damagemin = 100 --- minimo de dano que deve ser pro player absorver } function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS and isCreature(attacker) and value >= config.damagemin then if getPlayerSlotItem(cid, config.itemplace).itemid == config.itemid then if getPlayerStorageValue(cid, config.storageskill) >= 1 then value = math.ceil(value*(config.percent)) setPlayerStorageValue(cid, config.storageskill, getPlayerStorageValue(cid, config.storageskill)-1) doTargetCombatHealth(attacker, cid, combat, -value, -value, 255) doPlayerSendTextMessage(cid, 23, "Your "..getItemNameById(config.itemid).." absorved "..value.." of damage.") return false end end end return true end feito isso você só vai ter que ir no login.lua que fica em creaturescripts\scripts e adicionar essas linhas antes do ultimo return true: ----------MAGMA BOOTS DO FOX---------------- registerCreatureEvent(cid, "magmaboots") if getPlayerStorageValue(cid, 19501) ~= 0 then setPlayerStorageValue(cid, 19501, 0) end --------------------------------------- Não tem muito oque configurar, no actions você pode editar isso daqui: e em creaturescripts vc pode editar isso daqui: Se vc ativar ela e deslogar, vc vai precisar ativar de novo quando logar. Testei em 8.54 então se não funcionar no seu server 12.0 nao é problema meu, procura as funções que mudaram e faça as alterações necessárias. Não me peça pra adaptar o script pra 7.51, eu não sou programmer e não sei fazer isso. Bom é isso, qualquer coisa manda nos comentários que eu tento ajudar ou explicar melhor. Abraço pra vocês
Postado Fevereiro 4, 2016 9 anos Autor usa o notepad++ pra abrir scripts, aí vc clica em formatar e bota converter pra ANSII. O erro q tá dando é de formatação. 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 Fevereiro 4, 2016 9 anos 35 minutos atrás, xWhiteWolf disse: usa o notepad++ pra abrir scripts, aí vc clica em formatar e bota converter pra ANSII. O erro q tá dando é de formatação. fiz isso aind continua da erro n mudo nd quando fiz isso unexpected symbol near = símbolo inesperado perto Editado Fevereiro 4, 2016 9 anos por fenixelite (veja o histórico de edições)
Postado Fevereiro 4, 2016 9 anos Autor o erro q tá dando tá falando q tem um símbolo desconhecido na linha 1. Olha a linha 1 do script, não tem nada de desconhecido ali. Apaga a linha e reescreve ela manualmente 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)
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.