• Приветствуем на сайте, Гость! Обязательно ознакомьтесь с условиями и правилами Публичной оферты Проекта NetZONA.org: https://netzona.org/help/public-offer/

  • Приветствуем на сайте, Гость! Обязательно ознакомьтесь с условиями и правилами использования Ваших файлов cookie на Проекте NetZONA.org: https://netzona.org/help/cookies/

  • Приветствуем на сайте, Гость! Обязательно ознакомьтесь с Политикой конфиденциальности Проекта NetZONA.org: https://netzona.org/pages/privacy-policy/

  • Ответы на основные вопросы: https://netzona.org/threads/populjarnye-voprosy-i-otvety-na-nix.6122/

  • Приветствуем на сайте, Гость! Приобрести (купить) Информационную услугу (в том числе группу "Проверенный") на Проекте NetZONA.org: https://netzona.org/account/upgrades

Проблема Игрок разбился

  • Автор темы Автор темы Hikka
  • Дата начала Дата начала
Статус
В этой теме нельзя размещать новые ответы.

Hikka

Модератор
Команда форума
Регистрация
29 Сен 2016
Сообщения
556
Реакции
1
Баллы
60
Возраст
30
Пол
Не получается отнимать опыт игрока, когда тот разбился.

Код:
function GM:PlayerDeath(victim, inflictor, attacker)
    if (!IsValid(attacker) || !IsValid(victim)) then return end

    local random = math.random(1, 10)

    if (attacker:IsPlayer() != victim:IsPlayer()) then
        attacker:PlayerAddXP(random)
        attacker:ChatPrint("Вы получили " ..random.. " XP за убийство игрока!")
    else
        if (tonumber(attacker:PlayerGetLevel()) > 1) then
            attacker:ChatPrint("Вы потеряли " ..random.. " XP после смерти!")
            attacker:PlayerLoseXP(random)
        end
    end
end

в данный момент, когда игрок умирает через kill в консоли или его убивают отнимается опыт, а если разбился то нет.... что не так?
 
Код:
function GM:PlayerDeath(victim, inflictor, attacker)
    if (!IsValid(victim)) then return end
    local random = math.random(1, 10)
    if (tonumber(victim:PlayerGetLevel()) > 1) then
        victim:ChatPrint("Вы потеряли " ..random.. " XP после смерти!")
        victim:PlayerLoseXP(random)
    end
    if (IsValid(attacker) and attacker:IsPlayer() != victim:IsPlayer()) then
        attacker:PlayerAddXP(random)
        attacker:ChatPrint("Вы получили " ..random.. " XP за убийство игрока!")
    end
end
 
Статус
В этой теме нельзя размещать новые ответы.
Главная Регистрация
Назад
Сверху