Пятница, 22 Ноября 2024, 13:48

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
Nick_RimerДата: Четверг, 28 Марта 2013, 11:55 | Сообщение # 561 | Тема: Анимация
заслуженный участник
Сейчас нет на сайте
madsen, окай!
Microsoft Windows
ты же не говоришь, меня друг попросил установить ему майкрософт, или я тут себе новый майкрософт поставил, а он глючит. по телику тоже не говорят, новый майкрософт 8!
говоришь ведь виндовс, винда и т.п. я прав?
и сайт у них тоже http://microsoft.com
так что теперь, винду майкрософтом обзывать?
поэтому товарисч IzBePg верно глаголит,
Цитата
Scirra-Это компания производящая конструктор


- Доброе утро, Агент Пи!
Nick_RimerДата: Среда, 27 Марта 2013, 16:01 | Сообщение # 562 | Тема: Анимация
заслуженный участник
Сейчас нет на сайте
блин, первое - конструктор называется Construct Classic. Он не называется Scirra.
второе, с этим конструктором у меня вечно глюки, то куда-нибудь ткну - вылетит, то установится с другой программой какой-то пакет VCRedist - вообще не запускается, помогает лишь переустановка (последний раз такое произошло сегодня).. как-то раз даже исходник мне запорола sad
так что мой совет: чаще сохраняться, не пренебрегать включением в опциях автосейва (можно прям поставить каждую минуту), при обнаружении проблем, подобных этим, первым делом переустановить и проверить работоспособность. если проблема не ушла - проверить с другим исходником похожую ситуацию, если там не наблюдается таких явлений, значит где-то уже запоролся исходник, что печально, ибо навряд ли подлежит восстановлению sad


- Доброе утро, Агент Пи!
Nick_RimerДата: Среда, 27 Марта 2013, 00:38 | Сообщение # 563 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
kawaikoalex,

ТЕОРИЯ:

цикл в цикле, это вложенная конструкция, когда в теле одного цикла запущен другой цикл. Пусть количество итераций внешнего цикла - a, внутреннего - b. Внешний цикл отработает a раз, в то время как внутренний за это же время отработает a*b раз. наиболее часто используемым примером вложенных циклов является работа с двумерным массивом.
двумерный массив представляет собой матрицу размерностью m*n (m - количество строк, n - количество столбцов). двумерный массив можно себе образно представить как набор из нескольких одномерных (так же как и одномерный - двумерным всего с одной строкой).
одномерный массив заполняется значениями циклом, в котором последовательно проходят от 1-го до n-го элемента, заполняя его значением.
для двумерного массива нужно заполнить m таких "одномерных массивов", т.е. каждую из его строк нужно последовательно заполнить элементами.
таким образом создаётся цикл в цикле. первый, внешний цикл фактически работает на увеличение номера строки, а внутренний - пробегает по всем столбцам этой строки.

попытался объяснить своими словами. надеюсь, что хоть что-то понятно.
приведу небольшой пример ни на каком языке, просто логикой. заполнение двумерного массива.

Пример:
//внешний цикл 1
для переменной i от 1 до m выполнять следующие действия:
-----//запускается внутренний цикл 2
-----для переменной j от 1 до n выполнять следующие действия
----------//заполняется элемент со порядковым номером i,j
----------присвоить элементу (i,j) случайное значение
-----//конец цикла 2
//конец цикла 1

таким образом, что происходит. появляется две переменных i - содержит номер ТЕКУЩЕЙ заполняемой строки, j - содержит номер ТЕКУЩЕГО заполняемого столбца.
запускается цикл 1, i становится равно = 1 (т.е. начали с первой строки)
запускается цикл 2, j становится равно = 1 (т.е. начали с первого столбца)
присвоили элементу (1,1) какое-то число
внутри цикла 2 происходит увеличение переменной на 1, j становится равно = 2 (т.е. второй столбец, но i по-прежнему равно 1, т.к. ещё ни разу не завершился 1 цикл)
присвоили элементу (1,2) какое-то число
внутри цикла 2 происходит увеличение переменной на 1, j становится равно = 3 (т.е. третий столбец, но i по-прежнему равно 1)
присвоили элементу (1,3) какое-то число
и так далее, пока не заполним элемент (1,n)
только теперь завершится цикл 2, а так как в цикле 1 других действий нет, то и он завершится, i увеличится на 1, и снова запустится цикл 1, а внутри него - цикл 2, который начнёт всё то же самое, только i теперь равно 2.
начнём заполнять элементы (2,1), (2,2), (2,3) ... (2,n)
и так будет без конца. всё закончится, когда мы заполним элемент (m,n).
тогда внешний цикл запускаться уже не будет, а соответственно и вложенный в него внутренний.

вот. своими словами. вроде популярно разжевал просто по мелочам. если что-то не ясно, или требуется уточнение - пиши в Л.С.

Добавлено (26.03.2013, 23:34)
---------------------------------------------

ПРАКТИКА (применимо для СС):

я никогда не делал никакие массивы в СС, но там есть такой компонент - Array.
у него есть три свойства: Width (X), Height (Y), Depth (Z)
таким образом можно создать хоть трёхмерный массив (как ты понимаешь, при работе с трёхмерным массивом будет три координаты, значит дважды будет цикл в цикле, но, думаю, это тебе не надо, хотя, как знать..)

Соответственно ты выставляешь размерность по X, Y, Z. Если X>0, Y=1, Z=1 - это одномерный массив.
если X>0, Y>1, Z=1 - это двумерный массив.
если X>0, Y>1, Z>1 - это трёхмерный массив.
Массив 1*1*1 - тупо бессмысленный массив из одного элемента smile

У Array есть событие For each element (для каждого элемента), очевидно, что это событие делает всё то, что я выше написал, проходя по всем элементам, а там ты уже должен сделать, что это будет, запись ли данных, чтение ли данных, или ещё что-то..

Создание цикла на СС может быть сделано System -> FOR
указываешь Name - имя переменной, по которой происходит перебор, Start - начальное значение, End - конечное значение.
например, если ты захочешь заполнить массив с 5 по 9 элемент, можно написать цикл:
System -> For -- Name = "i", Start = 5, End = 9
далее создать на это событие действие, например,
Array -> Set value at X -- в первом поле ввести LoopIndex("i"), во втором - то значение, которое хочешь присвоить этим номерам массива, например, 7.
Таким образом, если мы создадим пустую сцену с такими условиями (мы не будем менять в Array значения по-умолчанию), мы будем иметь одномерный массив Array из 10 элементов, в котором все элементы будут = 0, кроме элементов с 5 по 9, которые будут равны 7.

Вот. Такое тебе практическое дополнение для СС по созданию массивов. За любыми вопросами прошу в Л.С. или уточнять прям тут далее по теме.
Это не важно, но если помогло, надеюсь на "+", а то я столько текста написал, разжевал всё, надеюсь, полезно и поможет happy

Добавлено (27.03.2013, 00:38)
---------------------------------------------
вот, как можно сделать заполнение массива двумя разными способами.
результат один и тот же, но второй способ нагляднее демонстрирует цикл в цикле (хотя в любом ЯП эта наглядность обычно гораздо выше, тут же пока разберёшься).
рекомендуется использовать первый способ, когда нужно заполнить полностью весь массив, и второй способ (за малыми изменениями), когда требуется заполнить лишь какую-то часть последовательности.
клац 1, клац 2

массив, как видно, заполняется случайными значениями от 1 до 100. при этом что в первом, что во втором случае сработает код для любой размерности двумерного массива.


- Доброе утро, Агент Пи!

Сообщение отредактировал Nick_Rimer - Вторник, 26 Марта 2013, 23:42
Nick_RimerДата: Вторник, 26 Марта 2013, 21:38 | Сообщение # 564 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
off_line, переживаю, что нет. рассчитай эти точки и настрой для каждого спрайта вручную в соответствующих полях при выборе инструмента hot spot. думаю, что не иначе..

- Доброе утро, Агент Пи!
Nick_RimerДата: Вторник, 26 Марта 2013, 16:27 | Сообщение # 565 | Тема: Construct classic - не открывается проект.
заслуженный участник
Сейчас нет на сайте
minuzz, за последние пару недель уже человека три обратились с этой "проблемой", т.к. я был одним из них и получил ответ, делюсь: идём сюда, вверху нажимаем кнопочку "Скачать удалённо", что приводит нас на другой сайт, где видно все три известных версии программы.
Ставь последнюю (идёт с номером r2), не ошибёшься.


- Доброе утро, Агент Пи!
Nick_RimerДата: Вторник, 26 Марта 2013, 15:14 | Сообщение # 566 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
petrodiesel, вот пример. переменная увеличивается на 1, когда мышка над объектом (это делается всего один раз, сколько ни вози мышь по объекту, но стоит тебе выйти за пределы объекта и войти в него снова, событие отработает ещё ровно один раз, и так далее). просто замени изменение переменной на проигрывание своего звука.

- Доброе утро, Агент Пи!
Nick_RimerДата: Вторник, 26 Марта 2013, 13:36 | Сообщение # 567 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
petrodiesel, у всяких функций типа System -> Next Layout/Prev Layout и т.п. есть такая штучка: Transition. По умолчанию стоит None.
Но если зайти заранее во вкладке projects -> Add transitions (добавить переход), то можно будет выбирать его.


- Доброе утро, Агент Пи!
Nick_RimerДата: Вторник, 26 Марта 2013, 11:14 | Сообщение # 568 | Тема: Создание текстового файла
заслуженный участник
Сейчас нет на сайте
allxumuk, остаётся верить, что человек понимает структуру INI-файла, дабы с ним правильно работать. гугл ему в помощь и семь футов под килем! smile

- Доброе утро, Агент Пи!
Nick_RimerДата: Понедельник, 25 Марта 2013, 13:56 | Сообщение # 569 | Тема: Плагин network
заслуженный участник
Сейчас нет на сайте
как и во многих языках программирования, в питоне 3 функции, обеспечивающие округление:
floor(), ceil(), round()

результаты выполнения для чисел 25.3, 45.5, -17.6:
floor(25.3) = 25; floor(45.5) = 45; floor(-17.6) = -18
ceil(25.3) = 26; ceil(45.5) = 46; ceil(-17.6) = -17
round(25.3) = 25; round(45.5) = 46; round(-17.6) = -18

функцию round() можно представить в виде round(x, n), где n - точность округления, например:
round(101.5328, 2) = 101.53

один нюанс, вот такое округление: round(101.5678, 1) даст нам 101.5 вместо ожидаемых 101.6

Добавлено (25.03.2013, 13:56)
---------------------------------------------
AntiAlianKiller, по аналогии с int() есть функция float() (англ. float - плавать), ты, наверное, перепутал с floor() wink


- Доброе утро, Агент Пи!
Nick_RimerДата: Воскресенье, 24 Марта 2013, 13:11 | Сообщение # 570 | Тема: DragDrop
заслуженный участник
Сейчас нет на сайте
Ramilyanamana, а вот так?

- Доброе утро, Агент Пи!
Nick_RimerДата: Воскресенье, 24 Марта 2013, 13:07 | Сообщение # 571 | Тема: DragDrop
заслуженный участник
Сейчас нет на сайте
Ramilyanamana, такое впечатление, что тебе не только СС надо переустановить, но и браузер, отлично отображается скриншот, что в первом, что во втором случае.
вот ссылка на него. может так у тебя выйдет посмотреть. я всегда скриншоты в виде ссылок отправляю, чтобы было ноу проблем.


- Доброе утро, Агент Пи!
Nick_RimerДата: Воскресенье, 24 Марта 2013, 13:05 | Сообщение # 572 | Тема: Смена разрешения экрана монитора
заслуженный участник
Сейчас нет на сайте
DimOk, на современных мониторах давно уже можно начинать с 1024х768, а то 800х600 это уже давно вырви глаз! и я не вижу как-то решения проблемы.. я так понимаю, что человеку нужно знать, какие разрешения поддерживает монитор, чтобы предлагать именно их, а то игра вылетает при выборе неправильных.. если честно, то я теряюсь в догадках, не знаю, как это сделать даже где-нибудь типа делфи (хотя стопудов решения есть).. я подумаю, поищу, что говорит об этом программирование, вдруг что узнаем, но это очень навряд ли..

- Доброе утро, Агент Пи!
Nick_RimerДата: Суббота, 23 Марта 2013, 18:22 | Сообщение # 573 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
Serega-A, ну вообще, если очень внимательно посмотреть, то ты найдёшь в меню вкладку Layout, на которой есть кнопка Toggle grid, а также Edit grid и галочки Snap-to moving, Snap-to resizing.
Поиграйся с ними. Это твоя сетка.


- Доброе утро, Агент Пи!
Nick_RimerДата: Пятница, 22 Марта 2013, 15:39 | Сообщение # 574 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
petrodiesel, попробуй ещё посмотри такие параметры, как acceleration (ускорение; отрицательное ускорение есть замедление) и gravity (гравитация), а так же может быть rate (сколько партиклов создавать в секунду)

- Доброе утро, Агент Пи!
Nick_RimerДата: Пятница, 22 Марта 2013, 15:21 | Сообщение # 575 | Тема: Crafting
заслуженный участник
Сейчас нет на сайте
allxumuk, питон надо вставлять везде, где мы не понимаем, как это сделать! happy

- Доброе утро, Агент Пи!
Nick_RimerДата: Пятница, 22 Марта 2013, 10:30 | Сообщение # 576 | Тема: Поделитесь плагинами для CC1.2
заслуженный участник
Сейчас нет на сайте
Я бы в первую очередь удалил класс System. Он там вообще только мешает всем своими прокладками always biggrin

- Доброе утро, Агент Пи!
Nick_RimerДата: Пятница, 22 Марта 2013, 09:13 | Сообщение # 577 | Тема: Как сделать рандомную генерацию платформ?
заслуженный участник
Сейчас нет на сайте
kantabrina,


- Доброе утро, Агент Пи!

Сообщение отредактировал Nick_Rimer - Пятница, 22 Марта 2013, 09:14
Nick_RimerДата: Пятница, 22 Марта 2013, 08:57 | Сообщение # 578 | Тема: Как сделать рандомную генерацию платформ?
заслуженный участник
Сейчас нет на сайте
Цитата
я так исказал надо сделать так чтобы платформ было ограниечное кол-во

ну тогда это точно не x milliseconds, I think smile

Цитата
Мне нужна генерация во вертикали.

Типа дудл джамп? Это, кстати, мне кажется проще, т.к. надо будет учитывать, наверное, только вертикальное расстояние между платформами, смещать их вправо-влево рандомно.. за пределами экрана внизу "килять" их, а вверху создавать ещё за пределами экрана с некоторым запасом.
если поколдовать, эти платформы можно вообще сделать типа bullets, чтобы двигались платформы, а ты по ни уже прыгаешь (ну это так, мысли вслух), таким образом создать эффект постоянного движения вверх..


- Доброе утро, Агент Пи!
Nick_RimerДата: Пятница, 22 Марта 2013, 08:19 | Сообщение # 579 | Тема: Воспроизведение и повтор музыки
заслуженный участник
Сейчас нет на сайте
Ramilyanamana, чувак, тебе просто не везёт! biggrin
знаешь, я помню, что писал:
XAudio2 -> Loop music
XAudio2 -> Play music "xxx.mp3"
и проблем не помню.. быть может у меня были файлы такие, что не слышно было разрыва, я не знаю.. (ну, с затуханием в конце или чё-то типа того)


- Доброе утро, Агент Пи!
Nick_RimerДата: Пятница, 22 Марта 2013, 08:11 | Сообщение # 580 | Тема: Как сделать рандомную генерацию платформ?
заслуженный участник
Сейчас нет на сайте
Gammeza, ава у него как раз не пошлая, очень тянет на LIMBO.. только там у гг не было фонарика.

Цитата
Every x ms- spawn

не потянет, т.к. гг может тупо стоять на месте (прикинь, припёло в туалет так, что аж на паузу забыл нажать, и ушёл на полчаса), а платформы всё генерятся.. посему нужно исходить из каких-то локальных перемещений героя, создавать платформы за пределами его видимости, но чётко в те моменты, когда он подходит на какое-то расстояние. конечно, нужно учитывать высоту и длину прыжка, чтобы платформа не сгенерировалась хрен знает где.. для освобождения памяти неплохо удалять ранее созданные (хотя они вполне могут удаляться, например, если попадают за предел экрана, ибо нефиг бежать в обратную сторону smile


- Доброе утро, Агент Пи!

Сообщение отредактировал Nick_Rimer - Пятница, 22 Марта 2013, 08:15
Поиск:

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