Инструменты пользователя

Инструменты сайта


Боковая панель

help:organizing

Это старая версия документа.


Назад: Условные выражения

Упорядочивание кода

  • GOSUB [$локация],[параметр 1],[параметр 2], …
  • GS [$локация],[параметр 1],[параметр 2], … - обработка локации с названием [$локация].
    • Основное описание и список действий локации добавляются к описанию и действиям старой локации.
    • Происходит выполнение операторов в поле "Выполнить при посещении"
    • Переданные параметры хранятся в массиве ARGS. Максимальное количество параметров - 91).
    • Затем продолжение выполнения программы со следующей команды после GS/GOSUB.
    • Примеры:
      !обработка локации "ход". Массив ARGS пуст.
      GS 'ход'
      
      !обработка локации с названием из переменной $loc
      !Передаётся один параметр - ARGS[0] равен 1.
      GS $loc,1
      
      !обработка локации "ход" с передачей 3-х параметров. 
      ! $ARGS[0] = $var (значению), ARGS[1] = 2, 
      ! $ARGS[2] = "данные". Обратите внимание на символы '$'.
      GS 'ход',$var,2,'данные'
      
  • FUNC([$локация],[параметр 1],[параметр 2], …) - обработка локации с названием [$локация] аналогично оператору GS (GOSUB), но с возвращением значения.
    • Основное описание и список действий локации добавляются к описанию и действиям старой локации.
    • Происходит выполнение операторов в поле "Выполнить при посещении"
    • Переданные параметры хранятся в массиве ARGS. Максимальное количество параметров - 92).
    • Результат функции равен значению $RESULT при возврате строкового значения или RESULT при возврате числового значения.
    • Если при обработке локации были установлены и RESULT, и $RESULT, то предпочтение отдаётся строковому значению.
    • После обработки локации предыдущие значения ARGS и RESULT восстанавливаются.
    • Примеры:
      !Обработка локации "функция" как функции. 
      !Массив ARGS пуст. 
      !Результат передается через $RESULT или RESULT
      !в зависимости от кода обрабатываемой локации.
      яблоки = FUNC('функция')
      
      !обработка локации с названием в $name как функции. ARGS[0] равен 1.
      PL FUNC($name, 1) * 78
      
      !обработка локации с названием в $name как функции. 
      !$ARGS[0] содержит строку "строка", ARGS[1] равен 2.
      MSG "text" + FUNC($name, "строка", 2)
      
  • EXIT - завершение выполнения текущего кода (преждевременный выход из подпрограммы / обработчика какого-либо события…).
    • Примеры:
      
      
      

Вперёд: Переходы внутри локации, циклы

1) , 2) 10 включая имя локации
help/organizing.1383295905.txt.gz · Последние изменения: 2013/11/01 12:51 (внешнее изменение)