Skip to main content

engage/generated/app/
interactdata.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-interactdata-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        app::{
10            structbase::{IStructBase, StructBase},
11            structdata_1::{IStructData_1, StructData_1},
12            structtemplate_1::{IStructTemplate_1, StructTemplate_1},
13        },
14        system::{
15            object::{IObject, Object},
16            r#enum::{Enum, IEnum},
17            valuetype::{IValueType, ValueType},
18        },
19    };
20
21    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/interactdata/InteractData_Interacts.md"))]
22    #[repr(C)]
23    #[derive(::core::clone::Clone, ::core::marker::Copy, ::core::fmt::Debug, ::core::cmp::PartialEq, ::core::cmp::Eq)]
24    pub struct InteractData_Interacts {
25        pub value: i32,
26    }
27    impl ::unity::ClassIdentity for InteractData_Interacts {
28        const NAME: &'static str = "InteractData.Interacts";
29        const NAMESPACE: &'static str = "App";
30
31        fn class() -> ::unity::Class {
32            static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
33            *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
34        }
35    }
36    impl ::unity::IlType for InteractData_Interacts {
37        fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
38            &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
39        }
40    }
41    impl InteractData_Interacts {
42        pub fn none() -> Self {
43            Self { value: 0 }
44        }
45
46        pub fn good() -> Self {
47            Self { value: 1 }
48        }
49
50        pub fn bad() -> Self {
51            Self { value: 2 }
52        }
53    }
54
55    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/interactdata/InteractData.md"))]
56    #[::unity::class(namespace = "App", name = "InteractData")]
57    #[parent(crate::app::structdata_1::StructData_1<crate::app::interactdata::InteractData>)]
58    pub struct InteractData {}
59}
60
61#[cfg(feature = "app-interactdata-types")]
62pub use __types::*;
63
64#[cfg(feature = "app-interactdata")]
65impl InteractData {
66    #[doc = "`Load()` overload"]
67    pub fn load() -> () {
68        unsafe {
69            ::unity::il2cpp_call!((::unity::module_base()+0x2917dd0usize)as*mut u8,();
70            )
71        }
72    }
73
74    #[doc = "`GetInteract(crate::app::unititem::UnitItem, crate::app::unititem::UnitItem)` overload"]
75    pub fn get_interact(
76        current: impl ::core::convert::Into<crate::app::unititem::UnitItem>,
77        reverse: impl ::core::convert::Into<crate::app::unititem::UnitItem>,
78    ) -> crate::app::interactdata::InteractData_Interacts {
79        unsafe {
80            ::unity::il2cpp_call!((::unity::module_base()+0x2917ed0usize)as*mut u8,crate::app::interactdata::InteractData_Interacts;
81(crate::app::unititem::UnitItem)::core::convert::Into::into(current),(crate::app::unititem::UnitItem)::core::convert::Into::into(reverse))
82        }
83    }
84}
85
86#[cfg(feature = "app-interactdata")]
87pub trait IInteractDataMethods: IInteractData {
88    #[doc = "`GetDebugName()` overload"]
89    fn get_debug_name(self) -> ::unity::Il2CppString {
90        unsafe {
91            let __receiver = <InteractData as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
92            {
93                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
94                let __vi = *__vt.get(8usize).unwrap_or_else(|| {
95                    panic!(
96                        "unity: virtual slot {}
97 out of range (vtable len {}
98) on the runtime class behind {}
99 (method `{}
100`)",
101                        8usize,
102                        __vt.len(),
103                        <InteractData as ::unity::ClassIdentity>::NAME,
104                        "GetDebugName",
105                    )
106                });
107                let __inner: extern "C" fn(InteractData, ::unity::OptionalMethod) -> ::unity::Il2CppString = ::core::mem::transmute(__vi.method_ptr);
108                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
109                __inner(__receiver, __mi)
110            }
111        }
112    }
113    #[doc = "`get_Kind()` overload"]
114    fn get_kind(self) -> ::unity::Il2CppString {
115        unsafe {
116            let __receiver = <InteractData as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
117            ::unity::il2cpp_call!((::unity::module_base()+0x2917e90usize)as*mut u8, ::unity::Il2CppString;
118(InteractData)__receiver)
119        }
120    }
121    #[doc = "`set_Kind(::unity::Il2CppString)` overload"]
122    fn set_kind(self, value: impl ::core::convert::Into<::unity::Il2CppString>) -> () {
123        unsafe {
124            let __receiver = <InteractData as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
125            ::unity::il2cpp_call!((::unity::module_base()+0x2917ea0usize)as*mut u8,();
126(InteractData)__receiver,(::unity::Il2CppString)::core::convert::Into::into(value))
127        }
128    }
129    #[doc = "`get_Flag()` overload"]
130    fn get_flag(self) -> crate::app::bitfield32::BitField32 {
131        unsafe {
132            let __receiver = <InteractData as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
133            ::unity::il2cpp_call!((::unity::module_base()+0x2917eb0usize)as*mut u8,crate::app::bitfield32::BitField32;
134(InteractData)__receiver)
135        }
136    }
137    #[doc = "`set_Flag(crate::app::bitfield32::BitField32)` overload"]
138    fn set_flag(self, value: impl ::core::convert::Into<crate::app::bitfield32::BitField32>) -> () {
139        unsafe {
140            let __receiver = <InteractData as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
141            ::unity::il2cpp_call!((::unity::module_base()+0x2917ec0usize)as*mut u8,();
142(InteractData)__receiver,(crate::app::bitfield32::BitField32)::core::convert::Into::into(value))
143        }
144    }
145    #[doc = "`.ctor()` overload"]
146    fn ctor(self) -> () {
147        unsafe {
148            let __receiver = <InteractData as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
149            ::unity::il2cpp_call!((::unity::module_base()+0x29180e0usize)as*mut u8,();
150(InteractData)__receiver)
151        }
152    }
153}
154
155#[cfg(feature = "app-interactdata")]
156impl<__T: IInteractData> IInteractDataMethods for __T {}
157
158#[cfg(feature = "app-interactdata")]
159impl InteractData {
160    pub fn load_method_info() -> &'static ::unity::il2cpp::MethodInfo {
161        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
162    }
163
164    pub fn get_debug_name_method_info() -> &'static ::unity::il2cpp::MethodInfo {
165        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
166    }
167
168    pub fn get_kind_method_info() -> &'static ::unity::il2cpp::MethodInfo {
169        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
170    }
171
172    pub fn set_kind_method_info() -> &'static ::unity::il2cpp::MethodInfo {
173        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
174    }
175
176    pub fn get_flag_method_info() -> &'static ::unity::il2cpp::MethodInfo {
177        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
178    }
179
180    pub fn set_flag_method_info() -> &'static ::unity::il2cpp::MethodInfo {
181        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
182    }
183
184    pub fn get_interact_method_info() -> &'static ::unity::il2cpp::MethodInfo {
185        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
186    }
187
188    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
189        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
190    }
191}
192
193#[cfg(feature = "app-interactdata")]
194impl InteractData {
195    #[doc = "Direct (non-virtual) call to `InteractData`'s own `GetDebugName`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
196    pub unsafe fn get_debug_name(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::Il2CppString {
197        let __mi = Self::get_debug_name_method_info();
198        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::Il2CppString = ::core::mem::transmute(__mi.method_ptr);
199        __inner(this.into(), ::core::option::Option::None)
200    }
201}
202
203#[cfg(feature = "app-interactdata")]
204impl InteractData {
205    #[doc = "`.ctor()` — no args"]
206    pub fn new() -> Self {
207        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
208            panic!(
209                "{}
210::{}
211 failed to instantiate",
212                ::core::stringify!(InteractData),
213                ::core::stringify!(new),
214            )
215        });
216        <Self as IInteractDataMethods>::ctor(this);
217        this
218    }
219}
220
221#[cfg(feature = "app-interactdata")]
222#[doc(hidden)]
223pub mod prelude {
224    pub use super::{IInteractData, IInteractDataMethods, InteractData, InteractData_Interacts};
225    #[cfg(feature = "app-structbase")]
226    pub use crate::app::structbase::IStructBaseMethods;
227    #[cfg(feature = "app-structdata_1")]
228    pub use crate::app::structdata_1::IStructData_1Methods;
229    #[cfg(feature = "app-structtemplate_1")]
230    pub use crate::app::structtemplate_1::IStructTemplate_1Methods;
231    #[cfg(feature = "system-object")]
232    pub use crate::system::object::IObjectMethods;
233    #[cfg(feature = "system-enum")]
234    pub use crate::system::r#enum::IEnumMethods;
235    #[cfg(feature = "system-valuetype")]
236    pub use crate::system::valuetype::IValueTypeMethods;
237    pub use crate::{
238        app::{structbase::IStructBase, structdata_1::IStructData_1, structtemplate_1::IStructTemplate_1},
239        system::{object::IObject, r#enum::IEnum, valuetype::IValueType},
240    };
241}