Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
GM - Делюсь опытом (Часть первая).docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
344.82 Кб
Скачать

Оператор switch (Переключатель)

Давайте разберем его.

Сама конструкция оператора выглядит следующим образом:

Ключевое слово switch, затем круглые скобки (), после открывается тело плавающей скобкой { и закрывается такой-же скобкой но в обратную сторону }. На деле это выглядит так:

switch(Выражение) // Выражение может быть как Числовым так и Строковым.

{

case Значение_выражения: // Значение может быть как Числовым так и Строковым.

// Метка, сюда может переключить оператор switch

break; // Конец метки

case Значение_выражение:

// Метка, сюда может переключить оператор switch

break;

default:

// Стандартная метка, сюда переключает нас switch, в случае, когда значение выражения не совпало со значением метки.

break;

}

Другими словами это так:

switch(1)

{

case 0:

// Метка, сюда может переключить оператор switch, если выражение 0.

break;

case 1:

// Сюда нас переключит оператор switch, поскольку, выражение было 1.

break;

default:

// Стандартная метка, сюда переключает нас switch, в случае, когда значение выражения не совпало со значением метки.

break;

}

Теперь, как и всегда, о мелочах:

Удивительная штука, но switch может работать сразу с двумя типами данных, Числовыми и Строковыми.

Покажу на примере, об этом уже упоминалось выше:

switch(“Hello”)

{

case 0:

// Метка, сюда может переключить оператор switch, если выражение 0.

break;

case “Hello”:

// Сюда нас переключит оператор switch, поскольку, выражение было “Hello”.

break;

default:

// Стандартная метка, сюда переключает нас switch, в случае, когда значение выражения не совпало со значением метки.

break;

}

Ещё одно, метку default: можно не ставить. Так же, возможна такая запись:

switch(“Hello”)

{

case 0: // Метка, сюда может переключить оператор switch, если выражение 0.

case “Hello”: // Либо, если выражение было “Hello”, строковым.

// Что-то тут делаем.

break;

}

То есть, на любую из двух меток пройдет одно и то же выражение.

Заметьте, что метку default: я убрал.

Конструкция with:

Она уже объяснялась выше, но я объясню ещё раз, with в переводе с Английского «с» (с чем-то).

Так что, подразумевается с кем-то с чем-то, а именно с объектом:

with(объект)

{

// Это тело будет влиять на объект, который указан был в условии.

// Помните? Мы уничтожали объект таким способом.

// И мало того, мы можем менять его переменные и манипулировать его свойствами.

}

Конечно, если много экземпляров этого объекта есть в игровом мире, то мы будем проводить манипуляцию со всеми ними одинаково и одновременно.

Операторы Цикла.

while : Оператор Цикла

do : Оператор Цикла

for : Оператор Цикла

repeat : Оператор Повтора

Оператор цикла while:

И так, дорогие друзья, на очереди оператор цикла while (пока) пока что-то является правдой или на оборот.

Оператор while выглядит следующим образом:

Ключевое слово while, затем круглые скобки (), а за ними фигурные скобки {…}, как я уже писал, фигурные скобки обычно подразумевают тело Конструкции или Функции.

На деле это выглядит так:

while(n < 100) // Пока n меньше чем 100, до тех пор к n будет добавляться +1

{

n += 1; // n + 1

}

Когда n будет 100, цикл окончится. С этим оператором нужно быть крайне осторожным, поскольку, его легко зациклить, пустить в бесконечный цикл.

Давайте рассмотрим пример из стандартной справки:

while(!place_free(x,y)) // Пока не найдено свободное место то

{

x = random(room_width); // Генерируется координата плоскости x

y = random(room_height); // Генерируется координата плоскости y

}

Объясню новые для вас функции:

place_free(x,y) Возвращает правду, если в координате x,y свободно, иначе возвращает Ложь.

random(x) Где x значение, если написать к примеру 50, то функция вернет в случайном порядке число от 0 до 50.

room_width и room_height Переменные, хранят в себе Ширину и Высоту игровой Комнаты.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]