Сейчас я не буду говорить что написание конструктора для новичка сложно, а просто расскажу как это можно сделать.
Писать компилятор можете на любом языке, или даже на конструкторе игр.Весь смысл в том, что мы создадим две программы.На первой пользователь будет делать свою игру и сохранять параметры в .ini файл, а на второй он будет ее запускать.
Ок.Принцип мы поняли (я надеюсь), осталось только подумать конструктор каких игр мы хотим сделать.Решив не изобретать велосипед я выбрал Конструктор TDS игр (вы можете выбрать любой другой тип конструктора).
- Откройте Game Maker 7 Pro.
- Создайте новую комнату.
- Создайте обьект player и откройте для него какой то спрайт. (я использовал спрайт Fyelo)
- Добавьте обьект wall и нарисуйте для него спрайт стены
- Создайте обьект konstruktor и добавьте в событие step этот скрипт
if mouse_check_button_pressed(mb_left)
{
if !collision_circle(mouse_x,mouse_y,13,all,0,1)
{
instance_create(mouse_x,mouse_y,player)
}
}
if mouse_check_button_pressed(mb_right)
{
if !collision_circle(mouse_x,mouse_y,13,all,0,1)
{
instance_create(mouse_x,mouse_y,wall)
}
}
- Поставьте в вашу комнату обьект konstruktor.
Отлично.У нас готов наш "редактор карт".
Реперь напишем компилирующую часть.
- Создайте пустой текстовой файл, а потом переименуйте его в DA0DA.jpg
- Создайте новый Game Maker файл с именем "game.gmk" и скомпилируйте его, как game.exe.
- Переименуйте Game.exe в 7С4АCD.jpg.
- Создайте обьект kompilator и в событии нажатия кнопки "K" напишите этот код.
file_copy('DA0DA.jpg','game_values.ini')
file_copy('7С4АCD.jpg','game.exe')
ini_open('game_values.ini');
ini_write_real('player','x',player.x);
ini_write_real('player','y',player.y);
ini_close();
- Теперь наш компилятор компилирует .ini файл. (там пока что нет стен, но итак сойдет)
- Войдите в "game.gmk" и создайте там комнату
- Создайте обьект player
- Создайте событие step и напишите в нем этот скрипт
direction = point_direction(x,y,mouse_x,mouse_y);
image_angle = direction;
if keyboard_check(vk_up)
|| keyboard_check(ord("W"))
{
repeat(3){y-=place_free(x,y-1)}
}
if keyboard_check(vk_down)
|| keyboard_check(ord("S"))
{
repeat(3){y+=place_free(x,y+1)}
}
if keyboard_check(vk_right)
|| keyboard_check(ord("D"))
{
repeat(3){x+=place_free(x+1,y)}
}
if keyboard_check(vk_left)
|| keyboard_check(ord("A"))
{
repeat(3){x-=place_free(x-1,y)}
}
if mouse_check_button_pressed(mb_left)
{
b = instance_create(x+lengthdir_x(13,direction),y+lengthdir_y(13,direction),bullet)
b.direction = direction
}
- создайте обект bullet и в событии Create напишите этот код
speed = 20
- Создайте обьект Control
- Создайте событие Game Start и напишите туда этот код
var xx,yy
ini_open('game_values.ini');
xx=ini_read_real('player','x',0);
yy=ini_read_real('player','y',0);
ini_close();
instance_create(xx,yy,player)
Вот и ВСЕ
Теперь вы понимаете как создаются конструкторы игр на конструкторах игр.Теперь вы сами можете добавить в свой конструктор игр врагов, стены и все что реализуемо в Game Maker.
А вот мой конструктор с пулями и врагами - Скачать
Комментариев нет:
Отправить комментарий