Ir para conteúdo

Declarando Variáveis De Forma Simples


Antharaz

Posts Recomendados

{B}em... muitos vezes vejo nos meus e nos scripts de outras pessoas declarando várias variáveis uma embaixo da outra, como por exemplo:

 

	local stor1 = getPlayerStorageValue(cid,5551)
local stor2 = getPlayerStorageValue(cid,5552)
local stor3 = getPlayerStorageValue(cid,5553)
local stor4 = getPlayerStorageValue(cid,5554)
local stor5 = getPlayerStorageValue(cid,5555)
local stor6 = getPlayerStorageValue(cid,5556)

 

 

 

 

{U}ma forma de simplificar isto seria separando as variáveis por vírgula, colocando todas antes de um igual(=) e colocando, depois do igual(=), o valor atribuído a cada variável RESPECTIVAMENTE. Usando o exemplo acima, ficaria assim:

 

 

local stor1, stor2, stor3, stor4, stor5, stor6 = getPlayerStorageValue(cid,5551), getPlayerStorageValue(cid,5552), getPlayerStorageValue(cid,5553), getPlayerStorageValue(cid,5554), getPlayerStorageValue(cid,5555), getPlayerStorageValue(cid,5556)

 

 

 

{S}e você não faz assim não quer dizer que está errado, afinal cada um acha mais fácil uma maneira... meu objetivo é apenas ampliar seu conhecimento, afinal, não é porque você só faz de uma maneira que não precisa saber outras... :rolleyes:

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

Além de estar muito bem explicado eu acabo de aprender algo novo, eu faria no estilo a cima

mais agora já sei dois tipos.

 

Um outro exemplo, mais não sei se é possível me diga se pode ser assim..

item_uid = doPlayerAddItem(cid,2436,1)

item_uid = doPlayerAddItem(cid,2437,1)

item_uid = doPlayerAddItem(cid,2437,1)

item_uid = doPlayerAddItem(cid,2437,1)

 

usando a de cima se transoforma:

 

item_uid = doPlayerAddItem(cid,2436,1), doPlayerAddItem(cid,2437,1), doPlayerAddItem(cid,2437,1), doPlayerAddItem(cid,2437,1)

 

 

Isso poder ser?? ou algo do tipo doPlayerAddItem(cid,2436,1), (cid,2437,1), .....

 

Pode??

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

Além de estar muito bem explicado eu acabo de aprender algo novo, eu faria no estilo a cima

mais agora já sei dois tipos.

 

Um outro exemplo, mais não sei se é possível me diga se pode ser assim..

 

 

usando a de cima se transoforma:

 

 

 

 

Isso poder ser?? ou algo do tipo doPlayerAddItem(cid,2436,1), (cid,2437,1), .....

 

Pode??

 

cada variável representa um retorno da função.

a primeira variável representa o primeiro parâmetro de retorno.

normalmente uma função apenas retorna 1 parâmetro.

Exemplo de uma função que retorna dois valores:

function poo(x,y)

return x+y,x-y

end

 

Exemplo de uma função que retorna um valor:

function pog(x,y)

return x+y

end

 

seguindo...

local x,y = 5,10

local i,f = poo(x,y) -- os dois valores retornados pela função foram pegos pelas variáveis i,f.

local t,m = pog(x,y) -- M está sobrando já que a função retorna apenas um valor.

print(x,y,i,f,t)

Link para o comentário
Compartilhar em outros sites

No caso seria outro id de um item e ao clica na quest iria vim 3 items, então perguntei aquilo ali em cima

mais como não entendo nada a explicação do Marcryzius foi nula pra min =/, então pergunto novamente..

 

Aquile opção que eu fiz funciona???

item_uid = doPlayerAddItem(cid,2436,1), doPlayerAddItem(cid,2437,1), doPlayerAddItem(cid,2438,1), doPlayerAddItem(cid,2439,1)

 

ao invez de:

item_uid = doPlayerAddItem(cid,2436,1)

item_uid = doPlayerAddItem(cid,2437,1)

item_uid = doPlayerAddItem(cid,2438,1)

item_uid = doPlayerAddItem(cid,2439,1)

 

????????????

 

Marcryzius sua caixa de email está lotada eu acho, envie seu msn para min? obrigado.

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

se você por assim irá adicionar os 4 itens ao player, mas no sentido de atribuir valores mesmo ficará errado...

 

como você colocou 4 valores, deveria ter 4 variáveis antes da vírgula... por exeplo, experimente por o código abaixo:

 

item_uid = 'a', 'b', 'c', 'd'
doPlayerSendTextMessage(cid,22,item_uid)

 

a menssagem que aparecerá para o player é a string "a".

 

Isto porque você só indicou a 1ª variável antes do igual(=). Já se colocar de acordo com o código abaixo retornará a string "d":

 

item_uid,item_uid,item_uid,item_uid = 'a', 'b', 'c', 'd'
doPlayerSendTextMessage(cid,22,item_uid)

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

No caso seria outro id de um item e ao clica na quest iria vim 3 items, então perguntei aquilo ali em cima

mais como não entendo nada a explicação do Marcryzius foi nula pra min =/, então pergunto novamente..

 

Aquile opção que eu fiz funciona???

 

 

ao invez de:

 

 

????????????

 

Marcryzius sua caixa de email está lotada eu acho, envie seu msn para min? obrigado.

 

funcionar funciona, mas seria a mesma coisa que fazer assim.

item_uid = doPlayerAddItem(cid,2436,1)

doPlayerAddItem(cid,2437,1)

doPlayerAddItem(cid,2438,1)

doPlayerAddItem(cid,2439,1)

 

ou seja apenas a variável item_uid foi atribuida a função doPlayerAddItem

o restante não foi atribuida portanto não se pode obter informações de retorno da função.

Link para o comentário
Compartilhar em outros sites

Marcryzius, bem complicadin, mais agora entendi valeu Marcryzius/Antharaz é

isso ae henrique e acho que com esse tópico iremos aprimorar mais ainda =)

 

 

Marcryzius te adicionei la

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
×
×
  • Criar Novo...