|
@@ -1,5 +1,7 @@
|
|
import { Node, Prefab, _decorator, assetManager, find, instantiate, sys } from 'cc';
|
|
import { Node, Prefab, _decorator, assetManager, find, instantiate, sys } from 'cc';
|
|
import { UserModel } from '../Model/UserModel';
|
|
import { UserModel } from '../Model/UserModel';
|
|
|
|
+import { EventDispatcher } from 'db://assets/core_tgx/easy_ui_framework/EventDispatcher';
|
|
|
|
+import { GameEvent } from '../Enum/GameEvent';
|
|
const { ccclass, property } = _decorator;
|
|
const { ccclass, property } = _decorator;
|
|
|
|
|
|
@ccclass('UserManager')
|
|
@ccclass('UserManager')
|
|
@@ -24,6 +26,7 @@ export class UserManager {
|
|
*/
|
|
*/
|
|
public addPower(value: number): number {
|
|
public addPower(value: number): number {
|
|
this.userModel.powerCurrent = Math.min(this.userModel.powerCurrent + value, this.userModel.powerMax);
|
|
this.userModel.powerCurrent = Math.min(this.userModel.powerCurrent + value, this.userModel.powerMax);
|
|
|
|
+ EventDispatcher.instance.emit(GameEvent.EVENT_REFRESH_PLAYER_INFO);
|
|
return this.userModel.powerCurrent;
|
|
return this.userModel.powerCurrent;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -35,8 +38,60 @@ export class UserManager {
|
|
public reducePower(value: number): boolean {
|
|
public reducePower(value: number): boolean {
|
|
if (this.userModel.powerCurrent >= value) {
|
|
if (this.userModel.powerCurrent >= value) {
|
|
this.userModel.powerCurrent -= value;
|
|
this.userModel.powerCurrent -= value;
|
|
|
|
+ EventDispatcher.instance.emit(GameEvent.EVENT_REFRESH_PLAYER_INFO);
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 增加雷达免费次数
|
|
|
|
+ * @param value 增加的数量
|
|
|
|
+ * @returns 增加后的次数
|
|
|
|
+ */
|
|
|
|
+ public addRadarFreeCount(value: number): number {
|
|
|
|
+ this.userModel.radarFreeCount += value;
|
|
|
|
+ EventDispatcher.instance.emit(GameEvent.EVENT_REFRESH_PLAYER_INFO);
|
|
|
|
+ return this.userModel.radarFreeCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 减少雷达免费次数
|
|
|
|
+ * @param value 减少的数量
|
|
|
|
+ * @returns 是否成功减少
|
|
|
|
+ */
|
|
|
|
+ public reduceRadarFreeCount(value: number): boolean {
|
|
|
|
+ if (this.userModel.radarFreeCount >= value) {
|
|
|
|
+ this.userModel.radarFreeCount -= value;
|
|
|
|
+ EventDispatcher.instance.emit(GameEvent.EVENT_REFRESH_PLAYER_INFO);
|
|
|
|
+ return true;
|
|
|
|
+ }
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 增加侦探免费次数
|
|
|
|
+ * @param value 增加的数量
|
|
|
|
+ * @returns 增加后的次数
|
|
|
|
+ */
|
|
|
|
+ public addFreeScreenShotCount(value: number): number {
|
|
|
|
+ this.userModel.freeScreenShotCount += value;
|
|
|
|
+ EventDispatcher.instance.emit(GameEvent.EVENT_REFRESH_PLAYER_INFO);
|
|
|
|
+ return this.userModel.freeScreenShotCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 减少侦探免费次数
|
|
|
|
+ * @param value 减少的数量
|
|
|
|
+ * @returns 是否成功减少
|
|
|
|
+ */
|
|
|
|
+ public reduceFreeScreenShotCount(value: number): boolean {
|
|
|
|
+ if (this.userModel.freeScreenShotCount >= value) {
|
|
|
|
+ this.userModel.freeScreenShotCount -= value;
|
|
|
|
+ EventDispatcher.instance.emit(GameEvent.EVENT_REFRESH_PLAYER_INFO);
|
|
|
|
+ return true;
|
|
|
|
+ }
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|