Разработка игр

Простые игровые объекты

Описание функций создания игровых объектов, описание самих объектов.

game.spawnXY
Для добавления большинства игровых объектов используется метод game.spawnXY.

game.spawnXY(spawnType, x, y)

Он принимает на вход три аргумента, а не один: spawnType, x, и y. Таким образом, ты решаешь, что и где должно быть создано.

  • spawnType: строка с названием выбранного элемента.
  • x: горизонтальная координата для постройки.
  • y: вертикальная координата для постройки.

Ты можешь навести курсор на карту, чтобы найти координаты. x и y измеряются в метрах.

Добавление забора
Команда, которая создает непроходимый забор в координатах XY:

game.spawnXY("fence", x, y)
Добавление леса
Команда, которая создает непроходимый лес в координатах XY:

game.spawnXY("forest", x, y)
Добавление сундука с самоцветами
Команда, создающая сундук с самоцветами, который может поднять герой, в координатах XY:

game.spawnXY("chest", x, y)
Добавление самоцвета
Команда, создающая самоцвет, который может поднять герой, в координатах XY:

game.spawnXY("gem", x, y)
Добавление огненной ловушки
Команда, создающая огненную ловушку, которая наносит 150 единиц урона герою, в координатах XY:

game.spawnXY("fire-trap", x, y)
Добавление зелья лечения
Существует 3 различных зелья лечения, для их добавления в координаты XY используй:
Малое зелье, восстанавливающее 150 единиц здоровья;

game.spawnXY("potion-small", x, y)

Среднее зелье, восстанавливающее 350 единиц здоровья;

game.spawnXY("potion-medium", x, y)

Большое зелье, восстанавливающее 1000 единиц здоровья.

game.spawnXY("potion-large", x, y)
Добавление лайтстоуна
Команда, создающая волшебный камень света, которого боятся скелеты, в координатах XY:

game.spawnXY("lightstone", x, y)
Добавление врагов
На данный момент для добавления в игру доступно 5 видов врагов, для их добавления в координаты XY используй:

Манчкин;

game.spawnXY("munchkin", x, y)

Метатель копья;

game.spawnXY("thrower", x, y)

Скелет;

game.spawnXY("skeleton", x, y)

Солдат;

game.spawnXY("soldier", x, y)

Лучник.

game.spawnXY("archer", x, y)

Настраиваемые игровые объекты

Описание функций создания и настройки игровых объектов, описание самих объектов.

Автоматический генератор лабиринтов
Команда, автоматически создающая лабиринт:

game.spawnMaze(1)

Измени число в скобках, чтобы получить другие лабиринты.

Добавление огнемета
Объекты «fire-spewer» стреляют группой огненных шаров.
По умолчанию они стреляют горизонтально, однако ты можешь изменить это состояние на вертикальное («vertical»).
Добавление огнемета и изменение состояния на вертикальное выглядит следующим образом:

spew = game.spawnXY("fire-spewer", x, y)
spew.direction = "vertical"
Добавление генератора врагов
Генератор — это здание, которое время от времени создаёт врагов, пока не будет уничтожено.
По умолчанию, генератор создаёт скелетов, однако генерируемого врага можно выбрать.
Так же можно настраивать временной интервал создания врагов:

generator = game.spawnXY("generator", x, y) #Создание генератора
generator.spawnType = "skeleton" #Выбор создаваемого врага
generator.spawnDelay = 5 #Настройка временного интервала создания
Управление поведением
Помимо простого добавление персонажей в игру, вы можете изменить их поведение настройкой параметра behavior, который может принимать следующие значения:

  • unit.behavior = «AttacksNearest» будет атакован ближайщий противник.
  • unit.behavior = «Defends» будут атакованы враги подошедшие близко.
  • unit.behavior = «Scampers» заставит персонажей бегать непредсказуемо.
  • unit.behavior = «RunsAway» заставит персонажей убегать от игрока.

Игровые персонажи

Описание функций добавления и настройки персонажей.

Добавление персонажей игрока и их виды
Команда, которая создает персонажа игрока в координатах XY:

game.spawnHeroXY(type, x, y) 

Существует 7 различных персонажей, названия которых указываются в параметре type:

  • «knight»
  • «captain»
  • «guardian»
  • «samurai»
  • «duelist»
  • «goliath»
  • «champion»
Настройка параметров персонажа
Результатом вызова spawnPlayerXY является объект героя, который можно модифицировать.
Ты можешь менять свойства героя, например, maxSpeed, maxHealth, health и attackDamage.

player = game.spawnPlayerXY("goliath", x,y)
player.maxSpeed = 12 #Скорость передвижения
player.maxHealth = 300 #Максимальное здоровье
player.health = 300 #Здоровье в начале игры
player.attackDamage = 9000 #Сила атаки

Цели

Описание функций добавления целей для игрока.

Позиционная цель
Позиционная цель отмечается на уровне красным крестом. Для прохождения уровня игрок должен встать на все кресты.
Команда, которая создает цель в координатах XY:

game.addMoveGoalXY(x, y)
Собрать самоцветы
Цель сбора ставит перед игроком задачу, для выполнения которой он должен собрать все самоцветы и сундуки на уровне.

game.addCollectGoal()
Победить врагов
Существует возможность добавить цель, для выполнения которой игрок должен победить всех врагов на уровне.

game.addDefeatGoal()

Если при вызове цели в скобках указать число, то для прохождения нужно будет победить определенное количество врагов (указанное в скобках).

Продержаться определенное время
Цель addSurviveGoal добавляет для игрока задание продержаться определенное количество времени и не погибнуть. При этом время указывается в скобках.

game.addSurviveGoal(100)