Sign in to follow this  
Followers 0

3 posts in this topic

Знаете ли вы, что можно хранить не более 32 переменных, которые могут принимать значения логического типа true/false, в одной переменной? Вы не только сэкономите память, но также наведете порядок в своем коде. С использованием char можно будет хранить только 8 флагов!

Если у вас есть, допустим, 100 переменных логического типа, то вы будете использовать 195 Кб пространства. Используя 4 массива с флагами, вы затратите только 8 Кб. Результат будет тот же, но вы сэкономите 187 Кб пространства.


Объявление:

enum
    PlayerFlags: (<< = 1)
    {
        LOGGED = 1, //очень важно, чтобы значение первой константы было 1
        ANIMLOADING,
        RESPAWN
    };

new
    PlayerFlags:Player[MAX_PLAYERS];

 

Как это используется:

//приравняет все флаги к 0
Player[playerid] = PlayerFlags:0;
 
//значение флага ANIMLOADING будет истина (1)
Player[playerid] |= ANIMLOADING;

 

//значение флага ANIMLOADING будет ложь (0)
Player[playerid] &= ~ANIMLOADING;

 

//установит противоположное значение флага ANIMLOADING
Player[playerid] ^= ANIMLOADING;

 

//вернет значение флага ANIMLOADING
Player[playerid] & ANIMLOADING;

 

Автор: Slice

Перевод данной версии: @m1n1vv 

Edited by DEST
Причина: правки

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

АВТОМАТИЧЕСКИ СФОРМИРОВАННОЕ СООБЩЕНИЕ:

Данная тема была перемещена модерацией или администрацией портала PAWNO-RUS.RU! 

Перемещена из: "Скриптинг PAWN > Готовые решения"

Перемещена в: "Скриптинг PAWN > Уроки"

 

С уважением, ваш Бот! 

Если вы НЕ согласны с переносом данной темы в раздел "Скриптинг PAWN > Уроки", пожалуйтесь на это сообщение в жалобе указав причины вашего недовольства. Спасибо. 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • angel_sinvays
      By angel_sinvays
      Приветствую! Меня зовут Артём, мне 19 лет, и я являюсь основателем и ведущим специалистом студии Sinvays. Уже семь лет я работаю в PAWN, и за это время принял участие в множестве проектов. Моя цель – создавать качественные и уникальные решения для вашего игрового проекта. Обратите внимание, чтобы сделать заказ необходимо написать мне в личные сообщения либо делать это через студию.
      Ознакомиться с полным спектром услуг можно у меня в личных сообщениях либо через бота в студии.

      Список услуг которые я предоставляю:
       
      Написание регистрации на mysql [DIALOG / TextDraw] — от 350 рублей.
      Написание авторизации на mysql [DIALOG / TextDraw] — от 350 рублей.
      Написание системы — от 200 рублей (в зависимости от сложности).
      Рисовка TextDraw — от 50 рублей (зависит от потребностей)
      Исправление багов в игровом моде — от 100 рублей (зависит от количества и сложности)
      Переделка любого мода под ваши интересы — от 150 рублей (зависит от потребностей)
       
      Пожалуйста, обратите внимание:

      Для начала сотрудничества мне необходимо четкое техническое задание и ваше желание работать совместно.

      Услуги предоставляются по 100% оплате!

      Моё портфолио: https://vk.com/topic-180751181_50413848
      Мои отзывы: https://vk.com/topic-180751181_50413975
    • sergeenko
      By sergeenko
      Дарова, у меня версия самп R3, решил поставить sampvoice r3, в консоли выдаёт это:
       
      [22:39:00]  Loading plugin: sampvoice.so [22:39:00]   Failed (/lib32/libc.so.6: version `GLIBC_2.33' not found (required by plugins/sampvoice.so)) Плагин (sampvoice.so + sampvoice.dll) закинул в /plugins
      Инклуд (sampvoice.inc) закинул в /include
      Chm и cfg (sampvoice.chm + control.cfg) закинул в корень мода