commonui-lib-test
Version:
"#common ui lib test"
43 lines (42 loc) • 1.74 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const GameClientData_1 = require("../../data/GameClientData");
const StorageHandler_1 = require("./StorageHandler");
class PlayerAvatarHandler {
static loadAvatar(caller, target, urlPath) {
let loadAvatarComplete = Laya.Handler.create(caller, (texture) => {
if (texture) {
target.texture = texture;
}
else {
console.warn("Load avatar fail url path : ", urlPath);
target.texture = PlayerAvatarHandler.getDefaultAvatar();
}
});
if (!target)
return;
if (urlPath === "" || !urlPath) {
target.texture = PlayerAvatarHandler.getDefaultAvatar();
}
else {
let targetUrl = PlayerAvatarHandler.parseUrlHelpr(urlPath);
Laya.loader.load(targetUrl, loadAvatarComplete, null, Laya.Loader.IMAGE, 1, true, PlayerAvatarHandler.avatarGroup, false);
}
}
static dispose() {
PlayerAvatarHandler.defaultAvatar = null;
Laya.loader.clearResByGroup(PlayerAvatarHandler.avatarGroup);
}
static getDefaultAvatar() {
if (!PlayerAvatarHandler.defaultAvatar) {
PlayerAvatarHandler.defaultAvatar = fairygui.UIPackage.getItemByURL(GameClientData_1.defaultPlayerAvatar);
}
return PlayerAvatarHandler.defaultAvatar.texture;
}
static parseUrlHelpr(urlPath) {
let cdnUrl = StorageHandler_1.StorageHandler.getGameInfo("cdnUrl", "");
return cdnUrl.concat(urlPath);
}
}
exports.default = PlayerAvatarHandler;
PlayerAvatarHandler.avatarGroup = "avatarGroup";