engage/generated/unity_engine/ai/
navmeshagent.rs1#[cfg(feature = "unity_engine-ai-navmeshagent-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8 use crate::{
9 system::object::{IObject, Object},
10 unity_engine::{
11 behaviour::{Behaviour, IBehaviour},
12 component::{Component, IComponent},
13 object_2::{IObject_2, Object_2},
14 },
15 };
16
17 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/ai/navmeshagent/NavMeshAgent.md"))]
18 #[::unity::class(namespace = "UnityEngine.AI", name = "NavMeshAgent")]
19 #[parent(crate::unity_engine::behaviour::Behaviour)]
20 pub struct NavMeshAgent {}
21}
22
23#[cfg(feature = "unity_engine-ai-navmeshagent-types")]
24pub use __types::*;
25
26#[cfg(feature = "unity_engine-ai-navmeshagent")]
27pub trait INavMeshAgentMethods: INavMeshAgent {
28 #[doc = "`SetDestination(crate::unity_engine::vector3::Vector3)` overload"]
29 fn set_destination(self, target: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>) -> bool {
30 unsafe {
31 let __receiver = <NavMeshAgent as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
32 ::unity::il2cpp_call!((::unity::module_base()+0x3f43700usize)as*mut u8,bool;
33(NavMeshAgent)__receiver,(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(target))
34 }
35 }
36 #[doc = "`get_steeringTarget()` overload"]
37 fn get_steering_target(self) -> crate::unity_engine::vector3::Vector3 {
38 unsafe {
39 let __receiver = <NavMeshAgent as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
40 ::unity::il2cpp_call!((::unity::module_base()+0x3f437b0usize)as*mut u8,crate::unity_engine::vector3::Vector3;
41(NavMeshAgent)__receiver)
42 }
43 }
44 #[doc = "`CalculatePath(crate::unity_engine::vector3::Vector3, crate::unity_engine::ai::navmeshpath::NavMeshPath)` overload"]
45 fn calculate_path(
46 self,
47 target_position: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
48 path: impl ::core::convert::Into<crate::unity_engine::ai::navmeshpath::NavMeshPath>,
49 ) -> bool {
50 unsafe {
51 let __receiver = <NavMeshAgent as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
52 ::unity::il2cpp_call!((::unity::module_base()+0x3f43860usize)as*mut u8,bool;
53(NavMeshAgent)__receiver,(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(target_position),(crate::unity_engine::ai::navmeshpath::NavMeshPath)::core::convert::Into::into(path))
54 }
55 }
56 #[doc = "`CalculatePathInternal(crate::unity_engine::vector3::Vector3, crate::unity_engine::ai::navmeshpath::NavMeshPath)` overload"]
57 fn calculate_path_internal(
58 self,
59 target_position: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
60 path: impl ::core::convert::Into<crate::unity_engine::ai::navmeshpath::NavMeshPath>,
61 ) -> bool {
62 unsafe {
63 let __receiver = <NavMeshAgent as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
64 ::unity::il2cpp_call!((::unity::module_base()+0x3f43920usize)as*mut u8,bool;
65(NavMeshAgent)__receiver,(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(target_position),(crate::unity_engine::ai::navmeshpath::NavMeshPath)::core::convert::Into::into(path))
66 }
67 }
68 #[doc = "`set_speed(f32)` overload"]
69 fn set_speed(self, value: impl ::core::convert::Into<f32>) -> () {
70 unsafe {
71 let __receiver = <NavMeshAgent as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
72 ::unity::il2cpp_call!((::unity::module_base()+0x3f439f0usize)as*mut u8,();
73(NavMeshAgent)__receiver,(f32)::core::convert::Into::into(value))
74 }
75 }
76 #[doc = "`SetDestination_Injected(*mutcrate::unity_engine::vector3::Vector3)` overload"]
77 fn set_destination_injected(self) -> (bool, crate::unity_engine::vector3::Vector3) {
78 unsafe {
79 let __receiver = <NavMeshAgent as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
80 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::vector3::Vector3>::uninit();
81 let __ret = {
82 ::unity::il2cpp_call!((::unity::module_base()+0x3f43760usize)as*mut u8,bool;
83(NavMeshAgent)__receiver,(*mut crate::unity_engine::vector3::Vector3)__out_0.as_mut_ptr())
84 };
85 (__ret, __out_0.assume_init())
86 }
87 }
88 #[doc = "`get_steeringTarget_Injected(*mutcrate::unity_engine::vector3::Vector3)` overload"]
89 fn get_steering_target_injected(self) -> crate::unity_engine::vector3::Vector3 {
90 unsafe {
91 let __receiver = <NavMeshAgent as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
92 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::vector3::Vector3>::uninit();
93 ::unity::il2cpp_call!((::unity::module_base()+0x3f43810usize)as*mut u8,();
94(NavMeshAgent)__receiver,(*mut crate::unity_engine::vector3::Vector3)__out_0.as_mut_ptr());
95 __out_0.assume_init()
96 }
97 }
98 #[doc = "`CalculatePathInternal_Injected(*mutcrate::unity_engine::vector3::Vector3, crate::unity_engine::ai::navmeshpath::NavMeshPath)` overload"]
99 fn calculate_path_internal_injected(
100 self,
101 path: impl ::core::convert::Into<crate::unity_engine::ai::navmeshpath::NavMeshPath>,
102 ) -> (bool, crate::unity_engine::vector3::Vector3) {
103 unsafe {
104 let __receiver = <NavMeshAgent as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
105 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::vector3::Vector3>::uninit();
106 let __ret = {
107 ::unity::il2cpp_call!((::unity::module_base()+0x3f43990usize)as*mut u8,bool;
108(NavMeshAgent)__receiver,(*mut crate::unity_engine::vector3::Vector3)__out_0.as_mut_ptr(),(crate::unity_engine::ai::navmeshpath::NavMeshPath)::core::convert::Into::into(path))
109 };
110 (__ret, __out_0.assume_init())
111 }
112 }
113}
114
115#[cfg(feature = "unity_engine-ai-navmeshagent")]
116impl<__T: INavMeshAgent> INavMeshAgentMethods for __T {}
117
118#[cfg(feature = "unity_engine-ai-navmeshagent")]
119impl NavMeshAgent {
120 pub fn set_destination_method_info() -> &'static ::unity::il2cpp::MethodInfo {
121 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
122 }
123
124 pub fn get_steering_target_method_info() -> &'static ::unity::il2cpp::MethodInfo {
125 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
126 }
127
128 pub fn calculate_path_method_info() -> &'static ::unity::il2cpp::MethodInfo {
129 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
130 }
131
132 pub fn calculate_path_internal_method_info() -> &'static ::unity::il2cpp::MethodInfo {
133 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
134 }
135
136 pub fn set_speed_method_info() -> &'static ::unity::il2cpp::MethodInfo {
137 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
138 }
139
140 pub fn set_destination_injected_method_info() -> &'static ::unity::il2cpp::MethodInfo {
141 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
142 }
143
144 pub fn get_steering_target_injected_method_info() -> &'static ::unity::il2cpp::MethodInfo {
145 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
146 }
147
148 pub fn calculate_path_internal_injected_method_info() -> &'static ::unity::il2cpp::MethodInfo {
149 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
150 }
151}
152
153#[cfg(feature = "unity_engine-ai-navmeshagent")]
154#[doc(hidden)]
155pub mod prelude {
156 pub use super::{INavMeshAgent, INavMeshAgentMethods, NavMeshAgent};
157 #[cfg(feature = "system-object")]
158 pub use crate::system::object::IObjectMethods;
159 #[cfg(feature = "unity_engine-behaviour")]
160 pub use crate::unity_engine::behaviour::IBehaviourMethods;
161 #[cfg(feature = "unity_engine-component")]
162 pub use crate::unity_engine::component::IComponentMethods;
163 #[cfg(feature = "unity_engine-object_2")]
164 pub use crate::unity_engine::object_2::IObject_2Methods;
165 pub use crate::{
166 system::object::IObject,
167 unity_engine::{behaviour::IBehaviour, component::IComponent, object_2::IObject_2},
168 };
169}