engage/generated/unity_engine/tilemaps/
tile.rs1#[cfg(feature = "unity_engine-tilemaps-tile-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8 use crate::{
9 system::{
10 object::{IObject, Object},
11 r#enum::{Enum, IEnum},
12 valuetype::{IValueType, ValueType},
13 },
14 unity_engine::{
15 object_2::{IObject_2, Object_2},
16 scriptableobject::{IScriptableObject, ScriptableObject},
17 tilemaps::tilebase::{ITileBase, TileBase},
18 },
19 };
20
21 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/tilemaps/tile/Tile.md"))]
22 #[::unity::class(namespace = "UnityEngine.Tilemaps", name = "Tile")]
23 #[parent(crate::unity_engine::tilemaps::tilebase::TileBase)]
24 pub struct Tile {
25 #[offset(24)]
26 #[rename(name = "m_Sprite")]
27 pub m_sprite: crate::unity_engine::sprite::Sprite,
28 #[offset(32)]
29 #[rename(name = "m_Color")]
30 pub m_color: crate::unity_engine::color::Color,
31 #[offset(48)]
32 #[rename(name = "m_Transform")]
33 pub m_transform: crate::unity_engine::matrix4x4::Matrix4x4,
34 #[offset(112)]
35 #[rename(name = "m_InstancedGameObject")]
36 pub m_instanced_game_object: crate::unity_engine::gameobject::GameObject,
37 #[offset(120)]
38 #[rename(name = "m_Flags")]
39 pub m_flags: crate::unity_engine::tilemaps::tileflags::TileFlags,
40 #[offset(124)]
41 #[rename(name = "m_ColliderType")]
42 pub m_collider_type: crate::unity_engine::tilemaps::tile::Tile_ColliderType,
43 }
44
45 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/tilemaps/tile/Tile_ColliderType.md"))]
46 #[repr(C)]
47 #[derive(::core::clone::Clone, ::core::marker::Copy, ::core::fmt::Debug, ::core::cmp::PartialEq, ::core::cmp::Eq)]
48 pub struct Tile_ColliderType {
49 pub value: i32,
50 }
51 impl ::unity::ClassIdentity for Tile_ColliderType {
52 const NAME: &'static str = "Tile.ColliderType";
53 const NAMESPACE: &'static str = "UnityEngine.Tilemaps";
54
55 fn class() -> ::unity::Class {
56 static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
57 *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
58 }
59 }
60 impl ::unity::IlType for Tile_ColliderType {
61 fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
62 &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
63 }
64 }
65 impl Tile_ColliderType {
66 pub fn none() -> Self {
67 Self { value: 0 }
68 }
69
70 pub fn sprite() -> Self {
71 Self { value: 1 }
72 }
73
74 pub fn grid() -> Self {
75 Self { value: 2 }
76 }
77 }
78}
79
80#[cfg(feature = "unity_engine-tilemaps-tile-types")]
81pub use __types::*;
82
83#[cfg(feature = "unity_engine-tilemaps-tile")]
84pub trait ITileMethods: ITile {
85 #[doc = "`get_sprite()` overload"]
86 fn get_sprite(self) -> crate::unity_engine::sprite::Sprite {
87 unsafe {
88 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
89 ::unity::il2cpp_call!((::unity::module_base()+0x3f42b50usize)as*mut u8,crate::unity_engine::sprite::Sprite;
90(Tile)__receiver)
91 }
92 }
93 #[doc = "`set_sprite(crate::unity_engine::sprite::Sprite)` overload"]
94 fn set_sprite(self, value: impl ::core::convert::Into<crate::unity_engine::sprite::Sprite>) -> () {
95 unsafe {
96 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
97 ::unity::il2cpp_call!((::unity::module_base()+0x3f42b60usize)as*mut u8,();
98(Tile)__receiver,(crate::unity_engine::sprite::Sprite)::core::convert::Into::into(value))
99 }
100 }
101 #[doc = "`get_color()` overload"]
102 fn get_color(self) -> crate::unity_engine::color::Color {
103 unsafe {
104 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
105 ::unity::il2cpp_call!((::unity::module_base()+0x3f42b70usize)as*mut u8,crate::unity_engine::color::Color;
106(Tile)__receiver)
107 }
108 }
109 #[doc = "`set_color(crate::unity_engine::color::Color)` overload"]
110 fn set_color(self, value: impl ::core::convert::Into<crate::unity_engine::color::Color>) -> () {
111 unsafe {
112 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
113 ::unity::il2cpp_call!((::unity::module_base()+0x3f42b80usize)as*mut u8,();
114(Tile)__receiver,(crate::unity_engine::color::Color)::core::convert::Into::into(value))
115 }
116 }
117 #[doc = "`get_transform()` overload"]
118 fn get_transform(self) -> crate::unity_engine::matrix4x4::Matrix4x4 {
119 unsafe {
120 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
121 ::unity::il2cpp_call!((::unity::module_base()+0x3f42ba0usize)as*mut u8,crate::unity_engine::matrix4x4::Matrix4x4;
122(Tile)__receiver)
123 }
124 }
125 #[doc = "`set_transform(crate::unity_engine::matrix4x4::Matrix4x4)` overload"]
126 fn set_transform(self, value: impl ::core::convert::Into<crate::unity_engine::matrix4x4::Matrix4x4>) -> () {
127 unsafe {
128 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
129 ::unity::il2cpp_call!((::unity::module_base()+0x3f42bd0usize)as*mut u8,();
130(Tile)__receiver,(crate::unity_engine::matrix4x4::Matrix4x4)::core::convert::Into::into(value))
131 }
132 }
133 #[doc = "`get_gameObject()` overload"]
134 fn get_game_object(self) -> crate::unity_engine::gameobject::GameObject {
135 unsafe {
136 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
137 ::unity::il2cpp_call!((::unity::module_base()+0x3f42bf0usize)as*mut u8,crate::unity_engine::gameobject::GameObject;
138(Tile)__receiver)
139 }
140 }
141 #[doc = "`set_gameObject(crate::unity_engine::gameobject::GameObject)` overload"]
142 fn set_game_object(self, value: impl ::core::convert::Into<crate::unity_engine::gameobject::GameObject>) -> () {
143 unsafe {
144 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
145 ::unity::il2cpp_call!((::unity::module_base()+0x3f42c00usize)as*mut u8,();
146(Tile)__receiver,(crate::unity_engine::gameobject::GameObject)::core::convert::Into::into(value))
147 }
148 }
149 #[doc = "`get_flags()` overload"]
150 fn get_flags(self) -> crate::unity_engine::tilemaps::tileflags::TileFlags {
151 unsafe {
152 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
153 ::unity::il2cpp_call!((::unity::module_base()+0x3f42c10usize)as*mut u8,crate::unity_engine::tilemaps::tileflags::TileFlags;
154(Tile)__receiver)
155 }
156 }
157 #[doc = "`set_flags(crate::unity_engine::tilemaps::tileflags::TileFlags)` overload"]
158 fn set_flags(self, value: impl ::core::convert::Into<crate::unity_engine::tilemaps::tileflags::TileFlags>) -> () {
159 unsafe {
160 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
161 ::unity::il2cpp_call!((::unity::module_base()+0x3f42c20usize)as*mut u8,();
162(Tile)__receiver,(crate::unity_engine::tilemaps::tileflags::TileFlags)::core::convert::Into::into(value))
163 }
164 }
165 #[doc = "`get_colliderType()` overload"]
166 fn get_collider_type(self) -> crate::unity_engine::tilemaps::tile::Tile_ColliderType {
167 unsafe {
168 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
169 ::unity::il2cpp_call!((::unity::module_base()+0x3f42c30usize)as*mut u8,crate::unity_engine::tilemaps::tile::Tile_ColliderType;
170(Tile)__receiver)
171 }
172 }
173 #[doc = "`set_colliderType(crate::unity_engine::tilemaps::tile::Tile_ColliderType)` overload"]
174 fn set_collider_type(self, value: impl ::core::convert::Into<crate::unity_engine::tilemaps::tile::Tile_ColliderType>) -> () {
175 unsafe {
176 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
177 ::unity::il2cpp_call!((::unity::module_base()+0x3f42c40usize)as*mut u8,();
178(Tile)__receiver,(crate::unity_engine::tilemaps::tile::Tile_ColliderType)::core::convert::Into::into(value))
179 }
180 }
181 #[doc = "`GetTileData(crate::unity_engine::vector3int::Vector3Int, crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface, *mutcrate::unity_engine::tilemaps::tiledata::TileData)` overload"]
182 fn get_tile_data(
183 self,
184 position: impl ::core::convert::Into<crate::unity_engine::vector3int::Vector3Int>,
185 tilemap: impl ::core::convert::Into<crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface>,
186 ) -> crate::unity_engine::tilemaps::tiledata::TileData {
187 unsafe {
188 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
189 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::tilemaps::tiledata::TileData>::uninit();
190 {
191 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
192 let __vi = *__vt.get(5usize).unwrap_or_else(|| {
193 panic!(
194 "unity: virtual slot {}
195 out of range (vtable len {}
196) on the runtime class behind {}
197 (method `{}
198`)",
199 5usize,
200 __vt.len(),
201 <Tile as ::unity::ClassIdentity>::NAME,
202 "GetTileData",
203 )
204 });
205 let __inner: extern "C" fn(
206 Tile,
207 crate::unity_engine::vector3int::Vector3Int,
208 crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
209 *mut crate::unity_engine::tilemaps::tiledata::TileData,
210 ::unity::OptionalMethod,
211 ) -> () = ::core::mem::transmute(__vi.method_ptr);
212 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
213 __inner(
214 __receiver,
215 ::core::convert::Into::into(position),
216 ::core::convert::Into::into(tilemap),
217 __out_0.as_mut_ptr(),
218 __mi,
219 )
220 };
221 __out_0.assume_init()
222 }
223 }
224 #[doc = "`.ctor()` overload"]
225 fn ctor(self) -> () {
226 unsafe {
227 let __receiver = <Tile as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
228 ::unity::il2cpp_call!((::unity::module_base()+0x3f42d40usize)as*mut u8,();
229(Tile)__receiver)
230 }
231 }
232}
233
234#[cfg(feature = "unity_engine-tilemaps-tile")]
235impl<__T: ITile> ITileMethods for __T {}
236
237#[cfg(feature = "unity_engine-tilemaps-tile")]
238impl Tile {
239 pub fn get_sprite_method_info() -> &'static ::unity::il2cpp::MethodInfo {
240 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
241 }
242
243 pub fn set_sprite_method_info() -> &'static ::unity::il2cpp::MethodInfo {
244 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
245 }
246
247 pub fn get_color_method_info() -> &'static ::unity::il2cpp::MethodInfo {
248 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
249 }
250
251 pub fn set_color_method_info() -> &'static ::unity::il2cpp::MethodInfo {
252 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
253 }
254
255 pub fn get_transform_method_info() -> &'static ::unity::il2cpp::MethodInfo {
256 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
257 }
258
259 pub fn set_transform_method_info() -> &'static ::unity::il2cpp::MethodInfo {
260 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
261 }
262
263 pub fn get_game_object_method_info() -> &'static ::unity::il2cpp::MethodInfo {
264 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
265 }
266
267 pub fn set_game_object_method_info() -> &'static ::unity::il2cpp::MethodInfo {
268 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
269 }
270
271 pub fn get_flags_method_info() -> &'static ::unity::il2cpp::MethodInfo {
272 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
273 }
274
275 pub fn set_flags_method_info() -> &'static ::unity::il2cpp::MethodInfo {
276 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
277 }
278
279 pub fn get_collider_type_method_info() -> &'static ::unity::il2cpp::MethodInfo {
280 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
281 }
282
283 pub fn set_collider_type_method_info() -> &'static ::unity::il2cpp::MethodInfo {
284 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[11]
285 }
286
287 pub fn get_tile_data_method_info() -> &'static ::unity::il2cpp::MethodInfo {
288 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[12]
289 }
290
291 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
292 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[13]
293 }
294}
295
296#[cfg(feature = "unity_engine-tilemaps-tile")]
297impl Tile {
298 #[doc = "Direct (non-virtual) call to `Tile`'s own `GetTileData`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
299 pub unsafe fn get_tile_data(
300 this: impl ::core::convert::Into<::unity::IlInstance>,
301 position: crate::unity_engine::vector3int::Vector3Int,
302 tilemap: crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
303 tile_data: *mut crate::unity_engine::tilemaps::tiledata::TileData,
304 ) -> () {
305 let __mi = Self::get_tile_data_method_info();
306 let __inner: extern "C" fn(
307 ::unity::IlInstance,
308 crate::unity_engine::vector3int::Vector3Int,
309 crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
310 *mut crate::unity_engine::tilemaps::tiledata::TileData,
311 ::unity::OptionalMethod,
312 ) -> () = ::core::mem::transmute(__mi.method_ptr);
313 __inner(this.into(), position, tilemap, tile_data, ::core::option::Option::None)
314 }
315}
316
317#[cfg(feature = "unity_engine-tilemaps-tile")]
318impl Tile {
319 #[doc = "`.ctor()` — no args"]
320 pub fn new() -> Self {
321 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
322 panic!(
323 "{}
324::{}
325 failed to instantiate",
326 ::core::stringify!(Tile),
327 ::core::stringify!(new),
328 )
329 });
330 <Self as ITileMethods>::ctor(this);
331 this
332 }
333}
334
335#[cfg(feature = "unity_engine-tilemaps-tile")]
336#[doc(hidden)]
337pub mod prelude {
338 pub use super::{ITile, ITileMethods, Tile, Tile_ColliderType};
339 #[cfg(feature = "system-object")]
340 pub use crate::system::object::IObjectMethods;
341 #[cfg(feature = "system-enum")]
342 pub use crate::system::r#enum::IEnumMethods;
343 #[cfg(feature = "system-valuetype")]
344 pub use crate::system::valuetype::IValueTypeMethods;
345 #[cfg(feature = "unity_engine-object_2")]
346 pub use crate::unity_engine::object_2::IObject_2Methods;
347 #[cfg(feature = "unity_engine-scriptableobject")]
348 pub use crate::unity_engine::scriptableobject::IScriptableObjectMethods;
349 #[cfg(feature = "unity_engine-tilemaps-tilebase")]
350 pub use crate::unity_engine::tilemaps::tilebase::ITileBaseMethods;
351 pub use crate::{
352 system::{object::IObject, r#enum::IEnum, valuetype::IValueType},
353 unity_engine::{object_2::IObject_2, scriptableobject::IScriptableObject, tilemaps::tilebase::ITileBase},
354 };
355}