Четверг, 09 Мая 2024, 04:31

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Scirra Construct » Как запреить спрайту покидать пределы приложения?
Как запреить спрайту покидать пределы приложения?
AndrewVersusДата: Понедельник, 29 Апреля 2013, 03:09 | Сообщение # 1
заслуженный участник
Сейчас нет на сайте
как запретить спрайту, подвешанному на курсор с помощью mouse behavoir, покидать пределы экрана?

Sunspire
Путин против Инопланетян
IzBePgДата: Понедельник, 29 Апреля 2013, 04:20 | Сообщение # 2
Сейчас нет на сайте
AndrewVersus, ну вот что-то типа такого Тык
AndrewVersusДата: Понедельник, 29 Апреля 2013, 04:29 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
IzBePg,
не работает!


Sunspire
Путин против Инопланетян
IzBePgДата: Понедельник, 29 Апреля 2013, 04:36 | Сообщение # 4
Сейчас нет на сайте
почему это не работает,у меня работает
У тебя игра во весь экран и у тебя большой уровень?

Добавлено (29.04.2013, 04:36)
---------------------------------------------
Тогда вот Тыц выставишь размеры своего уровня, я сделал только по координате X таким же способом можно по координате Y.

AndrewVersusДата: Понедельник, 29 Апреля 2013, 04:50 | Сообщение # 5
заслуженный участник
Сейчас нет на сайте
IzBePg,
в том то и дело что у меня игра в окне, если во весь экран за пределы экрана не выходит. еще момент- этот способ мне не очень подходит, мне нужно чтобы не жестко игрок либо на экране либо нет. я сейчас пробую сделать если игрок overlap спрайт, то координаты mouse становяться на краю экрана. может есть способы проще?


Sunspire
Путин против Инопланетян
IzBePgДата: Понедельник, 29 Апреля 2013, 04:57 | Сообщение # 6
Сейчас нет на сайте
AndrewVersus, несовсем понимаю
Цитата
мне нужно чтобы не жестко игрок либо на экране либо нет

Способы наверняка есть,надо думать
IvanKorobkoДата: Понедельник, 29 Апреля 2013, 08:00 | Сообщение # 7
IK Studio
Сейчас нет на сайте
Я пока увидел лишь один вариант(их наверняка больше, но этот для меня самый очевидный)

Создать TiledBackground (5x5 пикселей, чтоб не сильно грузило систему), растянуть по краям игровой области, сделать его прозрачным.

Затем ставить условие движения, мол если мыша в области экрана(в области ТайледБэка в нашем случае...), пусть мыша двигает объект, если нет, пусть объект остается на месте в ожидании мыши:

Добавлено (29.04.2013, 07:26)
---------------------------------------------
ам... с маус бехавиор такая вещь кстати не канает...
Можно выполнить ту же проверку на нахождение мыши в пределах тайл-бэка, но действие заменить на Activate|Deactivate MouseBehavior - активировать при нахождении мыши в этой области, деактивировать либо при инвертированном условии(зачеркнутое равно на условии), либо посредством Else...

Добавлено (29.04.2013, 07:30)
---------------------------------------------

Добавлено (29.04.2013, 07:32)
---------------------------------------------
Но при резком дерганье мышью бывает не успевает среагировать и спрайт все же улетает за пределы экрана... нужно еще подумать, интересно)

Добавлено (29.04.2013, 08:00)
---------------------------------------------
Нашел еще один вариант... добавить по краям видимой области бордюры с атрибутом Solid. добавить игроку атрибут Solid, добавить игроку управление 8-direction (плставив в начале Лэйаута ему Set ignoring Input, чтоб не реагировал на клавиатуру(от него нам нужно только столкновения с солид, т.к. с маус бехавиор простые столкновения солид-солид игнорируются почему то...))

Бордюры должны быть жирными снаружи(когда мыша таки уходит за предел бордюра, спрайт исчезает) + есть косяк с угловой телепортацией - если спрайт загнать в угол - он телепортируется за бордюр...

получается нечто вроде этого:

Пример


IzBePgДата: Понедельник, 29 Апреля 2013, 08:33 | Сообщение # 8
Сейчас нет на сайте
mef1sto, зачем же так утруждаться),мой способ проще и эффективнее,объект точно не уходит с экрана,даже при быстром отдёргивании мышки
Я только не понимаю,чем мой способ не подошёл?
IvanKorobkoДата: Понедельник, 29 Апреля 2013, 08:49 | Сообщение # 9
IK Studio
Сейчас нет на сайте
Цитата (IzBePg)
mef1sto, зачем же так утруждаться),мой способ проще и эффективнее,объект точно не уходит с экрана,даже при быстром отдёргивании мышки
Я только не понимаю,чем мой способ не подошёл?


RGhost не робит сегодня что-то - не смотрел, что за способ - можно другую ссылку?


IzBePgДата: Понедельник, 29 Апреля 2013, 08:53 | Сообщение # 10
Сейчас нет на сайте
Конечно можно,Я не жадный biggrin
Тыц
Я сделал только по координате X
IvanKorobkoДата: Понедельник, 29 Апреля 2013, 08:55 | Сообщение # 11
IK Studio
Сейчас нет на сайте
Да чтож за день то такой)

Цитата
Запрашиваемая веб-страница не может быть предоставлена.

В запрашиваемом объекте по адресу

http://www.sharemania.ru/0232738

обнаружена угроза:

объект заражен HEUR:Trojan.Script.Generic


И это при отключенном антивирусе... можно в архив?)


IzBePgДата: Понедельник, 29 Апреля 2013, 08:58 | Сообщение # 12
Сейчас нет на сайте
Да ёмаё)
Не верь он всё врёт!Нету у меня вирусов smile
Тыц
IvanKorobkoДата: Понедельник, 29 Апреля 2013, 09:01 | Сообщение # 13
IK Studio
Сейчас нет на сайте
Цитата (IzBePg)
Да ёмаё)
Не верь он всё врёт!Нету у меня вирусов
Тыц


Такая же фигня...

Цитата
Kaspersky
Endpoint Security 8 для Windows
ДОСТУП ЗАПРЕЩЕН
Запрашиваемая веб-страница не может быть предоставлена.

В запрашиваемом объекте по адресу

http://www.sharemania.ru/0198713

обнаружена угроза:

объект заражен HEUR:Trojan.Script.Generic
Сообщение создано: 11:00:31


как эту хрень отключить... dry он меня вообще на шароманию не пускает, даже на главную...




Сообщение отредактировал mef1sto - Понедельник, 29 Апреля 2013, 09:01
IzBePgДата: Понедельник, 29 Апреля 2013, 09:04 | Сообщение # 14
Сейчас нет на сайте
rghost неработает одни проблемы)
Тыц
Уже 4 файлообменник)
IvanKorobkoДата: Понедельник, 29 Апреля 2013, 09:48 | Сообщение # 15
IK Studio
Сейчас нет на сайте
хм... 100% вариант) А чем не подходит автору?

IzBePgДата: Понедельник, 29 Апреля 2013, 15:17 | Сообщение # 16
Сейчас нет на сайте
даже неведаем,чем такой вариант неподошёл.
AndrewVersusДата: Вторник, 30 Апреля 2013, 02:55 | Сообщение # 17
заслуженный участник
Сейчас нет на сайте
IzBePg,
mef1sto,
Спасибо! второй пример IzBePg, то что надо, ты его еще вчера скинул просто пятый час утра был я не увидел уже. Спасибо огромное!

Добавлено (30.04.2013, 02:55)
---------------------------------------------
Столкнулся с еще одной проблемой.
запрещаю спрайту игрока, подвешанного на mouse behavoir, выходить за экран:

получаю вот такой вот результат: (ссылка на видео ютуб)
http://www.youtube.com/watch?v=o7Ifpt8L3So&feature=youtu.be
однако пули то у меня на mouse behavoir не подвешаны

а создаются почему-то от курсора мышки. пожалуйста помогите решить этот вопрос!


Sunspire
Путин против Инопланетян


Сообщение отредактировал AndrewVersus - Вторник, 30 Апреля 2013, 02:56
IzBePgДата: Вторник, 30 Апреля 2013, 05:49 | Сообщение # 18
Сейчас нет на сайте
AndrewVersus, да не паникуй happy
Тебе просто нужно вписать половину размера спрайта,чтобы не выходил за границы.
Вот тебе пример:Паникёр)
Размер квадрата 50x50
Чтобы он не вышел прописываю:
Что меньше или равно 25,установить позицию квадрата X 25 и на другой стороне также, больше или равно 615,то установить позицию как X 615.

Добавлено (30.04.2013, 05:49)
---------------------------------------------
А лучше вообще сделай как у меня в примере,чтобы пули летели,а не как ты кривым каким-то образом(на всякий случай если с твоим способом не сработает)

AndrewVersusДата: Вторник, 30 Апреля 2013, 06:25 | Сообщение # 19
заслуженный участник
Сейчас нет на сайте
IzBePg,
наверное я неправильно сформулировал вопрос( я специально сделал чтобы половина спрайта игрока выходила за экран. меня не устраивает что при этом пули почему-то выходят за экран, следуя за курсором мыши, хотя создаются от Player.X, и mouse behavoir на них не стоит. сделал более наглядное видео
http://www.youtube.com/watch?v=R7HCpEjBUBk&feature=youtu.be
ограничил передвижение игрока от 200 до 500


Sunspire
Путин против Инопланетян
IvanKorobkoДата: Вторник, 30 Апреля 2013, 06:46 | Сообщение # 20
IK Studio
Сейчас нет на сайте
А если поменять system creayr object на player spawn object, не поменяется ситуация?

Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Scirra Construct » Как запреить спрайту покидать пределы приложения?
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг