Как сделать, чтобы объект использовал случайный спрайт из сп
Ho_Sung_Pak Дата: Воскресенье, 12 Августа 2012, 02:31 | Сообщение # 1
желтый человек
Сейчас нет на сайте
Подскажите, как можно сделать объект, спрайт которого случаен. Т.е. Загрузился уровень - спрайт 1. Загрузился этот уровень в другой раз - спрайт 2 и т.д. Например, чтобы я указал 3 спрайта, а на объект бы натягивался один из них в случайном порядке при загрузке комнаты.
Киносайт
elis1112 Дата: Воскресенье, 12 Августа 2012, 02:42 | Сообщение # 2
Igni et ferro
Сейчас нет на сайте
перечитай справку там есть раздел посвященный рандому
Сообщение отредактировал elis1112 - Воскресенье, 12 Августа 2012, 02:44
buftler Дата: Воскресенье, 12 Августа 2012, 02:43 | Сообщение # 3
Добряк
Сейчас нет на сайте
elis1112 ,то же правда sprite_index=random_range(s_sprite1,s_sprite2)
Сообщение отредактировал buftler - Воскресенье, 12 Августа 2012, 02:45
Ho_Sung_Pak Дата: Воскресенье, 12 Августа 2012, 03:26 | Сообщение # 4
желтый человек
Сейчас нет на сайте
buftler , Спасибо за скрипт!
Киносайт
Raven84 Дата: Воскресенье, 12 Августа 2012, 14:33 | Сообщение # 5
старожил
Сейчас нет на сайте
Ho_Sung_Pak ,Вот способ подлиннее :-) в Create объекта пишешь: s=round(random(kol)) - где вместо kol указываешь кол-во спрайтов if s=0 {sprite_index=sprite0} if s=1 {sprite_index=sprite1} ... if s=kol {sprite_index=sprite10} Ну вот как-то так! Но способ buftler , явно лучше...
Super Knight Story (в разработке) Idolzzz - игра доступна в Steam и Play Market Oliver's Adventures in the Fairyland
GameMix Дата: Воскресенье, 12 Августа 2012, 16:52 | Сообщение # 6
старожил
Сейчас нет на сайте
Quote (buftler )
sprite_index=random_range(s_sprite1,s_sprite2)
buftler , объясни сейчас подробнее, что эта строка делает. И поймешь свою ошибку. Raven84 , способ buftler 'а не лучше, а вот что он не правильный - это да. Если спрайтов не более 16, то можно так:Code
sprite_index = choose(sprite0, sprite1, sprite2)
Вот, вариант, как будет проще с выбором из трёх спрайтов. Если спрайтов больше 16, то массив поможет:Code
Spr[0] = sprite1 ... Spr[20] = sprite20
А потом:Code
sprite_index = irandom(20); // 20 - кол-во спрайтов на выбор
Steel Standoff - 2D аркада. Мои статьи
Ретсамолф Дата: Воскресенье, 12 Августа 2012, 17:10 | Сообщение # 7
постоянный участник
Сейчас нет на сайте
Quote (GameMix )
Если спрайтов больше 16, то массив поможет:
А если спрайтов больше 32000?
GameMix Дата: Воскресенье, 12 Августа 2012, 17:15 | Сообщение # 8
старожил
Сейчас нет на сайте
Ретсамолф , списки никто не отменял
Steel Standoff - 2D аркада. Мои статьи
Ретсамолф Дата: Воскресенье, 12 Августа 2012, 17:16 | Сообщение # 9
постоянный участник
Сейчас нет на сайте
Quote (GameMix )
Ретсамолф, списки никто не отменял
Но ты же ему не объяснил, что такое списки. Вдруг у него тыщ сорок спрайтов?
GameMix Дата: Воскресенье, 12 Августа 2012, 17:23 | Сообщение # 10
старожил
Сейчас нет на сайте
Ретсамолф , я и не обязан. Им посвящена целая страница в справке.
Steel Standoff - 2D аркада. Мои статьи
Ретсамолф Дата: Воскресенье, 12 Августа 2012, 17:24 | Сообщение # 11
постоянный участник
Сейчас нет на сайте
Quote (GameMix )
Ретсамолф, я и не обязан. Им посвящена целая страница в справке.
Какой ты злой, оказывается.
GameMix Дата: Воскресенье, 12 Августа 2012, 17:34 | Сообщение # 12
старожил
Сейчас нет на сайте
Quote (Ретсамолф )
Вдруг у него тыщ сорок спрайтов?
Я уверен, что Ho_Sung_Pak и до 20000 спрайтов не дойдет. Думаешь иначе - тогда иди к ТС в ЛС.
Steel Standoff - 2D аркада. Мои статьи
Ретсамолф Дата: Воскресенье, 12 Августа 2012, 17:36 | Сообщение # 13
постоянный участник
Сейчас нет на сайте
Quote (GameMix )
Я уверен, что Ho_Sung_Pak и до 20000 спрайтов не дойдет.
Я был уверен, что он не дойдет и до двухсот, но тебе виднее.
GameMix Дата: Воскресенье, 12 Августа 2012, 17:50 | Сообщение # 14
старожил
Сейчас нет на сайте
Quote (Ретсамолф )
Я был уверен, что он не дойдет и до двухсот, но тебе виднее.
Ну тогда успокойся, и не говори, что я ничего не сказал на случай, если будет больше 32000
Steel Standoff - 2D аркада. Мои статьи
Ретсамолф Дата: Воскресенье, 12 Августа 2012, 17:53 | Сообщение # 15
постоянный участник
Сейчас нет на сайте
Quote (GameMix )
Ну тогда успокойся, и не говори, что я ничего не сказал на случай, если будет больше 32000
Да что ж ты так легко ведешься-то?
buftler Дата: Воскресенье, 12 Августа 2012, 17:59 | Сообщение # 16
Добряк
Сейчас нет на сайте
GameMix , да записал не правильно все таки 2 часа ночи было ошибся но он работает) но choOse конечно лучше /* Не буду из за тебя пост набивать и тебе давать еще один пустой пост набить Quote (Ретсамолф )
Choose, машувать
у меня оно ассоциируется ближе к выбрал, по этому и написал выбрал а не выбирать */
Сообщение отредактировал buftler - Воскресенье, 12 Августа 2012, 18:16
Ретсамолф Дата: Воскресенье, 12 Августа 2012, 18:02 | Сообщение # 17
постоянный участник
Сейчас нет на сайте
Quote (buftler )
но chose конечно лучше
Choose, машувать
GameMix Дата: Воскресенье, 12 Августа 2012, 18:35 | Сообщение # 18
старожил
Сейчас нет на сайте
Quote (buftler )
но он работает)
Да, если создать эти самые 3 спрайта в новом проекте, то их индексы будут: 0, 1, 2. Хотя тебе наверное повезло, что при random_range() получилось целое число. Потому, что целое число всегда будет возвращаться функцией i random_range().
Quote (Ретсамолф )
Да что ж ты так легко ведешься-то?
Если это был развод, то жди привет от модера за очередной троллинг.
Steel Standoff - 2D аркада. Мои статьи
Ретсамолф Дата: Воскресенье, 12 Августа 2012, 18:37 | Сообщение # 19
постоянный участник
Сейчас нет на сайте
Quote (GameMix )
Если это был развод, то жди привет от модера за очередной троллинг.
Я же тебя не развел на деньги или там на репутацию, просто безобидная шуточка. Что ж вы нервные такие. Мне пофиг, создам дабл-акк
Сообщение отредактировал Ретсамолф - Воскресенье, 12 Августа 2012, 18:37
buftler Дата: Воскресенье, 12 Августа 2012, 18:46 | Сообщение # 20
Добряк
Сейчас нет на сайте
GameMix , я знаю что повезло сказал что ошибся но у меня да же ошибки работают