Русское сообщество по скриптингу

Список игроков по фрагам

Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.

Модераторы: Subb98, liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.

Список игроков по фрагам

Сообщение Vovan k. » 16 май 2010, 15:05

Есть ли функция получения списка игроков (ников) в массив, в таком порядке(если игроков 10):

player[o] - имеет наибольшее кол-во фрагов
...
player[9] - имеет наименьшее кол-во фрагов.



или все нужно делать вручную?
Аватара пользователя
Vovan k.
 
Сообщения: 248
Зарегистрирован: 24 апр 2010, 20:52
Откуда: Украина
Благодарил (а): 19 раз.
Поблагодарили: 52 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6
Другое:
C#/C++
PHP/MySQL

Re: Список игроков по фрагам

Сообщение xPaw » 16 май 2010, 15:14

Попробуй это
[pawn]// Usage:
new iPlayers[ 32 ][ 2 ],
    iNum = GetPlayersByFrags( iPlayers );

// iPlayers[ 0 ][ 0 ] - Id
// iPlayers[ 0 ][ 1 ] - Frags

GetPlayersByFrags( &iPlayers[ 32 ][ 2 ] ) {
    new iNum, iTemp[ 32 ], iPlayer;
    get_players( iTemp, iNum, "c" );
    
    for
( new i; i < iNum; i++ ) {
        iPlayer = iTemp[ i ];
        iPlayers[ i ][ 0 ] = iPlayer;
        iPlayers[ i ][ 1 ] = get_user_frags( iPlayer );
    }
    
    SortCustom2D
( iPlayers, 32, "SortFragsCallBack" );
    
    return iNum
;
}

public SortFragsCallBack( const iElem1[ ], const iElem2[ ], const iArray[ ], szData[ ], iSize ) {
    if( iElem1[ 1 ] < iElem2[ 1 ] ) {
        return 1;
    }
    else if( iElem1[ 1 ] > iElem2[ 1 ] ) {
        return -1;
    }
    
    return 0
;
}
 [/pawn]
Аватара пользователя
xPaw
 
Сообщения: 99
Зарегистрирован: 03 янв 2010, 03:09
Благодарил (а): 16 раз.
Поблагодарили: 84 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6


Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 15