|
@@ -1,27 +1,40 @@
|
|
|
-import { SpriteAtlas } from "cc"
|
|
|
+import { isValid, Sprite, SpriteAtlas, SpriteFrame } from "cc"
|
|
|
import { AssetType, resLoader } from "../res/ResLoader"
|
|
|
import { AsyncQueue, NextFunction } from "../queue/AsyncQueue";
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+export enum HeadSpriteType{
|
|
|
+
|
|
|
+ Critical = 0,
|
|
|
+
|
|
|
+ Square,
|
|
|
+
|
|
|
+ Round,
|
|
|
+}
|
|
|
+
|
|
|
export class MaterialUtil {
|
|
|
|
|
|
static iconGame: SpriteAtlas = null;
|
|
|
static iconFilter: SpriteAtlas = null;
|
|
|
+
|
|
|
+ static iconHead: SpriteFrame = null;
|
|
|
|
|
|
static Restart() {
|
|
|
|
|
|
}
|
|
|
|
|
|
static init(callback) {
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ let queue = new AsyncQueue();
|
|
|
+ queue.pushMulti("InitPool", async (next: NextFunction, params: any, args: any) => {
|
|
|
+ resLoader.load('package', 'texture/head/end_0_1/spriteFrame', SpriteFrame, (error: Error, res: SpriteFrame) => {
|
|
|
+ if (!error) {
|
|
|
+ this.iconHead = res;
|
|
|
+ if(callback) callback();
|
|
|
+ next()
|
|
|
+ console.log('头像图标加载完成');
|
|
|
+ }
|
|
|
+ });
|
|
|
|
|
|
|
|
|
|
|
@@ -31,13 +44,13 @@ export class MaterialUtil {
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
+ });
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ queue.complete = () => {
|
|
|
+ console.log('materialUtil初始化完成');
|
|
|
+ };
|
|
|
|
|
|
-
|
|
|
+ queue.play();
|
|
|
}
|
|
|
|
|
|
_loadRes(LoadType: AssetType, Url, Back) {
|
|
@@ -57,4 +70,16 @@ export class MaterialUtil {
|
|
|
|
|
|
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+ static getHeadByID(id,sprite:Sprite,headType:HeadSpriteType = HeadSpriteType.Critical) {
|
|
|
+
|
|
|
+ resLoader.load('package', 'texture/head/end_0_'+id+"/spriteFrame", SpriteFrame, (error: Error, res: SpriteFrame) => {
|
|
|
+ if (!error && isValid(sprite)) {
|
|
|
+
|
|
|
+ sprite.spriteFrame = res;
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ }
|
|
|
}
|