Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  • 0
Neentell

Нужна помощь скриптера

Здравствуйте! Чем можно заменить данное выражение? TDateTime dt видимо не поддерживается или библиотеки нет для даты и времени... Подскажите пожайлуста

 

if ( БЛАБЛА[ v_X ].GetCommand() == v_Command )

                {

                    TDateTime dt;  // При запуске локального сервера пишет на эту строчку: Broken expression (missing ';?)

                    TFormatSettings FormatSettings;

 

                    FormatSettings.DateSeparator = '-';

                    FormatSettings.TimeSeparator = ':';

                    FormatSettings.LongDateFormat = "YYYY-MM-DD";

                    FormatSettings.ShortDateFormat = "YYYY-MM-DD";

                    FormatSettings.ShortTimeFormat = "HH:MM:SS";

                    FormatSettings.LongTimeFormat = "HH:MM:SS";

 

                    if (TryStrToDateTime(БЛАБЛА[ v_X ].GetDateUse() + " " + БЛАБЛА[ v_X ].GetTimeUse(), dt, FormatSettings)) {

                        TDateTime delta = TDateTime.CurrentTime() - dt;

                        if (delta > БЛАБЛАБЛАБЛА[ v_I ].GetPauseTime()) {

                            continue;

                        }

                    }

                    БЛАБЛАБЛАБЛАБЛА.SendMessage( v_PlayerBase, " ");

                    return;

                }

Изменено пользователем Neentell (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендованные сообщения

  • 0

скорее всего нет какого-то мода или класса, это не ванильный класс для игры.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
MagicByte MagicByte MagicByte
  • 0
1 час назад, 123new сказал:

скорее всего нет какого-то мода или класса, это не ванильный класс для игры.

А как можно по-другому сделать ограничение по времени? По типу таймера какого-то. Мне нужно, чтобы даже после перезахода и рестарта у него сохранялась пауза. Есть же мод колесо фортуны, которое сохраняет вот эту паузу. Посоветуйте, как можно это сделать, прошу)

Изменено пользователем Neentell (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
1 час назад, Neentell сказал:

А как можно по-другому сделать ограничение по времени? По типу таймера какого-то. Мне нужно, чтобы даже после перезахода и рестарта у него сохранялась пауза. Есть же мод колесо фортуны, которое сохраняет вот эту паузу. Посоветуйте, как можно это сделать, прошу)

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

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

Все это тесно связано с системой мода и его кодом, который вы хотите менять. Рекоммендую с этим к автору работы обратиться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
5 минут назад, 123new сказал:

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

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

Все это тесно связано с системой мода и его кодом, который вы хотите менять. Рекоммендую с этим к автору работы обратиться.

Нет, так дело в том, что я уже все дселал, у меня вопрос в том, какой функцией СРАВНИТЬ время последнего использования и нового использования. Мне нужна функция всего лишь сравнения времени

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
5 минут назад, Neentell сказал:

Нет, так дело в том, что я уже все дселал, у меня вопрос в том, какой функцией СРАВНИТЬ время последнего использования и нового использования. Мне нужна функция всего лишь сравнения времени

сравнить что именно? текст типа String? Класс, структуру которого мы не знаем? Число типа inf или float? объект переменной буквально? ЧТО????

Изменено пользователем 123new (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
33 минуты назад, 123new сказал:

сравнить что именно? текст типа String? Класс, структуру которого мы не знаем? Число типа inf или float? объект переменной буквально? ЧТО????

Сравнить дату и время использования команды из json файла игрока в виде 08.03.2022 14:05 + PauseTime, который равен 3, то есть 08.03.2022 17:05, с настоящим временим пусть оно будет 08.03.2022 16:45. Сделать проверку если настоящее время больше времени взятого из json файла + PauseTime, то команду можно использовать, если нет, то нельзя. А так как в моем примере оно меньше, то использовать нельзя. Я вот и не знаю в каком формате сделать эту проверку.

Изменено пользователем Neentell (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
11 минут назад, Neentell сказал:

Сравнить дату и время использования команды из json файла игрока в виде 08.03.2022 14:05 + PauseTime, который равен 3, то есть 08.03.2022 17:05 с настоящим временим, грубо говоря пусть оно будет 08.03.2022 16:45. Сделать проверку если настоящее время больше времени взятого из json файла + PauseTime, то команду можно использовать, если нет, то нельзя. А так как в моем примере оно меньше, то использовать нельзя. Я вот и не знаю в каком формате сделать эту проверку.

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

1. читать текущие дату и время сервера в переменные, где каждая переменная будет означать соответственно: год, месяц, день, час, минуту, секунду

2. читать с json дату и время в переменные, где каждая переменная будет означать соответственно: год, месяц, день, час, минуту, секунду. Ввиду того что хз как оно там пишется, то и хз как читать и переводить. Возможно прийдется парсить строку и делить значения ручками соответственно, ковертируя в числа.

3. Создать 3 время на основе считанного с учетом +3 нужных вам, разумеется с проверками и перерассчетом, что если вдруг настало 24 часа то это +1 день, а если стало 30 или 31 число то это +1 месяц, и т.п.

4. Сравнить рассчитанное время и серверное и сделать соответствующий вывод о доступности действия, нужного вам.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
08.03.2022 в 14:27, 123new сказал:

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

1. читать текущие дату и время сервера в переменные, где каждая переменная будет означать соответственно: год, месяц, день, час, минуту, секунду

2. читать с json дату и время в переменные, где каждая переменная будет означать соответственно: год, месяц, день, час, минуту, секунду. Ввиду того что хз как оно там пишется, то и хз как читать и переводить. Возможно прийдется парсить строку и делить значения ручками соответственно, ковертируя в числа.

3. Создать 3 время на основе считанного с учетом +3 нужных вам, разумеется с проверками и перерассчетом, что если вдруг настало 24 часа то это +1 день, а если стало 30 или 31 число то это +1 месяц, и т.п.

4. Сравнить рассчитанное время и серверное и сделать соответствующий вывод о доступности действия, нужного вам.

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

Не видел, но сделал, спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
08.03.2022 в 14:27, 123new сказал:

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

1. читать текущие дату и время сервера в переменные, где каждая переменная будет означать соответственно: год, месяц, день, час, минуту, секунду

2. читать с json дату и время в переменные, где каждая переменная будет означать соответственно: год, месяц, день, час, минуту, секунду. Ввиду того что хз как оно там пишется, то и хз как читать и переводить. Возможно прийдется парсить строку и делить значения ручками соответственно, ковертируя в числа.

3. Создать 3 время на основе считанного с учетом +3 нужных вам, разумеется с проверками и перерассчетом, что если вдруг настало 24 часа то это +1 день, а если стало 30 или 31 число то это +1 месяц, и т.п.

4. Сравнить рассчитанное время и серверное и сделать соответствующий вывод о доступности действия, нужного вам.

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
25 минут назад, Neentell сказал:

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

1. нет, это проще конкретным предметам задлочить. Всем подряд не получится вроде бы.

2. создаешь новый предмет на базе изначального и присваиваешь ему хоть имя, хоть характеристики - все что хочешь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
15 часов назад, 123new сказал:

1. нет, это проще конкретным предметам задлочить. Всем подряд не получится вроде бы.

2. создаешь новый предмет на базе изначального и присваиваешь ему хоть имя, хоть характеристики - все что хочешь.

А запретить прицеливаться можно? Можешь подсказать функцию?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×
×
  • Создать...

Важная информация

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

Поддержка