Четверг, 25 Апреля 2024, 15:20

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Форум игроделов » Записи участника » Dva_Kota [522]
Результаты поиска
Dva_KotaДата: Вторник, 21 Декабря 2010, 09:54 | Сообщение # 461 | Тема: Мои вопросы по game maker
заслуженный участник
Сейчас нет на сайте
Если пользоваться формулами
Code
x=x+lengthdir_x(15,direction-18);
y=y+lengthdir_y(15,direction-18);

Не важно где у тебя центр.


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Вторник, 21 Декабря 2010, 09:53 | Сообщение # 462 | Тема: Мои вопросы по моей игре
заслуженный участник
Сейчас нет на сайте
На сколько я знаю, таким способом больше трех нельзя.
Если ты имеешь ввиду под словом "красивый" красивый внешний вид, можно для диалогового окна и кнопок задать любую текстуру с помощью функций
message_background(back)

message_alpha(alpha)

message_button(spr)

Если нужно больше трех кнопок, можно сделать для каждой кнопки отдельный объект и еще один объект для самого окна.
Вот пример анимироаных кнопок. Тут только 2 кнопки и нет самого окна сообщение (сделано прямо в окне программы)к, но сделаны они отдельными объектами, та что можно легко по аналогии добавить сколько хочешь.

http://rghost.ru/3692453


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Понедельник, 20 Декабря 2010, 17:51 | Сообщение # 463 | Тема: Мои вопросы по моей игре
заслуженный участник
Сейчас нет на сайте
Вот код конкретно для твоего случая:
Code
switch show_message_ext("Вопрос?","Да!","Нет","")
{
case 0: Действие_если_нажата_клавиша_Esc; break;
case 1: room_goto(buy); break; //пользователь нажал "Да!"
case 2: room_restart(); break; //пользователь нажал "Нет"
}

В строку case 0: Действие_если_нажата_клавиша_Esc; break; тоже советую что-то написать, иначе, если будет нажата клавиша Esc окно закроется и ничего не произойдет. Можешь написать туда то же что и при нажатии "да" или при нажатии "нет"


Новый пример инвентаря! /20.06.2012/

Energy Wars


Сообщение отредактировал Dva_Kota - Понедельник, 20 Декабря 2010, 17:52
Dva_KotaДата: Понедельник, 20 Декабря 2010, 17:15 | Сообщение # 464 | Тема: Автомат-Нужно, чтобы пули вылетали каждые две секунды
заслуженный участник
Сейчас нет на сайте
2.

Code
if (abs((point_direction(x,y,игрок.x,игрок.y)-direction))<30)
       {
       //стрелять
       }

При стрельбе советую разворачивать врага к игроку, чтобы он точнее стрелял. Или стрелять не в направлении direction, а в направлении point_direction(x,y,игрок.x,игрок.y).
Хотя, если не разворачивать, он будет стрелять "косо" и возможно такой вариант тоже пригодится.


Новый пример инвентаря! /20.06.2012/

Energy Wars


Сообщение отредактировал Dva_Kota - Понедельник, 20 Декабря 2010, 17:19
Dva_KotaДата: Понедельник, 20 Декабря 2010, 17:08 | Сообщение # 465 | Тема: мои вопросы по game maker 8
заслуженный участник
Сейчас нет на сайте
Ну так бы и сказал. Чем точнее сформулирован вопрос - тем быстрее найдется ответ.
Тебе нужно почти как здесь, только наоборот. http://gcup.ru/forum/36-11695-1

Код для передвижения влево/вправо (для платформера)

Code
if (keyboard_check(vk_right))
     {
     if (place_meeting(x+3,y-3,obj_ступенька))
          {
          y -= 3;
          }
     x += 3;
     }
else
     {
     if (keyboard_check(vk_left))
         {
         if (place_meeting(x-3,y-3,obj_ступенька))
             {
             y -= 3;
             }
         x -= 3;
         }
     }

Числа ставь какие тебе нужно. Здесь перемещение на 3 каждый шаг. каждая ступенька - отдельный объект с размерами 3х3.

p.s.: я этот код еще не проверял, возможно что-то будет не так работать.


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Понедельник, 20 Декабря 2010, 16:29 | Сообщение # 466 | Тема: GM:Противник: отражение спрайта в сторону игрока+стрельба
заслуженный участник
Сейчас нет на сайте
Ну тогда давай исходник или пример, попробую переделать.

Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Понедельник, 20 Декабря 2010, 16:23 | Сообщение # 467 | Тема: GM:Противник: отражение спрайта в сторону игрока+стрельба
заслуженный участник
Сейчас нет на сайте
DNK, Давай с твоей стрельбой разбираться. Напиши код, или, еще лучше, скинь пример.

Новый пример инвентаря! /20.06.2012/

Energy Wars


Сообщение отредактировал Dva_Kota - Понедельник, 20 Декабря 2010, 16:23
Dva_KotaДата: Понедельник, 20 Декабря 2010, 16:20 | Сообщение # 468 | Тема: Мои вопросы по game maker
заслуженный участник
Сейчас нет на сайте
Да, это сложнее... Но код остается таким же (лучше второй вариант). smile
Просто делаешь для каждого направления свою привязку.


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Понедельник, 20 Декабря 2010, 16:18 | Сообщение # 469 | Тема: GM:Противник: отражение спрайта в сторону игрока+стрельба
заслуженный участник
Сейчас нет на сайте
Ну "создание пули" это и есть код стрельбы. smile
TDS - вид сверху, Платформер - вид сбоку.


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Понедельник, 20 Декабря 2010, 16:13 | Сообщение # 470 | Тема: GM:Противник: отражение спрайта в сторону игрока+стрельба
заслуженный участник
Сейчас нет на сайте
Я думаю это не из-за того что ты не правильно подобрал аларм, а из-за ошибки в коде стрельбы. Покажи код.

p.s.: Жанр шутер мало о чем говорит. Шутер может быть и платформер, и TDS, и изометрия, и 3D.


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Понедельник, 20 Декабря 2010, 16:10 | Сообщение # 471 | Тема: Мои вопросы по game maker
заслуженный участник
Сейчас нет на сайте
У тебя два объекта "мечь" и "игрок" и тебе нужно их привязать? Если да, то в событии End Step у меча пиши код:
Code

x=igrok.x;
y=igrok.y;

Но тогда центры объектов будут в одной точке.

Чтобы они были в разных точках (обычно так и нужно) используй примерно такой код:

Code
x=x+lengthdir_x(15,direction-18);
y=y+lengthdir_y(15,direction-18);

Числа подбираются вручную, но есть специальная прога для подбора этих чисел:
http://forum.hellroom.ru/index.php/topic,2416.0.html (в конце этой темы)


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Понедельник, 20 Декабря 2010, 16:01 | Сообщение # 472 | Тема: GM:Противник: отражение спрайта в сторону игрока+стрельба
заслуженный участник
Сейчас нет на сайте
1.
Code
if (x>игрок.x)
         {
         image_xscale=-1;
         }
else
         {
         image_xscale=1;
         }

А вообще лучше делать все спрайты повернутыми вправо - чтобы начальное положение соответствовало углу 0 градусов

3. В alarm ты задаешь количество шагов. Количество шагов в одной секунде = скорость комнаты. чтобы узнать на сколько поставить alarm тебе нужно скорость комнаты умножить на количество секунд.
Скорее всего у тебя скорость комнаты 30. Тогде тебе нужно 30*3=90. Ставишь alarm на 90.

p.s.: ты бы хоть написал какой жанр игры. Я тебе код написал для платформера.


Новый пример инвентаря! /20.06.2012/

Energy Wars


Сообщение отредактировал Dva_Kota - Понедельник, 20 Декабря 2010, 16:03
Dva_KotaДата: Понедельник, 20 Декабря 2010, 15:50 | Сообщение # 473 | Тема: Автомат-Нужно, чтобы пули вылетали каждые две секунды
заслуженный участник
Сейчас нет на сайте

Кстати, в проверке "if" вместо shoot==true можно просто писать shoot. В конструкции if () {} действия в фигурных скобках "{}" будут выполняться если выражение в круглых скобках "()" будет равняться true. Здесь нужно чтобы действия выполнялось когда shoot==true, по этому если будет написано просто shoot то действие выполнится только когда shoot==true.
Немного запутанно объяснил, но надеюсь суть ясна.


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Понедельник, 20 Декабря 2010, 15:44 | Сообщение # 474 | Тема: Проблема с объектами
заслуженный участник
Сейчас нет на сайте
IroNN, ну ведь у твоих объектов есть спрайты. smile
AGENTX001 предлагает отображать спрайт не стандартным способом, а прописать рисование спрайта в Draw. Можешь попробовать так, но думаю что не поможет.

Если ты создаешь объекты в степе, тогда так оно у тебя и будет отображаться. Не нужно их в степе создавать!


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Понедельник, 20 Декабря 2010, 15:38 | Сообщение # 475 | Тема: Мои вопросы по моей игре
заслуженный участник
Сейчас нет на сайте
show_message(str) показывает просто сообщение. Чтобы было диалоговое окно с несколькими кнопками используй функцию show_message_ext(str,but1,but2,but3)

Потом задавай действие в зависимости от нажатой кнопки. Вот пример кода:

Code
switch show_message_ext("Вопрос?","Да!","Нет","Не знаю")
{
case 0: Действие_если_нажата_клавиша_Esc; break;
case 1: Действие_если_первая_кнопка; break; //пользователь нажал "Да!"
case 2: Действие_если_втрая_кнопка; break; //пользователь нажал "Нет"
case 3: Действие_если_третья_кнопка; break; //пользователь нажал "Не знаю"
}


Новый пример инвентаря! /20.06.2012/

Energy Wars


Сообщение отредактировал Dva_Kota - Понедельник, 20 Декабря 2010, 15:39
Dva_KotaДата: Понедельник, 20 Декабря 2010, 09:25 | Сообщение # 476 | Тема: Код и трюки с ним
заслуженный участник
Сейчас нет на сайте
== - сравнение ( = - присвоение)
! - отрицание (!= - не равно; если у тебя стоит !переменная и переменная, например, = true - значение переменной будит читаться как false)
&& - и. Например if (a=2 && b=3){} означает "если a=2 и b=3 выполнять...", то есть действие будет выполнено при соблюдении обоих условий.

Quote (ilgamer)
{
if (collision_line(x,y,o_hero.x,o_hero.y,o_wall,true,true)<1)
{

Первый аргумент true указывает, должна ли проверка быть точной или только базироваться на ограничивающем прямоугольнике экземпляра объекта (true -точная проверка false - не точная).
Второй аргумент true указывает должен ли проверяться элемент, в котором вызвана функция (true - не должен проверяться, false - должен проверяться).

p.s.: все это есть в справке happy


Новый пример инвентаря! /20.06.2012/

Energy Wars


Сообщение отредактировал Dva_Kota - Понедельник, 20 Декабря 2010, 09:26
Dva_KotaДата: Воскресенье, 19 Декабря 2010, 19:14 | Сообщение # 477 | Тема: Мои вопросы по моей игре
заслуженный участник
Сейчас нет на сайте
Quote (Из справки)
show_message(str) Показывает диалоговое окно со строкой сообщения.

p.s.: надпись бери в кавычки и не забудь добавить русский шрифт.


Новый пример инвентаря! /20.06.2012/

Energy Wars


Сообщение отредактировал Dva_Kota - Воскресенье, 19 Декабря 2010, 19:17
Dva_KotaДата: Воскресенье, 19 Декабря 2010, 18:46 | Сообщение # 478 | Тема: Проблема с объектами
заслуженный участник
Сейчас нет на сайте
Если действительно все как Lgunchik написал, не создавай объекты в шаге. smile
Вообще трудно разобраться что у тебя не так не видя примера...


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Воскресенье, 19 Декабря 2010, 17:47 | Сообщение # 479 | Тема: мои вопросы по game maker 8
заслуженный участник
Сейчас нет на сайте
Вот в этом примере есть движение по лестницам:
http://game-maker.ru/infusions/pro_download_panel/download.php?did=587

Посмотри еще это обучение по созданию 2D платформера (не помню, есть ли тут про лестницы):
http://game-maker.ru/infusions/pro_download_panel/download.php?did=1208


Новый пример инвентаря! /20.06.2012/

Energy Wars
Dva_KotaДата: Воскресенье, 19 Декабря 2010, 17:32 | Сообщение # 480 | Тема: Мои вопросы по моей игре
заслуженный участник
Сейчас нет на сайте
В свойствах эффекта вместо below objects поставь above objects.

Новый пример инвентаря! /20.06.2012/

Energy Wars
Форум игроделов » Записи участника » Dva_Kota [522]
Поиск:

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