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.
		
		
		
		
		
			
		
			
				
					
					
						
							349 lines
						
					
					
						
							15 KiB
						
					
					
				
			
		
		
	
	
							349 lines
						
					
					
						
							15 KiB
						
					
					
				| import { ryw_Event } from "../../../FrameWork/Event/EventEnum";
 | |
| import EventMgr from "../../../FrameWork/Event/EventMgr";
 | |
| import GameMgr from "../../../FrameWork/Mgr/GameMgr";
 | |
| import User, { RoomBtnIndexEnum } from "../../../FrameWork/User/User";
 | |
| import { DateUtils } from "../../../FrameWork/Util/DateUtils";
 | |
| import Common5 from "../../../Platform/th/Common5";
 | |
| import ZhongCanTingManager from "../../GameMethodRes/ZhongCanTing/ZhongCanTingManager";
 | |
| import ChatManager from "../../JuQingChat/ChatManager";
 | |
| import JuQingManager from "../../JuQingChat/JuQingManager";
 | |
| import TaskInfoView from "../../JuQingChat/TaskInfoView";
 | |
| import TaskManager, { MainTaskIdEnum } from "../../JuQingChat/TaskManager";
 | |
| import InterfaceManager from "../../Manager/InterfaceManager";
 | |
| import NewGuideScript from "../../NewGuide/NewGuideScript";
 | |
| import PrefabManage, { GameType } from "../../PrefabManager/PrefabManage";
 | |
| import Room3 from "../Room3/Room3";
 | |
| 
 | |
| 
 | |
| const { ccclass, property } = cc._decorator;
 | |
| 
 | |
| @ccclass
 | |
| export default class RoomCommon extends cc.Component {
 | |
| 
 | |
|     _dt4: number = 0
 | |
|     maskGuideNode: cc.Node = null
 | |
|     onLoad() {
 | |
| 
 | |
|     }
 | |
|     getMainNode() {
 | |
|         return this.node.getChildByName('mainNode')
 | |
|     }
 | |
|     start() {
 | |
|         // Common5.playRemoteAudioMusic(Common5.selectGameInfo.musicUrl)
 | |
|         // Common5.playMusicCustom('CommonRes', 'sound/背景音');
 | |
|         let shouYi = ZhongCanTingManager.getPerSecondShouYi()
 | |
|         this.node.getChildByName('yuanBao').getChildByName('shouYiStr').getComponent(cc.Label).string = `${Common5.getNumberChangeHanzi(shouYi, '1', 1)}/秒`
 | |
| 
 | |
|         Common5.getSpriteFrameFromBundle("CommonRes", "texture/" + User.getHeadImg(), this.node.getChildByName("head").getChildByName("头像").getComponent(cc.Sprite));
 | |
|         EventMgr.onEvent_custom(ryw_Event.setHeadImg, (img) => {
 | |
|             Common5.getSpriteFrameFromBundle("CommonRes", "texture/" + img, this.node.getChildByName("head").getChildByName("头像").getComponent(cc.Sprite));
 | |
|         }, this)
 | |
| 
 | |
|         // this.showChatBtnStatus()
 | |
|         EventMgr.onEvent_custom(ryw_Event.RefreshJuQingDuiHua, () => {
 | |
|             // this.setNaiNaiSpineStatus()
 | |
|             console.log('myroom收到RefreshJuQingDuiHua===')
 | |
|             this.showChatBtnStatus()
 | |
|         }, this)
 | |
| 
 | |
|         EventMgr.onEvent_custom(ryw_Event.SetCommonBtnShow, (bShow) => {
 | |
|             this.setCommonBtnShow(bShow)
 | |
|         }, this)
 | |
| 
 | |
|         // let times = User.getChongFanHaoMenTimes()
 | |
|         // if(times > 0){
 | |
|         //     this.node.getChildByName('记事本').getChildByName('timeStr').getComponent(cc.Label).string = DateUtils.formatTime_custom(times)
 | |
|         // }
 | |
|         EventMgr.onEvent_custom(ryw_Event.closeJiShiBen, () => {
 | |
|             this.showJiShiBenBtn()
 | |
|         }, this);
 | |
| 
 | |
|         EventMgr.onEvent_custom(ryw_Event.updateMainTask, (data) => {
 | |
|             this.showChatBtnStatus()
 | |
|             console.log("更新任务+", data)
 | |
|             let customTaskInfo = data.taskInfo
 | |
|             if (customTaskInfo && Object.keys(customTaskInfo).length > 0 && customTaskInfo.Id != 0 && data.isAutoTanChu) {
 | |
|                 this.node.getChildByName("taskInfoNode").getComponent(TaskInfoView).init()
 | |
|             } else {
 | |
|                 //PrefabManage.showTextTips('当前无任务')
 | |
|             }
 | |
|         }, this)
 | |
|         this.scheduleOnce(() => {
 | |
|             PrefabManage.preloadPrefabByType(GameType.CityPrefab)
 | |
|         }, 0.2)
 | |
|     }
 | |
|     showJiShiBenBtn() {
 | |
|         let jishibNode = this.node.getChildByName('记事本')
 | |
|         jishibNode.active = true
 | |
|         cc.tween(jishibNode)
 | |
|             .to(0.2, { scale: 1.3 })
 | |
|             .to(0.2, { scale: 1 })
 | |
|             .start()
 | |
|     }
 | |
|     update(dt) {
 | |
|         // this.refreshChongFanHaoMenTime(dt)
 | |
|     }
 | |
|     // refreshChongFanHaoMenTime(dt){
 | |
|     //     this._dt4 += dt
 | |
|     //     if(this._dt4 >= 1){
 | |
|     //         this._dt4 = 0
 | |
|     //         let times = User.getChongFanHaoMenTimes()
 | |
|     //         if(times > 0){
 | |
|     //             this.node.getChildByName('记事本').getChildByName('timeStr').getComponent(cc.Label).string = DateUtils.formatTime_custom(times)
 | |
|     //         }
 | |
|     //     } 
 | |
|     // }
 | |
| 
 | |
|     guideStep() {
 | |
|         let mainTaskInfo: any = TaskManager.getCurUnLockMainTaskInfo()
 | |
|         let mainId = mainTaskInfo.Id
 | |
|         //let indexStr = JuQingManager.getCurJuQingUnLockIndex()
 | |
| 
 | |
|         //引导去售货机买葡萄糖
 | |
|         if (mainId == MainTaskIdEnum.MainTask_203) {
 | |
|             let node = this.node.getChildByName('手机')
 | |
|             this.guideView([node])
 | |
|         } else if (mainId == MainTaskIdEnum.MainTask_202) {
 | |
|             let node = this.node.getChildByName('出门')
 | |
|             this.guideView([node])
 | |
|             Common5.ReportDY("inLevel", "任务001-房间二6出门");
 | |
|         }
 | |
|     }
 | |
| 
 | |
| 
 | |
|     guideView(nodeArray) {
 | |
|         PrefabManage.loadPrefabByType(GameType.GuideMskNode, null, (prefab) => {
 | |
|             let guideNodeArray = nodeArray
 | |
|             this.maskGuideNode = prefab
 | |
|             let firstNode = guideNodeArray.shift()
 | |
|             prefab.getComponent(NewGuideScript).setBindNode(firstNode, guideNodeArray)
 | |
|         })
 | |
|     }
 | |
| 
 | |
|     setCommonBtnShow(isBtnShow) {
 | |
|         this.node.getChildByName('领取福利').active = isBtnShow
 | |
|         this.node.getChildByName('任务助手').active = isBtnShow
 | |
|         this.node.getChildByName('记事本').active = isBtnShow
 | |
|         this.node.getChildByName('手机').active = isBtnShow
 | |
|         this.node.getChildByName('我的背包').active = isBtnShow
 | |
|         this.node.getChildByName('daily').active = isBtnShow
 | |
|         this.node.getChildByName('yuanBao').active = isBtnShow
 | |
|         this.node.getChildByName('head').active = isBtnShow
 | |
|         this.node.getChildByName('出门').active = isBtnShow
 | |
|     }
 | |
| 
 | |
|     // refreshMyRoomUi(num) {
 | |
|     // if(num == 0){
 | |
|     //     this.node.getChildByName('mainNode').getChildByName('待机狗').active = false
 | |
|     //     this.node.getChildByName('mainNode').getChildByName('renSpine1').active = true
 | |
|     //     this.node.getChildByName('mainNode').getChildByName('renSpine2').active = false
 | |
|     //     this.node.getChildByName('mainNode').getChildByName('竹马').active = false
 | |
|     //     this.node.getChildByName('mainNode').getChildByName('空被子').active = true
 | |
|     //     this.node.getChildByName('mainNode').getChildByName('被子盖').active = false
 | |
|     // }
 | |
|     // }
 | |
| 
 | |
|     chumenClickEvent() {
 | |
|         // let gameGuideStep = User.getGameGuideStepIndex()
 | |
|         // if(gameGuideStep == 11){
 | |
|         //     User.setGameGuideStepIndex(12)
 | |
|         // }
 | |
| 
 | |
|         PrefabManage.loadPrefabByType(GameType.CityPrefab)
 | |
|         // PrefabManage.loadPrefabByType(GameType.HuXinGongYuan)
 | |
|         // InterfaceManager.setDaoyeList('酒瓶回收',1)
 | |
| 
 | |
|         if (cc.isValid(this.maskGuideNode)) {
 | |
|             this.maskGuideNode.removeFromParent()
 | |
|             this.maskGuideNode.destroy()
 | |
|         }
 | |
| 
 | |
|         let prefabLayer = cc.director.getScene().getChildByName("Canvas").getChildByName('prefabLayer')
 | |
|         if (prefabLayer.getChildByName("taskInfoNode")) {
 | |
|             prefabLayer.getChildByName("taskInfoNode").getComponent(TaskInfoView).onClose()
 | |
|         }
 | |
|         this.node.removeFromParent()
 | |
|         this.node.destroy()
 | |
| 
 | |
|     }
 | |
| 
 | |
| 
 | |
|     clickTaskInfoEvent() {
 | |
|         let customTaskInfo: any = TaskManager.getCurUnLockMainTaskInfo()
 | |
|         if (customTaskInfo && Object.keys(customTaskInfo).length > 0 && customTaskInfo.Id != MainTaskIdEnum.MainTask_None) {
 | |
|             // PrefabManage.loadPrefabByType(GameType.TaskInfoNode)
 | |
|             this.node.getChildByName("taskInfoNode").getComponent(TaskInfoView).init()
 | |
|         } else {
 | |
|             if (TaskManager.getIsLastTaskFinish()) {
 | |
|                 PrefabManage.showTextTips('后续剧情策划挠头制作中,敬请期待!')
 | |
|             } else {
 | |
|                 PrefabManage.showTextTips('当前无任务')
 | |
|             }
 | |
|         }
 | |
| 
 | |
|     }
 | |
|     clickSettingEvent() {
 | |
|         PrefabManage.loadPrefabByType(GameType.Setting)
 | |
|     }
 | |
|     clickCebianlanEvent() {
 | |
|         // InterfaceManager.setDaoyeList('游艇基地2',1)
 | |
|         // PrefabManage.loadPrefabByType(GameType.GDaoYeShouGou)
 | |
|         // return
 | |
|         PrefabManage.loadPrefabByType(GameType.CeBianLan)
 | |
|     }
 | |
|     clickWXChat() {
 | |
|         JuQingManager.openJuQingOrChat('WX')
 | |
|     }
 | |
|     clickBeibaoEvent() {
 | |
|         PrefabManage.loadPrefabByType(GameType.BeiBao)
 | |
|     }
 | |
|     openJishiBen(event) {
 | |
|         // Common5.playEffect("sound/按键点击");
 | |
|         GameMgr.getInstance_custom().onLoadToSelectScene_custom();
 | |
|         //PrefabManage.loadPrefabByType(GameType.JiShiBen)
 | |
|     }
 | |
|     showChatBtnStatus() {
 | |
|         this.checkJuQingGuanQia()
 | |
|         this.guideStep()
 | |
| 
 | |
|         let indexStr = JuQingManager.getCurJuQingUnLockIndex()
 | |
| 
 | |
|         if (ChatManager.isChatTypeIncludeEventIndex('WX', indexStr)) {
 | |
|             let spineNode = this.node.getChildByName('手机').getChildByName('手机')
 | |
|             spineNode.getComponent(sp.Skeleton).setAnimation(0, '闪', true)
 | |
|             Common5.playEffect('sound/手机信息')
 | |
| 
 | |
|         } else {
 | |
|             let spineNode = this.node.getChildByName('手机').getChildByName('手机')
 | |
|             spineNode.getComponent(sp.Skeleton).setAnimation(0, '静止', false)
 | |
|         }
 | |
|         // if(indexStr == 'DH_1_2'){
 | |
|         //     User.setRoomGoodStatus(1)
 | |
|         // }else if(indexStr == 'DH_2'){
 | |
|         //     User.setRoomGoodStatus(3)
 | |
|         // }else if(indexStr == 'WX_3'){
 | |
|         //     this.showGuoDuLayer()
 | |
|         // }else if(indexStr == 'DH_4'){
 | |
|         //     User.setRoomGoodStatus(8)
 | |
|         // }
 | |
|         let isHaveTask = false
 | |
|         let mainTaskInfo: any = TaskManager.getCurUnLockMainTaskInfo()
 | |
|         let mainId = mainTaskInfo.Id
 | |
|         if (mainId != MainTaskIdEnum.MainTask_None && mainId) {
 | |
|             isHaveTask = true
 | |
|         }
 | |
|         if (isHaveTask) {
 | |
|             // let spineNode = this.node.getChildByName('任务助手').getChildByName('任务')
 | |
|             // spineNode.getComponent(sp.Skeleton).setAnimation(0, '闪', true)
 | |
| 
 | |
|             let rednode = this.node.getChildByName('任务助手').getChildByName('红点')
 | |
|             rednode.active = true
 | |
|             cc.tween(rednode)
 | |
|                 .sequence(
 | |
|                     cc.tween().to(0.5, { opacity: 0 }),
 | |
|                     cc.tween().to(0.5, { opacity: 255 }),
 | |
|                 )
 | |
|                 .repeatForever()
 | |
|                 .start()
 | |
|         } else {
 | |
|             // let spineNode = this.node.getChildByName('任务助手').getChildByName('任务')
 | |
|             // spineNode.getComponent(sp.Skeleton).setAnimation(0, '静止', false)
 | |
|             let rednode = this.node.getChildByName('任务助手').getChildByName('红点')
 | |
|             rednode.active = false
 | |
|         }
 | |
| 
 | |
| 
 | |
|         //city有玩法任务,出门闪烁
 | |
|         let spineNode = this.node.getChildByName('出门').getChildByName('外出')
 | |
|         let taskConfig = TaskManager.getTaskConfigById(mainId)
 | |
|         console.log("taskConfig====", taskConfig)
 | |
|         console.log("User.getRoomBtnIndex()=", User.getRoomBtnIndex())
 | |
|         // if (User.getRoomBtnIndex() == RoomBtnIndexEnum.touzirenjia && this.getMainNode().getChildByName("Room3") ) {
 | |
|         //     spineNode.getComponent(sp.Skeleton).setAnimation(0, '静止', false)
 | |
|         // }else if (User.getRoomBtnIndex() == RoomBtnIndexEnum.yiyuan && this.getMainNode().getChildByName("Room4")) {
 | |
|         //     spineNode.getComponent(sp.Skeleton).setAnimation(0, '静止', false)
 | |
|         // }else 
 | |
|         // if (taskConfig && taskConfig.wanFaRuKouTip && taskConfig.wanFaRuKouTip.length > 0 &&
 | |
|         //     (taskConfig.wanFaRuKouTip.indexOf('rk_chuZuChe') >= 0 || taskConfig.wanFaRuKouTip.indexOf('rk_maiHuoLang') >= 0)) {
 | |
|         if (taskConfig && taskConfig.wanFaRuKouTip && taskConfig.wanFaRuKouTip.indexOf('rk_chuZuChe') < 0) {
 | |
|             spineNode.getComponent(sp.Skeleton).setAnimation(0, '闪', true)
 | |
|         } else {
 | |
|             spineNode.getComponent(sp.Skeleton).setAnimation(0, '静止', false)
 | |
|         }
 | |
|         if (taskConfig && taskConfig.wanFaRuKouTip && taskConfig.wanFaRuKouTip.indexOf('rk_room') >= 0) {
 | |
|             spineNode.getComponent(sp.Skeleton).setAnimation(0, '闪', true)
 | |
|         }
 | |
|         if (taskConfig && taskConfig.ChuMenIsBlink) {
 | |
|             spineNode.getComponent(sp.Skeleton).setAnimation(0, '闪', true)
 | |
|         }
 | |
| 
 | |
|         // 某些任务触发需要闪
 | |
|         let taskids = [MainTaskIdEnum.MainTask_502]
 | |
|         if (taskids.includes(mainId)) {
 | |
|             spineNode.getComponent(sp.Skeleton).setAnimation(0, '闪', true)
 | |
|         }
 | |
| 
 | |
|         if (mainId == MainTaskIdEnum.MainTask_2405) {
 | |
|             let spineNode = this.node.getChildByName('我的背包').getChildByName('背包')
 | |
|             spineNode.getComponent(sp.Skeleton).setAnimation(0, '闪', true)
 | |
|         } else {
 | |
|             let spineNode = this.node.getChildByName('我的背包').getChildByName('背包')
 | |
|             spineNode.getComponent(sp.Skeleton).setAnimation(0, '静止', false)
 | |
|         }
 | |
| 
 | |
|         // let num = User.getRoomGoodStatus()
 | |
|         // this.refreshMyRoomUi(num)
 | |
| 
 | |
|         // let openBtnSpine = this.node.getChildByName('openBtnSpine')
 | |
|         // let beiBao = this.node.getChildByName('我的背包')
 | |
|         // if (mainId < MainTaskIdEnum.MainTask_211) {
 | |
|         //     beiBao.active = false
 | |
|         // } else {
 | |
|         //     if (mainId == MainTaskIdEnum.MainTask_211) {
 | |
|         //         openBtnSpine.setPosition(cc.v2(0, 0))
 | |
|         //         openBtnSpine.active = true
 | |
|         //         beiBao.opacity = 0
 | |
|         //         beiBao.active = true
 | |
|         //         openBtnSpine.getComponent(sp.Skeleton).setAnimation(0, '背包1', false)
 | |
|         //         this.scheduleOnce(() => {
 | |
|         //             openBtnSpine.getComponent(sp.Skeleton).setAnimation(0, '背包2', false)
 | |
| 
 | |
|         //             cc.tween(openBtnSpine)
 | |
|         //                 .to(0.5, { x: beiBao.x, y: beiBao.y })
 | |
|         //                 .call(() => {
 | |
|         //                     cc.tween(beiBao)
 | |
|         //                         .set({scale: 0.5, opacity: 255 })
 | |
|         //                         .to(0.15, { scale: 0.9 })
 | |
|         //                         .to(0.15, { scale: 0.8 })
 | |
|         //                     .start();
 | |
|         //                     this.guideView([beiBao]);
 | |
|         //                     openBtnSpine.active = false
 | |
|         //                 })
 | |
|         //                 .start()
 | |
|         //         }, 1.67)
 | |
|         //     } else {
 | |
|         //         beiBao.active = true
 | |
|         //     }
 | |
| 
 | |
|         // }
 | |
|     }
 | |
| 
 | |
|     clickDingYue() {
 | |
|         // Common5.playEffect("ui");
 | |
|         PrefabManage.loadPrefabByType(GameType.DingYue)
 | |
|     }
 | |
|     checkJuQingGuanQia() {
 | |
|         // let mainTaskInfo:any = TaskManager.getCurUnLockMainTaskInfo()
 | |
|         // let mainId = mainTaskInfo.Id
 | |
|         // if(mainId == MainTaskIdEnum.MainTask_602 || mainId == MainTaskIdEnum.MainTask_603){
 | |
|         //     User.setRoomGoodStatus(2)
 | |
|         //     PrefabManage.loadPrefabByType(GameType.JuQingGuanQia2,this.node)
 | |
|         //     return
 | |
|         // }
 | |
|     }
 | |
| 
 | |
|     setChuMenState(isBlink) {
 | |
|         let spineNode = this.node.getChildByName('出门').getChildByName('外出')
 | |
|         spineNode.getComponent(sp.Skeleton).setAnimation(0, isBlink ? '闪' : '静止', true)
 | |
|     }
 | |
| }
 | |
| 
 |