123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- import { _decorator, Component, Label, Node, Sprite, SpriteFrame } from 'cc';
- import { server_play_list_data_item } from '../data/server_play_list_data';
- import { gameManager } from '../gameManager';
- import { config } from '../config';
- import { tools } from '../tools';
- import { ClientEvent } from '../framework/clientEvent';
- import { Lack } from '../dialog/Lack';
- import { SdkUtil } from '../framework/sdkUtil';
- import { StatisticsManager } from '../framework/statisticsManager';
- import { unlock_play_dialog } from './unlock_play_dialog';
- import { win } from '../dialog/win';
- const { ccclass, property } = _decorator;
- @ccclass('play_page_list_item')
- export class play_page_list_item extends Component {
- @property(Node) lab_level: Node = null;
- @property(Node) mask_layer: Node = null;
- private m_data: server_play_list_data_item = null;
- private m_call_back = null;
- public initView(data: server_play_list_data_item, sf: SpriteFrame, call_back: any) {
- this.m_call_back = call_back
- this.node.getComponent(Sprite).spriteFrame = sf
- this.node.on(Node.EventType.TOUCH_END, () => {
- if (this.m_call_back != null) {
- console.log(config.get_play_type_name(this.m_data.id))
- if (this.m_data.id === config.PLAY_TYPE.JI_YI_LI || this.m_data.id === config.PLAY_TYPE.DOU_DI_ZHU) {
- if (gameManager.get_user_coin() >= this.m_data.consume_coin) {
- let string = `使用${this.m_data.consume_coin}金币\n解锁${this.m_data.name}游戏`
- tools.showDialog(string, ()=> {
- gameManager.sub_coin(this.m_data.consume_coin)
- this.m_call_back(this.m_data);
- }, null)
- } else {
- this.showViewLack()
- }
- } else {
- this.m_call_back(this.m_data);
- }
- }
- },this)
- this.mask_layer.on(Node.EventType.TOUCH_END, ()=> {
- gameManager.playBtnSound()
- gameManager.addTopView(config.PREFAB_PATH.unlock_play_dialog, (node:Node)=>{
- let data = gameManager.get_cur_level_by_categoryid(this.m_data.id);
- let look_video_string = data.look_video_number + '/' + this.m_data.unlock_ads_number
- node.getComponent(unlock_play_dialog).initView(`解锁${this.m_data.name}?`, this.m_data.coin_number, look_video_string, (dialog_view:unlock_play_dialog)=> {
- dialog_view.close()
- if(gameManager.get_user_coin()>=this.m_data.coin_number){
- gameManager.sub_coin(this.m_data.coin_number);
- let data = gameManager.get_cur_level_by_categoryid(this.m_data.id);
- data.is_lock_game_play = 1;
- gameManager.set_unlock_levels_data(data);
- gameManager.sync_data((is_sync)=>{},config.sync_data_type.LEVELS)
- ClientEvent.dispatchEvent(config.EVENT_MSG.ON_UPDATE_HOME_VIEW)
- } else {
- this.showViewLack()
- }
- }, (dialog_view:unlock_play_dialog)=> {
- SdkUtil.showVideoAd(config.rewardVideoAdUnitId.Earn_coins_AdUnitId,(res)=>{
- if(res.isEnded){
- let data = gameManager.get_cur_level_by_categoryid(this.m_data.id);
- data.look_video_number+=1;
- let look_video_string = data.look_video_number + '/' + this.m_data.unlock_ads_number
- dialog_view.setupLookVideo(look_video_string)
- if(data.look_video_number>=this.m_data.unlock_ads_number){
- data.is_lock_game_play = 1;
- dialog_view.close()
- }
- gameManager.set_unlock_levels_data(data);
- gameManager.sync_data((is_sync)=>{},config.sync_data_type.LEVELS)
- if(data.is_lock_game_play===1){
- ClientEvent.dispatchEvent(config.EVENT_MSG.ON_UPDATE_HOME_VIEW)
- }else{
- this.updateView()
- }
- }
- // 统计-激励视频广告
- let collect_data = StatisticsManager.get_collect_data(this.m_data.id, 0, 0, res, config.STATISTICS_ACTION_TYPE.JIE_SUO)
- StatisticsManager.request_collect_rewardVideoData(collect_data)
- })
- })
- })
- },this)
- this.m_data = data;
- this.updateView()
- }
- public showViewLack() {
- gameManager.addTopView(config.PREFAB_PATH.Lack,(node:Node)=>{
- node.getComponent(Lack).initView(null,(lack:Lack)=>{
- SdkUtil.showVideoAd(config.rewardVideoAdUnitId.Earn_coins_AdUnitId,(res)=>{
- if(res.isEnded){
- lack.close()
- ClientEvent.dispatchEvent(config.EVENT_MSG.ON_SHOW_REWARD_VIEW)
- }
- // 统计-激励视频广告
- let collect_data = StatisticsManager.get_collect_data(0, 0, 0, res, config.STATISTICS_ACTION_TYPE.ZHUAN_JIN_BI)
- StatisticsManager.request_collect_rewardVideoData(collect_data)
- })
- });
- })
- }
- public updateView() {
- let data = gameManager.get_cur_level_by_categoryid(this.m_data.id);
- if (data != null) {
- this.lab_level.getComponent(Label).string = `${data.level}/${this.m_data.barrier_number}`
- if (data.is_lock_game_play === 1) {
- this.mask_layer.active = false;
- } else {
- this.mask_layer.active = true;
- }
- }
- }
- }
|