Приветствуем вас на форуме проекта WoW Circle. Если вы читаете это, значит не зарегистрировались у нас. Для того, чтобы получить доступ к расширенным возможностям нашего форума нажмите сюда и пройди регистрацию, которая не займет у вас много времени. После регистрации будут доступны новые, более расширенные, возможности.
Код аддона на вывод сообщения в чат, кто первый сагрил или ударил боса (проверка)

Упомянутые в теме пользователи:

Показано с 1 по 4 из 4

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Заблокирован
    Регистрация
    30.11.2020
    Сообщений
    2,487
    Поблагодарил(а)
    854
    Получено благодарностей: 309 (сообщений: 214).
    Репутация: 997

    Код аддона на вывод сообщения в чат, кто первый сагрил или ударил боса (проверка)

    Попробовал написать аддон, учусь строго не судить: для WoW 3.3.5, который по моей задумке должен работать так, отслеживать первый удар или агро на моба или босса и выводит эту информацию в чат:

    Аддон регистрирует событие COMBAT_LOG_EVENT_UNFILTERED, которое происходит при каждом боевом событии, и проверяет, был ли совершен удар или агро на вражескую цель. Если да, то аддон выводит сообщение в чат с именем игрока, который совершил первый удар или агро, и количеством нанесенного урона.

    Возможно кому-то будет интересно: Я еще его не проверял на работу ну если кто-то будет проверять отпишите, поделитесь скриншотом в этой теме если админы ее не закроют.


    Код аддона:
    Код:
    local frame = CreateFrame("FRAME")
    frame:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")
    
    
    frame:SetScript("OnEvent", function(self, event, ...)
        local timestamp, eventType, hideCaster, sourceGUID, sourceName, sourceFlags, sourceRaidFlags, destGUID, destName, destFlags, destRaidFlags = ...
        if eventType == "SPELL_DAMAGE" or eventType == "SPELL_PERIODIC_DAMAGE" or eventType == "SWING_DAMAGE" then
            local spellId, spellName, spellSchool, amount, overkill, school, resisted, blocked, absorbed, critical, glancing, crushing = select(12, ...)
            if bit.band(destFlags, COMBATLOG_OBJECT_REACTION_HOSTILE) == COMBATLOG_OBJECT_REACTION_HOSTILE and bit.band(destFlags, COMBATLOG_OBJECT_CONTROL_PLAYER) == COMBATLOG_OBJECT_CONTROL_PLAYER then
                SendChatMessage(sourceName .. " агрит " .. destName .. " на " .. amount .. " единиц " .. school .. " урона!", "SAY")
            end
        end
    end)
    По идее код будет отправлять сообщения в чат с информацией об атакующем, цели, количестве урона и типе атаки, когда происходит событие боя, такое как удар, нанесенный игроком или NPC. Сообщения будут отправляться в канал "SAY".

    Согласно этому коду, когда игрок или NPC наносит урон другому игроку или NPC, то в чате будет написано сообщение вида:
    <имя атакующего> агрит <имя цели> на <количество> единиц <тип урона> урона!

    Например, если игрок по имени "Воин" агрит NPC по имени "Гоблин" мечом и наносит 500 единиц физического урона, то в чате будет написано сообщение:
    <Воин> агрит <Гоблин> на 500 единиц физического урона!

    Если же игрок наносит магический урон, то сообщение будет содержать информацию о типе урона:
    <Воин> агрит <Гоблин> на 500 единиц магического урона!
    Последний раз редактировалось Confortis; 03.07.2023 в 01:06.

Похожие темы

  1. Ответов: 1
    Последнее сообщение: 07.07.2020, 14:39
  2. Ответов: 5
    Последнее сообщение: 23.07.2016, 14:39
  3. Гцгцгцгцгцгцгцгцгцгцгц
    от Anarchy в разделе WoW Circle 4.3.4 x100(УСТАРЕЛ)
    Ответов: 28
    Последнее сообщение: 31.12.2015, 23:12
  4. Ответов: 2
    Последнее сообщение: 27.02.2015, 10:53
  5. Ответов: 11
    Последнее сообщение: 09.03.2014, 13:05

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •