MOLIER ART STUDIO
Среда, 13.12.2017, 23:49
Приветствую Вас Гость | RSS
 
Главная Два актера - ФорумРегистрацияВход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Форум » Wintermute Engine » Создание персонажей / Actors » Два актера
Два актера
KrosadДата: Воскресенье, 09.10.2011, 22:23 | Сообщение # 1
Группа: Проверенные
Сообщений: 55
Награды: 1
Репутация: 8
Статус: Offline
Награды
Как менять актера на другого при смене сцены?

www.anatestudio.com
 
FobosMasterДата: Среда, 12.10.2011, 12:54 | Сообщение # 2
Группа: Проверенные
Сообщений: 62
Награды: 1
Репутация: 9
Статус: Offline
Награды
Как вариант переделать само загрузку актера. т.е.:

создать 2 актера,(Actor1,Actor2);
переменной Actor присваивать нужного актера при тех или иных потребностях.

немного грубый пример:

Code
if (check == 1) Actor = Actor1; //если переменная check = 1, наш актер будет актером1
else Actor = Actor2; //иначе наш актер будет актером2


Модераторы в челябинске настолько суровы.. Нет, они вас не банят, они приходят к вам домой и раскалывают череп..
 
P1LL0TTДата: Среда, 19.10.2011, 09:23 | Сообщение # 3
Группа: Проверенные
Сообщений: 53
Награды: 3
Репутация: 8
Статус: Offline
Награды
Можно сделать проще. Один actor у нас есть по умолчанию всегда. Создаём второго, который нужен
Code
var Medved=Scene.LoadActor("actors/Medved/Medved.actor");

а чтобы переключить на него управление достаточно:
Code
Game.MainObject = Medved;

обратно:
Code
Game.MainObject = actor;


P.S. Я объявил актёра локально, т.е. на другой сцене, или при перезагрузке текущей, его уже не будет. Из-за этого могут выплыть нехорошие глюки, т.к. Game.MainObject == null. Нужно либо чётко следить за переключением Game.MainObject обратно на главного actor, либо объявлять второго персонажа глобально, а если перестаёт быть нужен -- выгружать.


И это лучшее не свете колдовство,
Ликует солнце на лезвии гребня,
И это все, и больше нету ничего -
Есть только небо, вечное небо.

БЛОГ МОЕЙ ИГРЫ: http://dragon-3.blogspot.com/


Сообщение отредактировал P1LL0TT - Среда, 19.10.2011, 09:24
 
KrosadДата: Среда, 19.10.2011, 21:17 | Сообщение # 4
Группа: Проверенные
Сообщений: 55
Награды: 1
Репутация: 8
Статус: Offline
Награды
спасибо уже разобрался.

2 P1LL0TT

еще надо Game.UnloadObject(actor); // выгрузить старого актера


www.anatestudio.com
 
kalumbДата: Пятница, 31.08.2012, 20:17 | Сообщение # 5
Группа: Пользователи
Сообщений: 29
Награды: 0
Репутация: 1
Статус: Offline
Награды
Скажите как загрузить второго актёра?
Я делал так:
В game прописывал
Code
actor2 = Game.LoadActor("actors\molly\molly.actor");

Но ничего не работает...

Добавлено (31.08.2012, 20:17)
---------------------------------------------
Всё, разобрался, нужно было в base прописать

Code
global actor2;
 
Форум » Wintermute Engine » Создание персонажей / Actors » Два актера
Страница 1 из 11
Поиск:

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