Событие посылается в момент нанесения урона кораблю. Поля attacker, defender, damageSource могут быть равны nil, если за время до получения события соответствующий корабль или астральный монстр успел исчезнуть (вышел за пределы видимости, разрушился). Кроме того attacker может быть равен nil, если стрелял не корабль и не астральный монстр.
attacker и defender может быть как кораблем, так и астральным монстром.
Сторона, по кторой попали, представлена в SHIP_SIDE_....
-- поля: таблица со следующими полями: attacker: ObjectId (or nil) - id корабля или астрального монстра, с которого стреляли. defender: ObjectId (or nil) - id корабля или астрального монстра, в который попали. damageSource: ObjectId (or nil) - id интерактивного объекта, который произвел выстрел (пушка). attackerPlayer: ObjectId (or nil) - id игрока, который произвел выстрел. totalDamage: number (int) общий урон, нанесенный кораблю hullDamage: number (int) урон, нанесенный корпусу корабля shieldDamage: number (int) общий урон, нанесенный по щитам deviceDamage: number (int) общий урон, нанесенный по другим устройствам корабля isCritical: boolean - true - нанесен критический урон isGlancing: boolean - true - нанесен уменьшенный урон isLethal: boolean - true - нанесен окончательный урон и объект погиб side: number (enum SHIP_SIDE_...) or nil - сторона корабля, в которую попали angle: number (float) or nil - угол обстрела по горизонтали, для вычисления повреждения щита cannonPenetration: number(float) or nil - процент пробития щита снарядом В зависимости от того, чем был нанесен урон, одно из следующих полей будет не nil: spellId: SpellId (ResourceId) / nil - Id спелла, если били спеллом. abilityId: AbilityId (ResourceId) / nil - Id абилки, если били абилкой. buffId: BuffId (ResourceId) / nil - Id буффа, если били буффом. mapModifierId: MapModifierId (ResourceId) / nil - модификатор карты, если повреждения от модификатора карты