commonlibsse_ng\re\t/
TESEnchantableForm.rs

1use crate::re::BaseFormComponent::{BaseFormComponent, BaseFormComponentVtbl};
2use crate::re::EnchantmentItem::EnchantmentItem;
3use crate::re::MagicSystem::CastingType_CEnum;
4use crate::re::offsets_rtti::RTTI_TESEnchantableForm;
5use crate::re::offsets_vtable::VTABLE_TESEnchantableForm;
6use crate::rel::id::VariantID;
7
8#[repr(C)]
9#[derive(Debug)]
10pub struct TESEnchantableForm {
11    pub __base: BaseFormComponent,            // 0x00
12    pub formEnchanting: *mut EnchantmentItem, // 0x08
13    pub castingType: CastingType_CEnum,       // 0x10
14    pub amountOfEnchantment: u16,             // 0x12
15    pub pad14: u32,                           // 0x14
16}
17const _: () = assert!(core::mem::size_of::<TESEnchantableForm>() == 0x18);
18
19impl TESEnchantableForm {
20    pub const RTTI: VariantID = RTTI_TESEnchantableForm;
21    pub const VTABLE: [VariantID; 1] = VTABLE_TESEnchantableForm;
22}
23
24#[repr(C)]
25#[derive(Debug)]
26pub struct TESEnchantableFormVtbl {
27    pub __base: BaseFormComponentVtbl, // 0x00
28}
29const _: () = {
30    const VFUNC_COUNT: usize = 0x4;
31
32    const EXPECTED_SIZE: usize = VFUNC_COUNT * core::mem::size_of::<usize>();
33    assert!(core::mem::size_of::<TESEnchantableFormVtbl>() == EXPECTED_SIZE);
34};