???
Математика на уровне МГУ

Показано с 1 по 6 из 6

Тема: Создание миссии в деталях

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #2
    Реаниматор Аватар для Gunslinger
    Регистрация
    30.03.2003
    Адрес
    Москва
    Возраст
    43
    Сообщений
    1,284

    Скрипты

    А вот и сегодняшняя порция Касается она в основном скриптов. Хотя есть одно отступление. Будьте аккуратны, когда делаете видео-ролики в горах, если склон очень крутой, юнит может лечь и это испортит всю сцену. Приходится искать обходные пути. Ну во, теперь перейдем непосредственно к скриптам.

    1. Из всех команд, предназначеных для контроля над камерой, влияют только cameraeffect, camsettarget, camSetFov и camsetrelpos. Причем в команде cameraeffect не все эффекты воспринимаются редактором и он может вылететь в винду. А вот используя команду camSetFov можно добиться очень интересного результата.

    2. При работе со строками помните, что их можно только складывать (команда +), а вычитать, то есть укорачивать их нельзя (ругается на оператор -). Вычетание с массивами так же не проходит гладко. Есои вы вычитаете из массива [1,2,3,2,2,2] массив [2], то будет удален не первый элемент, а все элементы содержащие значения второго масива, то есть результатом будет массив [1,3]. Сложение с массивами так же как и со строками работает нормально.

    Пока я нашел единственный способ вычитать строки - это имитировать его. И то данный метод работает только когда нужно вычитать одинаковые элементы (например пробелы, при форматировании строки вывода). Сразу скажу, чтобы вы не гадали нафиг это нужно. Это для того, чтобы сделать эффект вывода строки аля X-files (или печатная машинка), когда сбоку выводится строка посимвольно. Ведь если сделать кол-во пробелов постоянным, строка будет уходить влево, пожтому с каждым новым символом кол-во пробелов должно уменьшатся на 1 штуку.

    Создаем массив (array) с одним элементом (пусть это будет тот же пробел). Наполняем его командой array=array+[""]. Причем наполнение должно идти в цикле с заданым количеством пробелов. Далее выводим на экран строку с этим набором пробелов. Наполнение строки проблеами из массива удобно делать командой foreach, например так "spaces=spaces+_x" ForEach array. Теперь переменная spaces содержит все элементы массива как единую строку.

    Кстати важное замечение - оператор foreach не умеет работать с локальными переменными (типа _var, то есть с нижним подчеркиванием вначале), запомните это. Всегда в нем используйте обычные переменные типа var.

    Теперь если нужна строка с другим количеством пробелов, Обнуляем массив командой array=[" "] (не забудьте также обнулить ту переменную, которая использовалась в цикле foreach, в данном случае это spaces, просто напишите spaces="") и направляем скрипт на метку наполнения массива, но уже с переменной, содержащий нужное нам количество для этого раза.

    3. В команде goto "string", метка string должна указываться в кавычках, а когда вы пишете эту метку в скрипте, то БЕЗ кавычек, то есть так #string (обязательно со знаком # и на отдельной строке)

    4. Команда TitleCut прекрасно работает с переменными. Можно выводить через нее значения текстовых переменных, при это суммируя их, например так TitleCut [string1+string1,"Plain down",1]. Заметьте, что при использовании в этой команде переменной она должна писаться БЕЗ кавычек.

    Завтра продолжу заморачиваться с камерами и Интро, так что ждите продолжения.
    Крайний раз редактировалось Gunslinger; 01.01.1970 в 03:00.
    Нет ничего более постоянного, чем перемены...

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •