Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 02.07.2015, 01:30
codeofcoder вне форума Посмотреть профиль Отправить личное сообщение для codeofcoder Найти все сообщения от codeofcoder
  № 1  
Ответить с цитированием
codeofcoder

Регистрация: Feb 2015
Сообщений: 6
По умолчанию Как передвигать ящики с помощью персонажа (не мышки)?

Доброго времени суток. Я новичок в данном ЯП, делаю игру и всё такое... пожалуйста, как можно доступнее для новичка подскажите:
Как передвигать ящики с помощью персонажа (не мышки)? Что для этого нужно использовать?
Как только вопрос будет решён, я спрошу ещё несколько вопросов. Заранее всем спасибо, кто откликнется новичку.

Старый 02.07.2015, 01:49
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 2  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
На будущее:
1. Название темы должно раскрывать суть вопроса.
2. Один вопрос = одна тема.

Старый 02.07.2015, 09:19
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 3  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Варианты разные, смотря какой жанр игры: вид сбоку, сверху.
И как вы хотите их двигать: автоматически при перемещении персонажа, или сначала нужно подойти к ящику, нажать что-то и персонаж берёт в руки ящик и толкает.

Старый 02.07.2015, 09:29
codeofcoder вне форума Посмотреть профиль Отправить личное сообщение для codeofcoder Найти все сообщения от codeofcoder
  № 4  
Ответить с цитированием
codeofcoder

Регистрация: Feb 2015
Сообщений: 6
Я думал, никто уже и не ответит...)
Персонаж просто подходит к ящику и начинает двигать его.

Добавлено через 37 секунд
Забыл добавить: вид сбоку.

Старый 02.07.2015, 09:58
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 5  
Ответить с цитированием
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,922
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Приведите пример, как у вас управляется персонаж и как вообще физика организована и персонажа и ящика.
__________________
There is no thing in this world that is not simple.

Старый 02.07.2015, 10:11
codeofcoder вне форума Посмотреть профиль Отправить личное сообщение для codeofcoder Найти все сообщения от codeofcoder
  № 6  
Ответить с цитированием
codeofcoder

Регистрация: Feb 2015
Сообщений: 6
У меня самый обычный движок с персонажем, никаких box2d, управление стрелками, поверхность ровная, никаких неровностей.
меня интересует, как это делается с помощью кода, например.

Старый 02.07.2015, 12:10
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 7  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Для начала, Вам нужно научиться определять, столкнулся ли персонаж с ящиком. Это довольно просто, если для персонажа и для ящика Вам известны координаты и размеры. Дальнейший алгоритм мне представляется примерно таким:

Код:
если нажата стрелка
то
   если персонаж касается ящика
   то
      если ящик стоит с той стороны, в которую идет персонаж
      то
         двигаем ящик
      конец если
   конец если
   двигаем персонажа
конец если
Так как мы говорим о движении по горизонтальной поверхности, то искать пересечения нам нужно только по одной оси (по оси X). Попробуйте, если не получится пишите что не получается.
__________________
...вселенская грусть

Старый 02.07.2015, 12:12
codeofcoder вне форума Посмотреть профиль Отправить личное сообщение для codeofcoder Найти все сообщения от codeofcoder
  № 8  
Ответить с цитированием
codeofcoder

Регистрация: Feb 2015
Сообщений: 6
Спасибо, попробую сегодня, отпишусь)

Старый 02.07.2015, 12:19
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 9  
Ответить с цитированием
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,922
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Кому как удобнее, тот так и делает, в целом.
Тут каждый вам своё предложение напишет, как это сделать.

Например,
Код:
если (объект, который должен войти во взаимодействие с героем переходит границу героя)
то 
{
   отодвинуть к краю границы героя;
}
Казалось бы, всё просто, но нет, ведь герой может запрыгнуть на ящик, а он вместо этого отодвинется. Поэтому учитываем его положение по Y тоже.
__________________
There is no thing in this world that is not simple.


Последний раз редактировалось ZackMercury; 02.07.2015 в 12:29.
Старый 02.07.2015, 12:49
codeofcoder вне форума Посмотреть профиль Отправить личное сообщение для codeofcoder Найти все сообщения от codeofcoder
  № 10  
Ответить с цитированием
codeofcoder

Регистрация: Feb 2015
Сообщений: 6
Спасибо всем, кто ответил! Не ожидал, что так быстро ответите!
Я ещё над главным меню работаю, вопрос написал заранее за день, а то и два, чтобы как раз раскрыть суть проблемы, но оперативно ответили, спасибо ещё раз, я постараюсь сегодня всё сделать до этого момента и опишу и код, и что получилось. Надеюсь, сегодня не выключат, например свет, или Интернет. Боевые действия, как-никак...
Я не жалуюсь, просто написал, чтобы не подумали, что я не пунктуален, не хочу портить свою репутацию)

Создать новую тему Ответ Часовой пояс GMT +4, время: 08:31.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 08:31.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.