Uau, ótimo tutorial.. Parabéns. Vai ajudar Muita gente..
REP+
Por Izaiasousa, 22 de jun. de 2010 em Noticias - Arquivo
Uau, ótimo tutorial.. Parabéns. Vai ajudar Muita gente..
REP+
info
Grupo: Campones
Registrado: 01/02/09
Posts: 18
Reputação: +5
Char no Tibia: Nabuconozzor

Tutorial Show de bola, gostei ![]()
Continue assim...
info
Grupo: Conde
Registrado: 07/05/08
Posts: 612
Reputação: +12
Char no Tibia: leviana luciferiana

Ela é usada na talkaction.
Talkaction é o seguinte.. O script só será executado quando o jogador falar uma coisa. Se ele falar exura o script do Lighting Heal irá ser executado, porquê ? Por que o jogador cid fez uma ação via sua fala, daí talkaction. Deram pra entender ?
Magias utilizam a mesma função onSay e nem por isso ela está nas talkactions.
Vamos a sintaxe do onSay.
function onSay (cid,words,param)
você não mostrou a sintaxe da função e se quiz demonstrar os parâmetros da função adicione o parâmetro canal.
params é tudo que vier depois das "" aspas.
totalmente errado , "param" na função onSay() é uma string contendo tudo o que vier após o words.
info
Grupo: Visconde
Registrado: 11/08/10
Posts: 477
Reputação: +175
Gênero: Masculino

:button_ok: Como sempre muito bom!
___
Só me ficou uma dúvida:
Como eu tenho certeza do que vai retornar para o jogador? Tipo, O jogador ainda não se promoveu, mas não tem o dinheiro, como tenho certeza que o que vai acontecer vai ser isso...
else
doPlayerSendCancel(cid, "Sorry, you don't have enought money")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
?
Porque no caso, tinham 2 else.
Desculpa se a pergunta for meio noob.
Vlws!
Editado Agosto 11 por Eskylo
info
Grupo: Campones
Registrado: 09/12/10
Posts: 8
Reputação: 0
Char no Tibia: Secret ¬¬

ow cara desculpa fala mais, eu so iniciante, mais eu lembrei de uma coisa, no funçoes dos scripts de lua 4#
se falo q n pode colocar true
ta vendo ? se falo q n podia colocar true, era so then, mais ai eu lembrei, eh so no IS essa regra , ou em todas?
if doPlayerRemoveMoney(cid,20000) == TRUE then
Editado Dezembro 11 por NeverCool
info
Grupo: Visconde
Registrado: 11/08/10
Posts: 477
Reputação: +175
Gênero: Masculino

n tem necessidade do
== TRUE
pode por só
if doPlayerRemoveMoney(cid,20000) then
info
Grupo: Cavaleiro
Registrado: 13/06/11
Posts: 172
Reputação: +6

cara adorei denovo seus tutoriais sao muito bons
auhuhehuauhae eu ri nessa parteTitiioooooo Lakaaa
info
Grupo: Artesão
Registrado: 15/12/12
Posts: 103
Reputação: +6
Char no Tibia: ggabrielssilv

acho q vc poderia fazer um rezumão de tudo ensinando a como criar um script do zero.
info
Grupo: Herói
Registrado: 28/11/10
Posts: 3.4k
Reputação: +585
Gênero: Masculino

info
Grupo: Campones
Registrado: 03/06/10
Posts: 22
Reputação: +21
Lista de Funções de Lua #5
Olá pessoal!
Hoje eu irei entrar em um assunto novo.
Vamos fazer um resuminho do que a gente já viu até aqui?
Vimos os tipos de function, vimos as "constantes" (prefiro chamar elas assim) que são do..get..is (ainda existem outras, mas não quis me aprofundar muito no assunto. Ate aqui da pra fazer scripts legais com elas.) Vimos a function onUse e tals.
Hoje iremos usar uma nova function:
onSay
Ela é usada na talkaction.
Talkaction é o seguinte.. O script só será executado quando o jogador falar uma coisa. Se ele falar exura o script do Lighting Heal irá ser executado, porquê ? Por que o jogador cid fez uma ação via sua fala, daí talkaction. Deram pra entender ?
:no:
Simplificando, o jogador fala uma coisa e o script é executado.
Vamos a sintaxe do onSay.
function onSay (cid,words,param)
Todo mundo conhece o cid e o function e acabaram de conhecer o onSay né ? Então vamos a essas partes: words e param.
words é uma palavra do inglês que significa palavras. Ou seja, aqui é o que o jogador irá dizer. A "variavel" que irá receber o que o jogador disse e fazer com que o script reconheça aquela palavra e execute o script.
params é tudo que vier depois das "" aspas.
Vamos a um exemplo pra vocês poderem compreender melhor o que significa words e param para vocês nunca esquecerem!
Se o jogador falar
No caso, quem é words e quem é param?
Simples, a magia será words, certo ?
words = utevo res
E depois da "aspa" é o params. Entenderam o "tudo que vier depois das aspas?"
params = Crocodile
Bem, é isso ae!
Agora é só aplicar essa função em seus scripts!
Já tio ?
É ... Na verdade eu quis mostrar talkactions como introdução e tals, já que vocês viram actions e as sintaxes etc. Vou mostrar um exemplo aqui pra vocês compreenderem melhor (Y)
-----------------------------
Script de Promotion
function onSay(cid, words, param) -- Olha aqui! Começando o script, significa que é ...... uma talkaction! :w00t:

if getPlayerVocation(cid) <= 4 then -- Como é de promotion, o jogador tem que ser sorcerer 1, druid 2, paladin 3, knight 4.. ou seja, PlayerVocation menor ou igual à 4.
if doPlayerRemoveMoney(cid,20000) == TRUE then -- O preço da promotion aqui né? Aqui tá como 20000 (20k) alterar ao seu gosto. No caso esse comando vai fazer o que aqui? Quem se lembra da aula #2 ? Isso ae quem disse Remover 20k do jogador Cid!
doPlayerSetVocation(cid,getPlayerVocation(cid)+4) -- De sorcerer para master sorcerer é quanto ? 1+4.. certo?! Então aqui ele vai fazer o seguinte, Set significa que ele irá colocar um novo valor, ou seja, adicionar mais "4" fazendo com que a vocação seja promovida.
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have been promoted!") -- Enviar a mensagem para o jogador dizendo, You hav been promoted! Se lembrem do doPlayerSenTextMessage!!
doSendMagicEffect(getPlayerPosition(cid), 30) -- E por último vai dar aqueles efeitinhos que você escolhe ao seu gosto.
else -- Senão, se o jogador não tiver dinheiro $$...
doPlayerSendCancel(cid, "Sorry, you don't have enought money") -- Irá aparecer a mensagem Sorry, you don't have enought money.
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) -- E efeito denovo. [Titiioooooo Lakaaa e esse getPlayerPosition?] O get como eu já falei vai ler a informações do jogador e retornar, no caso ele vai ler a POSIÇÃO do jogador cid e tacar efeito!
end -- End do Else.
else -- Senão for por causa de dinheiro então vai ser por causa de ...
doPlayerSendCancel(cid, "Sorry, you are already promoted") ... que você já está promovido. Se você já estiver promovido e fazer aquela condição if getPlayerVocation(cid) <= 4 then
end
end
E tamrám! Nosso script de promotion foi vista parte por parte e espero que você tenha entendido como é que é o racíocinio e funcionamento de um script simples. Você que viu em todas essas aulas as functions e sintaxes de cada uma não se assustou com isso aqui.

Bem.. aqui termina mais um tutorial de ..
Senhor Lakinha Tariel
Oferecimento: Laka Tariel Ot serv!
Até a próxima pessoal!


Bons estudos, hoje não vai ter Atividade pra casa
Aconselho a vocês irem na pasta do seu Ot e ir em Datas.. Talkaction .. Script e abrir eles lá e ver como é que eles são feitos e comecem a fazer alguns também!
Adíos, Comentem!
Qualquer erro me avisa que eu corrijo.