123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- import ViewObject from "../../main/ViewObject";
- import CardItem from "../home/card/item/CardItem";
- import GoodItem from "./GoodItem";
- /**
- * 通用的奖励显示弹出界面
- */
- const { ccclass, property } = cc._decorator;
- @ccclass
- export default class RewardView extends ViewObject {
- @property(cc.Prefab)
- mGoodItem: cc.Prefab = null;
- @property(cc.Node)
- mContent: cc.Node = null;
- @property(cc.Node)
- mComm: cc.Node = null;//普通道具,装备,金币钻石
- @property(cc.Node)
- mGodCard: cc.Node = null;//神卡显示
- @property(CardItem)
- mCardItem: CardItem = null;
- @property(cc.Label)
- mTitle: cc.Label = null;//标题
- @property(cc.Label)
- mAbout: cc.Label = null;//说明
- /**
- * 额外的奖励显示
- */
- private addList: Array<any> = []
- /**
- *
- * @param prev 父界面
- */
- public show(prev?: ViewObject) {
- if (prev) {
- this.prev = prev;
- this.prev.__close();
- }
- this.main.viewManage.popView1(this.node);
- if (this.main && this.main.gameHttp) {
- this.main.gameHttp.pushEvent(this);
- }
- }
- //let list = ff.main.sManage.getRewards(reve);
- /**
- {
- type:3, ---0:金币,1:钻石,2:道具,3:装备,4:神卡
- icon:'icon/equip/'+equip.icon,
- count:element.count,
- id:element.id,
- pz:equip.pz,
- PI:element.PI,
- star:element.star
- _data:__Equip
- }
- * @param list
- */
- public init(list: Array<any>) {
- let count = 0
- for (let i = 0; i < list.length; i++) {
- const element = list[i];
- if (element.type <= 3) {
- let node = cc.instantiate(this.mGoodItem)
- node.parent = this.mContent
- let goodItem = node.getComponent(GoodItem)
- goodItem.initReward(this.main, element)
- if(element.name){
- goodItem.mContrast.node.active = true
- goodItem.mContrast.string = element.name
- }
- count++
- } else {
- this.addList.push(element)
- }
- }
- if (count <= 0) {
- this.exitDistroy()
- }else{
- this.mComm.active = true
- this.mGodCard.active = false
- }
- }
- /**
- * 退出销毁界面
- */
- public exitDistroy() {
- if (this.addList.length <= 0) {
- super.exitDistroy()
- } else {
- this.mComm.active = false
- this.mGodCard.active = true
- let rewardData = this.addList.shift()
- this.mCardItem.init(this.main,rewardData.data)
- }
- }
- public setCloseCallback(closeCallback:()=>void){
- this.closeCallback = closeCallback
- }
- }
|