3
3
use bevy:: {
4
4
asset:: {
5
5
io:: { Reader , VecReader } ,
6
- AssetLoader , CompleteErasedLoadedAsset , LoadContext , LoadDirectError ,
6
+ AssetLoader , LoadContext , LoadDirectError ,
7
7
} ,
8
8
prelude:: * ,
9
9
reflect:: TypePath ,
@@ -14,7 +14,7 @@ use thiserror::Error;
14
14
15
15
#[ derive( Asset , TypePath ) ]
16
16
struct GzAsset {
17
- uncompressed : CompleteErasedLoadedAsset ,
17
+ uncompressed : UntypedHandle ,
18
18
}
19
19
20
20
#[ derive( Default ) ]
@@ -77,7 +77,8 @@ impl AssetLoader for GzAssetLoader {
77
77
. immediate ( )
78
78
. with_reader ( & mut reader)
79
79
. load ( contained_path)
80
- . await ?;
80
+ . await ?
81
+ . 0 ;
81
82
82
83
Ok ( GzAsset { uncompressed } )
83
84
}
@@ -114,7 +115,6 @@ fn setup(mut commands: Commands, asset_server: Res<AssetServer>) {
114
115
115
116
fn decompress < T : Component + From < Handle < A > > , A : Asset > (
116
117
mut commands : Commands ,
117
- asset_server : Res < AssetServer > ,
118
118
mut compressed_assets : ResMut < Assets < GzAsset > > ,
119
119
query : Query < ( Entity , & Compressed < A > ) > ,
120
120
) {
@@ -123,11 +123,9 @@ fn decompress<T: Component + From<Handle<A>>, A: Asset>(
123
123
continue ;
124
124
} ;
125
125
126
- let uncompressed = uncompressed. take :: < A > ( ) . unwrap ( ) ;
127
-
128
126
commands
129
127
. entity ( entity)
130
128
. remove :: < Compressed < A > > ( )
131
- . insert ( T :: from ( asset_server . add ( uncompressed ) ) ) ;
129
+ . insert ( T :: from ( uncompressed . typed ( ) ) ) ;
132
130
}
133
131
}
0 commit comments