Понедельник, 11 Ноября 2024, 04:55

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Рандом
RomaN72Дата: Понедельник, 09 Сентября 2013, 14:37 | Сообщение # 1
частый гость
Сейчас нет на сайте
Например есть объект который должен спавниться в случайной координате-X (например X-случайность ,а Y-например равен одному). Эту координату должен определить рандом (но только в приделах комнаты).Итак рандом выбирает цифру и в той координате которая ровна цифре появляется объект.

error111Дата: Понедельник, 09 Сентября 2013, 14:48 | Сообщение # 2
заслуженный участник
Сейчас нет на сайте
Цитата (RomaN72)
Например есть объект который должен спавниться в случайной координате-X (например X-случайность ,а Y-например равен одному). Эту координату должен определить рандом (но только в приделах комнаты).Итак рандом выбирает цифру и в той координате которая ровна цифре появляется объект.


И?..


[Shmup/RPG] Fantasy Shmup!
IvanKorobkoДата: Понедельник, 09 Сентября 2013, 14:49 | Сообщение # 3
IK Studio
Сейчас нет на сайте
Поиск по форуму никто не отменял: Random

Nick_RimerДата: Понедельник, 09 Сентября 2013, 15:49 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
RomaN72, верно люди тебе говорят про поиск. Про этот несчастный рандом тут уже 100500 раз написали. Не поленюсь написать ещё раз.
Есть такая формула, которую давно уже тут на форуме я выводил и приводил: random(m-n+1)+n, где m – верхний предел случайности, n – нижний предел случайности.
Ты хочешь, чтобы объект появлялся в пределах комнаты. Например, твоя комната размером 640х480. Т.е., казалось бы, нужно случайную координату Х искать в пределах от 0 до 640. А вот нифига. Не забудь, что спрайт у тебя имеет какую-то ширину в пикселях, и вряд ли ты захочешь, чтобы после создания в случайном месте твой спрайт торчал наполовину за пределами экрана. Поэтому следует внести в наши пределы некоторые коррективы.
Если хотспот (главная точка объекта, относительно которой он позиционируется) находится по горизонтали в центре, то погрешность нужно ввести равную половине ширины спрайта (надеюсь, это понятно?) В других случаях – другие погрешности. По аналогии сам разберёшься.
Итак, экран 640x480. Спрайт размером 48х48 (половина, следовательно, 24). Вводим погрешность, и теперь создаём спрайт с координатой Х не от 0 до 640, а от 24 до 616 (верно? При такой координате Х спрайт при создании никогда не спрячется каким-нибудь куском за правой или левой частью экрана).
Теперь применим формулу. m = 616. n = 24.
random(616-24+1)+24 => random(593)+24

Вроде много текста, но, надеюсь, всё стало понятно. На будущее не пренебрегай поиском по форуму. Тут уже обсудили кучу вопросов. Тем более таких простых.


- Доброе утро, Агент Пи!
RomaN72Дата: Понедельник, 09 Сентября 2013, 18:42 | Сообщение # 5
частый гость
Сейчас нет на сайте
Про поиск : я искал на ничего абсолютно не нашел. А так спасибо большое.

  • Страница 1 из 1
  • 1
Поиск:

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