| Рандом | 
|  | 
| 
| Turugnite | Дата: Суббота, 04 Мая 2013, 17:38 | Сообщение # 1 |  |   почетный гость Сейчас нет на сайте | Просто нужно, что бы при создании объекта obj он приобретал случайный спрайт из спрайтов А и Б. 
 А так же, что бы будильник(забит на определенное количество шагов) создавал случайный объект из объектов А,Б и В, но шанс создания объекта А был больше, чем А и Б.
 
 CryMaker: Mourning's Son
 RhymeCaster
 Humanity[Gamiron №5]
 |  |  |  |  | 
| 
| Misha2011 | Дата: Суббота, 04 Мая 2013, 18:31 | Сообщение # 2 |  |   INDIE GAMES
 Сейчас нет на сайте | Незнаю я на сцирре делал так. Типо делал анимацию , там все эти картинки. А потом действие что - установить кадр анимации - random(X-Твое кол-во)Незнаю можно ли так в гм. 
 Мой проект для Gamiron #11
 |  |  |  |  | 
| 
| Cx4 | Дата: Суббота, 04 Мая 2013, 19:01 | Сообщение # 3 |  | почетный гость Сейчас нет на сайте | Ну со спрайтом очень легко: в создании sprite_index=choose(А,Б) С созданием делается также, только более вероятный объект нужно вписать несколько раз: instance_create(x,y,choose(А,А,Б,В)).
 
 
 Сообщение отредактировал Cx4 - Суббота, 04 Мая 2013, 19:04 |  |  |  |  | 
| 
| Durbek | Дата: Суббота, 04 Мая 2013, 21:32 | Сообщение # 4 |  |   Воин света Сейчас нет на сайте | Я плох в ГМ, но попытаюсь помочь :3 Create:
 var.sp = irandom(1)
 ;
 sprite_index = sp
 
 Как-то так, если не ошибся.
 
 
   |  |  |  |  | 
| 
| laggert | Дата: Суббота, 04 Мая 2013, 22:34 | Сообщение # 5 |  |   почетный гость Сейчас нет на сайте | Turugnite, создаем png файл с двумя кадрами. называем файл и в конце приписываем _strip2 (2- кол-во кадров в картинке). Создаем обьект (твердого знака на клаве нет). в create Код image_speed=0 sp=irandom(3)
 if sp=0{image_index=1}else{
 image_index=0
 }
в данном случае первый кадр картинки будет встречаться чаще, чем второй
 Добавлено (04.05.2013, 22:34)---------------------------------------------
 
 Цитата (durbek) sp = irandom(1)в данном случае будет выпадать только 0.
 
 
   Я здесь, чтобы распространять ЛАГИ!!!
 |  |  |  |  | 
| 
| LunarPixel | Дата: Суббота, 04 Мая 2013, 22:41 | Сообщение # 6 |  |   старожил Сейчас нет на сайте | Цитата (laggert) в данном случае будет выпадать только 0. Ничего подобного, 0 или 1 будет выпадать.
   
 
   |  |  |  |  | 
| 
| laggert | Дата: Суббота, 04 Мая 2013, 22:47 | Сообщение # 7 |  |   почетный гость Сейчас нет на сайте | Т.е. это может произойти только единицей? 
 
   Я здесь, чтобы распространять ЛАГИ!!!
 |  |  |  |  | 
| 
| LunarPixel | Дата: Суббота, 04 Мая 2013, 22:50 | Сообщение # 8 |  |   старожил Сейчас нет на сайте | laggert, в смысле?! Может выпасть или 0, или 1. irandom(x) - возвращает случайное целое число от 0 до x включительно.
 
 
   |  |  |  |  | 
| 
| laggert | Дата: Суббота, 04 Мая 2013, 23:03 | Сообщение # 9 |  |   почетный гость Сейчас нет на сайте | LunarPixel, да, точно! Не буду оправдываться, но ты прав. 
 
   Я здесь, чтобы распространять ЛАГИ!!!
 |  |  |  |  | 
| 
| Комиссар | Дата: Воскресенье, 05 Мая 2013, 17:08 | Сообщение # 10 |  |   заслуженный участник Сейчас нет на сайте | Раз уж тема называется "Рандом", спрошу здесь. Как задать рандомное проигрывание звуковых дорожек?
 Попробовал вот так, но они почему-то или не проигрываются, или проигрывается одна, но сбивается фоновая музыка.
 
 
 Код  if hp_fighter_enemy <= 0   //
 {
 instance_destroy()
 score += 1//
 
 sound_play(irandom(4))
 if irandom(1) sound_play(sc_destr_1);
 if irandom(2) sound_play(sc_destr_2);
 if irandom(3) sound_play(sc_destr_3);
 if irandom(4) sound_play(sc_destr_4);
 if irandom(0) sound_play(sc_destr_5);
 
 }
 
 
   |  |  |  |  | 
| 
| Cx4 | Дата: Воскресенье, 05 Мая 2013, 17:42 | Сообщение # 11 |  | почетный гость Сейчас нет на сайте | Комиссар, что-то ты странное, по-моему, написал (а именно проверки). Здесь лучше сделать через всё тот же choose(...). Или ввести отдельную переменную, типа snd=irandom(4), и проигрывать звук проверяя её. |  |  |  |  | 
| 
| pelmenka | Дата: Воскресенье, 05 Мая 2013, 18:50 | Сообщение # 12 |  |   Драгоценный Тунеядец Сейчас нет на сайте | Комиссар, я в гмл не силен (даже не учил его), но мне кажется что в проверке у тебя irandom просто вычисляет число, а не проверяет что вычилил. 
 Сталина в каждый дом!
 |  |  |  |  | 
| 
| Комиссар | Дата: Воскресенье, 05 Мая 2013, 19:15 | Сообщение # 13 |  |   заслуженный участник Сейчас нет на сайте | Cx4, так? 
 
 Код if hp_fighter_enemy <= 0   //  {
 instance_destroy()
 score += 1//
 
 sound_play(choose(sc_destr_1, sc_destr_2, sc_destr_3, sc_destr_4, sc_destr_5))
 }
 
   |  |  |  |  | 
| 
| Cx4 | Дата: Воскресенье, 05 Мая 2013, 19:27 | Сообщение # 14 |  | почетный гость Сейчас нет на сайте | Комиссар, да. |  |  |  |  | 
| 
| Durbek | Дата: Воскресенье, 05 Мая 2013, 19:33 | Сообщение # 15 |  |   Воин света Сейчас нет на сайте | Комиссар, не правильно использована функция irandom Добавлено (05.05.2013, 19:33)---------------------------------------------
 Теперь вроде правильно.)
 
 
   |  |  |  |  | 
| 
| Комиссар | Дата: Воскресенье, 05 Мая 2013, 19:37 | Сообщение # 16 |  |   заслуженный участник Сейчас нет на сайте | Cx4, спасибо.) Оказывается, у меня ещё и звуки слишком тихие, и музыка слишком громкая, и событие instanse_destroy() неправильно прописано.
   
 
   |  |  |  |  |