Случайный спрайт
| |
Krosos | Дата: Среда, 07 Августа 2013, 00:19 | Сообщение # 1 |
постоянный участник
Сейчас нет на сайте
| А общем , я хочу сделать лес с разными деревьями в нем при помощи одного объекта. Проблема в том , что деревья все разные , но можно сделать случайный спрайт , но тогда при каждом начале игры , этот спрайт будет случайным , а нужно чтобы всегда был один и тот же.(Чтобы лес создался случайным , но остался одним и тем же всегда) Как это сделать? (Надеюсь поймете) И нужно , чтобы все применили свой спрайт мгновенно , в самом начале.
Мой проект
Сообщение отредактировал Krosos - Среда, 07 Августа 2013, 00:22 |
|
| |
zaicev9797 | Дата: Среда, 07 Августа 2013, 00:41 | Сообщение # 2 |
AbRaKaDaBrA
Сейчас нет на сайте
| Записывай номера спрайтов деревьев при первом запуске в реестр, а потом из него значения для каждого дерева бери. Также и булевую переменную в реестре хранить для того чтобы знать, первый это запуск или нет. Правда вот конкретно по реестру ничего сказать не могу, т.к. в своё время до него руки не дошли. Но если помог, то от +-ка не откажусь
проект Mysterious Space. The losted moment
|
|
| |
Krosos | Дата: Среда, 07 Августа 2013, 00:58 | Сообщение # 3 |
постоянный участник
Сейчас нет на сайте
| А нету ли простого способа , сделать это все единственным или двумя кодами? Можно сделать и упорядоченное рисование деревьев , я их все-равно раскидываю большими кучами. Главное , чтобы лес был* разнообразным. Можно сделать и 10 объектов , но тогда будет очень трудно - надо раскидывать лес на карту 10000*30000.
Мой проект
Сообщение отредактировал Krosos - Среда, 07 Августа 2013, 01:03 |
|
| |
FadeBaker | Дата: Среда, 07 Августа 2013, 01:12 | Сообщение # 4 |
JavaSE Game Developer
Сейчас нет на сайте
| Krosos, если нужно присвоить рандомный спрайт объекту, то ему в Create пропиши: Код sprite_index = choose(спрайт1, спрайт2 спрайт3, спрайт4, и т.д.); А, забыл упомянуть, что функция choose может принимать максимум 16 аргументов. Но, я думаю, тебе больше и не понадобится.
Уроки по GM Minecraft 2D на GM — Мои проекты — Blood Harvest [2D] — Original Blood Harvest [2D]: Remastered Edition Adventure Craft [2D] — Sandbox Space Shock [2D] — Scroll Shooter Intel® Core™ i5-3570K 3.40 GHz, 8 GB RAM, GeForce GTX 750 Ti, Monitor: LG 23EA63V-P.
Сообщение отредактировал Fade - Среда, 07 Августа 2013, 01:14 |
|
| |
KillerCompanyMe | Дата: Среда, 07 Августа 2013, 01:17 | Сообщение # 5 |
был не раз
Сейчас нет на сайте
| Цитата (Krosos) чтобы всегда был один и тот же.(Чтобы лес создался случайным , но остался одним и тем же всегда) Цитата (Fade) если нужно присвоить рандомный спрайт объекту, то ему в Create пропиши:
|
|
| |
Krosos | Дата: Среда, 07 Августа 2013, 01:37 | Сообщение # 6 |
постоянный участник
Сейчас нет на сайте
| Fade, я знаю , но каждый раз в начале игры лес будет разный , а нужно , чтобы он всегда оставался одним и тем же ,используя всего один объект создания леса.
Мой проект
Сообщение отредактировал Krosos - Среда, 07 Августа 2013, 02:03 |
|
| |
MrNesh | Дата: Среда, 07 Августа 2013, 01:41 | Сообщение # 7 |
Воин добра и света
Сейчас нет на сайте
| При перезагрузке уровня? Тогда сохраняй куда-то Много хочешь из коробки...ручками
|
|
| |
FadeBaker | Дата: Среда, 07 Августа 2013, 02:04 | Сообщение # 8 |
JavaSE Game Developer
Сейчас нет на сайте
| KillerCompanyMe, пускай научится вопросы нормально задавать, чтобы получать корректный ответ.
Уроки по GM Minecraft 2D на GM — Мои проекты — Blood Harvest [2D] — Original Blood Harvest [2D]: Remastered Edition Adventure Craft [2D] — Sandbox Space Shock [2D] — Scroll Shooter Intel® Core™ i5-3570K 3.40 GHz, 8 GB RAM, GeForce GTX 750 Ti, Monitor: LG 23EA63V-P.
|
|
| |
Krosos | Дата: Среда, 07 Августа 2013, 02:04 | Сообщение # 9 |
постоянный участник
Сейчас нет на сайте
| jiumx60rus, говорю же , можно сделать упорядоченно . Например , каждое 5 дерево , или чей ид содержит последнюю цифру 5, 4 или 3 и прочие ,но нужно , чтобы деревья изменились в самом начале уровня
Мой проект
Сообщение отредактировал Krosos - Среда, 07 Августа 2013, 02:24 |
|
| |
pelmenka | Дата: Среда, 07 Августа 2013, 02:34 | Сообщение # 10 |
Драгоценный Тунеядец
Сейчас нет на сайте
| Цитата (zaicev9797) Записывай номера спрайтов деревьев при первом запуске в реестр, а потом из него значения для каждого дерева бери. Также и булевую переменную в реестре хранить для того чтобы знать, первый это запуск или нет. Правда вот конкретно по реестру ничего сказать не могу, т.к. в своё время до него руки не дошли. Но если помог, то от +-ка не откажусь zaicev9797, ты это серьезно? Krosos, пиши значения в файл и потом просто считывай из него значения. Если файла нет, значит игра должна его создать - это и будет как 1-ый запуск
Сталина в каждый дом!
Сообщение отредактировал pelmenka - Среда, 07 Августа 2013, 02:34 |
|
| |
Krosos | Дата: Среда, 07 Августа 2013, 02:42 | Сообщение # 11 |
постоянный участник
Сейчас нет на сайте
| pelmenka, Сейчас попробую "умгновенить" эту запись:
global.tree=instance_find(object457,n) //Глобальное дерево(ид) равно инстансу под номером n n+=2 //прибавляем 2 к n with object457{ //Для объекта дерево if id=global.tree {spr=1}} //Если ид равен глобальному дереву , то его спрайт равен 1 (Ну осталось только добавить остальное)
Если не получится , то попробую через файл..
Мой проект
|
|
| |
KillerCompanyMe | Дата: Среда, 07 Августа 2013, 02:46 | Сообщение # 12 |
был не раз
Сейчас нет на сайте
| Цитата (Krosos) Сейчас попробую "умгновенить" эту запись:
global.tree=instance_find(object457,n) //Глобальное дерево(ид) равно инстансу под номером n n+=2 //прибавляем 2 к n with object457{ //Для объекта дерево if id=global.tree {spr=1}} //Если ид равен глобальному дереву , то его спрайт равен 1 (Ну осталось только добавить остальное)
Если не получится , то попробую через файл.. Теперь понятно кто пишет коды для исходников...
|
|
| |
Krosos | Дата: Среда, 07 Августа 2013, 02:46 | Сообщение # 13 |
постоянный участник
Сейчас нет на сайте
| for (n=0 ;n<object457.instance_count;n+=1){ global.tree=instance_find(object457,n) n+=2 with object457{ if id=global.tree {spr=2}}} Вот так кажется...
Мой проект
|
|
| |
KillerCompanyMe | Дата: Среда, 07 Августа 2013, 02:48 | Сообщение # 14 |
был не раз
Сейчас нет на сайте
| Цитата (Krosos) чтобы всегда был один и тот же.(Чтобы лес создался случайным , но остался одним и тем же всегда) Как это сделать? wacko (Надеюсь поймете) а может ты это оставишь ,как фичу?
|
|
| |
Krosos | Дата: Среда, 07 Августа 2013, 02:54 | Сообщение # 15 |
постоянный участник
Сейчас нет на сайте
| KillerCompanyMe, я планировал еще дальнейшие действия с лесом ,основываясь на подобном принципе.Например, удаление для создания дыр. Вообще хотелось бы , чтобы он сам себя создавал , а я лишь ставил бы зоны , где ему расти нельзя- что я и пытаюсь сделать.
Мой проект
|
|
| |
KillerCompanyMe | Дата: Среда, 07 Августа 2013, 03:07 | Сообщение # 16 |
был не раз
Сейчас нет на сайте
| Цитата (Krosos) KillerCompanyMe, я планировал еще дальнейшие действия с лесом ,основываясь на подобном принципе.Например, удаление для создания дыр. Вообще хотелось бы , чтобы он сам себя создавал , а я лишь ставил бы зоны , где ему расти нельзя- что я и пытаюсь сделать. ну создай объект ZONA и в настройках объекта сделай код создания зоны ,все легко ,типа for(x =0;x<50;x+1) { for..... и бла бла бла
Сообщение отредактировал KillerCompanyMe - Среда, 07 Августа 2013, 03:08 |
|
| |
Krosos | Дата: Среда, 07 Августа 2013, 03:15 | Сообщение # 17 |
постоянный участник
Сейчас нет на сайте
| KillerCompanyMe, да я уже сделал , то , что хотел , сейчас только доработаю это: Надо сделать так , чтобы лес был получился разнообразным , но создала его программа и разукрасила тоже ,и дыры в нем , а я сделаю только проходы и места ,где нужно сделать его редким.
Мой проект
Сообщение отредактировал Krosos - Среда, 07 Августа 2013, 03:16 |
|
| |
pelmenka | Дата: Среда, 07 Августа 2013, 04:42 | Сообщение # 18 |
Драгоценный Тунеядец
Сейчас нет на сайте
| Krosos, не парься и просто сделай через файл. Это же просто и удобно
Сталина в каждый дом!
|
|
| |
zaicev9797 | Дата: Среда, 07 Августа 2013, 09:53 | Сообщение # 19 |
AbRaKaDaBrA
Сейчас нет на сайте
| Это я и имел в виду. Разве это не реестром называется?
проект Mysterious Space. The losted moment
|
|
| |
|