-
_images
-
ru
-
_articles
-
_quests
-
_triggers
-
affect
-
arena
-
ba
-
building
-
d
-
dance_event
-
DragonLair
-
ds
-
forked
-
game
-
global
-
guild
-
highscore
-
horse
-
item
-
marriage
-
member
-
mgmt
-
mob
-
pc
-
q
-
indexed_articles
-
item.has_antiflag()
Функция item.has_antiflag проверяет, имеет ли «выделенный» предмет определенный antiflag.
Параметры функции
antiflag
Тип number. Обязательный параметр. Значение антифлага.
Возвращаемые значения
has_antiflag
Тип mixed. Если предмет не был «выделен» или если параметр не является числом, то ничего не возвращается, то бишь nil.
Имеет ли предмет определенный флаг или нет. true boolean, если имеет; false boolean, если не имеет.
Примечания
Функция не может быть вызвана анонимно.
Если точнее, то эта функция делает проверку по битовой маске. Существуют следующие коды антифлагов:
| antiflag | Название | Назначение |
|---|---|---|
| 1 | ITEM_ANTIFLAG_FEMALE | Запрещает женским персонажам использовать этот предмет |
| 2 | ITEM_ANTIFLAG_MALE | Запрещает мужским персонажам использовать этот предмет |
| 4 | ITEM_ANTIFLAG_WARRIOR | Запрещает войнам использовать этот предмет |
| 8 | ITEM_ANTIFLAG_ASSASSIN | Запрещает ниндзя использовать этот предмет |
| 16 | ITEM_ANTIFLAG_SURA | Запрещает сурам использовать этот предмет |
| 32 | ITEM_ANTIFLAG_SHAMAN | Запрещает шаманам использовать этот предмет |
| 64 | ITEM_ANTIFLAG_GET | Запрещает передавать этот предмет через торг |
| 128 | ITEM_ANTIFLAG_DROP | Запрещает выбрасывать этот предмет |
| 256 | ITEM_ANTIFLAG_SELL | Этот предмет нельзя будет продать торговцам-NPC |
| 512 | ITEM_ANTIFLAG_EMPIRE_A | Запрещает использовать этот предмет персонажам из красной империи (Шиньзо) |
| 1024 | ITEM_ANTIFLAG_EMPIRE_B | Запрещает использовать этот предмет персонажам из желтой империи (Хунджо) |
| 2048 | ITEM_ANTIFLAG_EMPIRE_C | Запрещает использовать этот предмет персонажам из синей империи (Джинно) |
| 4096 | ITEM_ANTIFLAG_SAVE | неизвестно |
| 8192 | ITEM_ANTIFLAG_GIVE | неизвестно |
| 16384 | ITEM_ANTIFLAG_PKDROP | Этот предмет не может выпасть из игрока при смерти с отрицательным рангом |
| 32768 | ITEM_ANTIFLAG_STACK | Этот предмет не может быть сложен в пачку |
| 65536 | ITEM_ANTIFLAG_MYSHOP | Этот предмет не может быть продан через узелок (собственный магазин) |
| 131072 | ITEM_ANTIFLAG_SAFEBOX | Этот предмет не может быть положен на склад |
| 262144 | ITEM_ANTIFLAG_WOLFMAN | Этот предмет не может быть использован ликаном |
Битовая маска получается путем сложения всех необходимых кодов. Например, маска 6 означает, что предмет не смогут использовать воины (4) мужского пола (2), итого 2 + 4 = 6. Каждая битовая маска уникальна, поэтому по маске можно безошибочно определить, имеет ли она определенный антифлаг или нет. Например, если параметр antiflag у предмета равен 6, то вызвав функцию item.has_flag(4) можно безошибочно узнать, могут ли его использовать воины или нет.
С помощью функции item.get_antiflag() можно узнать значение антифлага.
Эта функция работает только с «выделенными» предметами. Подробнее тут: item.