Ir para conteúdo
Entre para seguir isso  
Half Blood

Transformação Molecular

Recommended Posts

Half Blood    0
Half Blood

Nome: Transformação Molecular

Autor: Yohan (eu)

Testado em: TFS 0.3.6 - 8.54

Descrição:

Você diz a talkaction (no caso !transform) e muda seu outfit. Durante a explicação entenderão melhor.

Porque estar postando este script:

Comecei a fazer script a +/- 1 mês e fiz esse script para o meu OTServ que ainda nem abriu e como não estou conseguindo juntar dinheiro pro HOSTer, não tenho certeza se irá pro ar, então postei esse script aqui, pra não ficar moscando no meu PC. No meu OT não uso as vocações normais, ao invés delas uso: Vampire (sorc), Fairy (druid), Werewolf (pala), Orc (kina), e suas respectivas promoções. Cada uma tem até a segunda promoção, sendo que a second promotion é apenas para uma pessoa de cada vocação, os high lvls da vocation. Daí fiquei imaginando que para diferenciar esses 4 do resto poderiam ter uma coisa a mais, então achei o script do Mock Magia transformação Animal, porém não o consegui instalar, então resolvi tentar fazer por talkaction mesmo.

Chega de embromação e vamos lá:

Vá até data >> talkactions >> scripts, crie um arquivo .lua lá dentro e renomeie transfor.lua, abra-o e cole isto dentro:

 

[color=seagreen]-- Script feito por Yohan, exclusivo para a OTNet, proibida postagem em outro fórum. --[/color]
function onSay(cid, words, param, channel)
local voc = getPlayerVocation(cid)
local mana = getCreatureMana(cid)
local pp = getPlayerPosition(cid)

if voc == [color=blue]9[/color] and mana >= [b][u]400[/u][/b] then
doCreatureAddMana(cid,-[b][u]400[/u][/b])
doSendMagicEffect(pp,31)
doSendAnimatedText(pp,"WAARGH",180)
doSetCreatureOutfit(cid,{lookType = [color=red]287[/color], lookHead =  getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet, lookAddons = getCreatureOutfit(cid).lookAddons},5 * 60 * 1000)

elseif voc == [color=blue]10[/color] and mana >= [b][u]400[/u][/b] then
doCreatureAddMana(cid,-[b][u]400[/u][/b])
doSendMagicEffect(pp,50)
doSendAnimatedText(pp,"CRAAAH",149)
doSetCreatureOutfit(cid,{lookType = [color=red]223[/color], lookHead =  getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet, lookAddons = getCreatureOutfit(cid).lookAddons},5 * 60 * 1000)

elseif voc == [color=blue]11[/color] and mana >= [b][u]400[/u][/b] then
doCreatureAddMana(cid,-[b][u]400[/u][/b])
doSendMagicEffect(pp,30)
doSendAnimatedText(pp,"VUUSHH",150)
doSetCreatureOutfit(cid,{lookType = [color=red]341[/color], lookHead =  getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet, lookAddons = getCreatureOutfit(cid).lookAddons},5 * 60 * 1000)

elseif voc == [color=blue]12[/color] and mana >= [b][u]400[/u][/b] then
doCreatureAddMana(cid,-[b][u]400[/u][/b])
doSendMagicEffect(pp,40)
doSendAnimatedText(pp,"DWAAARRH",87)
doSetCreatureOutfit(cid,{lookType = [color=red]334[/color], lookHead =  getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet, lookAddons = getCreatureOutfit(cid).lookAddons},5 * 60 * 1000)

elseif voc ~= [color=blue]9[/color] or voc ~= [color=blue]10[/color] or voc ~= [color=blue]11[/color] or voc ~= [color=blue]12[/color] or mana < [b][u]400[/u][/b] then
doCreatureAddMana(cid,-[color=magenta]mana/2[/color])
doSendMagicEffect(pp,2)
doPlayerSendTextMessage(cid,22,"[color=orange]Sorry, but you cannot do this.[/color]")
end
end

 

Legenda:

Vermelho ~> Looktypes para cada second promotion.

Azul ~> IDs das vocações que poderão executar o comando. Você pode alterar para outras vocações. (data\XML\vocations.xml)

Negrito ~> Quantidade de mana necessária para utilizar o comando. Se alterar um, tem que alterar todos os outros.

Rosa ~> Quanto de mana o player irá perder caso não possua as vocações certas e mesmo assim vá tentar. Nesse caso aí ele perderá a metade da mana que tiver. Mesmo com 0 de mana, não conseguirá executar.

Laranja ~> Mensagem que será enviada caso o player não possua a vocação necessária para utilizar o comando.

 

 

Agora, abra o talkactions.xml (data >> talkactions >> talkactions.xml) e adicione o seguinte na parte de players:

 

<talkaction words="[color=red]!transform[/color]" event="script" value="[color=blue]transfor.lua[/color]"/>

 

Legenda:

Vermelho ~> O que precisará dizer para se transformar.

Azul ~> Nome do arquivo que criamos na pasta Scripts.

 

Imagens:

[spoiler=Vampire]image-01F4_4B69EAC2.jpg

 

[spoiler=Werewolf]image-9FC0_4B69EAC2.jpg

 

[spoiler=Fairy]image-A8BB_4B69EAC2.jpg

 

[spoiler=Orc]image-FFAD_4B69EAC2.jpg

 

 

 

Lembrando que todos eles estavam com outfit normal antes da transformação. Bom pessoas, é isso, queria agradecer ao Mock, Skyen hasus e companhia, pois aprendi a fazer scripts graças às aulas deles. Good bye...

Editado por Half Blood

Compartilhar este post


Link para o post
Gpwjhlkdcf    21
Gpwjhlkdcf

Ficou muito comprido, dava pra dar uma reduzida :x

Movido.

Compartilhar este post


Link para o post
dragonlorde    0
dragonlorde

Dava pra acurta mesmo mais gostei bastante bastante do script

segue asim ;)

 

edit

 

as imagens da pra posta em otro lado n sei como faze pra olha essas do XSTO

Compartilhar este post


Link para o post
Half Blood    0
Half Blood

Valeu Skyen, à medida do tempo vou tentar evoluir meu scripting.

 

Eu tentei hospedar no imageshack.us, mas aqui não deu pra postar, porque ficou aquele quadradinho de imagem não encontrada.

Compartilhar este post


Link para o post
Roku    0
Roku

voce devia criar uma tabela para as configurações, e adicionar "mana" para nao terem que mudar tudo...

imagens nao estao carregando

é um script simples porem util

Compartilhar este post


Link para o post
pejuge2    1
pejuge2

Apenas debuguei, não utilizei no server, caso não funcione favor postar abaixo.

function onSay(cid, words, param, channel)

local voc = getPlayerVocation(cid)
local mana = getCreatureMana(cid)
local pp = getPlayerPosition(cid)
local outfit = getCreatureOutfit(cid)

local vocations = {
[9] = {287, 31, "WAARGH"},
[10] = {223, 50, "CRAAAH"},
[11] = {341, 30, "VUUSHH"},
[12] = {334, 40, "DWAAARRH"}
}

local nothing = doCreatureAddMana(cid,-400) and doSendMagicEffect(pp, vocations[voc][2]) and doSendAnimatedText(pp, vocations[voc][3], 180) and doSetCreatureOutfit(cid,{lookType = vocations[voc][1], lookHead =  outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet, lookAddons = outfit.lookAddons},5 * 60 * 1000) or
               doCreatureAddMana(cid,-mana/2) and doSendMagicEffect(pp,2) and doPlayerSendTextMessage(cid,22,"Sorry, but you cannot do this.")

end

Ainda dava pra eliminar as variáveis pra tirar linhas mas achei melhor deixar como estava. =D

Compartilhar este post


Link para o post
Half Blood    0
Half Blood

Sim, sim, mas como comecei a scriptar a apenas um mês, ainda não estou muito familiarizado com tabelas, sei usar, mas nem sempre dá certo, ai prefiri usar desse jeito aí. Vo tentar hospedar as imagens em outro local, por que aqui em casa estão abrindo bunitinhas xD

 

Edit:

O Script feito pelo Pejuge usando tabelas logo acima também está funcionando, eu testei a seu pedido e têm o mesmo efeito.

Editado por Half Blood

Compartilhar este post


Link para o post
rabremi    0
rabremi

desculpe encomodar mas tem como postar os script's para funcionar com as vocações normais como sorc/druid/pally e kina

 

nao sei editar scripts gostei mt dele!

 

Desculpe encomodar

Compartilhar este post


Link para o post
subdark    0
subdark

Muito Legal o Script, vlws por postar.

 

 

Sobre as SS, gostei pakas do Vampire, mais o Fairy e o orc fiko estranho oO

Compartilhar este post


Link para o post
Le588    0
Le588

Legal.

Gostei do Vampire.

 

Vo tentatr colocar no meu OT, a ideia é boa.

Compartilhar este post


Link para o post
Half Blood    0
Half Blood

@rabremi

kra e soh voce trocar o que estah de azul pelos ids das vocaçoes, 1 pra sorcerer, 2 pra druid, 3 pra pala e 4 pra kina.

 

@subdark ; @lucas masotti

 

Aproveitem... Se kiserem mudar o outfit para algum outro, no post explica como, é pq nao axei um looktype melhor, mas fikem a vontade para mudar, soh nao tirem os creditos ;P

Compartilhar este post


Link para o post
Zaffend    0
Zaffend

Bakana Parabéns ;D

Eu gostei do script, mais da ideia de colocar outfits de criaturas em um ot n... =/

 

A num ser q seja Orcs, Elfs ou Dwarfs

VLW!

Compartilhar este post


Link para o post
SlaerGod    0
SlaerGod

Gostei da talkaction bem bolada

Parabens!

Compartilhar este post


Link para o post
Snows    0
Snows

Meu num sei pq no meu OT 8.50 deu debug

plx me ajuda ae

xD

Compartilhar este post


Link para o post
zannyxd123    0
zannyxd123

Muito bom! Mas como disseram, dava pra encurtar o script, ta grande d+

Compartilhar este post


Link para o post
Miltonhit    4
Miltonhit

muito bom o script merecia exclusivo!

Compartilhar este post


Link para o post
Lord Speed    0
Lord Speed

INteressantiii, gostei do script coloquei funfo 100% mais tente diminuir ai ?

Compartilhar este post


Link para o post
Half Blood    0
Half Blood

@Snows

Qual debug q deu kra?

 

@Aos demais

Valeu, vo tentar encurtar e colocar coisas novas no script e talvez lance a segunda versao. :P

Compartilhar este post


Link para o post
kilergui    0
kilergui

percebeu que aquele "orc" é um lizard? xD

Compartilhar este post


Link para o post
luposlps    0
luposlps

Oo.. Interessante...

Podia colocar "Fairy" como "Wisp" e "Orc" como "Orc Warlord" mas isso é totalmente simples de se mudar.

Nesse script cabem umas idéias..

Pelo jeito só eu n consegui aprender com as aulas... vo ver se compro outro cérebro.. um cérebro 5.0 talvez..

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×