[Arquivado]Funções Dos Scripts De Lua #7

Izaiasousa
em Noticias - Arquivo

Izaiasousa

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 03/06/10Posts: 22

Funções dos scripts de Lua #7



*--------------------------*

|O que é storage value ?|

*--------------------------*

StorageValue é uma variável que armazena valores para serem usadas em outros coisas em scripts de Lua. Na maioria das vezes são valores sobre os jogadores.Mas antes de partimos para como "ler" a storage value do jogador cid vamos enteder mais sobre o que é.

 

 

function onUse(cid, item, frompos, item2, topos)

if item.uid == 900 then

storage = getPlayerStorageValue(cid, 9000) -- Aqui a storage. É como se fosse uma senha de acesso, por exemplo, um jogador vai em uma boca livre e ele só pode comer uma vez certo? um jogador vai fazer uma quest e só pode clicar sobre o baú uma vez só, entendem? Para isso temos que fazer com que o Unique Id do baú seja um número diferente dos outros, único, para que quando o jogador clicar sobre ela, ele ganhe uma senha e quando ele clicar novamente sobre o mesmo baú ele não consiga abrir ela. Entenderam o que eu quis dizer? Aqui no caso a senha é 9000. Coloque uids que você consiga se lembrar, por que não pode repetir a uid! Aqui a variavel storage recebe a "senha de acesso" do jogador que será verificada pelo get (se lembram de nossas aulas?) e retornando ao script dizendo se esse jogador ja abriu esse baú ou não!

 

if storage == -1 or storage == 0 then -- Aqui no caso, se o jogador ainda nao clicou, a storage pode ser -1 ou 0. Por que esses números tio ? :cry: Porque 0 representa nulo e tudo que vier antes dele também :)

 

doPlayerSendMessage(cid, 22, "Parabens!”)

doPlayerAddItem(cid, 2387, 1)

setPlayerStorageValue(cid, 9000, 1) -- Ará! Aqui o quê ele faz ? Ele adiciona o valor 1 na storage do jogador. Tioooo... 1?!! :cry:Por exemplo, para o script ser executado ele devia ter storage -1 ou 0 né ? Então para que ele não possa clicar no baú, por exemplo, ele agora vai receber o valor 1 que significa que ele clicou.

 

else -- Opa! Senão o quê? Se o jogador não tiver a storage igual à -1 ou 0, então ele já clicou no baú! Então ira aparecer a seguinte mensagem abaixo..

 

doPlayerSendMessage(cid, 22, “Você já pegou o que tinha aqui!”)

 

end

return 1

end

return 0

end

 

 

Bem, mostrei esse script aqui para vocês terem uma visualização de como é e onde se usa o storage value. Nós sabemos que para checar uma informação do jogador cid e retornar ao script essa informação, usamos o GET certo ? ^^



 

Para ler a informação do jogador sobre a storagevalue usamos o getPlayerStorageValue(cid).

 

Como Set significa "dar um novo valor", então para dizer que o jogador que não tinha clicado no baú e após ele ter clicado e ganhado seu prêmio, para que quando ele clicar denovo no baú ele não possa abrir, vamos ter que dar a ele o valor na storage de numero 1. Ou seja

 

setPlayerStorageValue (cid,9000,1) -- Vai dar o novo valor para a storage do jogador. Primeiro colocamos o Uid do baú que é 9000 e depois o 1 que significa que ele já clicou no baú.

 

 

É isso aí pessoal! Uma introdução do que é Storage :)

Espero que tenham aproveitado!

 

Até a próxima!

Meus Trabalhos Aqui - Confiram: http://www.xtibia.co...34entry894534

 

 

-- É meu fã ?

 

usebarq.jpg

 

 

 

-- Campeã..

 

1277162990-U5886.png

satan666

Antichrist Superstar
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 07/05/08Posts: 612Char no Tibia: leviana luciferiana

"storagevalue's" não são variáveis, são blocos de memória que armazenam dados. geralmente números.

creationb.jpg

"Um Deus que usasse seu poder para criar seres humanos que de antemão sabia que seriam atormentados eternamente, e que os predestinasse a isso,



não poderia ser sábio, nem justo e tampouco amoroso.

Além de nos submeter a isso vim a nos julgar e condenar por nossos atos aos tormentos do inferno.

pra minha pessoa isso não é um Deus Pai amoroso e bondoso como o chaman, seu padrão seria muito mais inferior do que o de muitos homens."

MarcelloMendes

Again...
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 09/06/10Posts: 80Char no Tibia: Dardnyti Elfresso

Realmente, é o que o Marcryzius falou, blocos de memória numericos, onde são armazenados dados, geralmente 'numericos'...

E não ta muito bem explicado este seu post cara, ta meio bagunçado rs', poderia ta melhor.

 

Abração.

~MarcelloMkez'~

Msn: marcello_dirt@hotmail.com

 

 

kakashifp8.png

 

 

~ Awaken Tibia Server ® ~



 

- * Meus Trabalhos:

 

 

Eskylo

boa sorte
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 11/08/10Posts: 477Gênero: Masculino
end

return 1

end

return 0

end

 

Tio, explica como eu uso o "end" e esses "return" ?

Atenciosamente, Eskylo

 

 

Ironman-icon.png

.

.

Perfect Mapper

Varegera
avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 12/12/06Posts: 124Gênero: MasculinoChar no Tibia: lanternah

bom tuto mas ali onde esta

 

doPlayerSendMessage

 

tem q trocar por

 

doPlayerSendTextMessage

 

abraços


primeiro avatar do xtibia =D


clica AQUI e upe meu pokemon PLXXXX

metas:
[x]1post----------------------------[x]100 posts (BARONETE)----------[ ]800 posts (ARISTOCRATA)
[x]5 posts (SERVO)---------------[x]200 posts (BARÃO)--------------[ ]1000 posts (REGENTE)
[x]10 posts (CAMPONÊS)---------[ ]300 posts (VISCONDE)----------[ ]1400 posts (SÁBIO)
[x]25 posts (CAÇADOR)----------[ ]400 posts (DUQUE)--------------[ ]1800 posts (SACERDOTE)
[x]50 posts (CAVALEIRO)--------[ ]600 posts (ARQUEDUQUE)-------[ ]2500 posts (PRÍNCIPE)


exorcist

Nossos dias nunca voltarão
avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 14/06/11Posts: 172

na minha opiniao o tuto ta bom só não entendi os

 

end

return 1

end

return 0

end

251899_278013482304915_1728848852_n.jpg

SoulProst

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/10/07Posts: 25Char no Tibia: Hayden Almeida

Existe algum "Wiki" da vida para mostrar todas as funções que o LUA do Tibia OT Tem? e explicando cada uma?

Se alguem souber pode me passar o link? eu procurei bastante e nao achei nada de parecido na internet, Obrigado.

Hayden Almeida



Scripter

Meu Email

 

Vídeo Card: Radeon HD 6850

HD: 1 TERA SATA 2 + 80 GB DATA

Processador: Phenom X6 1100T 3.3Ghz

Memória: Kingston 8 GB DDR3 1333 Mhz

Monitor: Samsung SA300 Slim '21,5 LED

jhon992

Dono JhonBot
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 30/06/11Posts: 631Char no Tibia: Warrior of Mort

Existe algum "Wiki" da vida para mostrar todas as funções que o LUA do Tibia OT Tem? e explicando cada uma?

Se alguem souber pode me passar o link? eu procurei bastante e nao achei nada de parecido na internet, Obrigado.

 

Link com as funções, o significado de cada uma é a tradução da mesma...

http://www.xtibia.co...sta-de-funcoes/

 

Em relação ao script proposto tu deve explicar também oque são essas partes:

if item.uid == 900 then

E essa:

end
return 1
end
return 0
end

O essencial seria explicar linha por linha do script!

 

O tópico ficou razoável mais existe ainda varias coisas interessantes sobre os storages..

 

Outra informação importante sobre o mesmo é que ela pode ser usada para armazenas palavras ao em vez de números.

Devia ter explicado um pouco sobre "global storage".

 

Ali onde tu fala que o jogador não clicou ainda, se ele não usou a storage ela vai ser igual a -1...

Mesmo se quisese deixar comparando com o 0, ficaria melhor assim:

if storage <= 0 then

 

Essa parte:

Para isso temos que fazer com que o Unique Id do baú seja um número diferente dos outros

 

Não concordo. Já que no bau pode ser usado um actionid, ou pode ser ativado até mesmo por um itemid, então não podemos generalizar, é mais facil explicar tais situações para o usuário, ou seja, não podemos ensiná-los errado.

Stigal

don't ever stop...
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 28/11/10Posts: 3402Gênero: Masculino
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.

VI6MDIG.png

 

"O fracasso é a oportunidade de se começar de novo inteligentemente"

Minhas Redes Sociais: Youtube | Página & Grupo | Steam  | Discord Xtibia | Skype: @mrooger

 

OTpanel