Ir para conteúdo
  • 0

qual a diferença neste script


wevertonvrb

Pergunta

então gente eu tou add um sistema no meu serve e gostaria da ajuda de voces para me ajudarem numa pequena duvida 

segue
como devo deixar o script? tem alguma diferença entre os 2 modos ao executa-lo?
if ou elseif

modo 1

Spoiler

 

if it == "2" then
    if getItemAttribute(idd, "skt2") then  
  move = movestable[getItemAttribute(idd, "skt2")].move2


  elseif getItemAttribute(slotball, "TMN") == 2 then

                move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0}
  else
        move = movestable[name].move2
        end
        end

 

 

modo 2
 

Spoiler

 

if it == "2" then
    if getItemAttribute(idd, "skt2") then  
  move = movestable[getItemAttribute(idd, "skt2")].move2


  if getItemAttribute(slotball, "TMN") == 2 then

                move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0}
  else
        move = movestable[name].move2
        end
        end

 

 

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

4 respostass a esta questão

Posts Recomendados

  • 0

Quando um if é seguido de um elseif, se o código entrar no bloco do if, ele não executa o teste do elseif e pula até o end que fecha o if. Sem elseif, ele vai testar as 2 situações, uma depois da outra, e isso pode alterar o resultado do script - no seu caso, pode mudar o conteúdo de move

Link para o comentário
Compartilhar em outros sites

  • 0

Existe uma coisa chamada cadeia de cascata. 

Ao abrir um "if" ele cria um bloco que vai até o próximo "end" que finalizar ele. Tudo o que tiver dentro desse "if" só será executado se a condição  (condição criada para esse if) for verdadeira.

 

Citar

if getItemAttribute(slotball, "TMN") == 2 then

No seu caso, esse "if" só será executado se esse outro "if" for verdadeiro.

Citar

 if getItemAttribute(idd, "skt2") then 

 

Isso que chamamos de cadeia em cascata.

Link para o comentário
Compartilhar em outros sites

  • 0
Em 06/02/2017 at 09:16, Poccnn disse:

Existe uma coisa chamada cadeia de cascata. 

Ao abrir um "if" ele cria um bloco que vai até o próximo "end" que finalizar ele. Tudo o que tiver dentro desse "if" só será executado se a condição  (condição criada para esse if) for verdadeira.

 

No seu caso, esse "if" só será executado se esse outro "if" for verdadeiro.

 

Isso que chamamos de cadeia em cascata.

sim acabei percebendo isso de uma maneira triste simplesmetem da forma que coloquei n funciona acabei bugando tudo e tendo q desmanchar, tentarei refazer hoje 

 

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...