TI
pedido

Arumar script

Por tiagotjsk, 04 de mar. de 2013 em Scripts

resolvido
script
33
3.1k
RoksasR
04 de março de 2013 às 19:46

ASSIM: CADA TRANS, GASTAR 5 DE SOUL ;]

 

 

local config = {

--[vocation id] = { {lvl inicial, lvl maximo}, looktype, efeito}

[1] = { {lvl = {1, 24}, look = 71, eff = 1},

{lvl = {25, 49}, look = 66, eff = 130},

{lvl = {50, 74}, look = 91, eff = 15},

{lvl = {75, 99999999}, look = 18, eff = 15},

},

[2] = { {lvl = {25, 49}, look = 66, eff = 208},

{lvl = {50, 74}, look = 91, eff = 208},

{lvl = {75, 990000}, look = 306, eff = 9},

},

}

function onSay(cid, words, param, channel)

local voc = config[getPlayerVocation(cid)]

if voc then

for i = 1, #voc do

if getPlayerLevel(cid) >= voc.lvl[1] and getPlayerLevel(cid) <= voc.lvl[2] then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você está sob efeitos da Transformação!")

local outfit = {lookType = voc.look}

doCreatureChangeOutfit(cid, outfit)

doPlayerAddSoul(cid,-5)

doSendMagicEffect(getCreaturePosition(cid), voc.eff)

local hp = 1000 -- hp que adiciona

local hpm = getCreatureMaxHealth(cid)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+hp)

local mp = 1000 -- mp que adiciona

local mph = getCreatureMaxMana(cid)

doCreatureAddMana(cid, mp+mph)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+mp+mph)

db.query("UPDATE `players` SET `maglevel` = `maglevel` + 10 WHERE `id` = "..pid)

doPlayerAddSkill(cid, 0, 1)

if getCreatureMana(cid) <= 180 then

doRemoveCondition(cid, CONDITION_OUTFIT)

db.query("UPDATE `players` SET `maglevel` = `maglevel` - 10 WHERE `id` = "..pid)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)-hp)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)-mp)

return true

end

doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você precisa estar no minimo no level " .. voc[1].lvl[1] .. " e no maximo ".. voc[#voc].lvl[2].." para transformar.")

else

doPlayerSendCancel(cid, "Você não pode se Transformar!")

end

end

return true

end

end

 

 

OBS: ARRUMEI HP TB

tiagotjskT
04 de março de 2013 às 19:54

hmm olha o cara mesmo com 0 de soul fika transformando 1 atras do outro tipo tenho 10 k de life transformei 30 veses fui pa 30000 de life -.-

RoksasR
04 de março de 2013 às 20:01

Mals, nn tinha trocado, tava Mana em vez de Soul :)

 

 

local config = {

--[vocation id] = { {lvl inicial, lvl maximo}, looktype, efeito}

[1] = { {lvl = {1, 24}, look = 71, eff = 1},

{lvl = {25, 49}, look = 66, eff = 130},

{lvl = {50, 74}, look = 91, eff = 15},

{lvl = {75, 99999999}, look = 18, eff = 15},

},

[2] = { {lvl = {25, 49}, look = 66, eff = 208},

{lvl = {50, 74}, look = 91, eff = 208},

{lvl = {75, 990000}, look = 306, eff = 9},

},

}

function onSay(cid, words, param, channel)

local voc = config[getPlayerVocation(cid)]

if voc then

for i = 1, #voc do

if getPlayerLevel(cid) >= voc.lvl[1] and getPlayerLevel(cid) <= voc.lvl[2] then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você está sob efeitos da Transformação!")

local outfit = {lookType = voc.look}

doCreatureChangeOutfit(cid, outfit)

doSendMagicEffect(getCreaturePosition(cid), voc.eff)

local hp = 1000 -- hp que adiciona

local hpm = getCreatureMaxHealth(cid)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+hp)

local mp = 1000 -- mp que adiciona

local mph = getCreatureMaxMana(cid)

doCreatureAddMana(cid, mp+mph)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+mp+mph)

db.query("UPDATE `players` SET `maglevel` = `maglevel` + 10 WHERE `id` = "..pid)

doPlayerAddSkill(cid, 0, 1)

if getPlayerSoul(cid) >= 5 then

doPlayerAddSoul(cid,-5)

if getPlayerSoul(cid) < 5 then

doRemoveCondition(cid, CONDITION_OUTFIT)

db.query("UPDATE `players` SET `maglevel` = `maglevel` - 10 WHERE `id` = "..pid)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)-hp)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)-mp)

return true

end

doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você precisa estar no minimo no level " .. voc[1].lvl[1] .. " e no maximo ".. voc[#voc].lvl[2].." para transformar.")

else

doPlayerSendCancel(cid, "Você não pode se Transformar!")

end

end

return true

end

end

end

 

 

 

tiagotjskT
04 de março de 2013 às 20:07

kkkk Desa ves nao deu erro em nada igual da ultima ves so q alem de ele falar a amagia ele nao fala tipo eu falo transform nao sai nada nem aparece nada

RoksasR
04 de março de 2013 às 20:10

Erro no distro?

tiagotjskT
04 de março de 2013 às 20:13

nem um

RoksasR
04 de março de 2013 às 21:35

Tenta ai amigo:

 

 

local config = {

--[vocation id] = { {lvl inicial, lvl maximo}, looktype, efeito}

[1] = { {lvl = {1, 24}, look = 71, eff = 1},

{lvl = {25, 49}, look = 66, eff = 130},

{lvl = {50, 74}, look = 91, eff = 15},

{lvl = {75, 99999999}, look = 18, eff = 15},

},

[2] = { {lvl = {25, 49}, look = 66, eff = 208},

{lvl = {50, 74}, look = 91, eff = 208},

{lvl = {75, 990000}, look = 306, eff = 9},

},

}

function onSay(cid, words, param, channel)

local voc = config[getPlayerVocation(cid)]

if voc then

for i = 1, #voc do

if getPlayerLevel(cid) >= voc.lvl[1] and getPlayerLevel(cid) <= voc.lvl[2] then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você está sob efeitos da Transformação!")

local outfit = {lookType = voc.look}

doCreatureChangeOutfit(cid, outfit)

doSendMagicEffect(getCreaturePosition(cid), voc.eff)

local hp = 1000 -- hp que adiciona

local hpm = getCreatureMaxHealth(cid)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+hp)

local mp = 1000 -- mp que adiciona

local mph = getCreatureMaxMana(cid)

doCreatureAddMana(cid, mp+mph)

setCreatureMaxMana(cid, getCreatureMaxMana(cid)+mp+mph)

db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` + 10 WHERE `id` = "..pid)

if getPlayerSoul(cid) > 4 then

doPlayerAddSoul(cid,mp-1005)

if getPlayerSoul(cid) < 5 then

doRemoveCondition(cid, CONDITION_OUTFIT)

db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` - 10 WHERE `id` = "..pid)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)-hp)

setCreatureMaxMana(cid, getCreatureMaxMana(cid)-mp)

return true

end

doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você precisa estar no minimo no level " .. voc[1].lvl[1] .. " e no maximo ".. voc[#voc].lvl[2].." para transformar.")

else

doPlayerSendCancel(cid, "Você não pode se Transformar!")

end

end

return true

end

end

end

 

tiagotjskT
04 de março de 2013 às 21:42

Nao entendo eu falo transform e nao acontese nada absulutament nada nao da erro em nada a palavra nao sai nao fala nada nada mesmo

RoksasR
04 de março de 2013 às 21:54

Não é transformar?

tiagotjskT
04 de março de 2013 às 21:57

negativo é transform nao tem o ar mais se esse é o for o caso vou mudar para test ja dou a resposta

 

o Erro peciste

Editado Março 4 por tiagotjsk

RoksasR
04 de março de 2013 às 22:12

 

local config = {

--[vocation id] = { {lvl inicial, lvl maximo}, looktype, efeito}

[1] = { {lvl = {1, 24}, look = 71, eff = 1},

{lvl = {25, 49}, look = 66, eff = 130},

{lvl = {50, 74}, look = 91, eff = 15},

{lvl = {75, 99999999}, look = 18, eff = 15},

},

[2] = { {lvl = {25, 49}, look = 66, eff = 208},

{lvl = {50, 74}, look = 91, eff = 208},

{lvl = {75, 990000}, look = 306, eff = 9},

},

}

function onSay(cid, words, param, channel)

if words=='transform' then

local voc = config[getPlayerVocation(cid)]

if voc then

for i = 1, #voc do

if getPlayerLevel(cid) >= voc.lvl[1] and getPlayerLevel(cid) <= voc.lvl[2] then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você está sob efeitos da Transformação!")

local outfit = {lookType = voc.look}

doCreatureChangeOutfit(cid, outfit)

doSendMagicEffect(getCreaturePosition(cid), voc.eff)

local hp = 1000 -- hp que adiciona

local hpm = getCreatureMaxHealth(cid)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+hp)

local mp = 1000 -- mp que adiciona

local mph = getCreatureMaxMana(cid)

doCreatureAddMana(cid, mp+mph)

setCreatureMaxMana(cid, getCreatureMaxMana(cid)+mp+mph)

db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` + 10 WHERE `id` = "..pid)

if getPlayerSoul(cid) > 4 then

doPlayerAddSoul(cid,mp-1005)

if getPlayerSoul(cid) < 5 then

doRemoveCondition(cid, CONDITION_OUTFIT)

db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` - 10 WHERE `id` = "..pid)

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)-hp)

setCreatureMaxMana(cid, getCreatureMaxMana(cid)-mp)

return true

end

end

doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você precisa estar no minimo no level " .. voc[1].lvl[1] .. " e no maximo ".. voc[#voc].lvl[2].." para transformar.")

else

doPlayerSendCancel(cid, "Você não pode se Transformar!")

end

end

return true

end

end

end

 

tiagotjskT
04 de março de 2013 às 22:43

Mesma coisa so que agora a palavra transformar sai normal como nao ouvese nada soment fala

 

Ae cara eu to indo durmi amanha voce termina de me ajudar se poder :D 7 da manha to on :D

 

ae se posivel ja deixa o script pronto postado faseno favor tipo de uma arumada nele emtao coisas ponha um negosinho para qualtidade de mana que vai gasta tipo asim [50] exemplo esta asim [1] = { {lvl = {1, 24}, look = 71, eff = 1 ,customana 50}, alemnta asim tipo apra cada trans se for posivel e se posivel ponha outro o tanto de soul que vai gasta do geito que voce falou la blz tou indo durmi flw obrigadao amanha eu entra ja dou rep ^^

notle2012N
05 de março de 2013 às 00:32

tenta esse :)

temp = 10 -- tempo que vai durar a trasformação 10 segundos
local config = {
--[vocation id] = { {lvl inicial, lvl maximo}, looktype, efeito}
[1] = { {lvl = {1, 24}, look = 71, eff = 1},
{lvl = {25, 49}, look = 66, eff = 130},
{lvl = {50, 74}, look = 91, eff = 15},
{lvl = {75, 99999999}, look = 18, eff = 15},
},
[2] = { {lvl = {25, 49}, look = 66, eff = 208},
{lvl = {50, 74}, look = 91, eff = 208},
{lvl = {75, 990000}, look = 306, eff = 9},
},
}
function HP(hp1, hp2, hp3)
setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)-1000)
setCreatureMaxMana(cid, getCreatureMaxMana(cid)-1000)
return TRUE
end
function onSay(cid, words, param, channel)
if getPlayerStorageValue(cid, 788525) >= os.time() then return true end
doPlayerSay(cid, "transformar")
local voc = config[getPlayerVocation(cid)]
if voc then
for i = 1, #voc do
if getPlayerLevel(cid) >= voc[i].lvl[1] and getPlayerLevel(cid) <= voc[i].lvl[2] then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você Transformou!")
local outfit = {lookType = voc[i].look}
doSetCreatureOutfit(cid, outfit, -1)
doSendMagicEffect(getCreaturePosition(cid), voc[i].eff)
local hp = 1000 -- hp que adiciona
local hpm = getCreatureMaxHealth(cid)
setCreatureMaxHealth(cid, hp+hpm)
doCreatureAddHealth(cid, hpm)
local mp = 1000 -- mp que adiciona
local mpm = getCreatureMaxMana(cid)
setCreatureMaxMana(cid, hp+hpm)
doCreatureAddMana(cid, hpm)
doPlayerAddSkill(cid, 0, 1)
setPlayerStorageValue(cid, 788525, os.time() +temp)
addEvent(doRemoveCondition,1000*temp,cid, CONDITION_OUTFIT)
addEvent(doCreatureAddHealth,1000*temp,cid,-hp)
addEvent(doPlayerAddMana,1000*temp,cid,-mp)
addEvent(HP,1000*temp,hp1,hp2,hp3)
return true
end
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você precisa estar no minimo no level " .. voc[1].lvl[1] .. " e no maximo ".. voc[#voc].lvl[2].." para transformar.")
else
doPlayerSendCancel(cid, "Você não pode se Transformar!")
end
return true
end

Editado Março 5 por notle2012

tiagotjskT
05 de março de 2013 às 07:48

Ae vlw nao teve poblema nem um transformou correto so que tem uma coisa eu transformo quantas veses eu quero eu q tem q ponha uma storage para ele usa uma ves so a procima so depois q acaba essa e a mana ea vida nao é removido ganho e eles continua la mesmo depois que acaba a trans

notle2012N
05 de março de 2013 às 23:29

tenta esse mudei umas coisas espero ter ajudado :D

-- config by notle
temp = 10 -- tempo que vai durar a trasformação 10 segundos
local config = {
--[vocation id] = { {lvl inicial, lvl maximo}, looktype, efeito,life,mana}
[1] = { {lvl = {1, 24}, look = 71, eff = 1,life = 1000,mp = 1000},
{lvl = {25, 49}, look = 66, eff = 130,life = 2000,mp = 2000},
{lvl = {50, 74}, look = 91, eff = 15,life = 3000,mp = 3000},
{lvl = {75, 99999999}, look = 18, eff = 15,life = 5000,mp = 5000},
},
[2] = { {lvl = {25, 49}, look = 66, eff = 208,life = 3000,mp = 3000},
{lvl = {50, 74}, look = 91, eff = 208,life = 6000,mp = 6000},
{lvl = {75, 990000}, look = 306, eff = 9,life = 9000,mp = 9000},
}}
-- config by notle
function onSay(cid, words, param, channel)
if getPlayerStorageValue(cid, 788525) >= os.time() then return doPlayerSendCancel(cid, "Você não pode se Transformar Denovo espere "..(getPlayerStorageValue(cid, 788525) - os.time()).." seconds.") end
voc = config[getPlayerVocation(cid)]
if voc then
for i = 1, #voc do
function life(cid, hp2)
setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)-voc[i].life)
setCreatureMaxMana(cid, getCreatureMaxMana(cid)-voc[i].mp)
return
end
if getPlayerLevel(cid) >= voc[i].lvl[1] and getPlayerLevel(cid) <= voc[i].lvl[2] then
addEvent(life,1000*temp,cid,hp2)
doPlayerSay(cid, "transformar")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você Transformou!")
doSetCreatureOutfit(cid, {lookType = voc[i].look}, -1)
doSendMagicEffect(getCreaturePosition(cid), voc[i].eff)
setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+(voc[i].life))
doCreatureAddHealth(cid,voc[i].life)
setCreatureMaxMana(cid, getPlayerMaxMana(cid)+(voc[i].mp))
doPlayerAddMana(cid,voc[i].mp)
doPlayerAddSkill(cid, 0, 1)
addEvent(doRemoveCondition,1000*temp,cid, CONDITION_OUTFIT)
addEvent(doCreatureAddHealth,1000*temp,cid,-voc[i].life)
addEvent(doPlayerAddMana,1000*temp,cid,-voc[i].mp)
setPlayerStorageValue(cid, 788525, os.time() +temp+3)
return true end
end
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você precisa estar no minimo no level " .. voc[1].lvl[1] .. " ou ate ".. voc[#voc].lvl[2].." para transformar.")
end
return true
end

Editado Março 6 por notle2012