Директор Линго Проблемы - см код

Я пытаюсь использовать операторы для перехода к двум различным фреймам в игровом проекте Director, но даже если я перейду к 32-му кадру для одного сета и к 31-му кадру для другого, они оба переходят к одному и тому же 31-му кадру. делать неправильно? Я не могу понять это. (см. пример кода здесь:)

-

on timeOut


  if the timer >= 360 and sprite(16).visible = 1 then
    member ("tellIt").text = "TIME UP"
    _movie.go(32)


  end if

  if the timer >= 360 and sprite(15).visible = 1 then
    member ("tellIt").text = "TIME UP"
    _movie.go(32)


  end if

  if the timer >= 360 and sprite(14).visible = 1 then
    member ("tellIt").text = "TIME UP"
    _movie.go(32)

  end if

  if the timer >= 360  and sprite(13).visible = 1 then
    member ("tellIt").text = "TIME UP"
    _movie.go(32 
  end if

if the timer > 350 and sprite(16).visible = 0 then
    _movie.go(31)
    member ("endIt").text = "LUNCH IS FOR THE BIRDS"
    member ("tellIt").text = "TIME FLIES"
  end if

  if the timer > 350 and sprite(15).visible = 0 then
    _movie.go(31)
    member ("endIt").text = "LUNCH IS FOR THE BIRDS"
    member ("tellIt").text = "TIME FLIES"
  end if

  if the timer > 350 and sprite(14).visible = 0 then
    _movie.go(31)
    member ("endIt").text = "LUNCH IS FOR THE BIRDS"
    member ("tellIt").text = "TIME FLIES"
  end if

  if the timer > 350  and sprite(13).visible = 0 then
    _movie.go(31)
    member ("endIt").text = "LUNCH IS FOR THE BIRDS"
    member ("tellIt").text = "TIME FLIES"
  end if

  if the timer > 350  and sprite(12).visible = 0 then
    _movie.go(31)
    member ("endIt").text = "LUNCH IS FOR THE BIRDS"
    member ("tellIt").text = "TIME FLIES"
  end if
--

Этот код написан на сценарии фильма.

Я действительно надеюсь, что вы можете направить меня в правильном направлении, так как я понятия не имею, почему это не идет в кадр, к которому я его прошу. Все остальное в игре работает нормально.

1 ответ

То, как вы это делаете, не имеет значения, сколько из первых проверок истинно, если какая-либо из последующих проверок верна, то вы окажетесь в кадре 31.

Если вы добавите 'exit' в каждое из операторов if, это гарантирует, что последующие проверки не будут выполнены. Подобно:

if the timer >= 360 and sprite(16).visible = 1 then
   member ("tellIt").text = "TIME UP"
   _movie.go(32)
   exit
end if
Другие вопросы по тегам