Перейти к основному содержимому

9.7. Как сделать сменяемое изображение на локации?

В: Как сделать сменяемое изображение на локации?

О: Смена изображения на локации делается весьма просто.

В первую очередь необходимо подготовить два изображения и поместить их в папку с игрой, либо во вложенную папку. Например, у нас есть изображения "солнечный_день.jpg" и "пасмурный_вечер.png", мы создали в папке с игрой папку "фон", и поместили эти изображения туда.

Выводить изображения мы будем с помощью html-тега <img>, а сменять с помощью действия "Сменить изображение".

В поле "выполнить при посещении" локации, на которой мы хотим вывести изображения, нужно прописать код с условиями:

if изображение = 0:
! если значение переменной "изображение" равно нулю
! выводим картинку "солнечный_день.jpg"
*pl "<img src='фон/солнечный_день.jpg'>"
elseif изображение = 1:
! иначе если значение переменной "изображение" равно единице
! выводим картинку "пасмурный_вечер.png"
*pl "<img src='фон/пасмурный_вечер.png'>"
end

Здесь же создаём действие, которое будет "менять" картинку:

act "Сменить пейзаж":
! на самом деле действие меняет значение переменной

if изображение = 0:
изображение = 1
elseif изображение = 1:
изображение=0
end
! и заставляет плеер перезайти на текущую локацию

goto $curloc
end

Работает это следующим образом:

  • Если переменная "изображение" не была заранее задана, её значение в момент посещения локации будет равно нулю, поэтому сработает первое условие, а значит на экране мы увидим картинку "солнечный_день.jpg".
  • Когда мы нажмём на действие, в действии так же произойдёт проверка условия, и так как значение переменной "изображение" в момент нажатия действия будет равно нулю, этой переменной присвоится значение 1, после чего плеер перезайдёт на текущую локацию.
  • Когда плеер повторно зайдёт на текущую локацию, он очистит окно основного описания, затем начнёт выполнять код из области "выполнить при посещении", и согласно значению переменной "изображение" сработает второе условие, а значит на экран будет выведена картинка "пасмурный_вечер.png".
  • И так далее.

Если вам нужно сделать изображения, которые меняются при щелчке непосредственно по ним, нужно просто завернуть эти изображения в гиперссылки:

if изображение = 0:
! если значение переменной "изображение" равно нулю
! выводим картинку "солнечный_день.jpg"
*pl "<a href='exec:изображение=1 & goto $curloc'><img src='фон/солнечный_день.jpg'></a>"
elseif изображение = 1:
! иначе если значение переменной "изображение" равно единице
! выводим картинку "пасмурный_вечер.png"
*pl "<a href='exec:изображение=0 & goto $curloc'><img src='фон/пасмурный_вечер.png'></a>"
end