Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 6 из 6

Тема: GetPlayerVersion

  1. #1
    Аватар для Sersoftin
    Пользователь

    Статус
    Оффлайн
    Регистрация
    16.08.2014
    Адрес
    Rostov-on-Don
    Сообщений
    29
    Репутация:
    8 ±

    GetPlayerVersion

    Меня уже просто выбесила эта штука. Не пойму, что за дела. Есть в общем код:
    PHP код:
    stock CheckClientVersion(playerid)
    {
        new 
    client_ver[4];
        
    GetPlayerVersion(playeridclient_versizeof(client_ver));
        return 
    strcmp("0.3z"client_ver);

    В OnPlayerConnect
    PHP код:
    if (!CheckClientVersion(playerid))
            
    SendClientMessage(playerid, -1"All normal! Client supported!");
        else
            
    SendClientMessage(playerid, -1"Client not supported!"); 
    Запускаю сервер, запускаю клиент. Захожу. Нифига в чат не выводит. Более того - дальнейшее выполнение прекращается. С КАКОГО?! Я пытался прозвонить переменные. Как только дело доходит до вывода результата сравнения - выполнение прекращается. Результат сравнения не выводится. Версия клиента выводится без проблем. Вот как так?! С другими "сравнениями" такого нет.

  2. #2
    Аватар для Daniel_Cortez
    new fuck_logic[0] = EOS;

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    1,662
    Репутация:
    2145 ±
    Цитата Сообщение от Sersoftin Посмотреть сообщение
    PHP код:
    new client_ver[4]; 
    1. Внимательно посмотрите на размер буфера. Выделяете 4 ячейки, когда для "0.3z" нужно 5 (4 символа + нуль-символ для обозначение конца строки). Отсюда выход за пределы массива и дальше выполнение кода обрывается.
    2. Где гарантия, что версия у клиента именно 0.3z? Это может быть и 0.3z-R1, и R2, ..., R4.
    Индивидуально в PM и Skype по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
    SA-MP 0.4 is a lie

  3. #3
    Аватар для Sersoftin
    Пользователь

    Статус
    Оффлайн
    Регистрация
    16.08.2014
    Адрес
    Rostov-on-Don
    Сообщений
    29
    Репутация:
    8 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Crashdetect подключали?
    Подключен по дефолту. Ничего не показывает.

    - - - Добавлено - - -

    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    1. Внимательно посмотрите на размер буфера. Выделяете 4 ячейки, когда для "0.3z" нужно 5 (4 символа + нуль-символ для обозначение конца строки). Отсюда выход за пределы массива и дальше выполнение кода обрывается.
    2. Где гарантия, что версия у клиента именно 0.3z? Это может быть и 0.3z-R1, и R2, ..., R4.
    1) Сейчас проверю, спасибо, не учел.
    2) В примере на вики буфер 40 ячеек. Туда запихивается строка 25-26 ячеек + версия. И версия эта = 0.3z.

  4. #4
    Аватар для Sersoftin
    Пользователь

    Статус
    Оффлайн
    Регистрация
    16.08.2014
    Адрес
    Rostov-on-Don
    Сообщений
    29
    Репутация:
    8 ±
    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    1. Внимательно посмотрите на размер буфера. Выделяете 4 ячейки, когда для "0.3z" нужно 5 (4 символа + нуль-символ для обозначение конца строки). Отсюда выход за пределы массива и дальше выполнение кода обрывается.
    2. Где гарантия, что версия у клиента именно 0.3z? Это может быть и 0.3z-R1, и R2, ..., R4.
    Респект и уважуха Проблема была в малом размере буфера. Спасибки :3

    - - - Добавлено - - -

    Цитата Сообщение от DeimoS Посмотреть сообщение
    Хмм...


    it's magic.... fucking magic... i fuck this magic!! :D

  5. #5
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Только зачем эта проверка, если в клиенте она встроена по дэфолту? На сервер тупо не пустит, если версия клиента не совпадает с версией сервера.
    P.S. После того, как ответишь, подчищу тему
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  6. #6
    Аватар для Sersoftin
    Пользователь

    Статус
    Оффлайн
    Регистрация
    16.08.2014
    Адрес
    Rostov-on-Don
    Сообщений
    29
    Репутация:
    8 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Только зачем эта проверка, если в клиенте она встроена по дэфолту? На сервер тупо не пустит, если версия клиента не совпадает с версией сервера.
    P.S. После того, как ответишь, подчищу тему
    Меня посетила эта мысль, но все же стало интересно, почему же так у меня было.
    Последний раз редактировалось DeimoS; 27.10.2014 в 21:46.

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •