Пятница, 27 Декабря 2024, 02:37

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Нужна помощь по сохранению патронов.
KrekerДата: Понедельник, 17 Февраля 2014, 08:58 | Сообщение # 1
был не раз
Сейчас нет на сайте
Объясняю что надо. Потратил патроны (на первом) переключил на (второе) другое. Пострелял переключил обратно и на этом оружии (первом) у меня должно быть 0/0, а на другом (втором) например 18/8. И сколько я бы не переключал у меня всё оставалось так как есть.

_===_
\(о_О)/
Raven84Дата: Понедельник, 17 Февраля 2014, 09:37 | Сообщение # 2
старожил
Сейчас нет на сайте
Не совсем понятно объяснил. Но я думаю,что тебе нужно две разные переменные ввести на кол-во патронов для каждого оружия.

Super Knight Story (в разработке)
Idolzzz - игра доступна в Steam и Play Market
Oliver's Adventures in the Fairyland
KrekerДата: Понедельник, 17 Февраля 2014, 09:52 | Сообщение # 3
был не раз
Сейчас нет на сайте
Raven84, объясню. У меня есть пистолет и автомат. Я полностью потратил патроны и запасы пистолета итог 0/0. Взял автомат, пострелял осталось 10/6. Потом поменял обратно на пистолет и у меня там должно будет отстаться 0/0 и то же самое с автоматом.
Только у меня получается восстановление патронов то есть поменял оружие в пистолете опять 8/24


_===_
\(о_О)/
HSPДата: Понедельник, 17 Февраля 2014, 12:46 | Сообщение # 4
почетный гость
Сейчас нет на сайте
Создай разные переменные, в которых будет храниться количество патронов того и другого оружия.
Когда ты стреляешь пистолетом, уменьшай значение патронов пистолета, а когда автоматом - значение патронов, оставшихся у автомата.

PS: Если вообще все туго, то могу сделать пример
Quad69Дата: Понедельник, 17 Февраля 2014, 15:16 | Сообщение # 5
заслуженный участник
Сейчас нет на сайте
Kreker, Мой вариант использовать ini файлы.
Создай в директории с игрой файл vardata.ini и перед тем как взять другое оружие используй код:
Код

ini_open('vardata.ini')
ini_write_real('data','avtomat',<Количество которое нужно записать в ini>)
ini_close();

Перед тем как взять например автомат используй скрипт:
Код

ini_open('vardata.ini')
patroni = ini_read_real('data','avtomat',10)
ini_close();
Raven84Дата: Понедельник, 17 Февраля 2014, 15:32 | Сообщение # 6
старожил
Сейчас нет на сайте
maksim1221232, Да тут ini файлы я считаю совсем ни к чему.Достаточно просто переменные задать.

Super Knight Story (в разработке)
Idolzzz - игра доступна в Steam и Play Market
Oliver's Adventures in the Fairyland
GavolotДата: Понедельник, 17 Февраля 2014, 15:34 | Сообщение # 7
Последователь Тени
Сейчас нет на сайте
Какие нафиг ини файлы, ИНИ ФАЙЛЫ, ААААААААА МОЙ МОЗГ.
Использовать ини файлы для того чтобы записать патроны перед сменой оружия. При каждой смене оружия использовать файловый поток. Это вообще кем нужно быть?


В общем что-то делаю, но пока не пойму ни как :)
Тень - выражение основной сущности человека.
laggertДата: Понедельник, 17 Февраля 2014, 15:44 | Сообщение # 8
почетный гость
Сейчас нет на сайте
Без капс лока не обойтись...

Сделай отдельный объект или в одном объекте два спрайта оружия.
В первом случае ты просто обращаешься к этому, во втором - у тебя все переменные хранятся в объекте оружия.



Я здесь, чтобы распространять ЛАГИ!!!
Quad69Дата: Понедельник, 17 Февраля 2014, 15:49 | Сообщение # 9
заслуженный участник
Сейчас нет на сайте
Если использовать ini файлы, то удастся сохранить патроны даже при переходе в следующую комнату или даже если выключить игру а потом опять её запустить то патроны сохранятся.
HSPДата: Понедельник, 17 Февраля 2014, 17:11 | Сообщение # 10
почетный гость
Сейчас нет на сайте
Цитата maksim1221232 ()
Если использовать ini файлы, то удастся сохранить патроны даже при переходе в следующую комнату или даже если выключить игру а потом опять её запустить то патроны сохранятся.

Зачем это делать, если можно сохранить патроны в ини перед переходом в другую комнату или, что еще проще, сделать переменную глобальной, а можно вообще постоянным обьект сделать?
И тем более всегда использовать ини когда нужно изменить значение патронов плохо скажется на системе (если таких переменных много)
А может ему просто ненужно сохранять патроны когда он выключит игру?

Цитата laggert ()

Сделай отдельный объект или в одном объекте два спрайта оружия.
В первом случае ты просто обращаешься к этому, во втором - у тебя все переменные хранятся в объекте оружия.


зачем отдельный обьект, если все можно сделать в одном?

Добавлено (17.02.2014, 17:11)
---------------------------------------------
Click вот пример, если нужно.

PS: Не слушай моих "коллег"

Сообщение отредактировал HSP - Понедельник, 17 Февраля 2014, 16:03
ЛеонидДата: Понедельник, 17 Февраля 2014, 17:33 | Сообщение # 11
постоянный участник
Сейчас нет на сайте
Цитата maksim1221232 ()
Мой вариант использовать ini файлы.

Это смешно. До ужаса не уместно для сохранения одной переменной (которая нужна только в процессе игры) использовать ini файлы.
Цитата maksim1221232 ()
Если использовать ini файлы, то удастся сохранить патроны даже при переходе в следующую комнату или даже если выключить игру а потом опять её запустить то патроны сохранятся.

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

У тебя просто какая-то ошибка в коде, который ты не предоставил. Как по-твоему мы должны тебе помочь?
HSPДата: Понедельник, 17 Февраля 2014, 18:14 | Сообщение # 12
почетный гость
Сейчас нет на сайте
Цитата Леонид ()
А можно просто сделать переменные глобальными

Я рад что ты это вспомнил, но только странно что после моих слов.
Цитата HSP ()
сделать переменную глобальной


Добавлено (17.02.2014, 18:14)
---------------------------------------------
Простите за оффтоп, но ты создаешь игру уже 5 месяцев и 15 дней и ты смог реализовать только это?!
Цитата Kreker ()
Пострелял переключил обратно и на этом оружии (первом) у меня должно быть 0/0, а на другом (втором) например 18/8. И сколько я бы не переключал у меня всё оставалось так как есть.


Сообщение отредактировал HSP - Понедельник, 17 Февраля 2014, 18:15
KrekerДата: Понедельник, 17 Февраля 2014, 18:26 | Сообщение # 13
был не раз
Сейчас нет на сайте
HSP, я её по 10 раз переделывал. Мне только помощь с патронами нужна и всё.

_===_
\(о_О)/
HSPДата: Понедельник, 17 Февраля 2014, 18:28 | Сообщение # 14
почетный гость
Сейчас нет на сайте
click вот, возьми

Сообщение отредактировал HSP - Понедельник, 17 Февраля 2014, 18:29
KrekerДата: Понедельник, 17 Февраля 2014, 19:04 | Сообщение # 15
был не раз
Сейчас нет на сайте
HSP, Блин у меня то 8.0...

_===_
\(о_О)/
HSPДата: Понедельник, 17 Февраля 2014, 19:11 | Сообщение # 16
почетный гость
Сейчас нет на сайте
В обьекте персонажа создай событие Create:
Код

max_ammo[0] = 10       // максимальное количество патронов в первом оружии
ammo[0] = max_ammo[0]  // патроны = макс.патроны
max_ammo[1] = 100     //  максимальное количество патронов во втором оружии
ammo[1] = max_ammo[1] // патроны = макс.патроны
                            // создашь этих переменных столько, сколько у тебя оружий

weapon = 0           // оружие, которое персонаж получит в начале игры


событие Step:
Код

rate += 1


и Global Left Mouse (или на какую ты там стреляешь)
Код
if(rate >=2 and ammo[weapon]>0) если патронов в выбранном оружии больше 0
{
bullet = instance_create(x+lengthdir_x(16, image_angle),                            
y+lengthdir_y(16, image_angle),  o_bullet)  // создаем пулю o_bullet (у себя поменяй этот оьект на свою пулю)
bullet.direction = image_angle   // направляем пулю туда куда смотрит персонаж
bullet.image_angle = image_angle // поворачиваем пулю так же как и игрока
bullet.speed = 10               // скорость пули
ammo[weapon] -= 1               // уменьшаем количество пуль у выбранного оружия
rate = 0                          
}


Сообщение отредактировал HSP - Понедельник, 17 Февраля 2014, 19:28
ЛеонидДата: Понедельник, 17 Февраля 2014, 19:55 | Сообщение # 17
постоянный участник
Сейчас нет на сайте
Цитата Kreker ()
HSP, я её по 10 раз переделывал. Мне только помощь с патронами нужна и всё.

Если ты такую простейшую проблему решить не можешь, то тебе подучиться надо, уроков (или справку хотя бы) почитать, а не проект целый делать.

Как у тебя смена оружия происходит? Если сменой объекта, то надо глобальные переменные создать (удобнее всего), если сменой переменной, то у тебя вероятнее всего в событии, при котором переменная меняется на пистолет, происходит присваивание переменным патронов их стандартного значения. Сложно звучит, легче не смог сформулировать.
Можешь хоть объяснить, как у тебя там что устроено?
HSPДата: Понедельник, 17 Февраля 2014, 19:59 | Сообщение # 18
почетный гость
Сейчас нет на сайте
Что?
Цитата Леонид ()
Если сменой объекта

Ты прав, или у него одна переменная и для пистолета и для автомата
Цитата Леонид ()
происходит присваивание переменным патронов их стандартного значения
ЛеонидДата: Понедельник, 17 Февраля 2014, 20:39 | Сообщение # 19
постоянный участник
Сейчас нет на сайте
Цитата HSP ()
Что?
Цитата Леонид ()
Если сменой объекта


Может быть у него при смене оружия сменяется объект игрока, в событии создания у которого переменные патронов приравниваются к стандартному значению. Я к этому склоняюсь

Цитата HSP ()
или у него одна переменная и для пистолета и для автомата

Сомневаюсь. Значение патронов пистолета не равно количеству патронов автомата после того, как он их потратил немного (насколько я понял по корявому описанию). Не думаю, что найдется человек, который стал бы использовать одну переменную для разных вещей, если он хоть что-то понимает.
HSPДата: Понедельник, 17 Февраля 2014, 21:18 | Сообщение # 20
почетный гость
Сейчас нет на сайте
Какой адекватный человек до такого додумается?
Цитата Леонид ()
Может быть у него при смене оружия сменяется объект игрока
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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