Browse Source

看广告免费升级武器2级

greg 4 years ago
parent
commit
b62b443677

+ 4 - 4
assets/resources/ui/FreeUpgradeUI.prefab

@@ -2577,8 +2577,8 @@
       "__id__": 1
     },
     "component": "",
-    "_componentId": "15ec3t8BJRJTpilb3tkiwVQ",
-    "handler": "PlayNextLevel",
+    "_componentId": "9be37ouFZVBR717b1lUsXDo",
+    "handler": "VideoButtonClickHandler",
     "customEventData": ""
   },
   {
@@ -2927,8 +2927,8 @@
       "__id__": 1
     },
     "component": "",
-    "_componentId": "15ec3t8BJRJTpilb3tkiwVQ",
-    "handler": "PlayNextLevel",
+    "_componentId": "9be37ouFZVBR717b1lUsXDo",
+    "handler": "AbandonButtonClickHandler",
     "customEventData": ""
   },
   {

+ 15 - 5
assets/scripts/games/ui/freeUpgrade/FreeUpgradeMediator.ts

@@ -61,7 +61,6 @@ export class FreeUpgradeMediator extends GUIMediator {
 
     private a:WeaponCell;
     private b:WeaponCell;
-    private weaponID:number;
     private nextWeaponId:number;
     OnShow(data?:any):void{
         super.OnShow(data);
@@ -70,14 +69,16 @@ export class FreeUpgradeMediator extends GUIMediator {
         let currentConfig:any=this.a.weaponConfig;
         let level:number=currentConfig.level+1;
         currentConfig=GameConfigManager.GetWeaponConfigByLevel(level);
-        this.weaponID=currentConfig.id;
         for (let index = 0; index < 2; index++) {
-            if(GameConfigManager.WeaponIsMaxLevel(level)){
-                level++;
+            const element:any=GameConfigManager.GetWeaponConfigByLevel(level);
+            if(element!=null){
+                if(GameConfigManager.WeaponIsMaxLevel(element.id)==false){
+                    level++;
+                }
             }
         }
         let nextConfig:any=GameConfigManager.GetWeaponConfigByLevel(level);
-        this.nextWeaponId=currentConfig.id;
+        this.nextWeaponId=nextConfig.id;
 
         //当前
         loader.loadRes(currentConfig.icon+"/spriteFrame",SpriteFrame,(err,res:SpriteFrame)=>{
@@ -163,12 +164,21 @@ export class FreeUpgradeMediator extends GUIMediator {
             NoticeManager.ShowPrompt("武器格子不足!");
             return false;
         }
+        let select:boolean=false;
+        if(GameModel.single.currentWeaponCell==this.a||GameModel.single.currentWeaponCell==this.b){
+            select=true;
+        }
         //删除A
         GameModel.single.RemoveWeapon(this.a.cellId);
         //删除B
         GameModel.single.RemoveWeapon(this.b.cellId);
         //添加新武器
         GameModel.single.AddWeapon(cell.cellId,weaponId);
+        if(select){
+            GameModel.single.currentWeaponCell=GameModel.single.FindCell(cell.cellId);
+            GameModel.single.DispatchEvent(DataModelEventType.PROPERTY_CHANGED,GamePropertys.currentWeaponId);
+            GameModel.single.DispatchEvent(DataModelEventType.PROPERTY_CHANGED,GamePropertys.WeaponCell);
+        }
         return true;
     }
 

+ 8 - 2
assets/scripts/games/ui/prepares/WeaponCellListView.ts

@@ -1,11 +1,13 @@
 import { _decorator, Component, Node, EventTouch, LayoutComponent, Vec2, Rect, Size, Vec3, loader, instantiate } from 'cc';
 import { BaseView } from '../../../engines/gui/BaseView';
+import { GUIManager } from '../../../engines/gui/GUIManager';
 import { GUIMediator } from '../../../engines/gui/GUIMediator';
 import { DataModelEventType } from '../../../engines/models/DataModelEventType';
 import GameConfigManager from '../../models/GameConfigManager';
 import { GameModel } from '../../models/GameModel';
 import { GamePropertys } from '../../models/GamePropertys';
 import { WeaponCell } from '../../models/weapons/WeaponCell';
+import { UIConst } from '../UIConst';
 import { PrepareMediator } from './PrepareMediator';
 import { WeaponCellScript } from './WeaponCellScript';
 const { ccclass, property } = _decorator;
@@ -210,8 +212,12 @@ export class WeaponCellListView extends BaseView{
                     }
                     let weaponCellScript:WeaponCellScript=target.getComponent(WeaponCellScript);
                     if(weaponCellScript!=null){
-                        console.log("合成");
-                        GameModel.single.SynthesisWeapon(this.currentSelect.cellId,weaponCellScript.weaponCell.cellId);
+                        let value:number=Math.random();
+                        if(value<0.5){
+                            GameModel.single.SynthesisWeapon(this.currentSelect.cellId,weaponCellScript.weaponCell.cellId);
+                        }else{
+                            GUIManager.single.Show(UIConst.FREE_UPGRADE_UI,{a:this.currentSelect,b:weaponCellScript.weaponCell});
+                        }
                     }
                 }
             }