Skip to main content

engage/generated/combat/
fsmbuildercannon.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "combat-fsmbuildercannon-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        combat::fsmbuilder::{FSMBuilder, IFSMBuilder},
10        system::object::{IObject, Object},
11    };
12
13    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/combat/fsmbuildercannon/FSMBuilderCannon.md"))]
14    #[::unity::class(namespace = "Combat", name = "FSMBuilderCannon")]
15    #[parent(crate::combat::fsmbuilder::FSMBuilder)]
16    pub struct FSMBuilderCannon {
17        #[offset(16)]
18        #[rename(name = "m_Cannon")]
19        pub m_cannon: crate::app::mapobject::MapObject,
20    }
21}
22
23#[cfg(feature = "combat-fsmbuildercannon-types")]
24pub use __types::*;
25
26#[cfg(feature = "combat-fsmbuildercannon")]
27impl FSMBuilderCannon {
28    #[doc = "`Rotate()` overload"]
29    pub fn rotate() -> crate::system::collections::ienumerator::IEnumerator {
30        unsafe {
31            ::unity::il2cpp_call!((::unity::module_base()+0x2d488c0usize)as*mut u8,crate::system::collections::ienumerator::IEnumerator;
32            )
33        }
34    }
35}
36
37#[cfg(feature = "combat-fsmbuildercannon")]
38pub trait IFSMBuilderCannonMethods: IFSMBuilderCannon {
39    #[doc = "`Build()` overload"]
40    fn build(self) -> () {
41        unsafe {
42            let __receiver = <FSMBuilderCannon as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
43            {
44                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
45                let __vi = *__vt.get(4usize).unwrap_or_else(|| {
46                    panic!(
47                        "unity: virtual slot {}
48 out of range (vtable len {}
49) on the runtime class behind {}
50 (method `{}
51`)",
52                        4usize,
53                        __vt.len(),
54                        <FSMBuilderCannon as ::unity::ClassIdentity>::NAME,
55                        "Build",
56                    )
57                });
58                let __inner: extern "C" fn(FSMBuilderCannon, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
59                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
60                __inner(__receiver, __mi)
61            }
62        }
63    }
64    #[doc = "`BuildSkipover()` overload"]
65    fn build_skipover(self) -> () {
66        unsafe {
67            let __receiver = <FSMBuilderCannon as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
68            {
69                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
70                let __vi = *__vt.get(8usize).unwrap_or_else(|| {
71                    panic!(
72                        "unity: virtual slot {}
73 out of range (vtable len {}
74) on the runtime class behind {}
75 (method `{}
76`)",
77                        8usize,
78                        __vt.len(),
79                        <FSMBuilderCannon as ::unity::ClassIdentity>::NAME,
80                        "BuildSkipover",
81                    )
82                });
83                let __inner: extern "C" fn(FSMBuilderCannon, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
84                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
85                __inner(__receiver, __mi)
86            }
87        }
88    }
89    #[doc = "`.ctor()` overload"]
90    fn ctor(self) -> () {
91        unsafe {
92            let __receiver = <FSMBuilderCannon as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
93            ::unity::il2cpp_call!((::unity::module_base()+0x2d47890usize)as*mut u8,();
94(FSMBuilderCannon)__receiver)
95        }
96    }
97}
98
99#[cfg(feature = "combat-fsmbuildercannon")]
100impl<__T: IFSMBuilderCannon> IFSMBuilderCannonMethods for __T {}
101
102#[cfg(feature = "combat-fsmbuildercannon")]
103impl FSMBuilderCannon {
104    pub fn build_method_info() -> &'static ::unity::il2cpp::MethodInfo {
105        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
106    }
107
108    pub fn rotate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
109        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
110    }
111
112    pub fn build_skipover_method_info() -> &'static ::unity::il2cpp::MethodInfo {
113        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
114    }
115
116    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
117        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
118    }
119}
120
121#[cfg(feature = "combat-fsmbuildercannon")]
122impl FSMBuilderCannon {
123    #[doc = "Direct (non-virtual) call to `FSMBuilderCannon`'s own `Build`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
124    pub unsafe fn build(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
125        let __mi = Self::build_method_info();
126        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
127        __inner(this.into(), ::core::option::Option::None)
128    }
129
130    #[doc = "Direct (non-virtual) call to `FSMBuilderCannon`'s own `BuildSkipover`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
131    pub unsafe fn build_skipover(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
132        let __mi = Self::build_skipover_method_info();
133        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
134        __inner(this.into(), ::core::option::Option::None)
135    }
136}
137
138#[cfg(feature = "combat-fsmbuildercannon")]
139impl FSMBuilderCannon {
140    #[doc = "`.ctor()` — no args"]
141    pub fn new() -> Self {
142        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
143            panic!(
144                "{}
145::{}
146 failed to instantiate",
147                ::core::stringify!(FSMBuilderCannon),
148                ::core::stringify!(new),
149            )
150        });
151        <Self as IFSMBuilderCannonMethods>::ctor(this);
152        this
153    }
154}
155
156#[cfg(feature = "combat-fsmbuildercannon")]
157#[doc(hidden)]
158pub mod prelude {
159    pub use super::{FSMBuilderCannon, IFSMBuilderCannon, IFSMBuilderCannonMethods};
160    #[cfg(feature = "combat-fsmbuilder")]
161    pub use crate::combat::fsmbuilder::IFSMBuilderMethods;
162    #[cfg(feature = "system-object")]
163    pub use crate::system::object::IObjectMethods;
164    pub use crate::{combat::fsmbuilder::IFSMBuilder, system::object::IObject};
165}