Пара вопросов
#1

Приветствую. У меня есть пара вопросов и касаются они в общем вариантов реализации того или иного.

1)Вот есть у меня инвентарь, при выборе слота отображается окошко с описанием, предметы создаются подобным методом:
Код:
DefineItem(здесь название, здесь описание);
Как можно сделать так, чтобы в описание можно было бы вставлять например значение переменной количества данного слота?
Вот так например:
Код:
DefineItem("Канистра", "В этой канистре %a литров!");
2)Телефоны. Как возможно сделать чтобы выдавлись те номера, которые не находятся в использовании?
Еще с учетом того, что игрок может выкинуть свой телефон, купить новый и т.д. Есть одна идея, но в ней, когда будут использованы все 899999 номеров, некуда будет шагать, кроме как пускать заново сервер.
Reply
#2

1)
Код:
new someString[32];
format(someString, sizeof someString, "В этой канистре %a литров!", amount);
DefineItem("Канистра", someString);
2) Что мешает раздавать номера телефонов по порядку?
Reply
#3

Quote:
Originally Posted by =KempeR=
Посмотреть сообщение
1)
Код:
new someString[32];
format(someString, sizeof someString, "В этой канистре %a литров!", amount);
DefineItem("Канистра", someString);
Ага, так не получится, откуда мы возьмем при создании предмета его количество у какого-то игрока, которого нет?
Quote:

2) Что мешает раздавать номера телефонов по порядку?

Я написал в первом сообщении
Reply
#4

[EAKWARP]учи мат.часть[/EAKWARP]

Tee7even так первый купивший номер, будет с номером 1, другой(второй) с 2. А если первый решит удалить номер телефона, то другой купивший не сможет быть с таким же номером, который был у первого. И сам первый не сможет его купить. Не это ли тебе нужно было?
Reply
#5

Quote:
Originally Posted by DiSE
Посмотреть сообщение
[EAKWARP]учи мат.часть[/EAKWARP]

Tee7even так первый купивший номер, будет с номером 1, другой с 2. А если первый решит удалить номер телефона, то другой купивший не сможет быть с таким же номер, который был у первого. И сам первый не сможет его купить. Не это ли тебе нужно было?
Reply
#6

Quote:
Originally Posted by Tee7even
Посмотреть сообщение
Ага, так не получится, откуда мы возьмем при создании предмета его количество у какого-то игрока, которого нет?
Я написал в первом сообщении
Так изменяй это описание там, где мы знаем кол-во!
Reply
#7

Quote:
Originally Posted by =KempeR=
Посмотреть сообщение
Так изменяй это описание там, где мы знаем кол-во!

Код:
DefineItem(НАЗВАНИЕ, ШАБЛОН /*!!!!*/ ОПИСАНИЯ);
Нужно, чтобы в шаблон можно было вставлять значение переменной кол-ва и т.д..
Насчет этого нашел свой способ.
Reply
#8

Tee7even, а я понял, что дайз имел ввиду, однако, до него эту идею высказал =KempeR=.
Ваш
Reply
#9

Quote:
Originally Posted by Mutha_X
Посмотреть сообщение
Tee7even, а я понял, что дайз имел ввиду, однако, до него эту идею высказал =KempeR=.
Ваш
Ну а в целом, в том-то и дело, что было бы лучше, если не используемые номера выдавались снова, можно и по порядку. Все вопросов нет.
Reply
#10

Tee7even, ещё вариант, более сложный, но более интересный.
Генерируйте случайный номер, или по определённому алгоритму (допустим в разных магазинах свой префикс). Дальше делаете запрос к MySQL и проверяете занятость этого номера: Если занят, то генерим новый и проверяем заново, если свободен, то выдаём номер и добавляем запись в БД.
Раз в день делаем чистку базы, и удаляем номера, которыми не пользовались например 30 дней.
Формат базы примерно такой:
id | number | player | buy | use
Ну а дальше включаем фантазию и придумываем разные фишки, на основе этого.
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)