|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
Доработать игру17.06.2020, 13:46. Показов 6183. Ответов 46
Всем доброго дня
Нашел в интернете игру case briks (как то так).Игра отлично работает но я хотел чтобы когда блоки удаляются они занова регенерировались вместо того чтобы превратиться белый цвет. Проект оставлю ниже
0
|
|
| 17.06.2020, 13:46 | |
|
Ответы с готовыми решениями:
46
Доработать игру "Кто хочет стать миллионером" Нужно доработать игру "Шашки" Нужно доработать игру |
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 18.06.2020, 06:14 [ТС] | |
|
0
|
|
|
3054 / 1673 / 657
Регистрация: 19.03.2019
Сообщений: 5,380
|
|||
| 18.06.2020, 09:44 | |||
Сообщение было отмечено young for best как решение
Решениеможно и в public можно даже сделать эту переменную не свойством класса, а просто глобальной (т.к. у нас один объект данного класса, один обработчик таймера, поэтому конфликтов не будет). Но вот это я бы не рекомендовал делать. Это плохой стиль. Глобальные переменные нужно использовать только если они действительно нужны и без них не обойтись (или без них крайне сложно) Label, имхо, самый убого выглядящий вариант.
1
|
|||
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 18.06.2020, 10:09 [ТС] | |
|
mr-Crocodile, а как реализовать уменьшение здоровью с помощью gauge или progressbar если не сложно можете на вчерашний проект добавить
p.s можете вчерашний код объяснить очень нужно
0
|
|
|
3054 / 1673 / 657
Регистрация: 19.03.2019
Сообщений: 5,380
|
||||||||||||||||||||||||||||||||||
| 18.06.2020, 10:41 | ||||||||||||||||||||||||||||||||||
Сообщение было отмечено young for best как решение
Решениена процедуре старта игры (смотри обработчик на кнопке Button1) прописываешь что-то вроде
потом кидаешь Timer и в нём уменьшаешь значение
а по сути всё просто. я добавил метод заполнения пустых мест
потом, там, где было удаление элементов:
я прописал вызов этого метода
но по клику на блок - удаление всего блока, падение блоков вниз и заполнение освободившихся ячеек проходило мгновенно, без каких-то промежуточных отрисовок. Мне это не понравилось. Если ты видел, как это сделано в настоящей игре, то это всё анимировано - улетает удалённый блок, на освободившееся место падают (это видно, как они падают) ячейки сверху, на место свободных - сверху появляются новые. вот чтобы сделать что-то похожее, я разделил все этапы на отдельные кадры, добавил таймер и после каждого этапа - отрисовку поля. смена этапов происходит по переменной StateTimerAnimation и, кстати, пока эта переменная не равна нулю (пока работают этапы анимации) клики по ячейкам игнорируются это строчка в коде метода DrawGrid1SelectCell
1
|
||||||||||||||||||||||||||||||||||
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 18.06.2020, 13:42 [ТС] | |
|
[quote="mr-Crocodile;14660582"]если что-то не ясно - спрашивай.
Если не сложно на том проекте покажите пример использованием gauge ну когда блоки удаляются тогда уменьшается gauge Добавлено через 2 часа 44 минуты mr-Crocodile, помоги я так сделал типо он убирает по рандому можешь изменить его так чтобы он убирал определенное число как в игре
0
|
|
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 18.06.2020, 13:43 [ТС] | |
|
0
|
|
|
3054 / 1673 / 657
Регистрация: 19.03.2019
Сообщений: 5,380
|
|
| 18.06.2020, 14:58 | |
|
теперь метод RemoveBricks() возвращает количество удалённых квадратов с поля (кстати, исправил БАГ, когда оставался неудалённым квадрат в первом столбце или первой строке - если кликнуть по квадрату из блока в следующих строках/столбцах)
сколько очков давать за количество снятых отвечает функция GetScoreByCount() добавил окончание игры при if GaugeScore.Progress = 0 then переименовал лейблы и кнопку, так, эстетики ради. Думаю, что тебе ещё нужно добавить какое-то условие, при котором игрок проигрывает. Иначе будет скучно, нет захватывающего геймплея. (сравни с той игрой, что ты давал ссылку) Ну и предусмотреть момент, когда ходов больше нет - вероятость такого события невелика, но все же, если квадраты станут в шахматном порядке, то и игра не закончена и кликнуть, чтобы блок удалить - некуда. Патовая ситуация. для примера, в той игре, на которую ты ссылку давал, в этом случае выдавалась надпись "Нет больше ходов" и поле полностью менялось.
1
|
|
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 18.06.2020, 19:01 [ТС] | |
|
mr-Crocodile, большое спасибо вот честно просто выручил
![]() ![]() Добавлено через 1 час 56 минут mr-Crocodile, посмотри игру таймер поставил чтобы когда дойдет до какого то определенного числа тогда атака от врага ну снимается hp игрока.таймер работает но gauge не уменьшается
0
|
|
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 18.06.2020, 19:03 [ТС] | |
|
0
|
|
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 19.06.2020, 08:00 [ТС] | |
|
вот как то так сделал но выглядит как то убого хотел sleep поставить но вес форма тогда завсиает. Как то так сделал посмотри
p.s как сделать таймер для атаки врага просто image поставить и тоже самое делать как в gauge:- |DrawGrid_Game_v4.rar
0
|
|
|
3054 / 1673 / 657
Регистрация: 19.03.2019
Сообщений: 5,380
|
||
| 19.06.2020, 16:43 | ||
|
0
|
||
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 19.06.2020, 16:51 [ТС] | |
|
mr-Crocodile, я игру и проект отдельно сделал теперь лень их объединять ты можешь их обхединить в один проект
Добавлено через 3 минуты mr-Crocodile, ну в общем я типо как то сделал их использовал gauge как таймер через свойство kind и второй таймер поставил типо когда оно дойдет до какого то определенного времени враг нападает на игрока теперь я игру не могу объединить с другой формой попробовол занова написал весь код но когда запускаешь программу drawgrid становиться черного цвета ничего не грузится
0
|
|
|
3054 / 1673 / 657
Регистрация: 19.03.2019
Сообщений: 5,380
|
|
| 19.06.2020, 18:03 | |
|
ну вот тебе ещё один вариант, может быть, и объединять ничего не надо будет!
1
|
|
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 19.06.2020, 18:06 [ТС] | |
|
mr-Crocodile, спасибо
![]()
0
|
|
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|||||||||||
| 20.06.2020, 09:08 [ТС] | |||||||||||
|
mr-Crocodile, объясни свою процедуру
mr-Crocodile, и эту функцию тоже объясни
0
|
|||||||||||
| 20.06.2020, 12:43 | ||
|
Не по теме:
0
|
||
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 20.06.2020, 15:35 [ТС] | |
|
mr-Crocodile, кстати я игру в полный проект добавил и когда я запускаю игру нарисованный таймер тоже вместе с ним запускается ну игра начнется до того как его откроют.Можно как то его на какой нибудь button поставить ну типо нажимаешь на button и только тогда запускается таймер
0
|
|
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 20.06.2020, 21:05 [ТС] | |
|
Вчера мне скинули игру по примере одного из браузерных игр. Сегодня я эту игру добавил свой проект и хотел сделать полноценную игру с меню справками и тд. Но в игре оказался таймер нарисованный на pintbox.
В чем суть? Суть в том что этот таймер начнет работать сразу после того как закончиться компиляция кода. У меня проекте все происходит поочередно сначала загрузочный экран, гл меню, уровни потом само игра. А если запустить игру таким порядком до того как игра начнется гл герой потеряет половину своего hp. В общем надо сделать так чтобы когда на форме нажимать button тогда и начался анимация таймера. Проект ниже
0
|
|
|
2 / 1 / 1
Регистрация: 17.06.2020
Сообщений: 134
|
|
| 20.06.2020, 21:05 [ТС] | |
|
0
|
|
|
561 / 230 / 88
Регистрация: 11.07.2015
Сообщений: 817
|
|
| 20.06.2020, 21:30 | |
|
Установи свойство нужного таймера Enabled в False и включай его по кнопке.
0
|
|
| 20.06.2020, 21:30 | |
|
Игру на Дельфи переделать на игру под интернет Доработать игру Bounce
Доработать игру "Поле чудес"
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|