GO6HOZRQC3PVIH6REZM4MYH3PGAQD5YSW3VCFJZ6ZENJLC5KDDMAC DVZELWMBAO4QEJ2MU2ATPLRI5Q7IU4XCF5NBSO5IVRG3W2ETXWMQC 57UORRDBBVFV6J2AVUM4DJB23BQVR37SRH3XVBGMP5CT5EJQKIFQC AZRGEBFL5YFY6PVBYGVAEUOEP5UUHVP4LLYRVMC3TAKQV6XUHXLQC QYHOJMYCWRCAMP6YPVGTBWSOOIDZI7Z2IMGODEA5UUJFMMYZCFCQC 3UFL673QX2JG7KHTAM7DFH4BBYVHDNMXBS2RW45G3JBNFZFLSRRQC PWXZFCENNLWYEKNPRXSV3FC7VSARURBC6JECKGJCCZC6YP3PN2DQC FPECYSD5K4I23LPBSJW2AOILTFLJE55HQ34FMK6CKTBUOFBUL6XAC MFKZYXV3EZAQCPNCFKCK5DM3O66CEGWYEUM6HZ2I2PMGVE73EYZAC GZRMSSTEWT3T2JERC7WCVT727X237UA6MXWVT6OSV5D5BRD4UOGQC Y7TNTUXM44MRLGA6FEG7J6BR77I7N3AIPZYVPXULOQZQ6PNOWJ7QC DDJJXZKSQLXUXIMLKMKHY75JKC2IRA2A7SEVSUNL5FSCFH77T4IAC YLV4W4IIJEWLS72UPGXZAJCDTWN6SJ4UTCYOW7YDSK2DLOUTAFOAC P55M772YOYQKCH3NKZWRGVFNULQA6K5L3SWC6M52R32QBC4VON5QC ZCLRDJQVS733WMBOJEPQR7YLZNHVA7HRPXO3XCIOFCQWNGI6PGYQC R4BVCJBS3A27YSRW6JDKADTQIHNBRKM72OW7EHMEKCCNVHQHWJJAC CWCOGTXQXEQPK6O4TQFCIPDVMZD7WHOBGMIG2DTSO6BEBFEADZIQC ZDAABIZI6MPCP5DPGUN24XLSWIKQQ6LYMKIH67ORLUSFUVS5AJ5AC SJGRJWVRMIYRCSQUR4LMS2APZNSJ64JAW7647NYTB52REONXVD2QC DHO4JCJIELKX4R42XXAMAHVQTTE6OWULLP2QF4BXO3UWC5UTMSMAC CZPLX4O4R7K3TF3NSAL5PT7NO3CUOLDY3OR332GBIYYNKMZTW24AC 3J7QNHQ4F2VBYCK6SWKPO3AW3YYAJZNWOW6XNSURSRDZOE2ZIGQAC R5HN6TNA5PO3DSVZ3ALMMBEO4HREQUTKIJJ7VEISOTRSFRBEDKYAC WPC667PRTGRE7BNP6E7ZCQIKXYMIHJT3LUTTQT7VX2HQVRBXNIKAC 2OZGXOFLTXALS34QEIQ2F6VT7AUWYK7FVXUUDX66GZT5I7FUNPVAC SACCO45GNBBHHTWCVMKJ64ZLGW32DM4DIKSOJF3N6U47WP4JY5HAC if ((this._children as any[]).indexOf(childInstance) === -1) {throw new Error(`Error, child ${childInstance} not found in ${this}`);} else {this.forceUpdates.push(this._children[(this._children as any[]).indexOf(childInstance)])
for (let childInfo of this._children) {if (childInfo.instance === childInstance) { // we found the instance in our _children array, now ensure it is in force updates array then returnif (this.forceUpdates.indexOf(childInfo) === -1) {this.forceUpdates.push(childInfo);}return;}
let childProps = {delta: props.delta,args: {pointNodeTexture: props.args.pointNodeTexture,markForceUpdate: this.markForceUpdate,},selfPointNodeRef: pointNodeRef,updaters: props.updaters,position: pointNodeRef.pointNodeCoord.multiply(RenderedChunkConstants.SPACING_PX),pointNodeGen,isSelected: props.selectedPointNode?.pointNodeId === pointNodeRef.pointNodeId,isAllocated: props.allocatedPointNodeSubset.contains(pointNodeRef),};
let childPropsFactory = (props: Props, state: State) => {return {delta: props.delta,args: {pointNodeTexture: props.args.pointNodeTexture,markForceUpdate: this.markForceUpdate,},selfPointNodeRef: pointNodeRef,updaters: props.updaters,position: pointNodeRef.pointNodeCoord.multiply(RenderedChunkConstants.SPACING_PX),pointNodeGen,isSelected: props.selectedPointNode?.pointNodeId === pointNodeRef.pointNodeId,isAllocated: props.allocatedPointNodeSubset.contains(pointNodeRef),};}
export type ChunkComponentProps = Props;
if ((this._children as any[]).indexOf(childInstance) === -1) {throw new Error(`Error, child ${childInstance} not found in ${this}`);} else if (this.forceUpdates.indexOf(childInstance) !== -1) {// already added to forceUpdates array, we can skip} else {this.forceUpdates.push(this._children[(this._children as any[]).indexOf(childInstance)])
for (let childInfo of this._children) {if (childInfo.instance === childInstance) { // we found the instance in our _children array, now ensure it is in force updates array then returnif (this.forceUpdates.indexOf(childInfo) === -1) {this.forceUpdates.push(childInfo);}return;}
if ((this._children as any[]).indexOf(childInstance) === -1) {throw new Error(`Error, child ${childInstance} not found in ${this}`);} else {this.forceUpdates.push(this._children[(this._children as any[]).indexOf(childInstance)])
for (let childInfo of this._children) {if (childInfo.instance === childInstance) { // we found the instance in our _children array, now ensure it is in force updates array then returnif (this.forceUpdates.indexOf(childInfo) === -1) {this.forceUpdates.push(childInfo);}return;}
let prevSize = prevProps.gameState.playerSave.allocatedPointNodeSet.size()let nextSize = props.gameState.playerSave.allocatedPointNodeSet.size()if (prevSize !== nextSize) { console.log('rootapp shouldUpdate', { prevSize, nextSize }); }
// let prevSize = prevProps.gameState.playerSave.allocatedPointNodeSet.size()// let nextSize = props.gameState.playerSave.allocatedPointNodeSet.size()// if (prevSize !== nextSize) { console.log('rootapp shouldUpdate', { prevSize, nextSize }); }
if ((this._children as any[]).indexOf(childInstance) === -1) {throw new Error(`Error, child ${childInstance} not found in ${this}`);} else {this.forceUpdates.push(this._children[(this._children as any[]).indexOf(childInstance)])
for (let childInfo of this._children) {if (childInfo.instance === childInstance) { // we found the instance in our _children array, now ensure it is in force updates array then returnif (this.forceUpdates.indexOf(childInfo) === -1) {this.forceUpdates.push(childInfo);}return;}
doChild(props: Props, chunkCoord: Vector2, chunkGen: ChunkGen): { childKey: ChunkRef, childProps: ChunkComponentProps } {
doChild(props: Props, chunkCoord: Vector2, chunkGen: ChunkGen): { childKey: ChunkRef, childPropsFactory: (p: Props, s: State) => ChunkComponentProps } {
let childProps = {delta: props.delta,args: {pointNodeTexture: props.args.pointNodeTexture,markForceUpdate: this.markForceUpdate},selfChunkRef: chunkRef,updaters: props.updaters,position: chunkRef.chunkCoord.multiply(RenderedChunkConstants.CHUNK_SPACING_PX),chunkGen: chunkGen,// NOTE(bowei): for optimization, we dont tell other chunks about selected nodes in other chunksselectedPointNode: (props.selectedPointNode?.chunkCoord.equals(chunkRef.chunkCoord) ? props.selectedPointNode : undefined),allocatedPointNodeSubset,
let childPropsFactory = (props: Props, state: State) => {return {delta: props.delta,args: {pointNodeTexture: props.args.pointNodeTexture,markForceUpdate: this.markForceUpdate},selfChunkRef: chunkRef,updaters: props.updaters,position: chunkRef.chunkCoord.multiply(RenderedChunkConstants.CHUNK_SPACING_PX),chunkGen: chunkGen,// NOTE(bowei): for optimization, we dont tell other chunks about selected nodes in other chunksselectedPointNode: (props.selectedPointNode?.chunkCoord.equals(chunkRef.chunkCoord) ? props.selectedPointNode : undefined),allocatedPointNodeSubset,};