Ir para conteúdo

Posts Recomendados

Funções de scripts de Lua #3

 

Olá :style:



 

Hoje iremos iniciar mais uma aula de scripts de Lua. Na aula Funções de scripts de Lua #2 vimos a função e as sintaxes de function.

Hoje iremos ver quais as funções, onde ser usada, como e por que de usar GET .

 

Get é usado pra ler uma informação de um jogador (cid) ou um item (item.id). Ele irá ver se o jogador tem certa condição ou um certo item, tende ?

 

Digamos que ele apenas irá ler as informações, os dados sobre o jogador ou item.

 

  Citar
O jogador tem life maior que 1500 ?

Sim. Então, doPlayerRemoveHealth (cid,-100)

 

O get irá ler as informações do life do jogador nesse caso.

 

Vamos analisar algumas que considero importantes e úteis para você, inciante nessa área!



 

getPlayerHealth

 

Irá ler a quantidade de Life do jogador cid.

 

getPlayerHealth (cid)

 

  Citar

getPlayerHealth (cid) >= 500 then -- Se o jogador possuir 500 ou mais de life então.. execute o script, entederam ? ;)

 

getPlayerLevel

 

Este irá ler o nível do jogador.

 

getPlayerLevel (cid) >= 20 then -- Ele irá ver se o jogador tem level igual ou acima de 20 para poder executar o script. :yes:

 

getPlayerMagLevel

 

Este aqui irá ler a quantidade do Magic Level do jogador cid.

 

**Toda vez que eu me referir a jogador, será cid, ok?

 

getPlayerMagLevel (cid) >= 10 then

 

 

getPlayerMana

 

Irá ver ler a quantidade de Mana que o jogador tem.

 

getPlayerMana (cid) >= 350 then -- Se o jogador tiver a quantidade de mana maior ou igual à 350 então o script será executado.



getPlayerPosition

 

Irá ver a posição do jogador.

 

getPlayerPosition == frompos then -- Ele irá ver se o jogador esta na posição indicada por frompos. Se ele estiver, então o script irá ser executado.



getPlayerSkill

 

Irá ver os skills do jogador.

 

getPlayerSkill (cid,0) >= 10 then -- Ele irá ler o skill do jogador. Sabe aqueles valores de doPlayerAddSkillTry ? Eles também servirão aqui. Se o jogador tiver Fist (0) maior ou igual a 10 então o script será executado.



getPlayerVocation

 

Ele irá ler a vocação do jogador.

 

getPlayerVocation (cid) == 2 then -- Se o jogador for Druid (2) então o script poderá ser executado. Por exemplo, uma porta que só permita entrar uma vocação. :)

 

getPlayerSex

 

Esta função irá ler o sexo do jogador. Se for feminino é 0 e se for masculino será 1.

 

getPlayerSex (cid) == 1 then -- Ele irá ler o jogador (cid), se ele for do sexo masculino 1 então o script será executado. :w00t:

 

getPlayerSoul

 

Esse irá ler a quantidade de soul do jogador.

 

getPlayerSoul (cid) >= 100 then -- Irá ler a quantidade de soul do jogador. Se ele tiver soul maior ou igual a 100 então o script será executado.

 

getCreatureName

 

Esse script irá ler o nome da criatura (cid). :louco:

 

getCreatureName (cid) == Demon then -- Ele irá ler se o nome da criatura escolhida é Demon. Se for o script será executado.

 

getPlayerPremiumDays

 

Ele irá ler a quantidade de dias de premium do jogador.

 

getPlayerPremiumDays (cid) >= 3 then -- Irá ler os dias de premium do jogador. No exemplo, se for maior ou igual a 3 então o script será executado.

 



-----------



Atividade Para casa :ras:

 

Crie um script com as seguintes características :

 

•Faça um baú com Unique Id;

• O jogador deve ter o level maior que 100 para poder abrir;

•Deve ser Sorcerer ou Druid;

•Deve ter a mana maior ou igual à 500;

•Quando ele abrir, ele irá receber a mensagem de Quest completada!

•Irá aparecer dois dragons;

•Irá aparecer a mensagem "Ops!";

 

--------------



Bem, este é o tutorial Funções dos scripts de Lua #3!

Espero que isso tenha te ajudado , assim como me ajudou

Até Funções de scripts de Lua #4 (4ª temporada)

 



Link para o comentário
https://xtibia.com/forum/topic/135526-arquivadolista-de-fun%C3%A7%C3%B5es-de-script-de-lua-3/
Compartilhar em outros sites

Aprovado :button_ok:

 

Estou procurando a nº 2.

para ficar melhor ponha LINKs para os outros tutos...

 

Bom, já li e continuo achando os tutos muito úteis, o "dever de casa" vou ter que deixar pra depois, daqui 10 mim tenho que sair, e vo me arrumar... e continuar fazendo o que tenho prioridade, xD.

 

Quando estiver pronto eu posto aqui no XTibia...

Editado por felzan
  Em 22/06/2010 em 15:48, felzan disse:

Aprovado :button_ok:

 

Estou procurando a nº 2.

para ficar melhor ponha LINKs para os outros tutos...

 

Bom, já li e continuo achando os tutos muito úteis, o "dever de casa" vou ter que deixar pra depois, daqui 10 mim tenho que sair, e vo me arrumar... e continuar fazendo o que tenho prioridade, xD.

 

Quando estiver pronto eu posto aqui no XTibia...

 

Obrigado,

Vou colocar agora mesmo a lista,

o súmario do livro.

 

Agora é semana de prova no meu colégio, então não vou ter muito tempo pra ajeitar meus tutoriais.

 

Que bom que você está aproveitando =D

 

Vou fazer um tutorial só com exercicios, um resolvido e vocês fazem o resto :gcool:

 

Até a próxima :nuts:

  • 5 months later...

cara tipo , as respotas das funçoes 2 tao cheias, entao vou falar aqui xd

 

tipo cara, qq eu coloco no script pra ele reconhecer o bau q vai abri

 

por exemplo, eu kero cria um bau, e so lvl 100 + pode abri ele, tem q por id do bau, me ensina ae, ou passa um trechinho de um script falando isso pff

 

 

  • 1 year later...

acho que isso que você quer é uma storage, eu não entendo muito bem de script mais deve ser isso ^.^

(não entendi muito a sua pergunta mais se essa da storage estiver errada acho que você tera que por; Itemid: --- id do baú

Editado por neero102

Fiz um aqui.. não sou bom com actions mas deve estar certo o.O

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
   local k, v = 5001, getPlayerStorageValue(cid, k)
   if item.uid == k then
       if v == -1 then
           if isInArray({1, 2, 5, 6}, getPlayerVocation(cid)) then
               if getPlayerLevel(cid) >= 100 then
                   if getCreatureMana >= 500 then
                       doPlayerSendTextMessage(cid, 22, "Você completou a quest.")
                       setPlayerStorageValue(cid, k, 1)
                       doCreateMonster("Dragon", getCreaturePosition(cid))
                       doCreateMonster("Dragon", getCreaturePosition(cid))
                       doPlayerSendTextMessage(cid, 22, "Ops!")
                   else
                       doPlayerSendCancel(cid, "Você precisa ter mana maior do que 500.")
                   end
               else
                   doPlayerSendCancel(cid, "Você precisa ter level maior que 100.")
               end
           else
               doPlayerSendCancel(cid, "Você precisa ser sorcerer ou druid.")
           end
       else
           doPlayerSendCancel(cid, "It is empty.")
       end
   end
end

Editado por fireelement
  • 3 weeks later...

Quero Minha Nota kkkkkkk

actions\scripts\test.lua

  Mostrar conteúdo oculto

 

data\actions\action.xml

 <action uniqueid="9759" script="test.lua"/>

Editado por notle2012
  • 5 years later...
Esta noticia foi arquivada.
Este tópico está fechado e foi movido para Noticia - Arquivo.

+ Caso tenha atualizações você poderá criar outro tópico.
Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...