Skip to main content

engage/generated/combat/
cameracontrollerfreecamera.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "combat-cameracontrollerfreecamera-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        combat::basecameracontroller::{BaseCameraController, IBaseCameraController},
10        system::object::{IObject, Object},
11        unity_engine::{
12            behaviour::{Behaviour, IBehaviour},
13            component::{Component, IComponent},
14            monobehaviour::{IMonoBehaviour, MonoBehaviour},
15            object_2::{IObject_2, Object_2},
16        },
17    };
18
19    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/combat/cameracontrollerfreecamera/CameraControllerFreeCamera.md"))]
20    #[::unity::class(namespace = "Combat", name = "CameraControllerFreeCamera")]
21    #[parent(crate::combat::basecameracontroller::BaseCameraController)]
22    pub struct CameraControllerFreeCamera {
23        #[offset(168)]
24        #[rename(name = "CameraPosFromChara")]
25        pub camera_pos_from_chara: crate::unity_engine::vector3::Vector3,
26        #[offset(180)]
27        #[rename(name = "LookDirection")]
28        pub look_direction: crate::unity_engine::vector3::Vector3,
29    }
30}
31
32#[cfg(feature = "combat-cameracontrollerfreecamera-types")]
33pub use __types::*;
34
35#[cfg(feature = "combat-cameracontrollerfreecamera")]
36pub trait ICameraControllerFreeCameraMethods: ICameraControllerFreeCamera {
37    #[doc = "`Activate()` overload"]
38    fn activate(self) -> () {
39        unsafe {
40            let __receiver =
41                <CameraControllerFreeCamera as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
42            {
43                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
44                let __vi = *__vt.get(10usize).unwrap_or_else(|| {
45                    panic!(
46                        "unity: virtual slot {}
47 out of range (vtable len {}
48) on the runtime class behind {}
49 (method `{}
50`)",
51                        10usize,
52                        __vt.len(),
53                        <CameraControllerFreeCamera as ::unity::ClassIdentity>::NAME,
54                        "Activate",
55                    )
56                });
57                let __inner: extern "C" fn(CameraControllerFreeCamera, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
58                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
59                __inner(__receiver, __mi)
60            }
61        }
62    }
63    #[doc = "`GetCameraTargets()` overload"]
64    fn get_camera_targets(self) -> ::unity::Array<i32> {
65        unsafe {
66            let __receiver =
67                <CameraControllerFreeCamera 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(12usize).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                        12usize,
78                        __vt.len(),
79                        <CameraControllerFreeCamera as ::unity::ClassIdentity>::NAME,
80                        "GetCameraTargets",
81                    )
82                });
83                let __inner: extern "C" fn(CameraControllerFreeCamera, ::unity::OptionalMethod) -> ::unity::Array<i32> =
84                    ::core::mem::transmute(__vi.method_ptr);
85                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
86                __inner(__receiver, __mi)
87            }
88        }
89    }
90    #[doc = "`.ctor()` overload"]
91    fn ctor(self) -> () {
92        unsafe {
93            let __receiver =
94                <CameraControllerFreeCamera as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
95            ::unity::il2cpp_call!((::unity::module_base()+0x25b15c0usize)as*mut u8,();
96(CameraControllerFreeCamera)__receiver)
97        }
98    }
99}
100
101#[cfg(feature = "combat-cameracontrollerfreecamera")]
102impl<__T: ICameraControllerFreeCamera> ICameraControllerFreeCameraMethods for __T {}
103
104#[cfg(feature = "combat-cameracontrollerfreecamera")]
105impl CameraControllerFreeCamera {
106    pub fn activate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
107        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
108    }
109
110    pub fn get_camera_targets_method_info() -> &'static ::unity::il2cpp::MethodInfo {
111        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
112    }
113
114    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
115        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
116    }
117}
118
119#[cfg(feature = "combat-cameracontrollerfreecamera")]
120impl CameraControllerFreeCamera {
121    #[doc = "Direct (non-virtual) call to `CameraControllerFreeCamera`'s own `Activate`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
122    pub unsafe fn activate(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
123        let __mi = Self::activate_method_info();
124        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
125        __inner(this.into(), ::core::option::Option::None)
126    }
127
128    #[doc = "Direct (non-virtual) call to `CameraControllerFreeCamera`'s own `GetCameraTargets`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
129    pub unsafe fn get_camera_targets(this: impl ::core::convert::Into<::unity::IlInstance>) -> ::unity::Array<i32> {
130        let __mi = Self::get_camera_targets_method_info();
131        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> ::unity::Array<i32> = ::core::mem::transmute(__mi.method_ptr);
132        __inner(this.into(), ::core::option::Option::None)
133    }
134}
135
136#[cfg(feature = "combat-cameracontrollerfreecamera")]
137impl CameraControllerFreeCamera {
138    #[doc = "`.ctor()` — no args"]
139    pub fn new() -> Self {
140        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
141            panic!(
142                "{}
143::{}
144 failed to instantiate",
145                ::core::stringify!(CameraControllerFreeCamera),
146                ::core::stringify!(new),
147            )
148        });
149        <Self as ICameraControllerFreeCameraMethods>::ctor(this);
150        this
151    }
152}
153
154#[cfg(feature = "combat-cameracontrollerfreecamera")]
155#[doc(hidden)]
156pub mod prelude {
157    pub use super::{CameraControllerFreeCamera, ICameraControllerFreeCamera, ICameraControllerFreeCameraMethods};
158    #[cfg(feature = "combat-basecameracontroller")]
159    pub use crate::combat::basecameracontroller::IBaseCameraControllerMethods;
160    #[cfg(feature = "system-object")]
161    pub use crate::system::object::IObjectMethods;
162    #[cfg(feature = "unity_engine-behaviour")]
163    pub use crate::unity_engine::behaviour::IBehaviourMethods;
164    #[cfg(feature = "unity_engine-component")]
165    pub use crate::unity_engine::component::IComponentMethods;
166    #[cfg(feature = "unity_engine-monobehaviour")]
167    pub use crate::unity_engine::monobehaviour::IMonoBehaviourMethods;
168    #[cfg(feature = "unity_engine-object_2")]
169    pub use crate::unity_engine::object_2::IObject_2Methods;
170    pub use crate::{
171        combat::basecameracontroller::IBaseCameraController,
172        system::object::IObject,
173        unity_engine::{behaviour::IBehaviour, component::IComponent, monobehaviour::IMonoBehaviour, object_2::IObject_2},
174    };
175}