1#[cfg(feature = "unity_engine-tilemaps-tilebase-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 object_2::{IObject_2, Object_2},
12 scriptableobject::{IScriptableObject, ScriptableObject},
13 },
14 };
15
16 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/tilemaps/tilebase/TileBase.md"))]
17 #[::unity::class(namespace = "UnityEngine.Tilemaps", name = "TileBase")]
18 #[parent(crate::unity_engine::scriptableobject::ScriptableObject)]
19 pub struct TileBase {}
20}
21
22#[cfg(feature = "unity_engine-tilemaps-tilebase-types")]
23pub use __types::*;
24
25#[cfg(feature = "unity_engine-tilemaps-tilebase")]
26pub trait ITileBaseMethods: ITileBase {
27 #[doc = "`RefreshTile(crate::unity_engine::vector3int::Vector3Int, crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface)` overload"]
28 fn refresh_tile(
29 self,
30 position: impl ::core::convert::Into<crate::unity_engine::vector3int::Vector3Int>,
31 tilemap: impl ::core::convert::Into<crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface>,
32 ) -> () {
33 unsafe {
34 let __receiver = <TileBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
35 {
36 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
37 let __vi = *__vt.get(4usize).unwrap_or_else(|| {
38 panic!(
39 "unity: virtual slot {}
40 out of range (vtable len {}
41) on the runtime class behind {}
42 (method `{}
43`)",
44 4usize,
45 __vt.len(),
46 <TileBase as ::unity::ClassIdentity>::NAME,
47 "RefreshTile",
48 )
49 });
50 let __inner: extern "C" fn(
51 TileBase,
52 crate::unity_engine::vector3int::Vector3Int,
53 crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
54 ::unity::OptionalMethod,
55 ) -> () = ::core::mem::transmute(__vi.method_ptr);
56 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
57 __inner(
58 __receiver,
59 ::core::convert::Into::into(position),
60 ::core::convert::Into::into(tilemap),
61 __mi,
62 )
63 }
64 }
65 }
66 #[doc = "`GetTileData(crate::unity_engine::vector3int::Vector3Int, crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface, *mutcrate::unity_engine::tilemaps::tiledata::TileData)` overload"]
67 fn get_tile_data(
68 self,
69 position: impl ::core::convert::Into<crate::unity_engine::vector3int::Vector3Int>,
70 tilemap: impl ::core::convert::Into<crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface>,
71 ) -> crate::unity_engine::tilemaps::tiledata::TileData {
72 unsafe {
73 let __receiver = <TileBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
74 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::tilemaps::tiledata::TileData>::uninit();
75 {
76 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
77 let __vi = *__vt.get(5usize).unwrap_or_else(|| {
78 panic!(
79 "unity: virtual slot {}
80 out of range (vtable len {}
81) on the runtime class behind {}
82 (method `{}
83`)",
84 5usize,
85 __vt.len(),
86 <TileBase as ::unity::ClassIdentity>::NAME,
87 "GetTileData",
88 )
89 });
90 let __inner: extern "C" fn(
91 TileBase,
92 crate::unity_engine::vector3int::Vector3Int,
93 crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
94 *mut crate::unity_engine::tilemaps::tiledata::TileData,
95 ::unity::OptionalMethod,
96 ) -> () = ::core::mem::transmute(__vi.method_ptr);
97 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
98 __inner(
99 __receiver,
100 ::core::convert::Into::into(position),
101 ::core::convert::Into::into(tilemap),
102 __out_0.as_mut_ptr(),
103 __mi,
104 )
105 };
106 __out_0.assume_init()
107 }
108 }
109 #[doc = "`GetTileDataNoRef(crate::unity_engine::vector3int::Vector3Int, crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface)` overload"]
110 fn get_tile_data_no_ref(
111 self,
112 position: impl ::core::convert::Into<crate::unity_engine::vector3int::Vector3Int>,
113 tilemap: impl ::core::convert::Into<crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface>,
114 ) -> crate::unity_engine::tilemaps::tiledata::TileData {
115 unsafe {
116 let __receiver = <TileBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
117 ::unity::il2cpp_call!((::unity::module_base()+0x3f42e50usize)as*mut u8,crate::unity_engine::tilemaps::tiledata::TileData;
118(TileBase)__receiver,(crate::unity_engine::vector3int::Vector3Int)::core::convert::Into::into(position),(crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface)::core::convert::Into::into(tilemap))
119 }
120 }
121 #[doc = "`GetTileAnimationData(crate::unity_engine::vector3int::Vector3Int, crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface, *mutcrate::unity_engine::tilemaps::tileanimationdata::TileAnimationData)` overload"]
122 fn get_tile_animation_data(
123 self,
124 position: impl ::core::convert::Into<crate::unity_engine::vector3int::Vector3Int>,
125 tilemap: impl ::core::convert::Into<crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface>,
126 ) -> (bool, crate::unity_engine::tilemaps::tileanimationdata::TileAnimationData) {
127 unsafe {
128 let __receiver = <TileBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
129 let mut __out_0 = ::core::mem::MaybeUninit::<crate::unity_engine::tilemaps::tileanimationdata::TileAnimationData>::uninit();
130 let __ret = {
131 {
132 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
133 let __vi = *__vt.get(6usize).unwrap_or_else(|| {
134 panic!(
135 "unity: virtual slot {}
136 out of range (vtable len {}
137) on the runtime class behind {}
138 (method `{}
139`)",
140 6usize,
141 __vt.len(),
142 <TileBase as ::unity::ClassIdentity>::NAME,
143 "GetTileAnimationData",
144 )
145 });
146 let __inner: extern "C" fn(
147 TileBase,
148 crate::unity_engine::vector3int::Vector3Int,
149 crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
150 *mut crate::unity_engine::tilemaps::tileanimationdata::TileAnimationData,
151 ::unity::OptionalMethod,
152 ) -> bool = ::core::mem::transmute(__vi.method_ptr);
153 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
154 __inner(
155 __receiver,
156 ::core::convert::Into::into(position),
157 ::core::convert::Into::into(tilemap),
158 __out_0.as_mut_ptr(),
159 __mi,
160 )
161 }
162 };
163 (__ret, __out_0.assume_init())
164 }
165 }
166 #[doc = "`GetTileAnimationDataNoRef(crate::unity_engine::vector3int::Vector3Int, crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface)` overload"]
167 fn get_tile_animation_data_no_ref(
168 self,
169 position: impl ::core::convert::Into<crate::unity_engine::vector3int::Vector3Int>,
170 tilemap: impl ::core::convert::Into<crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface>,
171 ) -> crate::unity_engine::tilemaps::tileanimationdata::TileAnimationData {
172 unsafe {
173 let __receiver = <TileBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
174 ::unity::il2cpp_call!((::unity::module_base()+0x3f42ef0usize)as*mut u8,crate::unity_engine::tilemaps::tileanimationdata::TileAnimationData;
175(TileBase)__receiver,(crate::unity_engine::vector3int::Vector3Int)::core::convert::Into::into(position),(crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface)::core::convert::Into::into(tilemap))
176 }
177 }
178 #[doc = "`StartUp(crate::unity_engine::vector3int::Vector3Int, crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface, crate::unity_engine::gameobject::GameObject)` overload"]
179 fn start_up(
180 self,
181 position: impl ::core::convert::Into<crate::unity_engine::vector3int::Vector3Int>,
182 tilemap: impl ::core::convert::Into<crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface>,
183 go: impl ::core::convert::Into<crate::unity_engine::gameobject::GameObject>,
184 ) -> bool {
185 unsafe {
186 let __receiver = <TileBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
187 {
188 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
189 let __vi = *__vt.get(7usize).unwrap_or_else(|| {
190 panic!(
191 "unity: virtual slot {}
192 out of range (vtable len {}
193) on the runtime class behind {}
194 (method `{}
195`)",
196 7usize,
197 __vt.len(),
198 <TileBase as ::unity::ClassIdentity>::NAME,
199 "StartUp",
200 )
201 });
202 let __inner: extern "C" fn(
203 TileBase,
204 crate::unity_engine::vector3int::Vector3Int,
205 crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
206 crate::unity_engine::gameobject::GameObject,
207 ::unity::OptionalMethod,
208 ) -> bool = ::core::mem::transmute(__vi.method_ptr);
209 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
210 __inner(
211 __receiver,
212 ::core::convert::Into::into(position),
213 ::core::convert::Into::into(tilemap),
214 ::core::convert::Into::into(go),
215 __mi,
216 )
217 }
218 }
219 }
220 #[doc = "`.ctor()` overload"]
221 fn ctor(self) -> () {
222 unsafe {
223 let __receiver = <TileBase as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
224 ::unity::il2cpp_call!((::unity::module_base()+0x3f42dd0usize)as*mut u8,();
225(TileBase)__receiver)
226 }
227 }
228}
229
230#[cfg(feature = "unity_engine-tilemaps-tilebase")]
231impl<__T: ITileBase> ITileBaseMethods for __T {}
232
233#[cfg(feature = "unity_engine-tilemaps-tilebase")]
234impl TileBase {
235 pub fn refresh_tile_method_info() -> &'static ::unity::il2cpp::MethodInfo {
236 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
237 }
238
239 pub fn get_tile_data_method_info() -> &'static ::unity::il2cpp::MethodInfo {
240 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
241 }
242
243 pub fn get_tile_data_no_ref_method_info() -> &'static ::unity::il2cpp::MethodInfo {
244 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
245 }
246
247 pub fn get_tile_animation_data_method_info() -> &'static ::unity::il2cpp::MethodInfo {
248 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
249 }
250
251 pub fn get_tile_animation_data_no_ref_method_info() -> &'static ::unity::il2cpp::MethodInfo {
252 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
253 }
254
255 pub fn start_up_method_info() -> &'static ::unity::il2cpp::MethodInfo {
256 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
257 }
258
259 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
260 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
261 }
262}
263
264#[cfg(feature = "unity_engine-tilemaps-tilebase")]
265impl TileBase {
266 #[doc = "Direct (non-virtual) call to `TileBase`'s own `RefreshTile`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
267 pub unsafe fn refresh_tile(
268 this: impl ::core::convert::Into<::unity::IlInstance>,
269 position: crate::unity_engine::vector3int::Vector3Int,
270 tilemap: crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
271 ) -> () {
272 let __mi = Self::refresh_tile_method_info();
273 let __inner: extern "C" fn(
274 ::unity::IlInstance,
275 crate::unity_engine::vector3int::Vector3Int,
276 crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
277 ::unity::OptionalMethod,
278 ) -> () = ::core::mem::transmute(__mi.method_ptr);
279 __inner(this.into(), position, tilemap, ::core::option::Option::None)
280 }
281
282 #[doc = "Direct (non-virtual) call to `TileBase`'s own `GetTileData`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
283 pub unsafe fn get_tile_data(
284 this: impl ::core::convert::Into<::unity::IlInstance>,
285 position: crate::unity_engine::vector3int::Vector3Int,
286 tilemap: crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
287 tile_data: *mut crate::unity_engine::tilemaps::tiledata::TileData,
288 ) -> () {
289 let __mi = Self::get_tile_data_method_info();
290 let __inner: extern "C" fn(
291 ::unity::IlInstance,
292 crate::unity_engine::vector3int::Vector3Int,
293 crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
294 *mut crate::unity_engine::tilemaps::tiledata::TileData,
295 ::unity::OptionalMethod,
296 ) -> () = ::core::mem::transmute(__mi.method_ptr);
297 __inner(this.into(), position, tilemap, tile_data, ::core::option::Option::None)
298 }
299
300 #[doc = "Direct (non-virtual) call to `TileBase`'s own `GetTileAnimationData`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
301 pub unsafe fn get_tile_animation_data(
302 this: impl ::core::convert::Into<::unity::IlInstance>,
303 position: crate::unity_engine::vector3int::Vector3Int,
304 tilemap: crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
305 tile_animation_data: *mut crate::unity_engine::tilemaps::tileanimationdata::TileAnimationData,
306 ) -> bool {
307 let __mi = Self::get_tile_animation_data_method_info();
308 let __inner: extern "C" fn(
309 ::unity::IlInstance,
310 crate::unity_engine::vector3int::Vector3Int,
311 crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
312 *mut crate::unity_engine::tilemaps::tileanimationdata::TileAnimationData,
313 ::unity::OptionalMethod,
314 ) -> bool = ::core::mem::transmute(__mi.method_ptr);
315 __inner(this.into(), position, tilemap, tile_animation_data, ::core::option::Option::None)
316 }
317
318 #[doc = "Direct (non-virtual) call to `TileBase`'s own `StartUp`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
319 pub unsafe fn start_up(
320 this: impl ::core::convert::Into<::unity::IlInstance>,
321 position: crate::unity_engine::vector3int::Vector3Int,
322 tilemap: crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
323 go: crate::unity_engine::gameobject::GameObject,
324 ) -> bool {
325 let __mi = Self::start_up_method_info();
326 let __inner: extern "C" fn(
327 ::unity::IlInstance,
328 crate::unity_engine::vector3int::Vector3Int,
329 crate::unity_engine::tilemaps::itilemap_interface::ITilemap_Interface,
330 crate::unity_engine::gameobject::GameObject,
331 ::unity::OptionalMethod,
332 ) -> bool = ::core::mem::transmute(__mi.method_ptr);
333 __inner(this.into(), position, tilemap, go, ::core::option::Option::None)
334 }
335}
336
337#[cfg(feature = "unity_engine-tilemaps-tilebase")]
338impl TileBase {
339 #[doc = "`.ctor()` — no args"]
340 pub fn new() -> Self {
341 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
342 panic!(
343 "{}
344::{}
345 failed to instantiate",
346 ::core::stringify!(TileBase),
347 ::core::stringify!(new),
348 )
349 });
350 <Self as ITileBaseMethods>::ctor(this);
351 this
352 }
353}
354
355#[cfg(feature = "unity_engine-tilemaps-tilebase")]
356#[doc(hidden)]
357pub mod prelude {
358 pub use super::{ITileBase, ITileBaseMethods, TileBase};
359 #[cfg(feature = "system-object")]
360 pub use crate::system::object::IObjectMethods;
361 #[cfg(feature = "unity_engine-object_2")]
362 pub use crate::unity_engine::object_2::IObject_2Methods;
363 #[cfg(feature = "unity_engine-scriptableobject")]
364 pub use crate::unity_engine::scriptableobject::IScriptableObjectMethods;
365 pub use crate::{
366 system::object::IObject,
367 unity_engine::{object_2::IObject_2, scriptableobject::IScriptableObject},
368 };
369}