SMSG_CAST_RESULT

Client Version 1.12

Wowm Representation

Autogenerated from wowm file at wow_message_parser/wowm/world/spell/smsg_cast_result.wowm:303.

smsg SMSG_CAST_RESULT = 0x0130 {
    Spell spell;
    SimpleSpellCastResult result;
    if (result != FAILURE) {
        CastFailureReason reason;
        if (reason == REQUIRES_SPELL_FOCUS) {
            u32 required_spell_focus;
        }
        else if (reason == REQUIRES_AREA) {
            Area area;
        }
        else if (reason == EQUIPPED_ITEM_CLASS) {
            u32 equipped_item_class;
            u32 equipped_item_subclass_mask;
            u32 equipped_item_inventory_type_mask;
        }
    }
}

SMSG have a header of 4 bytes.

SMSG Header

OffsetSize / EndiannessTypeNameDescription
0x002 / Biguint16sizeSize of the rest of the message including the opcode field but not including the size field.
0x022 / Littleuint16opcodeOpcode that determines which fields the message contains.

Body

OffsetSize / EndiannessTypeNameComment
0x044 / LittleSpellspell
0x081 / -SimpleSpellCastResultresult

If result is not equal to FAILURE:

OffsetSize / EndiannessTypeNameComment
0x091 / -CastFailureReasonreason

If reason is equal to REQUIRES_SPELL_FOCUS:

OffsetSize / EndiannessTypeNameComment
0x0A4 / Littleu32required_spell_focus

Else If reason is equal to REQUIRES_AREA:

OffsetSize / EndiannessTypeNameComment
0x0E4 / -Areaarea

Else If reason is equal to EQUIPPED_ITEM_CLASS:

OffsetSize / EndiannessTypeNameComment
0x124 / Littleu32equipped_item_class
0x164 / Littleu32equipped_item_subclass_mask
0x1A4 / Littleu32equipped_item_inventory_type_mask