Создание RPG игры

RPG - Простая система движения и инвентаря

Простой инвентарь


Вам потребуется создать несколько Movie Clip’ов и
несколько строчек кода, это очень просто.


Action script во фрэйме


Примечание: Этим мы создадим систему инвентаря в
первом фрейме. Вы сможете переместить в любое место вашего ролика
(игры) просто подправив данный код скрипта.

Скопируйте код в первый фрейм (frame) вашего
ролика.


currentslotnum = 1;
stop ();
function
addToslot (item) {
if (!item.found) {
item._x = eval
(“itemSlot” + currentslotnum)._x;
item._y = eval (“itemSlot” +
currentslotnum)._y;
item.found =
true;
currentslotnum++;
}
}


Примечание: “itemSlot” + currentslotnum : это будет имя
вашего Movie Clip в котором содержится предмет. Если Вы пожелаете
заменить имя исходного Movie Clip, пожалуйста измените имя
“itemSlot” на то имя, которое вы дали Вашему Movie Clip’у .


Movie Clip’ы - Предметы


Теперь, Вам потребуется создать несколько Movie Clip’ов,
использующихся как предметы. Создайте Movie Clip с рисунками
предметов для вашего инвентаря, как Вам будет надо, затем присвойте
нижеприведённый код Вашему Movie Clip’у.


onClipEvent (enterFrame) {
if
(_root.character.hitTest (this)) {
_root.addToslot
(this);
}
}


Примечание: character - имя управляемого игроком Movie
Clip’а.



Movie Clip’ы - Слоты для предметов


Теперь, Вам потребуется создать несколько Movie Clip’ов, которые
будут хранить данные предметы. Создайте Movie Clip’ы и назовите их
itemSlot1, itemSlot2, itemSlot3, и т.д.

Примечание: Если у Вас только два предмета в Вашей игре
(автомат и пистолет), то Вам потребуется всего два Movie Clip’а для
хранения этих предметов.

Примечание: Назовите Movie Clip вот так itemSlot + Form 1
номером предмета, который вы создали в ролике (игре).

Теперь почти всё готово ...


Movie Clip’ы - персонаж


Последний штрих - создать Movie Clip, который будет работать, как
персонаж игры( тот самый управляемый игроком Movie Clip ) . После
этого, назовите Movie Clip как “character” ( конечно, без кавычек).
Присвойте ему следующий код.


onClipEvent (load) {
moveSpeed =
19;
}
onClipEvent (enterFrame) {
if (Key.isDown
(Key.RIGHT)) {
this._x += moveSpeed;
} else if (Key.isDown
(Key.UP)) {
this._y -= moveSpeed;
} else if (Key.isDown
(Key.DOWN)) {
this._y += moveSpeed;
} else if (Key.isDown
(Key.LEFT)) {
this._x -=
moveSpeed;
}
}



Финальные заметки


Это просто примитивная система инвентаря и
передвижений, если Вы действительно пожелаете создавать хорошие RPG
игры на macromedia flash, то Вам этого будет недостаточно. Для
фиксации столкновений и сложного передвижения вам надо знать определение
момента столкновения и сложная система передвижений.

Автор: Перевод: К. Козырев

просмотров — 27419версия для печати ⇒