Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 6 из 6
  1. #1
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±

    Максимальное кол-во pVar для игрока

    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    Определитесь уже, что Вы хотите использовать: PVar'ы ("tazer") или переменные (массив tazer_status).
    P.S.: 2-й вариант желательнее, т.к. кол-во PVar'ов у каждого игрока ограничено.
    Можно узнать сколько максимум PVar'ов можно юзать для каждого игрока?
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

  2. Пользователь сказал cпасибо:
    BadPawn (05.02.2016)
  3. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Можно. Достаточно написать простой код, типа:
    PHP код:
    public OnPlayerConnect(playerid)
    {
        
    printf("До - %d"GetPVarsUpperIndex(playerid));
        for(new 
    istring[30]; 1000000i++)
        {
            
    format(stringsizeof(string), "pVarID_%d"i);
            
    SetPVarInt(playeridstring1);
        }
        
    printf("После - %d"GetPVarsUpperIndex(playerid));
        return 
    1;

    И получится, что pVar всего 800 одновременно может "жить"
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    Всего 800 для одного игрока или всего всея мода?)
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

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

    Статус
    Оффлайн
    Регистрация
    23.12.2013
    Адрес
    Омск
    Сообщений
    196
    Репутация:
    22 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    Всего 800 для одного игрока или всего всея мода?)
    Ты же создаешь для игрока.Поэтому логично предположить,что 800 - это лимит для одного игрока.



    Любой дурак может написать код, понятный компьютеру. Хороший программист пишет код, понятный человеку
    Мартин Фаулер


    Skype
    profan99
    VK
    click




  6. Пользователь сказал cпасибо:
    DeimoS (05.02.2016)
  7. #5
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    Это то да, но есть запасные варианты "а если", "а вдруг" вот и уточнил)
    Тему можно закрывать.
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

  8. #6
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2589 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Можно. Достаточно написать простой код, типа:
    PHP код:
    public OnPlayerConnect(playerid)
    {
        
    printf("До - %d"GetPVarsUpperIndex(playerid));
        for(new 
    istring[30]; 1000000i++)
        {
            
    format(stringsizeof(string), "pVarID_%d"i);
            
    SetPVarInt(playeridstring1);
        }
        
    printf("После - %d"GetPVarsUpperIndex(playerid));
        return 
    1;

    И получится, что pVar всего 800 одновременно может "жить"
    Зачем же тратить время на целый миллион итераций? Если превышен лимит PVar'ов, функция SetPVarInt вернёт 0 (в случае успеха возвращается 1), это и можно сделать условием выхода из цикла.
    Примерно по такому же принципу я искал лимит SVar'ов (2000) в прошлом году: http://forum.sa-mp.com/showpost.php?...&postcount=161
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  9. Пользователь сказал cпасибо:
    DeimoS (05.02.2016)
 

 

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

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

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

Ваши права

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