Ao player dizer a talk ele se transforma ele ganha skills(health,mana e level) ganha looktype(Que fica permanente ao player ou seja mesma que ele mude o outfit ele continuara com o looktype da transformaçao) ganha spell e modificaçao no nome do tipo de transformaçao ele exemplo ((Dragon) Caotic) sendo que so pode usar apenas uma vez.
Resumidando tudo e uma sub-vocation.
Para instalo va em talkactions/scripts e crie um arquivo LUA chamado transf e coloque este script dentro:
function onSay(cid, words, param)
local transf = {
["Morte"] = {level = 1, type = "(Dark)", health = 2222, addlevel = 10, looktype = 300, spell = exori, addmana = 2000},
["Demon"] = {level = 1, type = "(Demonio)", health = 22622, addlevel = 20, looktype = 35, spell = exori, addmana = 1800},
["Dragon"] = {level = 1, type = "(Dragon)", health = 22622, addlevel = 20, looktype = 34, spell = exori, addmana = 1222}
}
if (param == nil or param == '' or param == 'lista' or param == 'list'or not transf[param]) then
local str = ""
str = str .. "Transformaçoes :\n\n"
for name, type in pairs(transf) do
str = str..name.."\n"
end
str = str .. ""
doShowTextDialog(cid, 1397, str)
return TRUE
end
local name = getCreatureName(cid)
local transflevel = transf[param].level
local transfhealth = transf[param].health
local transfaddlevel = transf[param].addlevel
local transftype = transf[param].type
local transflooktype = transf[param].looktype
local transfspell = transf[param].spell
local transfmana = transf[param].addmana
local transfparam = transf[param]
if getPlayerLevel(cid) < transflevel then
doPlayerSendCancel(cid, "Voce precisa de "..transflevel.." de level para a transformação")
return true
end
if getPlayerStorageValue(cid, 26458) == 1 then
doPlayerSendCancel(cid, "Voce ja se transformo nao pode transformar")
return true
end
setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+transfhealth)
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
doPlayerLearnInstantSpell(cid, transfspell)
doPlayerAddLevel(cid, transfaddlevel)
setCreatureMaxMana(cid, getCreatureMaxMana(cid)+transfmana)
doCreatureAddMana(cid, getCreatureMaxMana(cid))
doCreatureChangeOutfit(cid, {lookType = transflooktype})
db.executeQuery("UPDATE `players` SET `name` = '".. transftype.." "..name.."' WHERE `id` = "..getPlayerGUID(cid)..";")
setPlayerStorageValue(cid, 26458, 1)
setPlayerStorageValue(cid, 26456, transflooktype)
return true
end
Coloque esta tag em talkations.xml
<talkaction words="/transf" event="script" value="transf.lua"/>
Agora vá em CreatureScripts/scripts e crie um arquivo LUA chamado transf e coloque isto
function onThink(cid, interval)if getPlayerStorageValue(cid, 26458) == 1 then
doCreatureChangeOutfit(cid, {lookType = getPlayerStorageValue(cid, 26456)})
return true
end
return true
end
Agora va em creaturescripts/creaturescripts.xml e coloque esta tag:
<event type="think" name="transf" event="script" value="transf.lua"/>
Registre o evento colocando isto em creaturescripts/scripts/ abra login.lua e coloque antes do ultimo Return:
registerCreatureEvent(cid, "transf")
Para transformar so dizer /transf(e o nome da transformaçao)
Se quiser ver a lista /transf(lista ou list ou qualquer outra palavra desde que nao seja alguma transformaçao)
Vamos apreder a adicionar novas transformaçoes:
["Morte"] = {level = 1, type = "(Dark)",health = 2222, addlevel = 10, looktype = 300, spell = exori, addmana = 2000},
Vermelho("Morte") --- Nome da transformaçao deve ser mantida o " "
Marron(1) ----- Sera necessario quanto de level para se transformar
Verde((Dark)) ---- O prefixo que ele ganhara e recomendavel o uso do ()
Cyan(2222) ----- Quanto de vida ele ganhar
Violet(10) ----- Quanto de level ele vai ganhar
Golden Rod (300) ---- Que looktype ele vai ganhar sendo que o looktype e permanente----
Cor Salmon(exori) --- Que spell ele vai aprender a usar
Plum(2000) ---- Quanto de mana ele vai ganhar----
Atençao deixe sem virgula o a ultima linha de configuraça
O looktype e permanete e sendo que a transformaçao so pode ser usado apenas uma vez uma estrategia e subir de level e fazer a transformaçao mais tarde para ganhar uma Creature.
O script tem uma storage ou seja se voce quiser fazer uma verificaçao da transformaçao para ganhar um item ou apenas aquela transformaçao passar na porta entre outros.