Воскресенье, 20 Июля 2025, 12:07

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
Nick_RimerДата: Четверг, 05 Сентября 2013, 11:16 | Сообщение # 281 | Тема: Движение объекта по кругу
заслуженный участник
Сейчас нет на сайте
Hobo_Gus,
Цитата (Hobo_Gus)
Вот так?


мне кажется, если следовать его словам
Цитата (Akopov)
П.С. управление должно осуществляться мышкой

, то надо сделать всё-таки вот так: клац!
пояснительный комментарий внутри исходника присутствует
по любым вопросам касательно исходника отвечу.

исходник для CC r2


- Доброе утро, Агент Пи!
Nick_RimerДата: Вторник, 03 Сентября 2013, 12:49 | Сообщение # 282 | Тема: Клетка
заслуженный участник
Сейчас нет на сайте
madsen, сорри за задержку!
внезапно пришёл шеф и выдал столько работы, что стало не до исходника..
потом выяснилось, что целочисленное (а именно две косых черты //) не хочет работать в СС. что странно. ибо там питон.
поэтому я воспользовался функцией floor(), она округляет число всегда в меньшую сторону, т.е. даже, например, число 3.999999999 будет округлено до 3. в итоге получается тот же результат.

и вот, лови: скачать
всё прекрасно заполняется красными квадратами smile

пример для СС r2


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

Сообщение отредактировал Nick_Rimer - Вторник, 03 Сентября 2013, 12:50
Nick_RimerДата: Вторник, 03 Сентября 2013, 11:13 | Сообщение # 283 | Тема: Клетка
заслуженный участник
Сейчас нет на сайте
madsen, никогда не работал с математикой? biggrin
ща запилю тебе исходник


- Доброе утро, Агент Пи!
Nick_RimerДата: Вторник, 03 Сентября 2013, 11:08 | Сообщение # 284 | Тема: Клетка
заслуженный участник
Сейчас нет на сайте
madsen, я так понимаю, ты щёлкаешь мышкой, объект появляется в точке с координатами мыши, а надо привязать к клетке 32х32?
тебе нужно немножко математики. вот, что делаем:

допустим, ты щелкнул мышкой, и получилось MouseX = 131, MouseY = 75
теперь вычислим ближайший квадрат по сетке 32х32.
для этого ДЕЛИМ НАЦЕЛО MouseX на 32. получим: MouseX // 32 = 4
теперь умножаем результат от деления на 32, получаем: 4*32 = 128.

аналогично для MouseY.
MouseY // 32 = 2
2*32 = 64

итого.
квадрат создаём в точке x=128, y=64

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

===
для справок:
операция // - это целочисленное деление.
число делится одно на другое, результатом является целая часть результата, дробная часть отбрасывается.
например, 5/2 = 2 целых и 1/2 (одна вторая). таким образом результатом 5//2 будет число 2

есть ещё приём вычисления остатка от деления.
результатом того же деления 5 на 2 с вычислением остатка будет:
5%2 = 1 (потому что в дробной части была одна вторая)


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

Сообщение отредактировал Nick_Rimer - Вторник, 03 Сентября 2013, 11:12
Nick_RimerДата: Вторник, 03 Сентября 2013, 10:40 | Сообщение # 285 | Тема: Клетка
заслуженный участник
Сейчас нет на сайте
madsen, выравнивание в процессе игры или в конструкторе привязка к сетке?
сорри, из твоего поста не совсем понял.

если привязка к сетке в конструкторе, то есть вот:


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

Сообщение отредактировал Nick_Rimer - Вторник, 03 Сентября 2013, 11:00
Nick_RimerДата: Понедельник, 02 Сентября 2013, 13:19 | Сообщение # 286 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
ЙАNexus,
1. рисуешь рамочку, внутри которой должен быть progress bar
2. рисуешь спрайтик с квадратиком какого-нибудь цвета, это и будет прогресс бар
3. размер прогресс бара по высоте подгоняешь под высоту места для него в рамочке, длину ставь нулевую
4. исходя из длины места под прогресс бар вычисляешь формулу, на сколько пикселей должна увеличиваться длина прогресс бара в соотношении к какому-то количеству процентов
5. подсчитываешь, что ты будешь учитывать при загрузке
6. в зависимости от критерия, по которому будет считаться степень загрузки, рассчитай, сколько процентов будет занимать загрузка одной у.е. загрузки
7. каждый раз, когда при проверке критерия всё зашибись, увеличиваешь прогресс на нужное количество процентов, соответственно по формуле увеличиваешь длину прогресс бара на нужную величину
8. если всё происходит слишком быстро, принудительно замедляешь навешиванием левых функций, чтобы организовать эффект офигительной загрузки
9. ...
10. PROFIT!!!


- Доброе утро, Агент Пи!
Nick_RimerДата: Воскресенье, 01 Сентября 2013, 22:46 | Сообщение # 287 | Тема: Создание конструктора на Scirra Construct
заслуженный участник
Сейчас нет на сайте
AntiAlianKiller,
Цитата
В том, что сделали Вы есть смысл? Я спрашиваю про все те Ваши игры и программы, сделанные на Scirra Construct. Я не утверждаю, что это полностью лишено смысла, но не имеет более чем эта очередная программа уж точно. По крайней мере идея про конструктор - очень интересная, в отличии от Stalker 2D, Minecraft 2D и прочего аналогичному этому "г", которым занимается большинство.


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

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

поэтому речь о бесполезности я могу вести лишь с точки зрения того, что это не будет "чистый проект". мало функционала, мало возможностей писать свой чистый, правильный, лишённый ненужного код.
или я не прав?


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

Сообщение отредактировал Nick_Rimer - Воскресенье, 01 Сентября 2013, 22:47
Nick_RimerДата: Воскресенье, 01 Сентября 2013, 00:55 | Сообщение # 288 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
uran256,
Цитата
что такое массивы?

на этот вопрос я довольно скоро отвечу.
а на всё остальное.. ну, блин, не могу я написать за тебя всё..


- Доброе утро, Агент Пи!
Nick_RimerДата: Суббота, 31 Августа 2013, 20:50 | Сообщение # 289 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
uran256, исходников таких у меня нет, я готов помочь, но не писать за тебя.
советую смотреть куда-нибудь в сторону INI или массивов. смотря, что нравится или предпочтительнее для сохранения и дальнейшей обработки данных.


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

Сообщение отредактировал Nick_Rimer - Суббота, 31 Августа 2013, 20:51
Nick_RimerДата: Суббота, 31 Августа 2013, 19:53 | Сообщение # 290 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
Anthem, да уже давно пора скачать СС r2.
ну а если уж так, чтобы всем было видно, то..


- Доброе утро, Агент Пи!
Nick_RimerДата: Пятница, 30 Августа 2013, 23:28 | Сообщение # 291 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
Anthem, как-то так.. клац!

- Доброе утро, Агент Пи!
Nick_RimerДата: Пятница, 30 Августа 2013, 09:23 | Сообщение # 292 | Тема: "игра"
заслуженный участник
Сейчас нет на сайте
mef1sto, т.е. в С2 он рандомизирует вещественое число между m и n? вот гад! не знал.
вообще, штука полезная. и порой необходимая.


- Доброе утро, Агент Пи!
Nick_RimerДата: Пятница, 30 Августа 2013, 08:12 | Сообщение # 293 | Тема: "игра"
заслуженный участник
Сейчас нет на сайте
MyGame, мде.. про рандом что-нибудь слышал?
random(m-n+1)+n - универсальная формула рандома, где m - верхний предел интервала, n - нижний предел интервала.
таким образом, чтобы выбрать из интервала от 1 до 5, нужно рассуждать так: random(5-1+1)+1 => random(5)+1

а потом тебе в помощь приходит великий IF..ELSE
код на хрензаеткаком языке:
Код
x = random(5)+1;
if x = 1 then
{blablabla 1}
else if x = 2 then
{blablabla 2}
<...>
else if x = 5 then
{blablabla 5}


- Доброе утро, Агент Пи!
Nick_RimerДата: Четверг, 29 Августа 2013, 14:58 | Сообщение # 294 | Тема: Как записать в переменную силу
заслуженный участник
Сейчас нет на сайте
DizzyDez, Sprite[Physics].VelocityX - это скорость объекта по оси Х, она никак не воздействует на объект. это скорость, которую объект приобрёл ВСЛЕДСТВИЕ действия на него сил.. поэтому я и говорю, что его пример не совсем верен, если мы говорим о значениях сил. просто так их получить, как я понял, нереально.. или я просто не знаю как. пардон, но с физикой в СС я мало работал dry

- Доброе утро, Агент Пи!
Nick_RimerДата: Четверг, 29 Августа 2013, 14:42 | Сообщение # 295 | Тема: Как записать в переменную силу
заслуженный участник
Сейчас нет на сайте
DizzyDez, а как передать в переменную любые другие данные?!
просто взять и присвоить.

т.к. силу ты тоже разбиваешь на составляющие по X и Y, то и переменных имей 2.
например, forcex, forcey

а значение любой глобальной переменной присваивается так:
System -> Set value (указываешь значение)
для приватной переменной спрайта, например:
Sprite -> Set value (указываешь значение)

где переменные-то создавать, знаешь?
или я неверно понял вопрос.. и ты не понимаешь, в какой момент это делать?
легко.
делаешь Set force(m, n)
тут же делаешь Set value - forcex - m и Set value - forcex - n

так яснее?

ещё есть методы Add to value и Subtract from value (добавить и отнять соответственно)
так что, если ты не будешь сразу коренным образом менять силу (Set force), а сделаешь, допустим, Add force, то надо будет воспользоваться этими функциями


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

Сообщение отредактировал Nick_Rimer - Четверг, 29 Августа 2013, 14:44
Nick_RimerДата: Четверг, 29 Августа 2013, 14:01 | Сообщение # 296 | Тема: Как записать в переменную силу
заслуженный участник
Сейчас нет на сайте
DimOk, всю жизнь считал, что velocity - это скорость. и что от силы она всё-таки отличается. по крайней мере единицами измерения.
скорость - м/с, сила - ньютон (кг*м/с^2). это физика, это факт.

я, конечно, утверждать на 100% не могу, но неужели в СС это одно и тоже??
т.е. ты пишешь составляющие скорости по X и Y.
мне кажется всё же, что это неверно.. т.к. даже в том же СС есть Set velocity, а есть Set force


- Доброе утро, Агент Пи!
Nick_RimerДата: Четверг, 29 Августа 2013, 11:25 | Сообщение # 297 | Тема: Как записать в переменную силу
заслуженный участник
Сейчас нет на сайте
DizzyDez,
Цитата
Scirra Classic

Construct Classic
Scirra - компания разработчик

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


- Доброе утро, Агент Пи!
Nick_RimerДата: Среда, 28 Августа 2013, 15:00 | Сообщение # 298 | Тема: Как сделать автоподгон экрана?
заслуженный участник
Сейчас нет на сайте
darkshark13021996,
речь идёт НЕ про Construct 2
а про Construct Classic r2
совсем разные программы.

ты пишешь:
Цитата
у меня r1.2

а тебе пишут:
Цитата
r2 обнови

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


- Доброе утро, Агент Пи!
Nick_RimerДата: Среда, 28 Августа 2013, 12:08 | Сообщение # 299 | Тема: Решаем задачи по Construct Classic [вопрос-ответ]
заслуженный участник
Сейчас нет на сайте
IGRODELchik, сделать спрайту врага анимацию/ции
Цитата
кусать/резать/рвать

проверить необходимое условие (столкновение, перекрытие, приближение и т.п.), назначить врагу анимацию методом Set animation, "указать имя"

я так понимаю, ты новичок, раз вопросы такие пошли.. для начала пройди хотя бы самый простой урок для новичков, ака "платформер за 5 минут"


- Доброе утро, Агент Пи!
Nick_RimerДата: Вторник, 27 Августа 2013, 15:16 | Сообщение # 300 | Тема: Соединение точек
заслуженный участник
Сейчас нет на сайте
AntiAlianKiller, местными средствами я себе могу представить пока только такое извращение (логическое, но смысла не лишённое):
так как ты имеешь соединённые между собой точки, то по-любому всё это представляет собой многоугольник.
через каждую его грань можно провести воображаемую прямую, которая описывается неким уравнением (которое можно составить из координат вершин отрезка, коим в принципе является грань)
и в принципе, имея на руках подобные данные, можно проверять каждую точку канваса, находится ли она внутри всех этих уравнений (куча логики), и если да, то закрашивать.
в общем, не самое простое занятие, но именно такой хренотенью мы когда-то на 1м курсе института занимались на программировании в QC. весёлое было времечко.. и это была ещё не самая весёлая задача. да и после таких выяснений, по-моему, там с закрашиванием попроще.

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

Добавлено (27.08.2013, 15:16)
---------------------------------------------
в общем, я изобразил закрашивание точками вот в таком примере по закрашиванию рандомных треугольников на канвасе: щёлк!
правда, иногда бывает косяк (обычно на треугольниках с особо острыми углами), и тогда некоторые точечки вдоль граней не закрашиваются.. причину пока не понял dry
но прям уж особо сильных косяков замечено не было (чтобы ваще чё-то другое вдруг перекрасилось)

конечно.. всё это сильно натянуто за уши, но (вдруг!) чем-то поможет.


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

Сообщение отредактировал Nick_Rimer - Вторник, 27 Августа 2013, 15:16
Поиск:

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