1#[cfg(feature = "app-godunitmenuitem-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8 use crate::{
9 app::basicmenuitem::{BasicMenuItem, IBasicMenuItem},
10 system::object::{IObject, Object},
11 };
12
13 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/godunitmenuitem/GodUnitMenuItem.md"))]
14 #[::unity::class(namespace = "App", name = "GodUnitMenuItem")]
15 #[parent(crate::app::basicmenuitem::BasicMenuItem)]
16 pub struct GodUnitMenuItem {
17 #[offset(112)]
18 #[rename(name = "m_SelectEventHandler")]
19 pub m_select_event_handler: crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler,
20 #[offset(120)]
21 #[rename(name = "m_DecideEventHandler")]
22 pub m_decide_event_handler: crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler,
23 #[offset(128)]
24 #[rename(name = "m_IsSelected")]
25 pub m_is_selected: bool,
26 #[offset(129)]
27 #[rename(name = "m_IsShowRingDirtyIcon")]
28 pub m_is_show_ring_dirty_icon: bool,
29 #[offset(132)]
30 #[rename(name = "m_GodType")]
31 pub m_god_type: crate::app::ringcleaningsequence::RingCleaningSequence_GodType,
32 }
33}
34
35#[cfg(feature = "app-godunitmenuitem-types")]
36pub use __types::*;
37
38#[cfg(feature = "app-godunitmenuitem")]
39pub trait IGodUnitMenuItemMethods: IGodUnitMenuItem {
40 #[doc = "`get_God()` overload"]
41 fn get_god(self) -> crate::app::godunit::GodUnit {
42 unsafe {
43 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
44 ::unity::il2cpp_call!((::unity::module_base()+0x23471d0usize)as*mut u8,crate::app::godunit::GodUnit;
45(GodUnitMenuItem)__receiver)
46 }
47 }
48 #[doc = "`set_God(crate::app::godunit::GodUnit)` overload"]
49 fn set_god(self, value: impl ::core::convert::Into<crate::app::godunit::GodUnit>) -> () {
50 unsafe {
51 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
52 ::unity::il2cpp_call!((::unity::module_base()+0x23471e0usize)as*mut u8,();
53(GodUnitMenuItem)__receiver,(crate::app::godunit::GodUnit)::core::convert::Into::into(value))
54 }
55 }
56 #[doc = "`.ctor(crate::app::godunit::GodUnit, crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler, crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler, bool, bool, crate::app::ringcleaningsequence::RingCleaningSequence_GodType)` overload"]
57 fn ctor(
58 self,
59 god: impl ::core::convert::Into<crate::app::godunit::GodUnit>,
60 select_event_handler: impl ::core::convert::Into<crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler>,
61 decide_event_handler: impl ::core::convert::Into<crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler>,
62 is_selected: impl ::core::convert::Into<bool>,
63 is_show_ring_dirty_icon: impl ::core::convert::Into<bool>,
64 r#type: impl ::core::convert::Into<crate::app::ringcleaningsequence::RingCleaningSequence_GodType>,
65 ) -> () {
66 unsafe {
67 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
68 ::unity::il2cpp_call!((::unity::module_base()+0x2347110usize)as*mut u8,();
69(GodUnitMenuItem)__receiver,(crate::app::godunit::GodUnit)::core::convert::Into::into(god),(crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler)::core::convert::Into::into(select_event_handler),(crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler)::core::convert::Into::into(decide_event_handler),(bool)::core::convert::Into::into(is_selected),(bool)::core::convert::Into::into(is_show_ring_dirty_icon),(crate::app::ringcleaningsequence::RingCleaningSequence_GodType)::core::convert::Into::into(r#type))
70 }
71 }
72 #[doc = "`BuildAttribute()` overload"]
73 fn build_attribute(self) -> crate::app::basicmenuitem::BasicMenuItem_Attribute {
74 unsafe {
75 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
76 {
77 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
78 let __vi = *__vt.get(8usize).unwrap_or_else(|| {
79 panic!(
80 "unity: virtual slot {}
81 out of range (vtable len {}
82) on the runtime class behind {}
83 (method `{}
84`)",
85 8usize,
86 __vt.len(),
87 <GodUnitMenuItem as ::unity::ClassIdentity>::NAME,
88 "BuildAttribute",
89 )
90 });
91 let __inner: extern "C" fn(GodUnitMenuItem, ::unity::OptionalMethod) -> crate::app::basicmenuitem::BasicMenuItem_Attribute =
92 ::core::mem::transmute(__vi.method_ptr);
93 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
94 __inner(__receiver, __mi)
95 }
96 }
97 }
98 #[doc = "`ACall()` overload"]
99 fn a_call(self) -> crate::app::basicmenu::BasicMenu_Result {
100 unsafe {
101 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
102 {
103 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
104 let __vi = *__vt.get(18usize).unwrap_or_else(|| {
105 panic!(
106 "unity: virtual slot {}
107 out of range (vtable len {}
108) on the runtime class behind {}
109 (method `{}
110`)",
111 18usize,
112 __vt.len(),
113 <GodUnitMenuItem as ::unity::ClassIdentity>::NAME,
114 "ACall",
115 )
116 });
117 let __inner: extern "C" fn(GodUnitMenuItem, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
118 ::core::mem::transmute(__vi.method_ptr);
119 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
120 __inner(__receiver, __mi)
121 }
122 }
123 }
124 #[doc = "`BCall()` overload"]
125 fn b_call(self) -> crate::app::basicmenu::BasicMenu_Result {
126 unsafe {
127 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
128 {
129 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
130 let __vi = *__vt.get(19usize).unwrap_or_else(|| {
131 panic!(
132 "unity: virtual slot {}
133 out of range (vtable len {}
134) on the runtime class behind {}
135 (method `{}
136`)",
137 19usize,
138 __vt.len(),
139 <GodUnitMenuItem as ::unity::ClassIdentity>::NAME,
140 "BCall",
141 )
142 });
143 let __inner: extern "C" fn(GodUnitMenuItem, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
144 ::core::mem::transmute(__vi.method_ptr);
145 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
146 __inner(__receiver, __mi)
147 }
148 }
149 }
150 #[doc = "`OnSelect()` overload"]
151 fn on_select(self) -> () {
152 unsafe {
153 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
154 {
155 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
156 let __vi = *__vt.get(12usize).unwrap_or_else(|| {
157 panic!(
158 "unity: virtual slot {}
159 out of range (vtable len {}
160) on the runtime class behind {}
161 (method `{}
162`)",
163 12usize,
164 __vt.len(),
165 <GodUnitMenuItem as ::unity::ClassIdentity>::NAME,
166 "OnSelect",
167 )
168 });
169 let __inner: extern "C" fn(GodUnitMenuItem, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
170 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
171 __inner(__receiver, __mi)
172 }
173 }
174 }
175 #[doc = "`GetGodName()` overload"]
176 fn get_god_name(self) -> ::unity::Il2CppString {
177 unsafe {
178 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
179 ::unity::il2cpp_call!((::unity::module_base()+0x23472d0usize)as*mut u8, ::unity::Il2CppString;
180(GodUnitMenuItem)__receiver)
181 }
182 }
183 #[doc = "`GetOptionalGodData()` overload"]
184 fn get_optional_god_data(self) -> crate::app::goddata::GodData {
185 unsafe {
186 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
187 ::unity::il2cpp_call!((::unity::module_base()+0x23473f0usize)as*mut u8,crate::app::goddata::GodData;
188(GodUnitMenuItem)__receiver)
189 }
190 }
191 #[doc = "`get_Type()` overload"]
192 fn get_type(self) -> crate::app::ringcleaningsequence::RingCleaningSequence_GodType {
193 unsafe {
194 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
195 ::unity::il2cpp_call!((::unity::module_base()+0x2347530usize)as*mut u8,crate::app::ringcleaningsequence::RingCleaningSequence_GodType;
196(GodUnitMenuItem)__receiver)
197 }
198 }
199 #[doc = "`get_IsShowRingIcon()` overload"]
200 fn get_is_show_ring_icon(self) -> bool {
201 unsafe {
202 let __receiver = <GodUnitMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
203 ::unity::il2cpp_call!((::unity::module_base()+0x2347540usize)as*mut u8,bool;
204(GodUnitMenuItem)__receiver)
205 }
206 }
207}
208
209#[cfg(feature = "app-godunitmenuitem")]
210impl<__T: IGodUnitMenuItem> IGodUnitMenuItemMethods for __T {}
211
212#[cfg(feature = "app-godunitmenuitem")]
213impl GodUnitMenuItem {
214 pub fn get_god_method_info() -> &'static ::unity::il2cpp::MethodInfo {
215 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
216 }
217
218 pub fn set_god_method_info() -> &'static ::unity::il2cpp::MethodInfo {
219 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
220 }
221
222 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
223 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
224 }
225
226 pub fn build_attribute_method_info() -> &'static ::unity::il2cpp::MethodInfo {
227 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
228 }
229
230 pub fn a_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
231 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
232 }
233
234 pub fn b_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
235 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
236 }
237
238 pub fn on_select_method_info() -> &'static ::unity::il2cpp::MethodInfo {
239 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
240 }
241
242 pub fn get_god_name_method_info() -> &'static ::unity::il2cpp::MethodInfo {
243 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
244 }
245
246 pub fn get_optional_god_data_method_info() -> &'static ::unity::il2cpp::MethodInfo {
247 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
248 }
249
250 pub fn get_type_method_info() -> &'static ::unity::il2cpp::MethodInfo {
251 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
252 }
253
254 pub fn get_is_show_ring_icon_method_info() -> &'static ::unity::il2cpp::MethodInfo {
255 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
256 }
257}
258
259#[cfg(feature = "app-godunitmenuitem")]
260impl GodUnitMenuItem {
261 #[doc = "Direct (non-virtual) call to `GodUnitMenuItem`'s own `BuildAttribute`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
262 pub unsafe fn build_attribute(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenuitem::BasicMenuItem_Attribute {
263 let __mi = Self::build_attribute_method_info();
264 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenuitem::BasicMenuItem_Attribute =
265 ::core::mem::transmute(__mi.method_ptr);
266 __inner(this.into(), ::core::option::Option::None)
267 }
268
269 #[doc = "Direct (non-virtual) call to `GodUnitMenuItem`'s own `ACall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
270 pub unsafe fn a_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
271 let __mi = Self::a_call_method_info();
272 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
273 ::core::mem::transmute(__mi.method_ptr);
274 __inner(this.into(), ::core::option::Option::None)
275 }
276
277 #[doc = "Direct (non-virtual) call to `GodUnitMenuItem`'s own `BCall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
278 pub unsafe fn b_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
279 let __mi = Self::b_call_method_info();
280 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
281 ::core::mem::transmute(__mi.method_ptr);
282 __inner(this.into(), ::core::option::Option::None)
283 }
284
285 #[doc = "Direct (non-virtual) call to `GodUnitMenuItem`'s own `OnSelect`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
286 pub unsafe fn on_select(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
287 let __mi = Self::on_select_method_info();
288 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
289 __inner(this.into(), ::core::option::Option::None)
290 }
291}
292
293#[cfg(feature = "app-godunitmenuitem")]
294impl GodUnitMenuItem {
295 #[doc = "`.ctor(crate::app::godunit::GodUnit, crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler, crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler, bool, bool, crate::app::ringcleaningsequence::RingCleaningSequence_GodType)` — overload selector"]
296 pub fn new(
297 god: crate::app::godunit::GodUnit,
298 select_event_handler: crate::app::godunitselectmenu::GodUnitSelectMenu_SelectEventHandler,
299 decide_event_handler: crate::app::godunitselectmenu::GodUnitSelectMenu_DecideEventHandler,
300 is_selected: bool,
301 is_show_ring_dirty_icon: bool,
302 r#type: crate::app::ringcleaningsequence::RingCleaningSequence_GodType,
303 ) -> Self {
304 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
305 panic!(
306 "{}
307::{}
308 failed to instantiate",
309 ::core::stringify!(GodUnitMenuItem),
310 ::core::stringify!(new),
311 )
312 });
313 <Self as IGodUnitMenuItemMethods>::ctor(
314 this,
315 god,
316 select_event_handler,
317 decide_event_handler,
318 is_selected,
319 is_show_ring_dirty_icon,
320 r#type,
321 );
322 this
323 }
324}
325
326#[cfg(feature = "app-godunitmenuitem")]
327#[doc(hidden)]
328pub mod prelude {
329 pub use super::{GodUnitMenuItem, IGodUnitMenuItem, IGodUnitMenuItemMethods};
330 #[cfg(feature = "app-basicmenuitem")]
331 pub use crate::app::basicmenuitem::IBasicMenuItemMethods;
332 #[cfg(feature = "system-object")]
333 pub use crate::system::object::IObjectMethods;
334 pub use crate::{app::basicmenuitem::IBasicMenuItem, system::object::IObject};
335}