engage/generated/app/water/
waterbasev2.rs1#[cfg(feature = "app-water-waterbasev2-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 monobehaviour::{IMonoBehaviour, MonoBehaviour},
14 object_2::{IObject_2, Object_2},
15 },
16 };
17
18 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/water/waterbasev2/WaterBaseV2.md"))]
19 #[::unity::class(namespace = "App.Water", name = "WaterBaseV2")]
20 #[parent(crate::unity_engine::monobehaviour::MonoBehaviour)]
21 pub struct WaterBaseV2 {
22 #[offset(24)]
23 #[rename(name = "sharedMaterial")]
24 pub shared_material: crate::unity_engine::material::Material,
25 #[offset(32)]
26 #[rename(name = "edgeBlend")]
27 pub edge_blend: bool,
28 #[offset(33)]
29 #[rename(name = "reflection")]
30 pub reflection: bool,
31 }
32}
33
34#[cfg(feature = "app-water-waterbasev2-types")]
35pub use __types::*;
36
37#[cfg(feature = "app-water-waterbasev2")]
38pub trait IWaterBaseV2Methods: IWaterBaseV2 {
39 #[doc = "`.ctor()` overload"]
40 fn ctor(self) -> () {
41 unsafe {
42 let __receiver = <WaterBaseV2 as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
43 ::unity::il2cpp_call!((::unity::module_base()+0x21c4b30usize)as*mut u8,();
44(WaterBaseV2)__receiver)
45 }
46 }
47}
48
49#[cfg(feature = "app-water-waterbasev2")]
50impl<__T: IWaterBaseV2> IWaterBaseV2Methods for __T {}
51
52#[cfg(feature = "app-water-waterbasev2")]
53impl WaterBaseV2 {
54 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
55 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
56 }
57}
58
59#[cfg(feature = "app-water-waterbasev2")]
60impl WaterBaseV2 {
61 #[doc = "`.ctor()` — no args"]
62 pub fn new() -> Self {
63 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
64 panic!(
65 "{}
66::{}
67 failed to instantiate",
68 ::core::stringify!(WaterBaseV2),
69 ::core::stringify!(new),
70 )
71 });
72 <Self as IWaterBaseV2Methods>::ctor(this);
73 this
74 }
75}
76
77#[cfg(feature = "app-water-waterbasev2")]
78#[doc(hidden)]
79pub mod prelude {
80 pub use super::{IWaterBaseV2, IWaterBaseV2Methods, WaterBaseV2};
81 #[cfg(feature = "system-object")]
82 pub use crate::system::object::IObjectMethods;
83 #[cfg(feature = "unity_engine-behaviour")]
84 pub use crate::unity_engine::behaviour::IBehaviourMethods;
85 #[cfg(feature = "unity_engine-component")]
86 pub use crate::unity_engine::component::IComponentMethods;
87 #[cfg(feature = "unity_engine-monobehaviour")]
88 pub use crate::unity_engine::monobehaviour::IMonoBehaviourMethods;
89 #[cfg(feature = "unity_engine-object_2")]
90 pub use crate::unity_engine::object_2::IObject_2Methods;
91 pub use crate::{
92 system::object::IObject,
93 unity_engine::{behaviour::IBehaviour, component::IComponent, monobehaviour::IMonoBehaviour, object_2::IObject_2},
94 };
95}