MOLIER ART STUDIO
Суббота, 25.11.2017, 08:43
Приветствую Вас Гость | RSS
 
Главная Урок "Заколоченный ящик" - ФорумРегистрацияВход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Форум » Wintermute Engine » Уроки по Wintermete Engine » Урок "Заколоченный ящик"
Урок "Заколоченный ящик"
MolierДата: Пятница, 02.12.2011, 14:14 | Сообщение # 1
Группа: Администраторы
Сообщений: 332
Награды: 2
Репутация: 15
Статус: Offline
Награды
За создание сайта За хорошую репутацию +10 За 100 Сообщений За 200 Сообщений За 300 Сообщений
Цель урока , перед нами ящик , который заколочен гвоздями, с помощью гвоздодера извлекаем гвозди, открываем крышку и берем из ящика книгу (или любой другой предмет).

И так приступим. Создаем новую сцену назовем ее Box, Меняем background на нашу картинку с открытым ящиком.



Теперь добавим крышку top



и заколачиваем её гвоздями nail1_1, nail2_1, nail3_1 и nail4_1



В принципе начальная сцена готова, приступим

в scene_init.script убираем актера
Code

actor.Active = false;


Теперь нам необходим гвоздодер, назовем его lom

Заходим в папку items и в items.items добавляем наш lom
Code

ITEM
{
     CURSOR_COMBINED = TRUE
     CAPTION = "Гвоздодер"
     NAME = "lom"
     IMAGE = "items\lom_item.png"
     CURSOR = "items\lom.png"
     CURSOR_HOVER = "items\lom.png"
     SPRITE_HOVER = "items\lom.png"
     SCRIPT = "items\lom.script"
}


тек же пишем скрипт lom.script
Code

#include "scripts\base.inc"

///////////////////
on "LookAt"
{
    actor.Talk("udjpljlth");
}

////////////////
on "Take"
{
    Game.SelectedItem = "lom";
}


Чтобы наш lom появился сразу в инвентаре, добавляем строку в scene_init.script
Code

Game.TakeItem("lom");


Теперь можно проверить результат



все работает, идем дальше.
Так как наши гвозди не сразу будут вытащены, а постепенно, по чуть-чуть, добавляем в нашу сцену остальные гвозди, nail2 и nail3

должно получится примерно так



наводим порядок прячем наши гвозди с окончанием _2 и _3, убираем галочки



Продолжаем работу со скриптами , для nail1_1 пишем
Code

#include "scripts\base.inc"

on "lom"
{
    var tmp1 = Scene.GetNode("nail1_1");
    var tmp2 = Scene.GetNode("nail1_2");
    tmp1.Active = false;
    tmp2.Active = true;
}

далее для nail1_2 пишем
Code

#include "scripts\base.inc"

on "lom"
{
    var tmp1 = Scene.GetNode("nail1_2");
    var tmp2 = Scene.GetNode("nail1_3");
    tmp1.Active = false;
    tmp2.Active = true;
}

и для nail1_3 пишем
Code

#include "scripts\base.inc"

on "lom"
{
    var tmp1 = Scene.GetNode("nail1_3");
    var tmp2 = Scene.GetNode("nail1");
    tmp1.Active = false;
    tmp2.Active = true;
}

Теперь добавим в сцену nail1, целый гвоздь и положим его возле ящика



и прячем его убираем галочку



проверим, работает, движемся дальше.

Пишем все то же самое для оставшихся гвоздей.
Осталось снять крышку, выбираем наш top и пишем
Code

#include "scripts\base.inc"

var tmp1 = Scene.GetNode("nail1");
var tmp2 = Scene.GetNode("nail2");
var tmp3 = Scene.GetNode("nail3");
var tmp4 = Scene.GetNode("nail4");

on "LeftClick"
{
if(tmp1.Active == true)
if(tmp2.Active == true)
if(tmp3.Active == true)
if(tmp4.Active == true)
{
    var tmp5 = Scene.GetNode("top");
    tmp5.Active = false;
}
}

Осталось положить книгу в ящик, в PhotoShop подгоняем книгу под нашу сцену и размещаем в ящике и делаем невидимой



в top добавляем
Code

   var tmp6 = Scene.GetNode("book");
    tmp6.Active = true;

Пишем для book скрипт
Code

#include "scripts\base.inc"

on "LeftClick"
{
    Game.TakeItem("book");     
    this.Active = false;
}

не забывает про items.items добавляем
Code

ITEM
{
     CURSOR_COMBINED = TRUE
     CAPTION = "Старая книга"
     NAME = "book"
     IMAGE = "items\book_item.png"
     CURSOR = "items\book_item.png"
     CURSOR_HOVER = "items\book_item.png"
     SPRITE_HOVER = "items\book_item.png"
     SCRIPT = "items\book.script"
}

Ну, вот наверное и все
Отдельное спасибо AmneziA, за помощь в создании урока.
Прикрепления: 2589594.jpg(183Kb) · 1623506.jpg(193Kb) · 9814123.jpg(195Kb) · 7425230.jpg(93Kb) · 8958612.jpg(91Kb) · 9276175.jpg(29Kb) · 8510078.jpg(67Kb) · 8157985.jpg(165Kb) · 8755372.jpg(85Kb)


Не ошибается лишь тот, кто не чего не делает.
 
AmneziAДата: Суббота, 03.12.2011, 15:09 | Сообщение # 2
Группа: Модераторы
Сообщений: 355
Награды: 3
Репутация: 15
Статус: Offline
Награды
За хорошую репутацию +10 За 100 Сообщений За 200 Сообщений За 300 Сообщений
привет!
интересный урок получился. но есть косячек. почему забитые гвозди на последнем скрине видны? а извлеченных нет... хотя судя по скрипту все нормально должно быть.


Мой блог: http://pro100-blog.ru/

На изломе неба
Был рожден наш мир.
Создавая землю, Первый,
Врядли ведал что творил...
 
MolierДата: Суббота, 03.12.2011, 16:48 | Сообщение # 3
Группа: Администраторы
Сообщений: 332
Награды: 2
Репутация: 15
Статус: Offline
Награды
За создание сайта За хорошую репутацию +10 За 100 Сообщений За 200 Сообщений За 300 Сообщений
Quote (AmneziA)
но есть косячек. почему забитые гвозди на последнем скрине видны? а извлеченных нет... хотя судя по скрипту все нормально должно быть.


Нет это просто показано как разместить книгу, просто убрал крышку и все
Quote

Осталось положить книгу в ящик, в PhotoShop подгоняем книгу под нашу сцену и размещаем в ящике и делаем невидимой


Не ошибается лишь тот, кто не чего не делает.
 
AmneziAДата: Суббота, 03.12.2011, 19:12 | Сообщение # 4
Группа: Модераторы
Сообщений: 355
Награды: 3
Репутация: 15
Статус: Offline
Награды
За хорошую репутацию +10 За 100 Сообщений За 200 Сообщений За 300 Сообщений
ааа, вот оно что.. понятно

Мой блог: http://pro100-blog.ru/

На изломе неба
Был рожден наш мир.
Создавая землю, Первый,
Врядли ведал что творил...
 
Форум » Wintermute Engine » Уроки по Wintermete Engine » Урок "Заколоченный ящик"
Страница 1 из 11
Поиск:

Copyright MyCorp © 2017
!!! На сайте могут находиться статьи, которые, честно и не помню, откуда они у меня появились, одним словом нет информации о первоисточнике и авторе, если на них наткнётся автор, просьба к нему написать мне, чтобы я смог поставить ссылку на источник. !!!