RU/Resource:Scoreboard: Difference between revisions
No edit summary |
|||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{RU/Resource page}} | {{RU/Resource page}} | ||
__NOTOC__ | __NOTOC__ | ||
DirectX scoreboard отображает ники, команды, пинги и другие данные подключенных к серверу игроков. У нее также имеется веб-интерфейс на javascript, что позволяет пользоваться ею из браузера. Создана как замена старой [[Resource:oldScoreboard|scoreboard]], созданной [User:jbeta|jbeta]]. | DirectX scoreboard (панель игроков) отображает ники, команды, пинги и другие данные подключенных к серверу игроков. У нее также имеется веб-интерфейс на javascript, что позволяет пользоваться ею из браузера. Создана как замена старой [[Resource:oldScoreboard|scoreboard]], созданной [[User:jbeta|jbeta]]. | ||
Наиболее веское различие по сравнению со старым ресурсом - то, что новая панель просмотра игроков создана с полным использованием доустпных в MTA функций прорисовки DirectX. | Наиболее веское различие по сравнению со старым ресурсом - то, что новая панель просмотра игроков создана с полным использованием доустпных в MTA функций прорисовки DirectX. | ||
Line 74: | Line 74: | ||
int scoreboardGetColumnCount () | int scoreboardGetColumnCount () | ||
</syntaxhighlight> | </syntaxhighlight> | ||
*'' | *''Аргументов нет.'' | ||
'''Возвращает количество столбцов в scoreboard.''' | '''Возвращает количество столбцов в scoreboard.''' | ||
<br> | <br> | ||
Line 107: | Line 107: | ||
'''Заметка:''' Функции из спика ниже, использующиеся также в ресурсе [[oldScoreboard]], работают и в этом тоже. | '''Заметка:''' Функции из спика ниже, использующиеся также в ресурсе [[Resource:OldScoreboard|oldScoreboard]], работают и в этом тоже. | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
bool addScoreboardColumn ( string columnName, element visibleToElement, int columnPosition, float columnSize ) | bool addScoreboardColumn ( string columnName, element visibleToElement, int columnPosition, float columnSize ) | ||
Line 218: | Line 218: | ||
int, int scoreboardGetTopCornerPosition () | int, int scoreboardGetTopCornerPosition () | ||
</syntaxhighlight> | </syntaxhighlight> | ||
''' | '''Возвращает абсолютную позицию верхнего угла scoreboard, если она на экране, в противном случае - ''false''.''' | ||
<br> | <br> | ||
Line 232: | Line 232: | ||
table scoreboardGetSelectedRows () | table scoreboardGetSelectedRows () | ||
</syntaxhighlight> | </syntaxhighlight> | ||
''Возвращает таблицу со всеми выделенными полями (элемент, который может оказаться либо игроком, либо командой). Может также вернуть пустую таблицу, если таковых нет.'' | |||
<br> | <br> | ||
Latest revision as of 03:05, 1 April 2016
DirectX scoreboard (панель игроков) отображает ники, команды, пинги и другие данные подключенных к серверу игроков. У нее также имеется веб-интерфейс на javascript, что позволяет пользоваться ею из браузера. Создана как замена старой scoreboard, созданной jbeta.
Наиболее веское различие по сравнению со старым ресурсом - то, что новая панель просмотра игроков создана с полным использованием доустпных в MTA функций прорисовки DirectX. При добавлении в нее столбца, для него создается соответсвующее поле element data, так что при добавлении столбца "score", содержимое поля "score" из element data и будет показываться в самой панели для всех игроков и команд.
Панель игроков входит в стандартный пакет поставки сервера.
Экспортированные функции/события
Функции
bool scoreboardAddColumn ( string name, [ element forElement = getRootElement(), int width = 70, string friendlyName = name, int priority = slot after "name" column ] )
- name: Имя столбца (также является и именем поля в element data, из которого будет браться информация).
- forElement: Игрок, для которого создается столбец.
- width: Ширина столбца в пикселях.
- friendlyName: Дружелюбное имя столбца (отображается непосредственно в самой панели).
- priority: Приоритетный порядок столбца (1-500). Если данный номер по порядку занят, то располагающийся по нему столбец будет сдвинут вперед.
bool scoreboardRemoveColumn ( string name, [ element forElement = getRootElement() ] )
- name: Имя столбца.
- forElement: Игрок, для которого убирается столбец.
bool scoreboardClearColumns ( [ element forElement = getRootElement() ] )
- forElement: Игрок, чьи столбцы в scoreboard будут очищены.
bool scoreboardResetColumns ( [ element forElement = getRootElement() ] )
- forElement: Игрок, чьи столбцы в scoreboard будут сброшены (останутся только ник и пинг).
bool scoreboardSetForced ( bool forced, [ element forElement = getRootElement() ] )
- forced: Будет ли scoreboard принудительно открыта.
- forElement: Игрок, чья scoreboard будет принудительно открыта.
bool scoreboardSetSortBy ( string name, [ bool descending = true, element forElement = getRootElement() ] )
- name: Имя столбца. Может быть установлено на nil для отключения сортировки.
- descending: Использовать порядок сортировки по убыванию.
- forElement: Игрок, чья scoreboard будет отсортирована.
int scoreboardGetColumnPriority ( string name )
- name: Имя столбца.
Возвращает приоритетный порядок столбца (1-500).
bool scoreboardSetColumnPriority ( string name, int priority, [ element forElement = getRootElement() ] )
- name: Имя столбца.
- priority: Приоритетный порядок столбца (1-500). Если данный номер по порядку занят, то располагающийся по нему столбец будет сдвинут вперед.
- forElement: Игрок, для которого создается столбец.
int scoreboardGetColumnCount ()
- Аргументов нет.
Возвращает количество столбцов в scoreboard.
bool scoreboardForceTeamsVisible( bool enabled )
- enabled: Будут ли имена команд всегда видны в scoreboard (настройки пользователя - проигнорированы)?
bool scoreboardForceTeamsHidden( bool enabled )
- enabled: Будут ли имена команд всегда скрыты в scoreboard (настройки пользователя - проигнорированы)?
bool isPrioritySlotFree( int slot )
- slot: Приоритетный порядок столбца, который будет проверен.
Проверяет, свободен ли приоритетный порядок столбца по данному номеру.
int getNextFreePrioritySlot( [ int startAt = 1 ] )
- startAt: С какой позиции начинать искать свободные места.
Находит следующий свободный приоритетный порядок столбца.
Заметка: Функции из спика ниже, использующиеся также в ресурсе oldScoreboard, работают и в этом тоже.
bool addScoreboardColumn ( string columnName, element visibleToElement, int columnPosition, float columnSize ) bool removeScoreboardColumn ( string columnName ) bool setPlayerScoreboardForced ( player thePlayer, bool forced ) bool resetScoreboardColumns ()
Функции
bool scoreboardAddColumn ( string name, [ int width = 70, string friendlyName = name, int priority = slot after "name" column, function textFunction = nil ] )
- name: Имя столбца (также является и именем поля в element data, из которого будет браться информация).
- width: Ширина столбца в пикселях.
- friendlyName: Дружелюбное имя столбца (отображается непосредственно в самой панели).
- priority: Приоритетный порядок столбца (1-500). Если данный номер по порядку занят, то располагающийся по нему столбец будет сдвинут вперед.
- textFunction: Текст функции, которая будет использоваться для обработки содержания столбца перед его показом. Например, эта функция будет заменять "_" в никах игроков пробелом, если она применена к столбцу "name".
function fixName( playerName ) return playerName:gsub( "_", " " ) end
bool scoreboardRemoveColumn ( string name )
- name: Имя столбца.
bool scoreboardClearColumns ()
- Аргументов нет.
bool scoreboardResetColumns ()
- Аргументов нет.
bool scoreboardSetForced ( bool forced )
- forced: Будет ли scoreboard принудительно открыта.
bool scoreboardSetColumnTextFunction ( string name, function textFunction )
- name: Имя столбца.
- textFunction: Текст функции, которая будет использоваться для обработки содержания столбца перед его показом. Например, эта функция будет заменять "_" в никах игроков пробелом, если она применена к столбцу "name".
function fixName( playerName ) return playerName:gsub( "_", " " ) end
bool scoreboardSetSortBy ( string name, [ bool descending = true ] )
- name: Имя столбца. Может быть установлено на nil для отключения сортировки.
- descending: Использовать порядок сортировки по убыванию.
int scoreboardGetColumnPriority ( string name )
- name: Имя столбца.
Возвращает приоритетный порядок столбца (1-500).
bool scoreboardSetColumnPriority ( string name, int priority )
- name: Имя столбца.
- priority: Приоритетный порядок столбца (1-500). Если данный номер по порядку занят, то располагающийся по нему столбец будет сдвинут вперед.
- forElement: Игрок, для которого создается столбец.
int scoreboardGetColumnCount ()
- Аргументов нет.
Возвращает количество столбцов в scoreboard.
bool isPrioritySlotFree( int slot )
- slot: Приоритетный порядок столбца, который будет проверен.
Проверяет, свободен ли приоритетный порядок столбца по данному номеру.
int getNextFreePrioritySlot( [ int startAt = 1 ] )
- startAt: С какой позиции начинать искать свободные места.
Находит следующий свободный приоритетный порядок столбца.
int, int scoreboardGetTopCornerPosition ()
Возвращает абсолютную позицию верхнего угла scoreboard, если она на экране, в противном случае - false.
int, int scoreboardGetSize ()
Возвращает абсолютный размер (ширина, высота) the scoreboard, если она на экране, в противном случае - false.
table scoreboardGetSelectedRows ()
Возвращает таблицу со всеми выделенными полями (элемент, который может оказаться либо игроком, либо командой). Может также вернуть пустую таблицу, если таковых нет.
Заметка: Функции из спика ниже, использующиеся также в ресурсе oldScoreboard, работают и в этом тоже.
bool setScoreboardForced ( bool forced )
События
onClientPlayerScoreboardClick
bool selected, int cursorX, int cursorY
- selected: Было ли слудующее поле выделено (true) или нет (false).
- cursorX: Абсолютная позиция курсора по оси X.
- cursorY: Абсолютная позиция курсора по оси Y.
Срабатывает, когда игрок кликает по полю с командой/игроком левой кнопкой мыши.
Source события - элемент, по которому кликнули, может оказаться либо игроком, либо командой.
Вы можете вызывать их и из других ресурсов, используя call()
call ( getResourceFromName ( "dxscoreboard" ), "scoreboardAddColumn", "Wanted level" ) -- Заметьте, что синтаксис ниже - тоже правильный exports.dxscoreboard:scoreboardAddColumn( "Wanted level" )
Вы можете задавать данные в scoreboard через функцию setElementData:
-- 3 вставляется в столбец wanted level игрока, если столбец, -- названный "Wanted level" был добавлен в scoreboard setElementData ( player, "Wanted level", 3 )