Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - Game Maker Language - Примеры скриптов09 мая 2011Оглавление: 1. Game Maker Language 2. Библиотеки 3. Функции 4. Примеры скриптов 5. Критика Вот простой пример скрипта, который выводит легендарную фразу «Hello, World!»: show_message; Еще один пример, который отображает тот же текст, но уже в окне программы. Заметьте, что по умолчанию Game Maker непрерывно перерисовывает окно, поэтому в обычном случае этот код нужно поместить в событие рисования. draw_text; Вот кусок кода из игры на GML:
// это комментарий
/* Так комментарии пишутся в С++. */
/* определение временных переменных.
Эти переменные будут удалены после окончания скрипта.
Заметьте, что переменные не требуют никакого определения типа! */
var xx, yy, nn;
// Условие. Оно может быть сокращено до «if».
if // "=" и "==" могут быть использованы
{ // Начало блока кода. Вы можете также писать «begin» как в Pascal.
/* Устанавливаем переменную в ложь. То же самое можно написать и так: «can_shoot = 0;»
Так как Game Maker не различает булевские и целочисленные значения. */
can_shoot = false;
/* Здесь устанавливаем нулевой таймер на пять шагов.
Переменная таймера будет опускаться до 0, а когда достигнет его,
Событие нулевого счетчика будет вызвано. */
alarm = 5;
/* Здесь локальная переменная xx определена как целочисленная,
И использована функция lengthdir_x. */
xx = x + lengthdir_x;
yy = y + lengthdir_y;
//Эта функция создает образец объекта obj_bullet и возвращает идентификатор нового объекта.
nn = instance_create;
/* Оператор with позволяет вам обращаться к переменным объекта напрямую */
with
{
speed = obj_tank.speed + 3;
direction = obj_tank.direction;
}
}
Стили кода можно смешивать. Например, предыдущий пример может быть записан так:
var xx, yy, nn;
if can_shoot = true then begin
can_shoot := false
alarm := 5
xx := x + lengthdir_x
yy := y + lengthdir_y
nn := instance_create
with nn begin
speed := obj_tank.speed + 3
direction := obj_tank.direction
end
end
Вот пример обычного управления с клавиатуры. Функция motion_set принимает два параметра: направление и скорость. Вызов этой функции приведет к изменению встроенных локальных переменных speed и direction, которые использует Game Maker для перемещения объектов: if ) motion_set; if ) motion_set; if ) motion_set; if ) motion_set; if ) motion_set; А вот пример более сложного скрипта для платформенной игры. Используя его, игрок может ходить по выпуклой поверхности:
if !place_free
{
if place_free
{
x-=4
y-=4
}
else if place_free
{
x-=3
y-=5
}
else if place_free
{
x-=2
y-=6
}
}
else
x-=4
Просмотров: 6344
|