// ĠTHIS ĠFILE ĠIS ĠGENERATED ! ĠDO ĠNOT ĠEDIT ĠIT ĠMAN U ALLY ! Ċ @ file : Suppress (" Package Directory Mismatch ", Ġ" unused ", Ġ" FunctionName ", Ġ" Red undant Modal ity Modifier ", ĊĠĠĠ Ġ" UN CHECK ED _ CAST ", Ġ" Join Declaration And Assignment ", Ġ" USE LESS _ CAST ", ĊĠĠĠ Ġ" Remove Red undant Qualifier Name ", Ġ" NOTH ING _ TO _ INLINE ") Ċ Ċ package Ġgod ot Ċ Ċ import Ġgod ot .` annotation `. God ot BaseType Ċ import Ġgod ot . core . Pool Vector 3 Array Ċ import Ġgod ot . core . Transfer Context Ċ import Ġgod ot . core . Variant Type . BOOL Ċ import Ġgod ot . core . Variant Type . DOUBLE Ċ import Ġgod ot . core . Variant Type . LONG Ċ import Ġgod ot . core . Variant Type . NIL Ċ import Ġgod ot . core . Variant Type . POOL _ VECTOR 3 _ ARRAY Ċ import Ġgod ot . core . Variant Type . VECTOR 3 Ċ import Ġgod ot . core . Vector 3 Ċ import Ġkotlin . Boolean Ċ import Ġkotlin . Double Ċ import Ġkotlin . Long Ċ import Ġkotlin . Suppress Ċ import Ġkotlin . Unit Ċ Ċ /** Ċ Ġ* ĠRoom Ġnode , Ġused Ġto Ġgroup Ġobjects Ġtogether Ġlocally Ġfor Ġ[ godot . Portal ] Ġc ull ing . Ċ Ġ* Ċ Ġ* ĠThe Ġ[ godot . Portal ] Ġc ull ing Ġsystem Ġrequires Ġlevels Ġto Ġbe Ġbuilt Ġusing Ġobjects Ġgrouped Ġtogether Ġby Ġlocation Ġin Ġareas Ġcalled Ġ[ godot . Room ] s . ĠIn Ġmany Ġcases Ġthese Ġwill Ġcorrespond Ġto Ġactual Ġrooms Ġin Ġbuild ings , Ġbut Ġnot Ġnecessarily Ġ( a Ġcan yon Ġarea Ġmay Ġbe Ġtreated Ġas Ġa Ġroom ). Ċ Ġ* Ċ Ġ* ĠAny Ġ[ godot . Visual Instance ] Ġthat Ġis Ġa Ġchild Ġor Ġgrand child Ġof Ġa Ġ[ godot . Room ] Ġwill Ġbe Ġassigned Ġto Ġthat Ġroom , Ġif Ġthe Ġ` portal _ mode ` Ġof Ġthat Ġ[ godot . Visual Instance ] Ġis Ġset Ġto Ġ` STATIC ` Ġ( does Ġnot Ġmove ) Ġor Ġ` DYNAMIC ` Ġ( moves Ġonly Ġwithin Ġthe Ġroom ). Ċ Ġ* Ċ Ġ* ĠIntern ally Ġthe Ġroom Ġboundary Ġmust Ġform Ġa Ġ** conv ex Ġh ull **, Ġand Ġby Ġdefault Ġthis Ġis Ġdetermined Ġautomatically Ġby Ġthe Ġgeometry Ġof Ġthe Ġobjects Ġyou Ġplace Ġwithin Ġthe Ġroom . Ċ Ġ* Ċ Ġ* ĠYou Ġcan Ġaltern atively Ġprecise ly Ġspecify Ġa Ġ** manual Ġbound **. ĠIf Ġyou Ġplace Ġa Ġ[ godot . Mesh Instance ] Ġwith Ġa Ġname Ġprefixed Ġby Ġ` Bound _ `, Ġit Ġwill Ġturn Ġoff Ġthe Ġbound Ġgeneration Ġfrom Ġgeometry , Ġand Ġinstead Ġuse Ġthe Ġvertices Ġof Ġthis ĠMesh Instance Ġto Ġdirectly Ġcalculate Ġa Ġconvex Ġh ull Ġduring Ġthe Ġconversion Ġstage Ġ( see Ġ[ godot . Room Manager ]). Ċ Ġ* Ċ Ġ* ĠIn Ġorder Ġto Ġsee Ġfrom Ġone Ġroom Ġinto Ġan Ġadjacent Ġroom , Ġ[ godot . Portal ] s Ġmust Ġbe Ġplaced Ġover Ġnon - oc clude d Ġopen ings Ġbetween Ġrooms . ĠThese Ġwill Ġoften Ġbe Ġplaced Ġover Ġdo ors Ġand Ġwindows . Ċ Ġ*/ Ċ @ God ot BaseType Ċ public Ġopen Ġclass ĠRoom Ġ: ĠSpatial () Ġ{ ĊĠ Ġ/** ĊĠĠ Ġ* ĠIf Ġ` points ` Ġare Ġset , Ġthe Ġ[ godot . Room ] Ġbounding Ġconvex Ġh ull Ġwill Ġbe Ġbuilt Ġfrom Ġthese Ġpoints . ĠIf Ġno Ġpoints Ġare Ġset , Ġthe Ġroom Ġbound Ġwill Ġeither Ġbe Ġderived Ġfrom Ġa Ġmanual Ġbound Ġ([ godot . Mesh Instance ] Ġwith Ġname Ġprefix Ġ` Bound _ `), Ġor Ġfrom Ġthe Ġgeometry Ġwithin Ġthe Ġroom . ĊĠĠ Ġ* ĊĠĠ Ġ* ĠNote Ġthat Ġyou Ġcan Ġuse Ġthe Ġ` Generate ĠPoints ` Ġeditor Ġbutton Ġto Ġget Ġstarted . ĠThis Ġwill Ġuse Ġeither Ġthe Ġgeometry Ġor Ġmanual Ġbound Ġto Ġgenerate Ġthe Ġroom Ġh ull , Ġand Ġsave Ġthe Ġresulting Ġpoints , Ġallowing Ġyou Ġto Ġedit Ġthem Ġto Ġfurther Ġref ine Ġthe Ġbound . ĊĠĠ Ġ*/ ĊĠ Ġpublic Ġopen Ġvar Ġpoints : ĠPool Vector 3 Array ĊĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠ ĠTransfer Context . write Arguments () ĊĠĠĠĠĠ ĠTransfer Context . call Method ( raw Ptr , ĠENGINE METHOD _ ENGINE CLASS _ ROOM _ GET _ POINTS , ĊĠĠĠĠĠĠĠĠĠ ĠPO OL _ VECTOR 3 _ ARRAY ) ĊĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( POOL _ VECTOR 3 _ ARRAY , Ġfalse ) Ġas ĠPool Vector 3 Array ĊĠĠĠ Ġ} ĊĠĠĠ Ġset (` value `) Ġ{ ĊĠĠĠĠĠ ĠTransfer Context . write Arguments ( POOL _ VECTOR 3 _ ARRAY Ġto Ġvalue ) ĊĠĠĠĠĠ ĠTransfer Context . call Method ( raw Ptr , ĠENGINE METHOD _ ENGINE CLASS _ ROOM _ SET _ POINTS , ĠNIL ) ĊĠĠĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠThe Ġ` simplify ` Ġvalue Ġdetermines Ġto Ġwhat Ġdegree Ġroom Ġh ull s Ġ( bounds ) Ġare Ġsimplified , Ġby Ġremoving Ġsimilar Ġplanes . ĠA Ġvalue Ġof Ġ 0 Ġgives Ġno Ġsimpl ification , Ġ 1 Ġgives Ġmaximum Ġsimpl ification . ĊĠĠ Ġ*/ ĊĠ Ġpublic Ġopen Ġvar Ġroom Simpl ify : ĠDouble ĊĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠ ĠTransfer Context . write Arguments () ĊĠĠĠĠĠ ĠTransfer Context . call Method ( raw Ptr , ĠENGINE METHOD _ ENGINE CLASS _ ROOM _ GET _ ROOM _ SIMP LI FY , ĠDOUBLE ) ĊĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( DOUBLE , Ġfalse ) Ġas ĠDouble ĊĠĠĠ Ġ} ĊĠĠĠ Ġset (` value `) Ġ{ ĊĠĠĠĠĠ ĠTransfer Context . write Arguments ( DOUBLE Ġto Ġvalue ) ĊĠĠĠĠĠ ĠTransfer Context . call Method ( raw Ptr , ĠENGINE METHOD _ ENGINE CLASS _ ROOM _ SET _ ROOM _ SIMP LI FY , ĠNIL ) ĊĠĠĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠThe Ġroom Ġh ull Ġsimpl ification Ġcan Ġeither Ġuse Ġthe Ġdefault Ġvalue Ġset Ġin Ġthe Ġ[ godot . Room Manager ], Ġor Ġoverride Ġthis Ġand Ġuse Ġthe Ġper Ġroom Ġsetting . ĊĠĠ Ġ*/ ĊĠ Ġpublic Ġopen Ġvar Ġuse Default Simpl ify : ĠBoolean ĊĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠ ĠTransfer Context . write Arguments () ĊĠĠĠĠĠ ĠTransfer Context . call Method ( raw Ptr , ĠENGINE METHOD _ ENGINE CLASS _ ROOM _ GET _ USE _ DEFAULT _ SIMP LI FY , ĊĠĠĠĠĠĠĠĠĠ ĠBOOL ) ĊĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( BOOL , Ġfalse ) Ġas ĠBoolean ĊĠĠĠ Ġ} ĊĠĠĠ Ġset (` value `) Ġ{ ĊĠĠĠĠĠ ĠTransfer Context . write Arguments ( BOOL Ġto Ġvalue ) ĊĠĠĠĠĠ ĠTransfer Context . call Method ( raw Ptr , ĠENGINE METHOD _ ENGINE CLASS _ ROOM _ SET _ USE _ DEFAULT _ SIMP LI FY , ĊĠĠĠĠĠĠĠĠĠ ĠNIL ) ĊĠĠĠ Ġ} ĊĊĠ Ġpublic Ġoverride Ġfun Ġ__ new (): ĠUnit Ġ{ ĊĠĠĠ Ġcall Constructor ( ENGINE CLASS _ ROOM ) ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠSets Ġindividual Ġpoints . ĠPri mar ily Ġfor Ġuse Ġby Ġthe Ġeditor . ĊĠĠ Ġ*/ ĊĠ Ġpublic Ġopen Ġfun Ġset Point ( index : ĠLong , Ġposition : ĠVector 3 ): ĠUnit Ġ{ ĊĠĠĠ ĠTransfer Context . write Arguments ( LONG Ġto Ġindex , ĠV ECT OR 3 Ġto Ġposition ) ĊĠĠĠ ĠTransfer Context . call Method ( raw Ptr , ĠENGINE METHOD _ ENGINE CLASS _ ROOM _ SET _ POINT , ĠNIL ) ĊĠ Ġ} Ċ } Ċ