Фиксирование убийств в onplayerdeath

Den629

Участник
Автор темы
165
9
Можно ли как-то отследить 2 убийства от игрока в Onplayerdeath? Мне надо: За 1 убийство он получает 10к, за 2 убийство в течении неск сек он получает бонус 20к
 

savvin

Известный
407
140
Используй переменные с количеством киллов и временем последнего килла из gettime.

C:
#define COMBO_KILL_TIME        (5) // 5 секунд на двойной килл

// Переменная с енуменатором для игрока (допустим PlayerInfo)
pKills,
pLastKillTimestamp,

// OnPlayerDeath
if (killerid != INVALID_PLAYER_ID) {
    new
        kills_count = (++PlayerInfo[killerid][pKills]);

    if (kills_count > 0) {
        if (kills_count == 2 && (PlayerInfo[killerid][pLastKillTimestamp] + COMBO_KILL_TIME) >= gettime()) {
            kills_count = PlayerInfo[killerid][pKills] = 0;
        }
        GivePlayerMoney(playerid, (kills_count * 10000)); // или своя функция выдачи денег игроку
    }
    PlayerInfo[killerid][pLastKillTimestamp] = gettime();
}

Хз насчет работоспособности, но надеюсь суть понятна
 
  • Нравится
Реакции: 0Z0SK0 и Den629