UNPKG

@animech-public/playcanvas

Version:
2 lines (1 loc) 816 B
import{Vec3 as e}from"../../../core/math/vec3.js";import{Component as o}from"../component.js";import{ComponentSystem as s}from"../system.js";import{ZoneComponent as t}from"./component.js";import{ZoneComponentData as n}from"./data.js";const i=["enabled"];class r extends s{constructor(e){super(e),this.id="zone",this.ComponentType=t,this.DataType=n,this.schema=i,this.on("beforeremove",this._onBeforeRemove,this)}initializeComponentData(o,s,t){o.enabled=!s.hasOwnProperty("enabled")||!!s.enabled,s.size&&(s.size instanceof e?o.size.copy(s.size):s.size instanceof Array&&s.size.length>=3&&o.size.set(s.size[0],s.size[1],s.size[2]))}cloneComponent(e,o){const s={size:e.zone.size};return this.addComponent(o,s)}_onBeforeRemove(e,o){o._onBeforeRemove()}}o._buildAccessors(t.prototype,i);export{r as ZoneComponentSystem};