Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Топ:
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного хозяйства...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Интересное:
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Принципы управления денежными потоками: одним из методов контроля за состоянием денежной наличности является...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Очень много людей меня мучали этим вопросом «Как сделать магазин для шутера?». Что-ж, пришло время объяснить 

Проект состоит из двух Frame’ов. Первый — это собственно сам магазин, где вы покупаете оружие. Во втором Frame’е — сама игра. Здесь находятся персонаж и инвентарь, когда вы покупаете что-либо в магазине оно появляется в инвентаре игрока. Далее вы можете дать оружие персонажу из инвентаря.
Объект Ini
используется что бы передавать между Frame’ми информацию о том какое оружие было куплено. А так же сохраняет купленное оружие в инвентаре после закрытие игры, и текущее количество денег игрока.
Скачать исходный файл
Первый Frame — cоздание магазина
Первым делом нам нужно создать сами спрайты нашего оружия:
Пистолет:

Дробовик:

Автомат M4A1:

Создаем новый Active
и добавляем туда своё оружие в виде отдельных кадров. А так-же добавляем по сторонам по одному невидимому кадру.

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

Объект кнопки «Buy» (Купить) состоит из двух анимаций: когда оружие доступно для покупки и когда вы его уже купили.

Что бы добавить новую анимацию, нужно нажать ПКМ в левом нижнем окошке с анимациями и нажать на New.

Название можно и не менять. Эта анимация нужна для кнопки, которая будет показывать, что вы купили оружие.
Далее нужно сделать надпись «SOLD» (продано) в отдельном объекте Active

Выбор оружия
Теперь добавляем объект Ini
на сцену магазина.
В первом событии при запуске игры, устанавливаем кадр анимации оружия на 1, то-есть это пистолет.

И создаем ini-файл. Appdir$ + «Data» означает, что файл .ini создастся там же, где лежит исходный .exe файл игры под именем Data, которую он сам и создаёт.
Теперь само переключение:



Когда вы нажимаете кнопку влево анимация с оружие переходит на предыдущий кадр, т.е. текущий кадр — 1. Когда нажимаете кнопку вправо к текущему кадру прибавляется единица, что бы перейти к следующему кадру.
Чтобы не перелистывать из стороны в сторону. Создаем еще события перехода от последнего кадра к первому и наоборот:

К сожалению во Fusion нет параметра «последний кадр», по этому приходится задавать конкретное число

Далее передаем в счетчик
цены за оружие в зависимости от кадра:

Покупка
Для начала нужно дать деньги игроку. Не будем жадничать, дадим игроку сразу 12000 баксов.

Количество денег храниться в переменной Money объекта Ini
.
Это условие:

нужно что бы игрок не получал 12000 при каждом запуске игры. Эти 12000 — лишь стартовый баланс игрока.
Что бы избежать ситуации когда игрок открывает игру с нулевым балансом и тут же получает 12000, можно, например, создать правило, что у игрока не может быть меньше одного бакса.
Небольшой нюанс
У объекта Ini нет событие для сравнения значений его переменных. Что бы создать такое событие нужно использовать Comparetwogeneralvalues от объекта Special:


За тем, всегда отображаем деньги игрока в еще одном счетчике 

И теперь создаем событие покупки по нажатию на кнопку Buy:

§ Текущий кадр магазина говорит о том какое оружие покупает игрок
§ далее проверяем есть ли у игрока достаточное количество средств
§ и проверяем что это оружие еще не куплено
На каждое оружие заведена отдельная переменная в объекте Ini, в данном случае мы создаем событие для покупки пистолета, ему соответствует переменная Pistol. Если эта переменная равна 0, то значит оружие не куплено, если она равна 1, значит игрок купил данное оружие.
Если условия выполняются:
§ присваиваем переменной Pistol единицу
§ и отнимаем у игрока сумму денег за покупку
Еще один нюанс
У объекта Ini нет действия «вычесть из», поэтому нужно использовать формулу:
переменная Money = текущее значение переменной Money — 1500
И такие же события создаем для покупки дробовика и автомата:

Надпись Sold
Когда товар куплен, появляется надпись «SOLD», а кнопка «Buy» меняет анимацию:

Если же нет:

Когда игрок закрывает магазин он попадает на второй Frame с персонажем и инвентарем:

|
|
|
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!