@@ -36,6 +36,7 @@ import {
3636 createMainProgram ,
3737 createNpcProgram ,
3838} from "./shaders/Shaders" ;
39+ import { CacheLoaders } from "../../rs/cache/CacheLoaders" ;
3940
4041const MAX_TEXTURES = 2048 ;
4142const TEXTURE_SIZE = 128 ;
@@ -78,6 +79,7 @@ export class WebGLRenderer extends MapViewerRenderer<WebGLMapSquare> {
7879 type : RendererType = WEBGL ;
7980
8081 dataLoader = new SdMapDataLoader ( ) ;
82+ cacheLoaders : CacheLoaders ;
8183
8284 app ! : PicoApp ;
8385 gl ! : WebGL2RenderingContext ;
@@ -164,6 +166,7 @@ export class WebGLRenderer extends MapViewerRenderer<WebGLMapSquare> {
164166
165167 constructor ( public mapViewer : MapViewer ) {
166168 super ( mapViewer ) ;
169+ this . cacheLoaders = mapViewer . cacheLoaders ;
167170 this . interactions = new Array ( INTERACT_BUFFER_COUNT ) ;
168171 for ( let i = 0 ; i < INTERACT_BUFFER_COUNT ; i ++ ) {
169172 this . interactions [ i ] = new Interactions ( INTERACTION_RADIUS ) ;
@@ -324,7 +327,7 @@ export class WebGLRenderer extends MapViewerRenderer<WebGLMapSquare> {
324327 }
325328
326329 initTextures ( ) : void {
327- const textureLoader = this . mapViewer . textureLoader ;
330+ const textureLoader = this . cacheLoaders . textureLoader ;
328331
329332 const allTextureIds = textureLoader . getTextureIds ( ) ;
330333
@@ -366,7 +369,7 @@ export class WebGLRenderer extends MapViewerRenderer<WebGLMapSquare> {
366369 for ( let i = 0 ; i < Math . min ( textureCount , maxPreloadTextures ) ; i ++ ) {
367370 const textureId = this . textureIds [ i ] ;
368371 try {
369- const texturePixels = this . mapViewer . textureLoader . getPixelsArgb (
372+ const texturePixels = this . cacheLoaders . textureLoader . getPixelsArgb (
370373 textureId ,
371374 TEXTURE_SIZE ,
372375 true ,
@@ -492,7 +495,7 @@ export class WebGLRenderer extends MapViewerRenderer<WebGLMapSquare> {
492495 for ( let i = 0 ; i < this . textureIds . length ; i ++ ) {
493496 const id = this . textureIds [ i ] ;
494497 try {
495- const material = this . mapViewer . textureLoader . getMaterial ( id ) ;
498+ const material = this . cacheLoaders . textureLoader . getMaterial ( id ) ;
496499
497500 const index = ( i + 1 ) * 4 ;
498501 data [ index ] = material . animU ;
@@ -674,9 +677,9 @@ export class WebGLRenderer extends MapViewerRenderer<WebGLMapSquare> {
674677 mapX ,
675678 mapY ,
676679 WebGLMapSquare . load (
677- this . mapViewer . seqTypeLoader ,
678- this . mapViewer . npcTypeLoader ,
679- this . mapViewer . basTypeLoader ,
680+ this . cacheLoaders . seqTypeLoader ,
681+ this . cacheLoaders . npcTypeLoader ,
682+ this . cacheLoaders . basTypeLoader ,
680683 this . app ,
681684 mainProgram ,
682685 mainAlphaProgram ,
@@ -987,8 +990,8 @@ export class WebGLRenderer extends MapViewerRenderer<WebGLMapSquare> {
987990 tickPass ( time : number , ticksElapsed : number , clientTicksElapsed : number ) : void {
988991 const cycle = time / 0.02 ;
989992
990- const seqFrameLoader = this . mapViewer . seqFrameLoader ;
991- const seqTypeLoader = this . mapViewer . seqTypeLoader ;
993+ const seqFrameLoader = this . cacheLoaders . seqFrameLoader ;
994+ const seqTypeLoader = this . cacheLoaders . seqTypeLoader ;
992995
993996 const pathfinder = this . mapViewer . pathfinder ;
994997
@@ -1298,7 +1301,7 @@ export class WebGLRenderer extends MapViewerRenderer<WebGLMapSquare> {
12981301 const interactId = this . interactBuffer [ index ] ;
12991302 const interactType = this . interactBuffer [ index + 2 ] ;
13001303 if ( interactType === InteractType . LOC ) {
1301- const locType = this . mapViewer . locTypeLoader . load ( interactId ) ;
1304+ const locType = this . cacheLoaders . locTypeLoader . load ( interactId ) ;
13021305 if ( locType . name === "null" && ! this . mapViewer . debugId ) {
13031306 continue ;
13041307 }
@@ -1330,7 +1333,7 @@ export class WebGLRenderer extends MapViewerRenderer<WebGLMapSquare> {
13301333 onClick : this . mapViewer . onExamine ,
13311334 } ) ;
13321335 } else if ( interactType === InteractType . OBJ ) {
1333- const objType = this . mapViewer . objTypeLoader . load ( interactId ) ;
1336+ const objType = this . cacheLoaders . objTypeLoader . load ( interactId ) ;
13341337 if ( objType . name === "null" && ! this . mapViewer . debugId ) {
13351338 continue ;
13361339 }
@@ -1362,11 +1365,11 @@ export class WebGLRenderer extends MapViewerRenderer<WebGLMapSquare> {
13621365 onClick : this . mapViewer . onExamine ,
13631366 } ) ;
13641367 } else if ( interactType === InteractType . NPC ) {
1365- let npcType = this . mapViewer . npcTypeLoader . load ( interactId ) ;
1368+ let npcType = this . cacheLoaders . npcTypeLoader . load ( interactId ) ;
13661369 if ( npcType . transforms ) {
13671370 const transformed = npcType . transform (
1368- this . mapViewer . varManager ,
1369- this . mapViewer . npcTypeLoader ,
1371+ this . cacheLoaders . varManager ,
1372+ this . cacheLoaders . npcTypeLoader ,
13701373 ) ;
13711374 if ( ! transformed ) {
13721375 continue ;
0 commit comments