Среда, 27 Ноября 2024, 07:21

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Вопрос - Ответ (Game Maker)
useruserДата: Вторник, 05 Сентября 2017, 14:02 | Сообщение # 5941
был не раз
Сейчас нет на сайте
Цитата Yakutian_Boy ()

if (sprite_index=SprLeft)(sprite_index=mSprLeft)
{
//
if (sprite_index=SprRight)(sprite_index=mSprLeft)
{
//
if (sprite_index=SprRight)(sprite_index=mSprLeft)
{
//
if (sprite_index=SprUp)(sprite_index=mSprLeft)
{
//
if (sprite_index=SprDown)(sprite_index=mSprLeft)
{
//
}

Я новичек в ГМ, но знаю 2 языка и разбираюсь еще в нескольких )

Синтаксис условных операторов неверен, с точки зрения любого языка.
Скорее всего так
Код

if (sprite_index=SprRight) {sprite_index=mSprLeft}; //Может и без скобок т.к. 1 команда.


Но и логика неверна.
Вообще что то вроде этого
Код

if (sprite_index=SprLeft or sprite_index=SprRight or sprite_index=SprUp or sprite_index=SprDown) sprite_index=mSprLeft;


PS
Стыд и позор GML
Синтаксис отсутствует как понятие.
ChristopherДата: Вторник, 05 Сентября 2017, 18:35 | Сообщение # 5942
участник
Сейчас нет на сайте
Цитата useruser ()
Синтаксис отсутствует как понятие.



Доступно только для пользователей

Цитата useruser ()
Код
if (sprite_index=SprRight) {sprite_index=mSprLeft}; //Может и без скобок т.к. 1 команда.


Если придираться, то просто оформлено неверно.

В любых других языках(C#,JS) скобки будут обязательны, потому что есть оператор if




Но если по делу, то...
Цитата Yakutian_Boy ()

можете сказать где ошибка?


Ты не закрываешь скобки после их открытия, там, где нахоядтся комментарии, ниже должны быть закрывающие скобки оператора

Тот код должен выглядеть так:
Код

if (sprite_index=SprLeft)
{
    //
};
if (sprite_index=SprRight)
{
    //
};
if (sprite_index=SprUp)
{
    //
};
if (sprite_index=SprDown)
{
    //
};


Цитата NekoFox ()
Но чтобы он менялся один раз, до следующего прыжка, позволяя другим спрайтам меняться (при ходьбе, например)

Вводи дополнительную переменную, например, isJumping
dildo_bomberДата: Понедельник, 11 Сентября 2017, 16:56 | Сообщение # 5943
частый гость
Сейчас нет на сайте
Всем привет! У меня такая ситуация:
есть obj_bullet, у неё есть скорость 10.
есть obj_enemy, размером 7.
Получается, что при большой скорости, пуля перепрыгивает объект.

Есть ли возможность делать какую либо проверку для такого случая?
ASH2Дата: Вторник, 12 Сентября 2017, 11:13 | Сообщение # 5944
участник
Сейчас нет на сайте
dildo_bomber, ну, вариантов-то много. Можно промежуточную точку посмотреть, например, но чтобы с другими объектами такой фигни не было - я посоветовал бы проверять лучше через collision_line и, соответственно, текущее и предыдущее положение.

Карсон и Питееерс!!!
dildo_bomberДата: Вторник, 12 Сентября 2017, 14:14 | Сообщение # 5945
частый гость
Сейчас нет на сайте
ASH2, спасибо, collision_line это то, что мне и было нужно.
AlexProgerДата: Понедельник, 18 Сентября 2017, 14:17 | Сообщение # 5946
был не раз
Сейчас нет на сайте
Помогите, плиз!
1.Как добавить шрифт из спрайтов?
2.Как Сделать HUD с таймером?
3.Как сделать в движении персонажа задержку?
ASH2Дата: Среда, 20 Сентября 2017, 12:37 | Сообщение # 5947
участник
Сейчас нет на сайте
Цитата AlexProger ()
Помогите, плиз!
1.Как добавить шрифт из спрайтов?
2.Как Сделать HUD с таймером?
3.Как сделать в движении персонажа задержку?


1. Зачем? Создай свой шрифт на основании спрайтов и юзай.
2. draw_text(x,y,nTimer)
3.
Код
if keyboard_check(key)
{
n++
if (n>nZaderzhka)
{
*управление*
}
}
else
{
n=0
}


Карсон и Питееерс!!!

Сообщение отредактировал ASH2 - Среда, 20 Сентября 2017, 12:37
AlexProgerДата: Среда, 20 Сентября 2017, 15:16 | Сообщение # 5948
был не раз
Сейчас нет на сайте
THX
как сделать сам hud
чтобы с камерой двигался(которой у меня тоже нет)


Сообщение отредактировал AlexProger - Среда, 20 Сентября 2017, 15:28
SmirnuXДата: Среда, 20 Сентября 2017, 15:44 | Сообщение # 5949
был не раз
Сейчас нет на сайте
Как найти точку столкновения луча и объекта(учитывая, что объект неправильной формы и может быть повернут на любой угол, и луч также может быть повернут на любой угол)?
ASH2Дата: Среда, 20 Сентября 2017, 16:56 | Сообщение # 5950
участник
Сейчас нет на сайте
AlexProger, определяешь объект, отвечающий за отрисовку интерфейса. В нём будут храниться данные для отрисовка, а в событии draw будет соответственно вся отрисовка (тот же draw_text). Камера у тебя есть. Это Вид (View) в "комнате". Для того, чтобы не улетал за экран достаточно поменять x и y в функциях отрисовки (тот же draw_text) на относительные от вида координаты. Рекомендую почитать FAQ. В частности, там твой вопрос в пункте 3.2

Добавлено (20 сентября 2017, 16:56)
---------------------------------------------
SmirnuX, через collision_line. Через него ты осуществляешь проверку столкновения отрезка с объектом, дальше дело алгоритма. То есть, берёшь отрезок от начала луча и начинаешь его увеличивать через цикл. Как только есть столкновение - приехали. Кстати, рекомендую использовать 2 цикла для грубой и точной проверки (если сработала грубая). Так как проверкой коллизии с увеличением отрезка на 1 пиксель сильно загрузишь программу. И не забудь установить максимальную длину отрезка (чтобы до бесконечности не проверял)


Карсон и Питееерс!!!
AlexProgerДата: Понедельник, 16 Октября 2017, 11:42 | Сообщение # 5951
был не раз
Сейчас нет на сайте
как сделать чтобы при сборе объектов появлялось число и увеличивалось на 1
а при ударе чтобы обнулялось

Добавлено (16 октября 2017, 11:42)
---------------------------------------------
помогите пожалуйста

wastermanДата: Понедельник, 16 Октября 2017, 23:08 | Сообщение # 5952
частый гость
Сейчас нет на сайте
Как организовать мультитач? на device_mouse_x и прочие подобные ругается?

Рок форева!
Не графоМан!
Холодный космос.
xeobale2018Дата: Четверг, 02 Ноября 2017, 21:02 | Сообщение # 5953
частый гость
Сейчас нет на сайте
1)Создал объект o_enemy. В create прописал health. В collision у пули добавил отнимание хп у enemy. Всё работает, отлично. Вот только, если расставить несколько таких врагов, то жизнь отнимается у всех сразу. Также instance_destroy() уничтажает все экземляры объекта, "решил" проблему так:
Код
if(other != o_player){
other.health-=10;
with(other) if health <= 0 instance_destroy();
}
instance_destroy();

Этот код уничтожает только одного врага, но хп у всех все равно одинаковое
2)HealthBar у Игрока отображает жизнь enemy, хотя не является ни childrenom, ни parent'ом. Как такое можно пофиксить. Заранее благодарю всех, в справке просто не нашёл.


Сообщение отредактировал xeobale2018 - Четверг, 02 Ноября 2017, 21:03
ГлюкДата: Пятница, 03 Ноября 2017, 04:31 | Сообщение # 5954
Lampa Studio
Сейчас нет на сайте
xeobale2018, Как вариант в объекте пули.
create:

Код
target=0;


В условии, где происходит столкновение с врагов.

Код
if instance_exists(o_enemy) {
target=instance_nearest(x,y,o_enemy);
with(target) {
hp-=10;
                   }
}


Добавлено (03 ноября 2017, 04:31)
---------------------------------------------
и замени health, на любое другое название для переменной жизни у врагов. health - константа и она абсолютна. Всегда одна.



Мой проект Drunk West! (заморожен)
https://gcup.ru/forum/9-99264-1

Мой проект Block Destroyer ( В разработке )
https://gcup.ru/forum/9-102818-1#764778


Сообщение отредактировал Глюк - Пятница, 03 Ноября 2017, 04:32
SmirnuXДата: Пятница, 03 Ноября 2017, 10:49 | Сообщение # 5955
был не раз
Сейчас нет на сайте
Цитата Глюк ()
health - константа и она абсолютна.

health - не константа, ее значение может меняться.
vasilevsДата: Пятница, 03 Ноября 2017, 12:41 | Сообщение # 5956
был не раз
Сейчас нет на сайте
Как сделать так чтобы при нажатии кнопки мыши, летело сразу несколько снарядов к той точке куда ты нажал, при этом один снаряд летит прямо к этой точке, а другие под некоторым углом (как при стрельбе из дробовика).
ГлюкДата: Пятница, 03 Ноября 2017, 12:50 | Сообщение # 5957
Lampa Studio
Сейчас нет на сайте
SmirnuX, Я имел ввиду, что она одна на весь проект. Нельзя ее использовать, в разных местах. Значение будет меняться именно у этой переменной откуда бы она не вызывалась.


Мой проект Drunk West! (заморожен)
https://gcup.ru/forum/9-99264-1

Мой проект Block Destroyer ( В разработке )
https://gcup.ru/forum/9-102818-1#764778
SmirnuXДата: Пятница, 03 Ноября 2017, 13:16 | Сообщение # 5958
был не раз
Сейчас нет на сайте
Глюк, правильно, но константой это нельзя никак назвать.
MakcTHCДата: Понедельник, 27 Ноября 2017, 22:04 | Сообщение # 5959
был не раз
Сейчас нет на сайте
Такая проблема. Перешёл на GMS2. В нём шрифты с Anti-aliasing = off отображаются криво в отличии от GMS. Кто сталкивался с этим, как решали проблему? Вот шрифт - Tahoma, Antialiasing = off


Сообщение отредактировал MakcTHC - Понедельник, 27 Ноября 2017, 22:28
AnOmalyWolfДата: Пятница, 08 Декабря 2017, 18:38 | Сообщение # 5960
частый гость
Сейчас нет на сайте
Доброе время суток. Такой вопрос.
В старом GM8 была функция:
Код
show_menu_pos

Как теперь её вызвать в Game Maker Studio 2?
В синтаксисе её нет.
И как теперь использовать эффекты переходов из комнаты в комнату? (Затухание, слайд и т.д.)


Сообщение отредактировал AnOmalyWolf - Понедельник, 11 Декабря 2017, 11:30
Поиск:

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