123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- import { AudioMgr, GameViewType } from "../../../main/ViewManage";
- import ViewObject from "../../../main/ViewObject";
- import { HttpStateType, ReveData } from "../../../util/CHttp";
- import GoodItem from "../../common/GoodItem";
- import PetIcon from "../../common/PetIcon";
- import Equip from "./Equip";
- import EquipInfo from "./EquipInfo";
- import EquipQH from "./EquipQH";
- const { ccclass, property } = cc._decorator;
- /**
- * 换装备界面
- */
- @ccclass
- export default class ChangeEquip extends ViewObject {
- @property(EquipInfo)
- public p1: EquipInfo = null;//左边
- @property(EquipInfo)
- public p2: EquipInfo = null;//右边
- @property(cc.Node)
- leftQHNode: cc.Node = null; // 左边强化按钮
- @property(cc.Node)
- mQHNode: cc.Node = null;//强化按钮节点
- @property(cc.Node)
- mUseNode: cc.Node = null;//装备按钮
- /**
- * 当前操作的伙伴
- */
- public petIcon: PetIcon;
- /**
- * 当前选择的装备
- */
- public goodItem: GoodItem;
- /**
- * 装备上的装备
- */
- public goodItem1: GoodItem;
- public equip: Equip;
- public inGuide = false
- public guideStep: number = 0;
- /**
- * @param pi 穿装备的伙伴
- * @param equipItem 选择的装备
- */
- public init(pi: PetIcon, goodItem: GoodItem, goodItem1: GoodItem) {
- this.petIcon = pi;
- this.goodItem = goodItem;
- this.goodItem1 = goodItem1
- this.p2.init(this.main, this.goodItem1, null)
- this.p1.init(this.main, this.goodItem, this.goodItem1);
- this.mQHNode.active = goodItem1.equipData && goodItem1.equipData.type <= 4;
- this.leftQHNode.active = goodItem.equipData.type <= 4;
- this.node.zIndex = 1
- if (this.inGuide) {
- if (this.guideStep == 0) {
- this.onGuide()
- }
- }
- }
- /**
- *
- * @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);
- }
- }
- /**
- * 使用装备
- */
- public onclickUse() {
- let msg = {
- petId: this.petIcon.id,
- equipIndex: this.p1.equipItem.equip.__index,
- }
- this.main.gameHttp.sendJson('equip/v1/use', msg, (state, reve: ReveData) => {
- this.main.stopLoad();
- if (state == HttpStateType.SUCCESS) {
- if (reve.retCode == 0) {
- this.main.playerEffectByPath(AudioMgr.equip);
- this.equip.checkPet(this.petIcon)
- this.equip.mEquipPack.flushEquip();
- this.exitDistroy()
- if (this.inGuide) {
- this.equip.onGuideExit()
- }
- this.main.showTips('装备成功');
- } else {
- this.main.showTips(reve.message);
- }
- } else {
- this.main.showTips('网络异常');
- }
- });
- if (this.guideCallback) {
- this.guideCallback()
- }
- }
- public onclickLeftQH() {
- this.main.viewManage.loadFunc(GameViewType.IntensifyEquip, (viewObject: ViewObject) => {
- let equipQH: EquipQH = viewObject as EquipQH;
- equipQH.init(this.goodItem.equip, this.petIcon, this.equip)
- viewObject.show()
- this.exitDistroy()
- });
- }
- public onclickQH() {
- this.main.viewManage.loadFunc(GameViewType.IntensifyEquip, (viewObject: ViewObject) => {
- let equipQH: EquipQH = viewObject as EquipQH;
- equipQH.init(this.goodItem1.equip, this.petIcon, this.equip)
- viewObject.show()
- this.exitDistroy()
- });
- }
- /**
- * 引导中的点击回调
- */
- private guideCallback: () => void
- public setGuideCallback(guideCallback: () => void) {
- this.guideCallback = guideCallback
- }
- /**
- * 开始引导穿装备
- */
- private onGuide() {
- let guideMask = this.main.mGuideMask
- let targetNode = this.mUseNode
- guideMask.setTargetNode(targetNode)
- guideMask.show()
- this.setGuideCallback(() => {
- guideMask.close()
- })
- }
- }
|