咸鱼的反击
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

419 lines
20 KiB

import GameReport from "../../FrameWork/Report/ZyZyReport";
import User from "../../FrameWork/User/User";
import AppPlatform from "../../FrameWork/Util/AppPlatform";
import Common5 from "../../Platform/th/Common5";
import TaskManager from "../JuQingChat/TaskManager";
import BagManager, { GoodsProperty, GoodsLocalProperty } from "../Manager/BagManager";
import LevelUpManager from "../Manager/LevelUpManager";
import ShipuManager from "../Manager/ShipuManager";
import TanWeiManager from "../Manager/TanWeiManager";
import UserManager from "../Manager/UserManager";
import PrefabManage, { GameType } from "../PrefabManager/PrefabManage";
import ZhaoHuanTai from "../ZhaoHuanTai/ZhaoHuanTai";
import GetAward from "./GetAward";
const { ccclass, property } = cc._decorator;
export enum GetAward_BtnStatus {
ChuShou,
BeiBao,
BuYao,
LingQu
}
@ccclass
export default class GetDiaoLuo extends cc.Component {
@property(cc.Node)
diaoluo_1: cc.Node = null;
@property(cc.Node)
diaoluo_2: cc.Node = null;
@property(cc.Sprite)
icon_1: cc.Sprite = null;
@property(cc.Label)
name_1: cc.Label = null;
@property(cc.RichText)
shouyi: cc.RichText = null;
@property(cc.Sprite)
icon_2_1: cc.Sprite = null;
@property(cc.Sprite)
icon_2_2: cc.Sprite = null;
@property(cc.Sprite)
dikuang_2_1: cc.Sprite = null;
@property(cc.Sprite)
dikuang_2_2: cc.Sprite = null;
@property(cc.Label)
name_2_1: cc.Label = null;
@property(cc.Label)
name_2_2: cc.Label = null;
@property(cc.Label)
shouyiname_2_1: cc.Label = null;
@property(cc.Label)
shouyiname_2_2: cc.Label = null;
@property(cc.Label)
shouyi_2_1: cc.Label = null;
@property(cc.Label)
shouyi_2_2: cc.Label = null;
@property(cc.Label)
allGetNum: cc.Label = null;
@property(cc.RichText)
shouyiUp: cc.RichText = null;
goodId: any;
diaoluoData: any;
levelBgName = ['物品-灰_', '物品-灰_', '物品-绿', '物品-蓝', '物品-紫', '物品-橙', '物品-彩']
levelName = ['粗糙', '粗糙', '普通', '高级', '优秀', '极品', '神话']
m_index = 0
start() {
this.diaoluo_1.active = true
this.diaoluo_2.active = false
Common5.playRemoteAudioEffect("remotesound/effect/掉落弹窗")
cc.sys.localStorage.setItem("掉落引导", '1')
}
initView(diaoluo, callFunc?) {
this.diaoluoData = diaoluo
// if (typeof (diaoluo.wuping) == "number") {
// this.goodId = diaoluo.wuping
// Common5.addUrlSprite_custom("GoodIcon/texture/icon/" + this.goodId, this.icon_1)
// let configDate = BagManager.getBagGoodConfig(this.goodId)
// this.diaoluo_1.getChildByName("道具名称").getChildByName("name").getComponent(cc.Label).string = configDate.goodName
// } else {
// let configDate
// let id = this.diaoluoData.wuping.id
// if (diaoluo.wuping.isShiPu) {
// configDate = ShipuManager.getShipuConfigDate(id)
// let beishu = ShipuManager.getShipuInComeByIdAndLevel(id, diaoluo.pingzhi)
// this.shouyi.string = `<color=#ffffff>秒赚收益:</c><color=#FFF19D>x${beishu}倍</color>`
// Common5.addUrlSprite_custom('shipuIcon/' + configDate.name, this.icon_1)
// } else {
// configDate = TanWeiManager.getShipuConfigDate(id)
// let beishu = TanWeiManager.getShipuInComeByIdAndLevel(id, diaoluo.pingzhi)
// this.shouyi.string = `<color=#ffffff>点击收益:</c><color=#FFF19D>x${beishu}倍</color>`
// Common5.addUrlSprite_custom('tanweiTexture/icon/' + configDate.name, this.icon_1)
// }
// this.name_1.string = configDate.name
// }
//全都要剩余次数
//新版本强制到3
if (User.getDiaoLuoAllGet() > 5) {
User.setDiaoLuoAllGet(3)
}
this.allGetNum.string = `${User.getDiaoLuoAllGet()}/3`
if (User.getDiaoLuoAllGet() <= 0) {
this.diaoluo_1.getChildByName("替换").getComponent(cc.Button).interactable = false
}
for (let i = 0; i < diaoluo.length; i++) {
let _diaoluo = diaoluo[i]
if (_diaoluo.wuping.isShiPu || _diaoluo.wuping.isTanWei) {
let configDate
let id = _diaoluo.wuping.id
let node = cc.instantiate(this.diaoluo_1.getChildByName("dikuang"))
node.active = true
node.attr({ diaoluoData: _diaoluo })
this.diaoluo_1.getChildByName("掉落物品").addChild(node)
let kuang = node.getChildByName("kuang")
Common5.getSpriteFrameFromBundle("GameRes", 'getDiaoLuo/奖励弹窗/' + this.levelBgName[_diaoluo.pingzhi], kuang.getComponent(cc.Sprite))
let icon = node.getChildByName("kuang").getChildByName("icon")
if (_diaoluo.wuping.isShiPu) {
configDate = ShipuManager.getShipuConfigDate(id)
let beishu = ShipuManager.getShipuInComeByIdAndLevel(id, _diaoluo.pingzhi)
// this.shouyi.string = `<color=#ffffff>秒赚收益:</c><color=#FFF19D>x${beishu}倍</color>`
Common5.addUrlSprite_custom('shipuIcon/' + configDate.name, icon.getComponent(cc.Sprite))
node.getChildByName("name").getComponent(cc.Label).string = configDate.name + `(${this.levelName[_diaoluo.pingzhi]})`
node.getChildByName("shouyi").getComponent(cc.RichText).string = `<color=#ffffff><outline color=#000000 width=2>秒赚收益:</c><color=#FFF19D><outline color=#000000 width=2>x${beishu}倍</color>`
} else {
configDate = TanWeiManager.getShipuConfigDate(id)
let beishu = TanWeiManager.getShipuInComeByIdAndLevel(id, _diaoluo.pingzhi)
// this.shouyi.string = `<color=#ffffff>点击收益:</c><color=#FFF19D>x${beishu}倍</color>`
Common5.addUrlSprite_custom('tanweiTexture/icon/' + configDate.name, icon.getComponent(cc.Sprite))
node.getChildByName("name").getComponent(cc.Label).string = configDate.name + `(${this.levelName[_diaoluo.pingzhi]})`
node.getChildByName("shouyi").getComponent(cc.RichText).string = `<color=#ffffff><outline color=#000000 width=2>点击收益:</c><color=#FFF19D><outline color=#000000 width=2>x${beishu}倍</color>`
}
if (_diaoluo.wuping.isAD) {
node.getChildByName("视频图标").active = true
} else {
node.getChildByName("视频图标").active = false
}
} else if (_diaoluo.wuping.isZhuZi) {//珠子
let node = cc.instantiate(this.diaoluo_1.getChildByName("dikuang"))
node.active = true
node.attr({ diaoluoData: _diaoluo })
node.getChildByName("视频图标").active = false
this.diaoluo_1.getChildByName("掉落物品").addChild(node)
let kuang = node.getChildByName("kuang")
Common5.getSpriteFrameFromBundle("GameRes", 'getDiaoLuo/奖励弹窗/' + this.levelBgName[2], kuang.getComponent(cc.Sprite))
let icon = node.getChildByName("kuang").getChildByName("icon")
Common5.addUrlSprite_custom("GoodIcon/texture/icon/" + _diaoluo.wuping.id, icon.getComponent(cc.Sprite))
// node.getChildByName("shouyi").active = false
node.getChildByName("name").getComponent(cc.Label).string = BagManager.getJuQingGoodConfig(_diaoluo.wuping.id).goodName
node.getChildByName("shouyi").getComponent(cc.RichText).string = `<color=#ffffff><outline color=#000000 width=2>集齐7颗可以开出神秘大奖</c>`
} else if (_diaoluo.wuping.isQian) {
let node = cc.instantiate(this.diaoluo_1.getChildByName("dikuang"))
node.active = true
node.attr({ diaoluoData: _diaoluo })
node.getChildByName("视频图标").active = false
this.diaoluo_1.getChildByName("掉落物品").addChild(node)
let kuang = node.getChildByName("kuang")
Common5.getSpriteFrameFromBundle("GameRes", 'getDiaoLuo/奖励弹窗/' + this.levelBgName[_diaoluo.pingzhi], kuang.getComponent(cc.Sprite))
let icon = node.getChildByName("kuang").getChildByName("icon")
Common5.addUrlSprite_custom("GoodIcon/texture/icon/" + _diaoluo.wuping.id, icon.getComponent(cc.Sprite))
// node.getChildByName("shouyi").active = false
node.getChildByName("name").getComponent(cc.Label).string = '钱袋子' + `(${this.levelName[_diaoluo.pingzhi]})`
let money = LevelUpManager.levelUpSpned() * (_diaoluo.pingzhi + 1)
let moneyStr = Common5.getNumberChangeHanzi(money)
node.getChildByName("shouyi").getComponent(cc.RichText).string = `<color=#ffffff><outline color=#000000 width=2>金额:</c><color=#FFF19D><outline color=#000000 width=2>${moneyStr}</color>`
if (_diaoluo.wuping.isAD) {
node.getChildByName("视频图标").active = true
} else {
node.getChildByName("视频图标").active = false
}
} else if (_diaoluo.wuping.isDengJi) {
let node = cc.instantiate(this.diaoluo_1.getChildByName("dikuang"))
node.active = true
node.attr({ diaoluoData: _diaoluo })
node.getChildByName("视频图标").active = false
this.diaoluo_1.getChildByName("掉落物品").addChild(node)
let kuang = node.getChildByName("kuang")
Common5.getSpriteFrameFromBundle("GameRes", 'getDiaoLuo/奖励弹窗/' + this.levelBgName[_diaoluo.pingzhi], kuang.getComponent(cc.Sprite))
let icon = node.getChildByName("kuang").getChildByName("icon")
Common5.addUrlSprite_custom("GoodIcon/texture/icon/" + _diaoluo.wuping.id, icon.getComponent(cc.Sprite))
// node.getChildByName("shouyi").active = false
node.getChildByName("name").getComponent(cc.Label).string = '等级提升' + `(${this.levelName[_diaoluo.pingzhi]})`
node.getChildByName("shouyi").getComponent(cc.RichText).string = `<color=#ffffff><outline color=#000000 width=2>提升:</c><color=#FFF19D><outline color=#000000 width=2>${_diaoluo.pingzhi}</color>`
if (_diaoluo.wuping.isAD) {
node.getChildByName("视频图标").active = true
} else {
node.getChildByName("视频图标").active = false
}
}
}
this.node.scale = 0.1
cc.tween(this.node)
.to(1.0, { scale: 1 }, { easing: 'elasticOut' })
.start()
}
onTouchCancel_1() {
this.node.removeFromParent()
this.node.destroy()
}
onTouchCancel_2() {
this.diaoluo_1.active = true
this.diaoluo_2.active = false
}
showTiHuan() {
this.diaoluo_1.active = false
// Common5.addUrlSprite_custom("GoodIcon/texture/icon/" + this.goodId, this.icon_2_1)
// let goodData = BagManager.getGoodsProperty(this.goodId)
let maxindex = this.diaoluoData.length
if (this.m_index < maxindex) {
let diaoluo = this.diaoluoData[this.m_index]
this.showData(diaoluo, false)
}
if (this.m_index == 0) {
let getDiaoLuoAllGet = User.getDiaoLuoAllGet()
getDiaoLuoAllGet--
User.setDiaoLuoAllGet(getDiaoLuoAllGet)
}
}
onTouchTiHuan() {
let tab = {
onClose: (finish) => {
if (finish) {
User.setShowAdNum(User.getShowAdNum() + 1)
Common5.ReportDY("inLevel", `任务${TaskManager.getCurUnLockMainTaskId()}-AD-掉落看视频`)
// Common5.ReportDY("inLevel", '掉落-AD-掉落看视频');
this.showTiHuan()
}
else {
Common5.showTips_custom("广告未观看完");
}
}, onFailed: () => {
}
}
AppPlatform.playVideo_custom(tab)
}
showData(diaoluo, isone) {
if (diaoluo.wuping.isShiPu || diaoluo.wuping.isTanWei) {//物品
let id = diaoluo.wuping.id
if (diaoluo.wuping.isShiPu) {
let configDate = ShipuManager.getShipuConfigDate(id)
let userDate = ShipuManager.getShipuUserDate(id)
this.name_2_1.string = configDate.name + `(${this.levelName[userDate.level]})`
this.name_2_2.string = configDate.name + `(${this.levelName[diaoluo.pingzhi]})`
Common5.addUrlSprite_custom('shipuIcon/' + configDate.name, this.icon_2_1)
Common5.addUrlSprite_custom('shipuIcon/' + configDate.name, this.icon_2_2)
Common5.getSpriteFrameFromBundle('GameRes', 'getDiaoLuo/奖励弹窗/' + this.levelBgName[userDate.level], this.dikuang_2_1)
Common5.getSpriteFrameFromBundle('GameRes', 'getDiaoLuo/奖励弹窗/' + this.levelBgName[diaoluo.pingzhi], this.dikuang_2_2)
let beishu1 = ShipuManager.getShipuInComeCurLevel(id)
let beishu2 = ShipuManager.getShipuInComeByIdAndLevel(id, diaoluo.pingzhi)
this.shouyiname_2_1.string = "秒赚收益:"
this.shouyiname_2_2.string = "秒赚收益:"
this.shouyi_2_1.string = `${beishu1}`
this.shouyi_2_2.string = `${beishu2}`
let cha = ShipuManager.getShipuInComeCha(id, diaoluo.pingzhi, userDate.level)
this.shouyiUp.string = `<color=#ffffff>秒赚收益永久提升:</c><color=#FFDC3C>${cha}倍</color>`
this.shouyiUp.node.getChildByName("箭头").getComponent(cc.Widget).updateAlignment();
} else {
let configDate = TanWeiManager.getShipuConfigDate(id)
let userDate = TanWeiManager.getShipuUserDate(id)
this.name_2_1.string = configDate.name + `(${this.levelName[userDate.level]})`
this.name_2_2.string = configDate.name + `(${this.levelName[diaoluo.pingzhi]})`
Common5.addUrlSprite_custom('tanweiTexture/icon/' + configDate.name, this.icon_2_1)
Common5.addUrlSprite_custom('tanweiTexture/icon/' + configDate.name, this.icon_2_2)
Common5.getSpriteFrameFromBundle('GameRes', 'getDiaoLuo/奖励弹窗/' + this.levelBgName[userDate.level], this.dikuang_2_1)
Common5.getSpriteFrameFromBundle('GameRes', 'getDiaoLuo/奖励弹窗/' + this.levelBgName[diaoluo.pingzhi], this.dikuang_2_2)
let beishu1 = TanWeiManager.getShipuInComeCurLevel(id)
let beishu2 = TanWeiManager.getShipuInComeByIdAndLevel(id, diaoluo.pingzhi)
this.shouyiname_2_1.string = "点击收益:"
this.shouyiname_2_2.string = "点击收益:"
this.shouyi_2_1.string = `${beishu1}`
this.shouyi_2_2.string = `${beishu2}`
let cha = TanWeiManager.getShipuInComeCha(id, diaoluo.pingzhi, userDate.level)
this.shouyiUp.string = `<color=#ffffff>点击收益永久提升:</c><color=#FFDC3C>${cha}倍</color>`
this.shouyiUp.node.getChildByName("箭头").getComponent(cc.Widget).updateAlignment();
}
this.diaoluo_2.active = true
} else if (diaoluo.wuping.isZhuZi) {//珠子
let zhuzis = [3730, 3731, 3732, 3733, 3734, 3735, 3736]
if (zhuzis.includes(diaoluo.wuping.id)) {
let bagConfig: GoodsLocalProperty = {
goodId: diaoluo.wuping.id,
goodNum: 1,
}
BagManager.addBagList(bagConfig)
PrefabManage.loadPrefabByType(GameType.ZhaoHuanTai, null, (node) => {
node.getComponent(ZhaoHuanTai).init(diaoluo.wuping.id, () => {
let maxindex = this.diaoluoData.length
this.m_index++
if (this.m_index < maxindex && !isone) {
this.showTiHuan()
} else {
this.node.removeFromParent()
this.node.destroy()
}
})
})
}
this.diaoluo_2.active = false
} else if (diaoluo.wuping.isQian) {
PrefabManage.loadPrefabByType(GameType.GetAward, null, (prefabNode) => {
prefabNode.getComponent(GetAward).initView([{ goodId: diaoluo.wuping.id, goodNum: 1 }], () => {
let money = LevelUpManager.levelUpSpned() * (diaoluo.pingzhi + 1)
UserManager.addMoney(money)
let maxindex = this.diaoluoData.length
this.m_index++
if (this.m_index < maxindex && !isone) {
this.showTiHuan()
} else {
this.node.removeFromParent()
this.node.destroy()
}
});
})
this.diaoluo_2.active = false
} else if (diaoluo.wuping.isDengJi) {
PrefabManage.loadPrefabByType(GameType.GetAward, null, (prefabNode) => {
prefabNode.getComponent(GetAward).initView([{ goodId: diaoluo.wuping.id, goodNum: 1 }], () => {
LevelUpManager.peopleLevelUp(diaoluo.pingzhi)
let maxindex = this.diaoluoData.length
this.m_index++
if (this.m_index < maxindex && !isone) {
this.showTiHuan()
} else {
this.node.removeFromParent()
this.node.destroy()
}
});
})
this.diaoluo_2.active = false
}
}
onTouchSure() {
let _diaoluo = this.diaoluoData[this.m_index]
let id = _diaoluo.wuping.id
if (_diaoluo.wuping.isShiPu) {
let userDate = ShipuManager.getShipuUserDate(id)
ShipuManager.shipuLevelUpById(_diaoluo.wuping.id, _diaoluo.pingzhi - userDate.level)
} else {
let userDate = TanWeiManager.getShipuUserDate(id)
TanWeiManager.shipuLevelUpById(_diaoluo.wuping.id, _diaoluo.pingzhi - userDate.level)
}
let maxindex = this.diaoluoData.length
this.m_index++
if (this.m_index < maxindex) {
this.showTiHuan()
} else {
this.node.removeFromParent()
this.node.destroy()
}
}
onTouch(event) {
let node = event.target
if (node.getChildByName("视频图标").active) {
let tab = {
onClose: (finish) => {
if (finish) {
User.setShowAdNum(User.getShowAdNum() + 1)
Common5.ReportDY("inLevel", `任务${TaskManager.getCurUnLockMainTaskId()}-AD-掉落看视频`)
// Common5.ReportDY("inLevel", '掉落-AD-掉落看视频');
this.diaoluo_1.active = false
this.diaoluoData = [node.diaoluoData]
this.showData(node.diaoluoData, true)
}
else {
Common5.showTips_custom("广告未观看完");
}
}, onFailed: () => {
}
}
AppPlatform.playVideo_custom(tab)
} else {
this.diaoluo_1.active = false
this.diaoluoData = [node.diaoluoData]
this.showData(node.diaoluoData, true)
}
}
onCloseAward() {
this.node.removeFromParent()
this.node.destroy()
}
}