понедельник, 31 мая 2010 г.

Mo'Minis Russian Tutorial: Урок 8. Логика forever V

   Работать с переменными в Mo'Minis достаточно просто. Но некоторые хитрые возможности требуют дополнительных нестандартных знаний. Да и в целом, все знания о переменных должны быть в системе. Именно такой систематизации знаний посвящён этот урок.

   Начнём с действий. Для работы с переменными в Mo'Minis существует действие Set Global Variable
   Действие можно будет записать в любое событие. При его выборе появляется следующее окно:
   В этом окне несколько настроек, а именно:
  • Variable - здесь необходимо выбрать переменную, которую вы будете изменять
  • Value - ввод значения, которое будет прописано в переменной. Также сюда можно вводить выражения.
  • Relative - будет ли изменение родственным (что это такое, вы узнаете позже)
   Тут есть один трюк, о котором вы обязаны знать. Если вы хотите изменить значение переменной не статично (т.е перезаписать каким-то числом) а динамично (т.е прибавить или отнять число от переменной), то знайте, что в выражениях вы можете использовать название переменной.
    К примеру, следующий код отнимает от значения переменной единицу
some_var - 1
   При этом переменная, с которой сия манипуляция совершается, должна называться some_var. Этот трюк может очень сильно помочь вам в программировании жизней противника.
   События в Mo'Minis также могут использовать переменные. К примеру, в Condition Event вы можете добавлять переменные таким образом:
   В этом выражении правда наступает, если aa (название переменной, в данном случае) плюс 5 не равно 10. Для этого значение переменной не должно быть равно 5.
   Также в Mo'Minis имеются системные переменные. Они как правило неизменяемы, создаются самой игрой в ходе выполнения. Вот эти переменные:
  1. CURRENT_TIME – выдаёт так называемый "Unix-time" (количество секунд, прошедших с 1 января 1970 года) в милисекундах, т.е по сути системное время.Часто используется, чтобы определить сколько игра работает.
  2. ROOM_HEIGHT – ширина комнаты
  3. ROOM_WIDTH -высота комнаты
  4. SCREEN_WIDTH – высота видимой части комнаты, т.е экрана устройства 
  5. SCREEN_HEIGHT – ширина видимой части комнаты, т.е экрана устройства 
  6. SCREEN_X – положение видимой части экрана по оси X
  7. SCREEN_Y –  положение видимой части экрана по оси 
    Но помимо этих переменных,существуют ещё 2, именуемые LIVES и SCORE. Эти системные изменяемые переменные используются для подсчёта жизней и очков. Их нельзя изменять через Set Global Var..., для этого существуют специальные действия: Set Lives и Set Score.
   Эти действия аналогичны, их окна выглядят так:
 Вместо замазанных слов могут быть либо Lives, либо Score в зависимости от выбранного действия. В поле, где 0 вставляете новое значение (при этом можно использовать саму переменную Lives/Score или любую другую).
Это всё?
Да. С курсом Логика firever мы закончили. Со следующих уроков мы начнём освещать иную функциональность Mo'Minis Studio (такие как теги, пути и.т.д). Не прощаюсь!

P.S От автора
Можете официально считать, что почти 4-месячный простой окончен. Теперь весь июнь будут выходить свежие публикации. Я постараюсь максимально качественно окончить курс :)

3 комментария:

  1. В чём разница между переменными SCREEN_HEIGHT и SCREEN_X ? Для меня пояснения идентичны.

    ОтветитьУдалить
  2. SCREEN_HEIGHT - это разрешение экрана телефона. А SCREEN_X - это координаты точки экрана. Как-то так.

    ОтветитьУдалить