просто игра без этого как-то... сыро смотрится... ну у меня мысли есть какие-то, связанные с глобальными переменными, то есть на втором моём рисунке при щелчке на области перехода положение перса должно сохранятся (допустим в переменные x и y), а при переходе обратно будет
actor.SkipTo(x, y)
только как узнать текущие координаты персонажа? или вообще всё по-другому надо? помогите пожалуйста
И это лучшее не свете колдовство, Ликует солнце на лезвии гребня, И это все, и больше нету ничего - Есть только небо, вечное небо.
возможно в твоих рассуждениях что то есть. у меня сейчас нет возможность поэксперементировать, так что тяжело что-либо сказать.
есть такая мысль. делишь край сцены за который должен перейти актер на части:
__|__|__|__|__| - примерно так.
каждую зону назовешь по-своему или пронумеруешь. игрок не поймет. что там зоны. для него это будет выглядеть как сплошная область перехода. а у тебя хоть какая-то привязка. что бы вернуть перса на место. что бы не мудрить с кодом можно вобще несколько одинаковых сцен с морем сделать.
мысль понятна? если нет - могу подробнее
Мой канал о моделизме: https://goo.gl/LgXUK9
На изломе неба Был рожден наш мир. Создавая землю, Первый, Врядли ведал что творил...
Ваша мысль мне понятна, но Вы опять меня не совсем поняли) Персонаж не будет подходить к краю сцены вообще, он может находиться в любой точке пространства - не моя прихоть, Заказчик просто упёрся. По нажатии на край произойдёт смена сцены тут же. Ладно, щас буду копать мануал, может есть функция, возвращающая текущее положение перса...
Добавлено (16.08.2010, 01:17) --------------------------------------------- да, такие функции действительно есть)) X и Y, как ни странно. Я слегка изменил скрипт, описывающий появление персонажа (правда не знаю в какую сторону изменил):
global Xpos=51; global Ypos=822; global Rpos=DI_DOWNRIGHT;
actor.SkipTo(Xpos, Ypos);
switch (Rpos) { case DI_DOWN: actor.Direction = DI_DOWN; break; case DI_DOWNRIGHT: actor.Direction = DI_DOWNRIGHT; break; case DI_DOWNLEFT: actor.Direction = DI_DOWNLEFT; break; case DI_RIGHT: actor.Direction = DI_RIGHT; break; case DI_LEFT: actor.Direction = DI_LEFT; break; case DI_UP: actor.Direction = DI_UP; break; case DI_UPRIGHT: actor.Direction = DI_UPRIGHT; break; case DI_UPLEFT: actor.Direction = DI_UPLEFT; break; }
Теперь за всё отвечают глобальные переменные Xpos, Ypos, Rpos. Теперь вопрос: как сделать так, что бы эти переменные изменялись при щелчке на области перехода? Теоретически надо прописать в скрипте области перехода: Xpos=Actor.X; Ypos=Actor.Y; Rpos=Actor.Direction; Однако, в скрипте эти переменные не определяются, видимо не достаточно глобальные они Может файл текстовый создать и туда их записывать?
Добавлено (24.08.2010, 02:53) --------------------------------------------- Ура, товарищи, получилось!!! Значит так, у меня есть сцена, наывается bereg, в ней 2 скрипта: scene_init.script (понятно что) и Down.script (облать перехода)