| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- import { _decorator, Component, Node, Label, sp, Sprite, ImageAsset, SpriteFrame, Texture2D } from 'cc';
- import { DataSystem } from '../../core/data/DataSystem';
- import { Http } from '../../core/net/Http';
- import { ResourceLoader } from '../../core/resourceManager/ResourceLoader';
- import { WindowSystem } from '../../core/ui/window/WindowSystem';
- import { ISJSB, platform } from '../../data/jsb/platform';
- import { UserHeroData } from '../../hero/UserHeroData';
- import { ReportThinking } from '../../ReportThinking';
- import { FriendData } from '../FightData';
- const { ccclass, property } = _decorator;
- /**切磋站位Item*/
- @ccclass('FightPlaceItem')
- export class FightPlaceItem extends Component {
- @property({ type: ResourceLoader, displayName: "资源加载组件", tooltip: "资源加载组件" }) res: ResourceLoader = null;
- @property({ type: Http, displayName: "Http组件", tooltip: "Http组件" }) http: Http = null;
- @property({ type: sp.Skeleton, displayName: '武将动画', tooltip: "武将动画" }) spineHero: sp.Skeleton = null;
- @property({ type: Sprite, displayName: '头像', tooltip: "头像" }) imgHead: Sprite = null;
- @property({ type: Node, displayName: '邀请按钮', tooltip: "邀请按钮" }) addNode: Node = null;
- public async init(friendData: FriendData) {
- this.spineHero.node.active = !!friendData;
- this.addNode.active = !friendData;
- this.imgHead.node.active = !!friendData;
- if (friendData) {
- let heroID = friendData.heroID;
- let hero = DataSystem.getData(UserHeroData).get(heroID);
- this.spineHero.skeletonData = await this.res.load<sp.SkeletonData>("spine/hero/" + hero.client.hero_res, sp.SkeletonData);
- this.spineHero.animation = "idle";
- if (ISJSB() && friendData.avator) {
- let img = await this.res.loadRemote<ImageAsset>(friendData.avator, { ext: ".png" });
- const spriteFrame = new SpriteFrame();
- const texture = new Texture2D();
- texture.image = img;
- spriteFrame.texture = texture;
- this.imgHead.spriteFrame = spriteFrame;
- }
- }
- }
- private async onClickShare() {
- //邀请
- let result = await this.http.send("/api/app/share", {});
- if (result.code == 0) {
- ReportThinking.invite();
- platform.wxShare(result.data.url, result.data.title, result.data.descroption);
- } else {
- WindowSystem.showTips("分享信息获取失败,请稍后再试");
- }
- }
- }
|