Skip to main content

engage/generated/unity_engine/tilemaps/
tile.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[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}