Ir para conteúdo
  • Cadastre-se

Scripting Dictionary


Posts Recomendados

Scripting Dictionary

Antes de tudo

Olá comunidade Tibia King. Venho através desse tutorial facilitar a vida de muitos scripters.

Trago a vocês o Scripting Dictionary. Uma forma mais simples de entender aquelas siglas ou palavrinhas chatas encontradas em todos os scripts e que poucas pessoas sabem o significado ou o motivo de estar ali.

Vocês também podem ajudar a aumentar o conteúdo desse dicionário enviando-me as palavras que vocês gostariam de serem adicionadas. Para isso, poste nesse mesmo tópico.

Estou disposto a atualizar sempre que for preciso o tópico, mas, caso algum imprevisto aconteça, a moderação está liberada para editar, adicionando dicas e palavras, sempre seguindo o mesmo padrão de postagem, enfatizando as palavras. Assim teremos uma melhor organização.

Por fim, gostaria que todos os scripters, experientes ou não, e principalmente os que estão iniciando sua possível carreira na área, dentro da comunidade TK, lessem e corrigissem, se necessário.

Começando

array

Array é uma variável onde há dois ou mais valores. É conhecido como vetor ou lista. Dependendo do caso, também pode ser conhecida como matriz. Cada valor dentro da array tem sua posição que é dada por um índice e que, geralmente, segue uma sequência de números inteiros. Pode ser local ou global.

Exemplo: local arr = {1, 2, "valor 3", 503, variavelTeste}

cid

Normalmente uma variável onde é atribuida a identificação da criatura que, em muitos casos, está executando o script. A sigla cid vem do inglês Creature Identification.

Exemplo: if isPlayer(cid) == TRUE then

concatenação

Éo ato de juntar uma ou mais strings. Em Lua, a concatenação é feita com o simbolo Ponto-Ponto (..)

Exemplo: print("Skyen".."_".."Hasus")

A saída gerada por esse comando seria: Skyen_Hasus.

do

1. Normalmente usada no começo de funções que exercem alguma ação. Pode ser usada separada (sozinha) ou em alguma condição (ex. if). Tem sua tradução mais próxima da palavra fazer.

2. É utilizado em conjunto com o FOR, tendo de estar, obrigatoriamente, no final da linha em que há o loop for.

Exemplo: doSendMagicEffect(pos, effect)

Exemplo: for i =1, 10 do

else

É utilizado em condições. Caso todas as outras não sejam verdadeiras, o else será executado. É sempre usado sozinho e pode ser entendido como "Se não:". É utilizado em conjunto do if.

Exemplo:

if 1 > 2 then
else
-- script
end[/code]

[b]elseif[/b]

Assim como o else, é utilizado em conjunto do if e serve para verificar se há outra possível condição. Pode ser entendido como "Ou se:".

Exemplo:

[code=lua]
if 1 > 2 then
elseif 1 < 2 then
--script
end

end

End é utilizado para fechar todas as condições, inclusive o loop for. Significa FIM. Tudo o que abre (if e for) deve ser fechado com um end.

Exemplo:

if 1 > 2 then
else
-- script
end[/code]

[b]get[/b]

É muito encontrada em funções, onde sempre é retornado um valor, nulo ou não. Get, em inglês, no nosso caso, tem a tradução mais próxima de obter. As funções que começam com get, nunca estarão sozinhas, e sim, dando valor a alguma variável ou comparado a algo.

Exemplo: local level = getPlayerLevel(cid)

[b]if[/b]

Obrigatoriamente deve ter em um script. Claro, há excessões, sempre há excessões. Serve para impor uma condição. Essa condição pode ser verdadeira ou falsa. Caso seje verdadeira, a continuação do script continuará até encontrar um END, caso contrário, verificará os elseifs e se não for verdadeiro com nenhum, havendo um else, será executado o código a partir dele.

A palavra if é proveniente do inglês e significa SE.

Exemplo: if level >= 30 then -- (Se level maior ou igual a 30, então)

[b]is[/b]

Is, no começo de funções, é para fazer uma verificação. Sempre é usada em alguma condição e tem seu significado mais próximo da palavra é.

Exemplo: if isPlayer(cid) == TRUE then

[b]loop[/b]

Loop é o nome dado a função que é executada várias vezes até que haja a condição para que ele pare. O mais utilizado é o for, mas também, na linguagem LUA temos o while e repeat.

Exemplo: for i = 1, 10 do

[b]parâmetros[/b]

Parâmetros de uma função são todas as variáveis que se encontram entre os parênteses.

Exemplo: doRemoveItem(uid) -- uid é o parâmetro da função doRemoveItem

[b]syntax sugars[/b]

São as facilidades que a linguagem de programação permite ao programador.

Exemplo 1:

[code=lua]
var = "Skyen Hasus"
print(string.upper(var)) -- Normal
print(var:upper()) -- Syntax Sugar

Ambas as saídas geradas seriam: SKYEN HASUS.

Exemplo 2:


teste = function(s) -- Normal
end
function teste(s) -- Syntax Sugar
end[/code]

Apesar de parecerem legais, evite usar Syntax Sugars quando desnecessário, pois podem causar problemas se usadas incorretamente.

[b]set[/b]

Palavra utilizada no começo de nomes de funções que estabelecem valor de algo. É muito utilizado por iniciantes apenas para quests, mas tem muito mais importância que isso. No português, tem o significado mais próximo de estabelecer. [color=DarkRed](conteúdo a ser ampliado)[/color]

Exemplo: setPlayerStorageValue(cid, 3001, 1)

[b]string[/b]

Corresponde a um texto, as strings sempre são entre aspas.

Exemplos: "string" ou 'string'

Note que há dois tipos de aspas, as duas são válidas.

[b]then[/b]

Utilizado em conjunto do if ou do elseif. Pode ser entendido como ENTÃO. Sempre será encontrado no fim da linha em que haja as condições citadas.

Exemplo: if getPlayerStorageValue(cid, 3001) > 0 then

[b]variáveis[/b]

Variáveis são valores reservados na memória ram do computador para serem utilizados durante o script. Pode-se entender por variável, quando é encontrado a palavra var ou variable (em inglês). Variáveis podem ser locais ou globais, nesse último caso, tendo uso em mais de uma função.

Exemplo: local level = getPlayerLevel(cid)

Exemplo: global estatistica = estatistica + 1

[b]Você também pode ajudar[/b]

Perguntando o que você não entendeu é uma forma de ajudar. Poste suas dúvidas aqui, não tenha vergonha.

Outro modo de ajudar, é postando mensagem com as palavras que você não sabe o significado ou sabe e não está aqui.

Quero deixar claro que eu não sou expert e não saberei tudo. Pesquisarei e tentarei deixar o mais claro possível todo o conteúdo aqui contido.

Eu gostaria que esse dicionário funcionasse como a wikipedia, onde todos podem editar e corrigir. Mas como não há a possibilidade de todos editarem, postem.

Se você editou algo, ponha seu nome.

Se você postar conteúdo a ser adicionado, seu nome irá ser posto aqui.

[b]Atualizações[/b]

05.08.2009 - Adicionado as palavras array, loop e set.

06.08.2009 - Adicionado as palavras if, else, elseif, end, string (Nord) e then.

06.08.2009 - Atualizado a palavra do.

09.08.2009 - Adicionado as palavras concatenação e syntax sugars. (Skyen Hasus)

18.08.2009 - Atualizado a palavra end. (marcryzius)

Creditos

Pivizz

Contato;

6yonKDJ.png god.marinii

TaxNfhb.png

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo