UNPKG

wonder.js

Version:
75 lines (69 loc) 4.64 kB
'use strict'; var Contract$WonderLog = require("wonder-log/lib/js/src/Contract.js"); var StateDataMain$Wonderjs = require("../../../../state/main/data/StateDataMain.js"); var IsDebugMainService$Wonderjs = require("../../../../state/main/state/IsDebugMainService.js"); var ArrayService$WonderCommonlib = require("wonder-commonlib/lib/js/src/ArrayService.js"); var BufferPointLightService$Wonderjs = require("./BufferPointLightService.js"); var DisposeComponentService$Wonderjs = require("../../../../primitive/component/DisposeComponentService.js"); var DisposeTypeArrayService$Wonderjs = require("../../../../primitive/buffer/DisposeTypeArrayService.js"); var RenderLightArrLightService$Wonderjs = require("../RenderLightArrLightService.js"); var RecordPointLightMainService$Wonderjs = require("../../../../state/main/light/point/RecordPointLightMainService.js"); function isAlive(light, param) { return DisposeComponentService$Wonderjs.isAlive(light, param[/* disposedIndexArray */9]); } function _disposeData(light, record) { return /* record */[ /* index */record[/* index */0], /* buffer */record[/* buffer */1], /* colors */DisposeTypeArrayService$Wonderjs.deleteAndResetFloat32TypeArr(BufferPointLightService$Wonderjs.getColorIndex(light), BufferPointLightService$Wonderjs.getColorsSize(/* () */0), RecordPointLightMainService$Wonderjs.getDefaultColor(/* () */0), record[/* colors */2]), /* intensities */DisposeTypeArrayService$Wonderjs.deleteAndResetFloat32(BufferPointLightService$Wonderjs.getIntensityIndex(light), RecordPointLightMainService$Wonderjs.getDefaultIntensity(/* () */0), record[/* intensities */3]), /* constants */DisposeTypeArrayService$Wonderjs.deleteAndResetFloat32(BufferPointLightService$Wonderjs.getConstantIndex(light), RecordPointLightMainService$Wonderjs.getDefaultConstant(/* () */0), record[/* constants */4]), /* linears */DisposeTypeArrayService$Wonderjs.deleteAndResetFloat32(BufferPointLightService$Wonderjs.getLinearIndex(light), RecordPointLightMainService$Wonderjs.getDefaultLinear(/* () */0), record[/* linears */5]), /* quadratics */DisposeTypeArrayService$Wonderjs.deleteAndResetFloat32(BufferPointLightService$Wonderjs.getQuadraticIndex(light), RecordPointLightMainService$Wonderjs.getDefaultQuadratic(/* () */0), record[/* quadratics */6]), /* ranges */DisposeTypeArrayService$Wonderjs.deleteAndResetFloat32(BufferPointLightService$Wonderjs.getRangeIndex(light), RecordPointLightMainService$Wonderjs.getDefaultRange(/* () */0), record[/* ranges */7]), /* renderLightArr */RenderLightArrLightService$Wonderjs.removeFromRenderLightArr(light, record[/* renderLightArr */8]), /* disposedIndexArray */record[/* disposedIndexArray */9], /* gameObjectMap */DisposeComponentService$Wonderjs.disposeSparseMapData(light, record[/* gameObjectMap */10]) ]; } function handleBatchDisposeComponent(lightArray, record) { Contract$WonderLog.requireCheck((function (param) { return DisposeComponentService$Wonderjs.checkComponentShouldAliveWithBatchDispose(lightArray, isAlive, record); }), IsDebugMainService$Wonderjs.getIsDebug(StateDataMain$Wonderjs.stateData)); var match = lightArray.length; if (match !== 0) { var record_000 = /* index */record[/* index */0]; var record_001 = /* buffer */record[/* buffer */1]; var record_002 = /* colors */record[/* colors */2]; var record_003 = /* intensities */record[/* intensities */3]; var record_004 = /* constants */record[/* constants */4]; var record_005 = /* linears */record[/* linears */5]; var record_006 = /* quadratics */record[/* quadratics */6]; var record_007 = /* ranges */record[/* ranges */7]; var record_008 = /* renderLightArr */record[/* renderLightArr */8]; var record_009 = /* disposedIndexArray */record[/* disposedIndexArray */9].concat(lightArray); var record_010 = /* gameObjectMap */record[/* gameObjectMap */10]; var record$1 = /* record */[ record_000, record_001, record_002, record_003, record_004, record_005, record_006, record_007, record_008, record_009, record_010 ]; return ArrayService$WonderCommonlib.reduceOneParam((function (record, light) { return _disposeData(light, record); }), record$1, lightArray); } else { return record; } } exports.isAlive = isAlive; exports._disposeData = _disposeData; exports.handleBatchDisposeComponent = handleBatchDisposeComponent; /* Contract-WonderLog Not a pure module */