Ir para conteúdo

[Arquivado]Lista De Funções De Script De Lua #3


Izaiasousa

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.

 

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)

 

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
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
Link para o comentário
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...

 

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:

Link para o comentário
Compartilhar em outros sites

  • 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

 

 

Link para o comentário
Compartilhar em outros sites

  • 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
Link para o comentário
Compartilhar em outros sites

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
Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

Quero Minha Nota kkkkkkk

actions\scripts\test.lua

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
if item.uid == 9759 then
queststatus = getPlayerStorageValue(cid,9759)
if queststatus == -1 then
if getPlayerLevel (cid) >= 100 then
if getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 2 or getPlayerVocation(cid) == 5 or getPlayerVocation(cid) == 6 then
if getPlayerMana (cid) >= 500 then
doPlayerSendTextMessage(cid,22,"quest completa.")
doCreateMonster("Dragon", getCreaturePosition(cid))
doCreateMonster("Dragon", getCreaturePosition(cid))
doPlayerAddItem(cid,2160,100) -- ainda deixei um item 100 crystal 
doPlayerSendTextMessage(cid, 22, "Ops!")
setPlayerStorageValue(cid,9759,1)
else
doPlayerSendCancel(cid, "Você precisa ter level maior que 100.")
end
else
doPlayerSendCancel(cid, "Você precisa ser sorcerer ou druid.")
end
else
doPlayerSendCancel(cid, "Você precisa ter mana maior do que 500.")
end
else
doPlayerSendCancel(cid, "It is empty.")
end
end
end

 

 

data\actions\action.xml

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

Editado por notle2012
Link para o comentário
Compartilhar em outros sites

  • 5 years later...
Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...