Ta bem legal ate q é dificil fazer tuto sobre actions ..
Naum sou dessa aera por isso naum possu afirmar c esta perfeito mas..
Pelo q sei ta Tudo rox
=P
info
Grupo: Campones
Registrado: 31/10/06
Posts: 77
Reputação: 0
Char no Tibia: Elite Lord Paladin
Ta bem legal ate q é dificil fazer tuto sobre actions ..
Naum sou dessa aera por isso naum possu afirmar c esta perfeito mas..
Pelo q sei ta Tudo rox
=P
info
Grupo: Conde
Registrado: 12/10/05
Posts: 568
Reputação: +12
Gênero: Masculino
Char no Tibia: Homao Dapoha

Movido para seção correta.
info
Grupo: Campones
Registrado: 29/01/08
Posts: 71
Reputação: 0
Char no Tibia: Knight of Fortune

Fiko legal me ajudo tb parabens
info
Grupo: Marquês
Registrado: 01/03/06
Posts: 1k
Reputação: +38
Gênero: Masculino

Canso pra escrever tudo isso, umas 5h escrevendo xD
Valeu pelos comments, antes mesmo deu acabar ...
Ficou muito bem detalhado, bem explicado; ate um spriter/mapper como eu pode se tornar profissional estudando um tuto destes ![]()
info
Grupo: Artesão
Registrado: 26/06/06
Posts: 115
Reputação: +1
Char no Tibia: Kasugol

Nice Work!
=]
Onde posto a resposta dos exercícios??
xD
info
Grupo: Campones
Registrado: 29/01/08
Posts: 71
Reputação: 0
Char no Tibia: Knight of Fortune

fiko legal Xd!!
info
Grupo: Marquês
Registrado: 01/03/06
Posts: 1k
Reputação: +38
Gênero: Masculino

Vou postar semana que vem, pra ter tempo de fazer quem quiser... ![]()
Caro mto bom da pra ajudar mtas pessoas
Muito bom mesmo o tutorial!
Só evite usar cores claras como o amarelo.
Abraços.
info
Grupo: Marquês
Registrado: 01/03/06
Posts: 1k
Reputação: +38
Gênero: Masculino

É eu sabia, mas tem que usar cores que são visivelmente diferentes e eu já tinha suado todas, caso não consiga ler é melhor selecionar as partes claras e ler normal :} ou colar em um editor de texto...
info
Grupo: Marquês
Registrado: 01/03/06
Posts: 1k
Reputação: +38
Gênero: Masculino
Olá, meu primeiro tutorial
Vou ensinar a fazer actions, somente actions, em um próximo tuto irei ensinar talk, movements e npcs, todos práticos ...
Índice:
1. O Ínicio
2. Exemplos de ações feitas
3. If e Elseifs
4. Continuado os exemplos
5. Exemplos mais difíceis
6. Exercícios de treino
7. Respostas dos exercícios
8. Tutoriais indicados
1. O Ínicio
Não aprenda detalhes, aprenda fazer!
Então vamos lá, primeira coisa:
QUERO FAZER UMA ACTION!!
Legal, sempre é assim que começa, você quer fazer, mas que estilo de action você quer fazer?
Vamos por etapas...
QUALQUER ACTION que você for fazer, seja de quest, de leveldoor, de piscar luzinha, de virar um ET, de sumonar um vira-lata, tem que começar com essa tag:
e logo após para finalizar esta tag usamos:
ficando assim:
Certo, pelo que eu entendi em todas minhas actions, movements etc, essa tag determina 3 coisas, QUEM executa a ação, COMO e ONDE no caso:
CID = Você executando a ação
item, item2 = Como executar a ação
frompos, topos = posições ONDE ocorre a ação
Feito isso, iremos classificar essas partes:
Galera, essas classificações foi eu que inventei, nunca vi nada parecido, só to criando para ajuda-los entender...
TAGS - CLASSIFICAÇÃO - ENTENDIMENTO
Azul - Definido - Toda e qualquer action deve possuir essa tag
Vermelho - Indefinido - Onde todas ações devem ficar, por isso se chama 'Indefinido', sempre muda (ou quase sempre)
Pronto, você já tem a base de seu script, agora temos que pensar, que script queremos fazer?
Nos exemplos eu irei demonstrar, diversas ações...
2. Exemplos de ações feitas:
Ação de quest:
Explicação:
Leitura: SE o item de id = <id do bau, pedra, etc> Acho que nem precisa explicar né ;x
Leitura: E Explicação porque ressaltei o 'and': eu ressaltei porque, pra quem não tem entendimento de inglês, sempre terá erros nisso, confundindo o 'and' com o 'or', no caso se fosse or, a ação da action seria para todos os item.itemid determinados e todos item.uid determinados e não para os 2 juntos :]
Leitura: o unique do item usado for = <id determinado> Explicação, também acho que não é necessário
Leitura: então Explicação, depois de todas as condições selecionadas você coloca o then para dizer 'agora podem vir as ações
'
Leitura, quest = pegaStorageValue(criatura,9001(número do storage value))
SE quest == -1 ou quest == 0 (não tiver sido feito) então... Esta parte indica se o player ja fez ou não a quest.
Ações que aconteceriam depois SE todas as condições forem verdadeiras
Ações: mandar a message que estivesse escrito entre as virgulas onde está '<msg>'
adcionar um item ao player de itemid determinado
adcionar storage value determinado, no caso 9001 para 1. Ou seja, estava 0 ou -1 e agora virou 1, ou seja, o player ainda n tinha feito e agora com esta tag, determina que ele já fez e nunca mais pegará este item denovo enquanto estiver com a storage value 9001 determinada 1
Leitura: Caso contrário, manda mensagem para o player <msg> e fecha o if do quest (storage value)
NOTA: Para cada IF, tem de ter um end... vou explicar melhor isso agora:
3. If e Elseifs:
Um caso para policias xD
Sério mesmo, pra aprender e dominar esses 2 tem que ter muito treino, eu por exemplo, divez em quando ainda tenho dúvidas, é sempre bom relembrar em alguns tutoriais...
Certo, a regra básica, cada IF tem um END, exemplo:
Senão me engano é esta ordem, de trás para frente, olhem as posições de cada um dos ends e ifs, isso é muito bom aprender bem, pra quando você for fazer um else não ficar perdido :]
Tá, essa eu já entendi, mas e quando tem elseif?
Quando tem elseif, é muito fácil, olhe só:
O elseif, é mais uma forma de não colocar muitos ends, amanhã farei o teste, mas tenho quase certeza, sempre antes de usar um elseif, tem que ter um if, olhem esse exemplo agora com um else, como ficaria:
Essa parte, de ifs e elseifs acho que acabou, qualquer dúvida poste aqui, é muito complicadinha essa parte ;P
4. Continuado os exemplos então...
Mudando de Templo (masterpos):
Item da actionid == <id> Simplesmente, mesma coisa do que os outros item, unique etc
primeiro indicamos, uma posição e depois, adcionamos ao player (cid) esta posição como templo
Teleportamos o player (cid) para o lugar determinado
Tendo noção de como fazer uma nova runa, no caso a clássica Mana Rune:
Adciona mana ao player, no caso +100 de mana :], se fosse retirar colocaria -100 -50 -300 e assim por diante
Tá, dae se fala, mas pow, essa runa nunca acaba, não tem exhaust, não tem limite de lvl, não tem nada, só adciona mana, tá muito apelona...
E eu te respondo:
"Será o seu desafio, fazer tudo isso que você falou
"
E para os espertinhos, o resultado dela feita irá estar daqui a alguns dias no final do tópico em um spoil.
5. Exemplos mais difíceis:
Uma quest meio tosca, possível sword of fury quest by me:
Tá fico meio tosca, mas deu pra mostrar grande parte dos comandos e dar uma noção melhor ^.-
Explicações:
Leitura: Se o level for == 1 então...
Leitura: Se o seu hp for == 1 então ...
Leitura: Se você não tiver mais efeito de foods então...
Leitura: Se o seu acesso for 0, ou seja, um player ...
Determinando todas skills, para fazer as comparações...
Leitura: Se o fist skill for maior do que todas skills melee então...
Aqui só tem uma coisa nova, que é o doPlayerSendCancel, é estilo uma mensagem, mas aparece em cima do default, em branco.
Ídem a última explicação :}
Último exemplo, script de uma door, normal... e depois umas modificações na mesma ...
Door normal:
Explicações:
Neste script só temos essa tag diferente, o que ela faz, do geito que foi estruturada ela iria pegar o número do id do item iria subtrair a 1 e transformar a porta no item do resultado da subtração... no caso ali teria que editar pro id certo de uma porta aberta
Mesma coisa, mas aqui é uma SOMA, ou seja, o item que for resultado na soma será o item que será re-colocado no lugar da porta
Agora algumas modificações, nesta porta:
Voc door:
Só essa nova tag, ela checa a vocação do player, no caso, se o player fosse voc 1, 2, 5 ou 6, ele conseguiria abrir, caso contrário não... Vocês devem ter percebido que esta não é uma porta adequada para o caso, porque depois qualquer um passaria nela, nos próximos tutoriais iremos aprender fazer umas coisinhas mais legais com isso ^.-
Guild Door...
Checa se o player é ou não de uma guild, sendo 0 para pessoas sem guild ... PS: Denovo só essa action não seria a ideal para colcoar a um server, pois só um player de guild poderá abrir a porta, porém... todos poderam passar se ela estiver aberta.
6. Exercícios de treino:
Vou passar alguns exercícios bons para treinar tudo isso, que você acabou de ler:
1. Faça a continuação daquela mana rune, visitem outros tópicos para ter mais informações e etc... ai vai o script inicial:
Restrições:
Adcionará 200 de mana;
Terá exhaust;
Adciona um efeito mágico;
Adciona uma mensagem.
PS: Sistema de exhaust by colex:
Adcione isto em data ~> actions ~> lib ~> actions.lua
Exemplo de action, com ele:
Neste exemplo terás 1 segundo de exhaust.
Exercício 2. Construa um sistema de mining.
Restrições:
Terá que usar o item2.itemid
O item.itemid tem de ser um machado
O item2.itemid tem de ser pedras, rochas...
Terá que ter 3 tipos de loots...
E ser baseado em skill...
Exercício 3. Faça uma quest.
Restrições:
Terá que usar storage values...
Cada voc, 2 chances de loots...
Level mínimo...
Acabou os exercícios...
7. Respostas dos exercícios:
8. Tutoriais indicados:
Tutorial Sobre Actions
Link do Tutorial
Caso houver alguma dúvida sobre os exercícios, ou tenham idéias para novos exercícios podem postar aqui... :}
Créditos: Yunie ~~
//Yunie~
Editado Fevereiro 9 por noobinhu