This commit is contained in:
2025-10-10 18:21:33 +08:00
parent ea914bd167
commit 4d730fe9cb
19 changed files with 2118 additions and 1239 deletions
+4 -4
View File
@@ -394,14 +394,14 @@ export default class Utils {
minutes
);
if (days > 0) {
return `${days}${LanguageUtils.getText("purchasepanel.day")}`;
return `${days} ${LanguageUtils.getText("purchasepanel.day")}`;
}
if (hours > 0) {
return `${hours}${LanguageUtils.getText(
return `${hours} ${LanguageUtils.getText(
"purchasepanel.hour"
)}:${minutes}${LanguageUtils.getText("purchasepanel.minute")}`;
)}:${minutes} ${LanguageUtils.getText("purchasepanel.minute")}`;
}
return `${minutes}${LanguageUtils.getText("purchasepanel.minute")}`;
return `${minutes} ${LanguageUtils.getText("purchasepanel.minute")}`;
}
/**
@@ -27,7 +27,7 @@ export enum PageTransitionType {
*/
export enum PanelType {
THEME = "ThemePanel",
GIRL_DETAIL = "GirlDetailPanel",
RANK = "RankPanel",
PAST_GIRL_LIST = "PastGirlListPanel",
PERSONAL = "PersonalPanel",
}
@@ -49,6 +49,7 @@ export interface SubPanelAnimationConfig {
openAnimation: PageTransitionType;
closeAnimation: PageTransitionType;
duration?: number;
hideBasePanel?: boolean; // 是否隐藏basePanel,用于全屏子面板
}
/**
@@ -195,6 +196,9 @@ export class NavigationManager {
private subPanelAnimationConfigs: Map<Node, SubPanelAnimationConfig> =
new Map();
// 隐藏的basePanel映射:subPanel -> basePanel
private hiddenBasePanels: Map<Node, Node> = new Map();
// 弹窗管理相关属性
private popupPanels: Set<Node> = new Set(); // 管理所有打开的弹窗
@@ -330,9 +334,16 @@ export class NavigationManager {
openAnimation: PageTransitionType.SCALE,
closeAnimation: PageTransitionType.SCALE,
duration: 0.3,
hideBasePanel: false,
};
const config = animationConfig || defaultConfig;
// 如果需要隐藏basePanel,在打开动画前隐藏
if (config.hideBasePanel && basePanel.active) {
logger.log(`[NavigationManager] 隐藏basePanel: ${basePanel.name}`);
basePanel.active = false;
}
const callback = (n: Node) => {
if (!n || !n.isValid) {
logger.error(
@@ -359,6 +370,12 @@ export class NavigationManager {
// 存储动画配置
this.subPanelAnimationConfigs.set(n, config);
// 如果配置了隐藏basePanel,记录映射关系
if (config.hideBasePanel) {
this.hiddenBasePanels.set(n, basePanel);
logger.log(`[NavigationManager] 记录隐藏映射: ${n.name} -> ${basePanel.name}`);
}
// 执行打开动画
this.playSubPanelOpenAnimation(n, config);
};
@@ -592,11 +609,22 @@ export class NavigationManager {
openAnimation: PageTransitionType.SCALE,
closeAnimation: PageTransitionType.SCALE,
duration: 0.3,
hideBasePanel: false,
};
}
// 执行关闭动画
this.playSubPanelCloseAnimation(panelNode, config, () => {
// 如果隐藏了basePanel,需要恢复显示
if (this.hiddenBasePanels.has(panelNode)) {
const basePanel = this.hiddenBasePanels.get(panelNode);
if (basePanel && basePanel.isValid) {
logger.log(`[NavigationManager] 恢复显示basePanel: ${basePanel.name}`);
basePanel.active = true;
}
this.hiddenBasePanels.delete(panelNode);
}
// 从管理映射中移除
this.removeSubPanelFromMappings(panelNode);
@@ -643,6 +671,11 @@ export class NavigationManager {
if (this.subPanelAnimationConfigs.has(panelNode)) {
this.subPanelAnimationConfigs.delete(panelNode);
}
// 移除隐藏映射
if (this.hiddenBasePanels.has(panelNode)) {
this.hiddenBasePanels.delete(panelNode);
}
}
/**
@@ -652,7 +685,7 @@ export class NavigationManager {
switch (panelType) {
case PanelType.THEME:
return 0;
case PanelType.GIRL_DETAIL:
case PanelType.RANK:
return 1;
case PanelType.PAST_GIRL_LIST:
return 2;
@@ -671,8 +704,8 @@ export class NavigationManager {
switch (node.name) {
case "ThemePanel":
return PanelType.THEME;
case "GirlDetailPanel":
return PanelType.GIRL_DETAIL;
case "RankPanel":
return PanelType.RANK;
case "PastGirlListPanel":
return PanelType.PAST_GIRL_LIST;
case "PersonalPanel":
@@ -696,12 +729,8 @@ export class NavigationManager {
* 获取面板数据
*/
private getPanelData(panelType: PanelType): any {
switch (panelType) {
case PanelType.GIRL_DETAIL:
return this.selectedGirlId; // 使用当前选中的角色ID
default:
return null;
}
// 所有主页面都不需要特殊数据
return null;
}
/**
@@ -349,7 +349,8 @@ export class GirlDetailPanel extends li_BaseView {
}
returnBtn() {
NavigationManager.Instance.switchToPanel(PanelType.THEME);
// GirlDetailPanel现在是subpanel,关闭自己即可
NavigationManager.Instance.closeSubPanel(this);
}
/**
@@ -445,9 +446,9 @@ export class GirlDetailPanel extends li_BaseView {
}
// 回收所有使用中的节点到对象池
for (let i = this.imgsLayout.children.length - 1; i >= 0; i--) {
DetailImageItemPool.Instance.put(this.imgsLayout.children[i]);
}
// for (let i = this.imgsLayout.children.length - 1; i >= 0; i--) {
// DetailImageItemPool.Instance.put(this.imgsLayout.children[i]);
// }
super.onDestroy();
}
@@ -16,7 +16,7 @@ export class NavigationPanel extends li_BaseView {
private currentActivePanel: PanelType = PanelType.THEME;
private themeBtn: NavigationBtn;
private girlDetailBtn: NavigationBtn;
private rankBtn: NavigationBtn;
private pastGirlListBtn: NavigationBtn;
private settingBtn: NavigationBtn;
@@ -26,8 +26,7 @@ export class NavigationPanel extends li_BaseView {
Utils.parseNode(this.node, this._nodeTab);
this.themeBtn = this._nodeTab.themeBtn.getComponent(NavigationBtn);
this.girlDetailBtn =
this._nodeTab.girlDetailBtn.getComponent(NavigationBtn);
this.rankBtn = this._nodeTab.rankBtn.getComponent(NavigationBtn);
this.pastGirlListBtn = this._nodeTab.chatBtn.getComponent(NavigationBtn);
this.settingBtn = this._nodeTab.settingBtn.getComponent(NavigationBtn);
this.loadingView = this._nodeTab.loadingView;
@@ -54,8 +53,8 @@ export class NavigationPanel extends li_BaseView {
this
);
GButton.BandClick(
this.girlDetailBtn.node,
() => NavigationManager.Instance.switchToPanel(PanelType.GIRL_DETAIL),
this.rankBtn.node,
() => NavigationManager.Instance.switchToPanel(PanelType.RANK),
this
);
GButton.BandClick(
@@ -108,9 +107,7 @@ export class NavigationPanel extends li_BaseView {
);
this.themeBtn.setFocus(this.currentActivePanel === PanelType.THEME);
this.girlDetailBtn.setFocus(
this.currentActivePanel === PanelType.GIRL_DETAIL
);
this.rankBtn.setFocus(this.currentActivePanel === PanelType.RANK);
this.pastGirlListBtn.setFocus(
this.currentActivePanel === PanelType.PAST_GIRL_LIST
);
@@ -1,8 +1,4 @@
import {
_decorator,
Label,
Sprite,
} from "cc";
import { _decorator, isCCObject, Label, Node, Sprite } from "cc";
import Utils from "../../../Main/Common/Utils";
import li_BaseView from "../../../Main/Common/li_BaseView";
import { GButton } from "../../../Main/Common/GButton";
@@ -10,8 +6,7 @@ import { DataManager, DataId } from "../../data/DataManager";
import { PlayerData } from "../../data/PlayerData";
import { AccountData } from "../../data/AccountData";
import { WalletData } from "../../data/WalletData";
import LanguageUtils, {
} from "../../../Main/Common/LanguageUtils";
import LanguageUtils from "../../../Main/Common/LanguageUtils";
import {
NavigationManager,
PageTransitionType,
@@ -19,6 +14,7 @@ import {
import { PlayerDataService } from "../../network/services/PlayerDataService";
import proto from "db://assets/Scripts/proto/proto.pb.js";
import { logger } from "db://assets/Scripts/Main/Common/Logger";
import { TipsPanel } from "./TipsPanel";
const { ccclass, property } = _decorator;
@@ -41,6 +37,12 @@ export class PersonalPanel extends li_BaseView {
@property(Sprite)
private avatarSprite: Sprite = null;
@property([Node])
private vipStuff: Node[] = [];
@property([Node])
private notVipStuff: Node[] = [];
private playerData: PlayerData = null;
private accountData: AccountData = null;
private walletData: WalletData = null;
@@ -79,6 +81,11 @@ export class PersonalPanel extends li_BaseView {
if (this._nodeTab.settingBtn) {
GButton.BandClick(this._nodeTab.settingBtn, this.openSettings, this);
}
//
if (this._nodeTab.favoritesBtn) {
GButton.BandClick(this._nodeTab.favoritesBtn, this.openFavorites, this);
}
}
private async refresh() {
@@ -125,20 +132,25 @@ export class PersonalPanel extends li_BaseView {
}
private updateVipStatus(): void {
let isVip = false;
if (this.vipStatusLabel && this.walletData) {
const vipExpire = this.walletData.vipExpire;
if (vipExpire && vipExpire > Date.now()) {
const expireDate = new Date(vipExpire);
this.vipStatusLabel.string = `${LanguageUtils.getText(
"purchasepanel.vip_left"
)} ${expireDate.toLocaleDateString()}`;
if (vipExpire && this.walletData.isVip) {
const leftTime = Utils.formatVipLeftTime(vipExpire);
this.vipStatusLabel.string = leftTime;
isVip = true;
} else {
this.vipStatusLabel.string = LanguageUtils.getText(
"purchasepanel.notvip"
);
// this.vipStatusLabel.string = LanguageUtils.getText(
// "purchasepanel.notvip"
// );
}
}
this.vipStuff.forEach((n) => (n.active = isVip));
this.notVipStuff.forEach((n) => (n.active = !isVip));
}
private openSettings(): void {
@@ -156,4 +168,8 @@ export class PersonalPanel extends li_BaseView {
}
);
}
private openFavorites() {
TipsPanel.show("敬请期待~");
}
}
@@ -16,7 +16,7 @@ import { NavigationManager } from "../../manager/NavigationManager";
import { Web3PopPanel } from "./Web3PopPanel";
import { TipsPanel } from "./TipsPanel";
import { logger } from "db://assets/Scripts/Main/Common/Logger";
import { PaymentMethod } from 'db://assets/Scripts/chat18x/payment/types';
import { PaymentMethod } from "db://assets/Scripts/chat18x/payment/types";
const { ccclass, property } = _decorator;
@@ -30,8 +30,6 @@ export class PurchasePanel extends li_BaseView {
private vipPrice30: Label;
private vipTime30: Label;
private ScrollView: ScrollView;
private currentPayType: proto.cs.EnmPayType =
proto.cs.EnmPayType.EPT_Cash_INR;
private defaultNetworkType: proto.cs.EnmNetworkType =
@@ -44,9 +42,7 @@ export class PurchasePanel extends li_BaseView {
}
cashBtnSelecting;
cashBtnNotSelect;
web3BtnSelecting;
web3BtnNotSelect;
base: Node;
openUIDataCT(data: any): void {
@@ -66,12 +62,8 @@ export class PurchasePanel extends li_BaseView {
this.vipPrice30 = this._nodeTab.vipPrice30.getComponent(Label);
this.vipTime30 = this._nodeTab.vipTime30.getComponent(Label);
this.ScrollView = this._nodeTab.ScrollView.getComponent(ScrollView);
this.cashBtnSelecting = this._nodeTab.cashBtn.getChildByName("selecting");
this.cashBtnNotSelect = this._nodeTab.cashBtn.getChildByName("notSelect");
this.web3BtnSelecting = this._nodeTab.web3Btn.getChildByName("selecting");
this.web3BtnNotSelect = this._nodeTab.web3Btn.getChildByName("notSelect");
this.bandBtn();
@@ -172,7 +164,6 @@ export class PurchasePanel extends li_BaseView {
const memberId30 = this.shopData.get30DayMemberId();
const price30 = this.shopData.getOriginalPriceById(memberId30);
this.vipPrice30.string = `$ ${price30}`;
this.ScrollView.scrollToBottom();
}
// 0:cash 1:web3
@@ -195,7 +186,12 @@ export class PurchasePanel extends li_BaseView {
const isRechargeId = shopData.isRechargeId(id);
if (isRechargeId) {
// 需要外部支付进行购买
this.startPayment(id, this.currentPayType, networkType, PaymentMethod.CashPay);
this.startPayment(
id,
this.currentPayType,
networkType,
PaymentMethod.CashPay
);
}
//测试用
// Utils.sendInnerMsg(InnerMsgCode.PayOrderCreateSucc, {
@@ -288,7 +284,12 @@ export class PurchasePanel extends li_BaseView {
}
// 创建订单
async startPayment(goodId: number, payType: number, network: number, payMethod: PaymentMethod) {
async startPayment(
goodId: number,
payType: number,
network: number,
payMethod: PaymentMethod
) {
// 请求数据
const reqData = {
goodId,
@@ -319,15 +320,15 @@ export class PurchasePanel extends li_BaseView {
onClickCashBtn() {
if (this.curPayType == 0) return;
this.curPayType = 0;
this.cashBtnSelecting.active = this.web3BtnNotSelect.active = true;
this.cashBtnNotSelect.active = this.web3BtnSelecting.active = false;
this.cashBtnSelecting.active = true;
this.web3BtnSelecting.active = false;
this.updateShops(0);
}
onClickWeb3Btn() {
if (this.curPayType == 1) return;
this.curPayType = 1;
this.cashBtnSelecting.active = this.web3BtnNotSelect.active = false;
this.cashBtnNotSelect.active = this.web3BtnSelecting.active = true;
this.cashBtnSelecting.active = false;
this.web3BtnSelecting.active = true;
this.updateShops(1);
}
@@ -372,9 +372,7 @@ export class ThemePanel extends li_BaseView {
if (leftTime == null) {
LanguageUtils.getText("purchasepanel.notvip");
} else {
this.vipLeftTime.string = LanguageUtils.getText(
"purchasepanel.vip_left"
).replace("${leftTime}", leftTime);
this.vipLeftTime.string = leftTime;
}
}
}
+42 -14
View File
@@ -10,7 +10,11 @@ import {
} from "cc";
import ResManager from "db://assets/Scripts/Main/Manager/ResManager";
import Utils from "db://assets/Scripts/Main/Common/Utils";
import { NavigationManager, PanelType } from "../manager/NavigationManager";
import {
NavigationManager,
PanelType,
PageTransitionType,
} from "../manager/NavigationManager";
import { PriceType } from "../../schema/schema";
import LanguageUtils from "../../Main/Common/LanguageUtils";
import { InnerMsgCode } from "../../Main/Config/InnerMsgCode";
@@ -172,22 +176,46 @@ export class GirlListItem extends Component {
onClickDetail() {
const girlData = DataManager.I.getDataById<GirlData>(DataId.Girl);
// 是否已经解锁
const isRelease = girlData.getIsRelease(this.category.toString(), this.id);
NavigationManager.Instance.setSelectedGirlId(this.id);
NavigationManager.Instance.setSelectedCategoryId(this.category);
// 通过switchToPanel切换到角色详情面板,保持动画和状态同步
NavigationManager.Instance.switchToPanel(PanelType.GIRL_DETAIL);
// 以subpanel方式打开GirlDetailPanel
const currentPanel = NavigationManager.Instance.getCurrentActivePanelNode();
if (currentPanel) {
NavigationManager.Instance.openSubPanel(
"GirlDetailPanel",
currentPanel,
this.id,
{
openAnimation: PageTransitionType.SLIDE_LEFT,
closeAnimation: PageTransitionType.SLIDE_RIGHT,
hideBasePanel: true, // 隐藏底层panel,实现全屏显示
}
);
} else {
logger.warn("[GirlListItem] 无法获取当前激活的主页面");
}
}
// if (isRelease) {
// // 先设置选中的角色ID
// } else {
// //未解锁
// NavigationManager.Instance.openPopupPanel("GirlListPopupPanel", {
// base: this,
// category: this.category,
// id: this.id,
// });
// }
onClickChat() {
const girlData = DataManager.I.getDataById<GirlData>(DataId.Girl);
NavigationManager.Instance.setSelectedGirlId(this.id);
NavigationManager.Instance.setSelectedCategoryId(
girlData.getGrilCategoryById(this.id)
);
NavigationManager.Instance.switchToPanel(
PanelType.PAST_GIRL_LIST,
false,
(base) => {
const chatData = { girlId: this.id, base: base };
NavigationManager.Instance.openSubPanel("ChatPanel", base, chatData, {
openAnimation: PageTransitionType.SLIDE_LEFT,
closeAnimation: PageTransitionType.SLIDE_RIGHT,
});
}
);
}
}
+37 -6
View File
@@ -6,7 +6,12 @@ import { GirlData } from "../data/GirlData";
import LanguageUtils from "../../Main/Common/LanguageUtils";
import ResManager from "../../Main/Manager/ResManager";
import { EnvData } from "../data/EnvData";
import { NavigationManager, PanelType } from "../manager/NavigationManager";
import {
NavigationManager,
PanelType,
PageTransitionType,
} from "../manager/NavigationManager";
import { logger } from "../../Main/Common/Logger";
const { ccclass, property } = _decorator;
@ccclass("RecomandItem")
@@ -39,7 +44,7 @@ export class RecomandItem extends Component {
this.chatBtn = this._nodeTab.chatBtn;
GButton.BandClick(this.chatBtn, this.chatToHer, this);
GButton.BandClick(this.chatBtn, this.gotoDetail, this);
GButton.BandClick(this._nodeTab.detailBtn, this.gotoDetail, this);
}
refresh(girlId: number) {
@@ -80,16 +85,42 @@ export class RecomandItem extends Component {
NavigationManager.Instance.setSelectedCategoryId(
girlData.getGrilCategoryById(this.id)
);
NavigationManager.Instance.switchToPanel(PanelType.GIRL_DETAIL);
NavigationManager.Instance.switchToPanel(
PanelType.PAST_GIRL_LIST,
false,
(base) => {
const chatData = { girlId: this.id, base: base };
NavigationManager.Instance.openSubPanel("ChatPanel", base, chatData, {
openAnimation: PageTransitionType.SLIDE_LEFT,
closeAnimation: PageTransitionType.SLIDE_RIGHT,
});
}
);
}
gotoDetail()
{
gotoDetail() {
const girlData = DataManager.I.getDataById<GirlData>(DataId.Girl);
NavigationManager.Instance.setSelectedGirlId(this.id);
NavigationManager.Instance.setSelectedCategoryId(
girlData.getGrilCategoryById(this.id)
);
NavigationManager.Instance.switchToPanel(PanelType.GIRL_DETAIL);
// 以subpanel方式打开GirlDetailPanel
const currentPanel = NavigationManager.Instance.getCurrentActivePanelNode();
if (currentPanel) {
NavigationManager.Instance.openSubPanel(
"GirlDetailPanel",
currentPanel,
this.id,
{
openAnimation: PageTransitionType.SLIDE_LEFT,
closeAnimation: PageTransitionType.SLIDE_RIGHT,
hideBasePanel: true, // 隐藏底层panel,实现全屏显示
}
);
} else {
logger.warn("[RecomandItem] 无法获取当前激活的主页面");
}
}
}
@@ -600,7 +600,7 @@
"_lpos": {
"__type__": "cc.Vec3",
"x": 0,
"y": 70.79600000000005,
"y": 81.17100000000005,
"z": 0
},
"_lrot": {
@@ -720,7 +720,7 @@
"_lpos": {
"__type__": "cc.Vec3",
"x": 0,
"y": 669.75,
"y": 659.375,
"z": 0
},
"_lrot": {
@@ -6252,7 +6252,7 @@
"_contentSize": {
"__type__": "cc.Size",
"width": 750,
"height": 1339.5
"height": 1318.75
},
"_anchorPoint": {
"__type__": "cc.Vec2",
@@ -6397,7 +6397,7 @@
"_contentSize": {
"__type__": "cc.Size",
"width": 750,
"height": 1339.5
"height": 1318.75
},
"_anchorPoint": {
"__type__": "cc.Vec2",
@@ -6502,8 +6502,8 @@
"_target": null,
"_left": 0,
"_right": 0,
"_top": -20.49599999999998,
"_bottom": 121.096,
"_top": -20.49600000000018,
"_bottom": 141.846,
"_horizontalCenter": 0,
"_verticalCenter": 0,
"_isAbsLeft": true,
@@ -8111,7 +8111,6 @@
"__id__": 0
},
"fileId": "24mSBg+Z9OS5KNS5Yscqr0",
"instance": null,
"targetOverrides": null
}
]
File diff suppressed because it is too large Load Diff
@@ -1827,7 +1827,7 @@
},
{
"__type__": "cc.Node",
"_name": "girlDetailBtn",
"_name": "rankBtn",
"_objFlags": 0,
"__editorExtras__": {},
"_parent": {
File diff suppressed because it is too large Load Diff
+10 -10
View File
@@ -666,7 +666,7 @@
"__id__": 54
}
],
"_active": true,
"_active": false,
"_components": [
{
"__id__": 62
@@ -2938,7 +2938,7 @@
},
{
"__type__": "cc.Node",
"_name": "vipPrice30",
"_name": "vipPrice7",
"_objFlags": 512,
"__editorExtras__": {},
"_parent": {
@@ -4092,7 +4092,7 @@
},
"_lpos": {
"__type__": "cc.Vec3",
"x": -160,
"x": -80,
"y": 0,
"z": 0
},
@@ -4722,7 +4722,7 @@
},
{
"__type__": "cc.Node",
"_name": "cashBtn-001",
"_name": "web3Btn",
"_objFlags": 0,
"__editorExtras__": {},
"_parent": {
@@ -4756,7 +4756,7 @@
},
"_lpos": {
"__type__": "cc.Vec3",
"x": 0,
"x": 80,
"y": 0,
"z": 0
},
@@ -5019,7 +5019,7 @@
"b": 255,
"a": 255
},
"_string": "Cash",
"_string": "WEB3",
"_horizontalAlign": 1,
"_verticalAlign": 1,
"_actualFontSize": 30,
@@ -5403,7 +5403,7 @@
"__id__": 231
}
],
"_active": true,
"_active": false,
"_components": [
{
"__id__": 237
@@ -6062,7 +6062,7 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 480,
"width": 320,
"height": 60
},
"_anchorPoint": {
@@ -6102,9 +6102,9 @@
"__uuid__": "b9864876-395d-4422-930a-35a2a111ec7f@f9941",
"__expectedType__": "cc.SpriteFrame"
},
"_type": 0,
"_type": 1,
"_fillType": 0,
"_sizeMode": 1,
"_sizeMode": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
+268 -99
View File
@@ -25,17 +25,17 @@
"_active": true,
"_components": [
{
"__id__": 420
"__id__": 426
},
{
"__id__": 422
"__id__": 428
},
{
"__id__": 424
"__id__": 430
}
],
"_prefab": {
"__id__": 426
"__id__": 432
},
"_lpos": {
"__type__": "cc.Vec3",
@@ -88,17 +88,17 @@
"_active": true,
"_components": [
{
"__id__": 413
"__id__": 419
},
{
"__id__": 415
"__id__": 421
},
{
"__id__": 417
"__id__": 423
}
],
"_prefab": {
"__id__": 419
"__id__": 425
},
"_lpos": {
"__type__": "cc.Vec3",
@@ -285,7 +285,7 @@
},
"_lpos": {
"__type__": "cc.Vec3",
"x": -57,
"x": -73.45,
"y": 5.299999999999997,
"z": 0
},
@@ -335,8 +335,8 @@
},
"_lpos": {
"__type__": "cc.Vec3",
"x": 43.11200000000008,
"y": -7.061999999999898,
"x": 59.07300000000009,
"y": -7.0620000000001255,
"z": 0
},
"_lrot": {
@@ -376,8 +376,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 46.785547,
"height": 49.478
"width": 72.885547,
"height": 31.978
},
"_anchorPoint": {
"__type__": "cc.Vec2",
@@ -413,12 +413,12 @@
"a": 255
},
"_string": "29",
"_horizontalAlign": 2,
"_horizontalAlign": 1,
"_verticalAlign": 1,
"_actualFontSize": 31,
"_fontSize": 30,
"_fontFamily": "NotoSans-Regular",
"_lineHeight": 40.3,
"_lineHeight": 26.3,
"_overflow": 2,
"_enableWrapText": true,
"_font": {
@@ -488,8 +488,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 114,
"height": 70
"width": 146.9,
"height": 69
},
"_anchorPoint": {
"__type__": "cc.Vec2",
@@ -528,7 +528,7 @@
"__uuid__": "96531352-08bd-4ea0-93d9-3e582c16c927@f9941",
"__expectedType__": "cc.SpriteFrame"
},
"_type": 0,
"_type": 1,
"_fillType": 0,
"_sizeMode": 0,
"_fillCenter": {
@@ -564,7 +564,7 @@
"_left": 194.1,
"_right": 0,
"_top": 0,
"_bottom": 15,
"_bottom": 15.5,
"_horizontalCenter": 0,
"_verticalCenter": 0,
"_isAbsLeft": true,
@@ -629,7 +629,7 @@
},
"_lpos": {
"__type__": "cc.Vec3",
"x": -228.29999999999995,
"x": -261.2,
"y": -0.4650000000001029,
"z": 0
},
@@ -1081,7 +1081,7 @@
"_alignFlags": 36,
"_target": null,
"_left": 194.1,
"_right": 123.29999999999995,
"_right": 156.2,
"_top": 0,
"_bottom": 17.2349999999999,
"_horizontalCenter": 0,
@@ -1129,7 +1129,7 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 333.3,
"width": 366.2,
"height": 89.4
},
"_anchorPoint": {
@@ -6626,23 +6626,23 @@
"__id__": 292
},
{
"__id__": 380
"__id__": 386
}
],
"_active": true,
"_components": [
{
"__id__": 406
"__id__": 412
},
{
"__id__": 408
"__id__": 414
},
{
"__id__": 410
"__id__": 416
}
],
"_prefab": {
"__id__": 412
"__id__": 418
},
"_lpos": {
"__type__": "cc.Vec3",
@@ -6701,20 +6701,20 @@
"__id__": 363
},
{
"__id__": 369
"__id__": 373
}
],
"_active": true,
"_components": [
{
"__id__": 375
"__id__": 381
},
{
"__id__": 377
"__id__": 383
}
],
"_prefab": {
"__id__": 379
"__id__": 385
},
"_lpos": {
"__type__": "cc.Vec3",
@@ -8395,10 +8395,16 @@
},
{
"__id__": 366
},
{
"__id__": 368
},
{
"__id__": 370
}
],
"_prefab": {
"__id__": 368
"__id__": 372
},
"_lpos": {
"__type__": "cc.Vec3",
@@ -8493,6 +8499,104 @@
"__type__": "cc.CompPrefabInfo",
"fileId": "72LPwbGp5JYoYzkvi2bdgJ"
},
{
"__type__": "cc.Button",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 363
},
"_enabled": true,
"__prefab": {
"__id__": 369
},
"clickEvents": [],
"_interactable": true,
"_transition": 0,
"_normalColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_hoverColor": {
"__type__": "cc.Color",
"r": 211,
"g": 211,
"b": 211,
"a": 255
},
"_pressedColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_disabledColor": {
"__type__": "cc.Color",
"r": 124,
"g": 124,
"b": 124,
"a": 255
},
"_normalSprite": null,
"_hoverSprite": null,
"_pressedSprite": null,
"_disabledSprite": null,
"_duration": 0.1,
"_zoomScale": 1.2,
"_target": null,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "99aqdm1whEWqSb4J7c3j6i"
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 363
},
"_enabled": true,
"__prefab": {
"__id__": 371
},
"_customMaterial": null,
"_srcBlendFactor": 2,
"_dstBlendFactor": 4,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_spriteFrame": null,
"_type": 0,
"_fillType": 0,
"_sizeMode": 1,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_useGrayscale": false,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "0boSxJVt9GQ53UqVC891h7"
},
{
"__type__": "cc.PrefabInfo",
"root": {
@@ -8518,14 +8622,17 @@
"_active": true,
"_components": [
{
"__id__": 370
"__id__": 374
},
{
"__id__": 372
"__id__": 376
},
{
"__id__": 378
}
],
"_prefab": {
"__id__": 374
"__id__": 380
},
"_lpos": {
"__type__": "cc.Vec3",
@@ -8562,11 +8669,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 369
"__id__": 373
},
"_enabled": true,
"__prefab": {
"__id__": 371
"__id__": 375
},
"_contentSize": {
"__type__": "cc.Size",
@@ -8590,11 +8697,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 369
"__id__": 373
},
"_enabled": true,
"__prefab": {
"__id__": 373
"__id__": 377
},
"_customMaterial": null,
"_srcBlendFactor": 2,
@@ -8629,6 +8736,62 @@
"__type__": "cc.CompPrefabInfo",
"fileId": "d3ak5O+f1K+JPb1MFMmQCa"
},
{
"__type__": "cc.Button",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 373
},
"_enabled": true,
"__prefab": {
"__id__": 379
},
"clickEvents": [],
"_interactable": true,
"_transition": 3,
"_normalColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_hoverColor": {
"__type__": "cc.Color",
"r": 211,
"g": 211,
"b": 211,
"a": 255
},
"_pressedColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_disabledColor": {
"__type__": "cc.Color",
"r": 124,
"g": 124,
"b": 124,
"a": 255
},
"_normalSprite": null,
"_hoverSprite": null,
"_pressedSprite": null,
"_disabledSprite": null,
"_duration": 0.1,
"_zoomScale": 0.9,
"_target": null,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "eePaFMhZpK7aVzmZydYZ9u"
},
{
"__type__": "cc.PrefabInfo",
"root": {
@@ -8652,7 +8815,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 376
"__id__": 382
},
"_contentSize": {
"__type__": "cc.Size",
@@ -8680,7 +8843,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 378
"__id__": 384
},
"_id": ""
},
@@ -8697,6 +8860,8 @@
"__id__": 0
},
"fileId": "95e7AkM3hGAYNTgNhafYd/",
"instance": null,
"targetOverrides": null,
"nestedPrefabInstanceRoots": null
},
{
@@ -8709,26 +8874,26 @@
},
"_children": [
{
"__id__": 381
"__id__": 387
}
],
"_active": true,
"_components": [
{
"__id__": 397
},
{
"__id__": 399
},
{
"__id__": 401
},
{
"__id__": 403
},
{
"__id__": 405
},
{
"__id__": 407
},
{
"__id__": 409
}
],
"_prefab": {
"__id__": 405
"__id__": 411
},
"_lpos": {
"__type__": "cc.Vec3",
@@ -8765,30 +8930,30 @@
"_objFlags": 0,
"__editorExtras__": {},
"_parent": {
"__id__": 380
"__id__": 386
},
"_children": [
{
"__id__": 382
"__id__": 388
}
],
"_active": true,
"_components": [
{
"__id__": 388
},
{
"__id__": 390
},
{
"__id__": 392
},
{
"__id__": 394
},
{
"__id__": 396
},
{
"__id__": 398
},
{
"__id__": 400
}
],
"_prefab": {
"__id__": 396
"__id__": 402
},
"_lpos": {
"__type__": "cc.Vec3",
@@ -8825,25 +8990,25 @@
"_objFlags": 0,
"__editorExtras__": {},
"_parent": {
"__id__": 381
"__id__": 387
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 383
"__id__": 389
},
{
"__id__": 385
"__id__": 391
}
],
"_prefab": {
"__id__": 387
"__id__": 393
},
"_lpos": {
"__type__": "cc.Vec3",
"x": 0,
"y": 99.14200000000005,
"y": 593.2980000000001,
"z": 0
},
"_lrot": {
@@ -8875,11 +9040,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 382
"__id__": 388
},
"_enabled": true,
"__prefab": {
"__id__": 384
"__id__": 390
},
"_contentSize": {
"__type__": "cc.Size",
@@ -8903,11 +9068,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 382
"__id__": 388
},
"_enabled": true,
"__prefab": {
"__id__": 386
"__id__": 392
},
"_resizeMode": 1,
"_layoutType": 2,
@@ -8954,11 +9119,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 381
"__id__": 387
},
"_enabled": true,
"__prefab": {
"__id__": 389
"__id__": 395
},
"_contentSize": {
"__type__": "cc.Size",
@@ -8982,11 +9147,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 381
"__id__": 387
},
"_enabled": true,
"__prefab": {
"__id__": 391
"__id__": 397
},
"_type": 0,
"_inverted": false,
@@ -9004,11 +9169,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 381
"__id__": 387
},
"_enabled": true,
"__prefab": {
"__id__": 393
"__id__": 399
},
"_customMaterial": null,
"_srcBlendFactor": 2,
@@ -9050,11 +9215,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 381
"__id__": 387
},
"_enabled": true,
"__prefab": {
"__id__": 395
"__id__": 401
},
"_alignFlags": 45,
"_target": null,
@@ -9089,6 +9254,8 @@
"__id__": 0
},
"fileId": "885+b7zBZOQqOqN8VildHp",
"instance": null,
"targetOverrides": null,
"nestedPrefabInstanceRoots": null
},
{
@@ -9097,11 +9264,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 380
"__id__": 386
},
"_enabled": true,
"__prefab": {
"__id__": 398
"__id__": 404
},
"_contentSize": {
"__type__": "cc.Size",
@@ -9125,11 +9292,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 380
"__id__": 386
},
"_enabled": false,
"__prefab": {
"__id__": 400
"__id__": 406
},
"_customMaterial": null,
"_srcBlendFactor": 2,
@@ -9170,11 +9337,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 380
"__id__": 386
},
"_enabled": true,
"__prefab": {
"__id__": 402
"__id__": 408
},
"bounceDuration": 0.23,
"brake": 0.75,
@@ -9185,7 +9352,7 @@
"cancelInnerEvents": true,
"scrollEvents": [],
"_content": {
"__id__": 382
"__id__": 388
},
"_horizontalScrollBar": null,
"_verticalScrollBar": null,
@@ -9201,11 +9368,11 @@
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 380
"__id__": 386
},
"_enabled": true,
"__prefab": {
"__id__": 404
"__id__": 410
},
"_alignFlags": 45,
"_target": null,
@@ -9254,7 +9421,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 407
"__id__": 413
},
"_contentSize": {
"__type__": "cc.Size",
@@ -9282,7 +9449,7 @@
},
"_enabled": false,
"__prefab": {
"__id__": 409
"__id__": 415
},
"_customMaterial": null,
"_srcBlendFactor": 2,
@@ -9327,7 +9494,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 411
"__id__": 417
},
"_alignFlags": 45,
"_target": null,
@@ -9362,6 +9529,8 @@
"__id__": 0
},
"fileId": "3ac3ofAUBNQqBqbnLH/FfL",
"instance": null,
"targetOverrides": null,
"nestedPrefabInstanceRoots": null
},
{
@@ -9374,7 +9543,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 414
"__id__": 420
},
"_contentSize": {
"__type__": "cc.Size",
@@ -9402,7 +9571,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 416
"__id__": 422
},
"_customMaterial": null,
"_srcBlendFactor": 2,
@@ -9447,7 +9616,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 418
"__id__": 424
},
"_alignFlags": 45,
"_target": null,
@@ -9496,7 +9665,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 421
"__id__": 427
},
"_contentSize": {
"__type__": "cc.Size",
@@ -9524,7 +9693,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 423
"__id__": 429
},
"_alignFlags": 45,
"_target": null,
@@ -9560,7 +9729,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 425
"__id__": 431
},
"m_rootNode": null,
"_id": ""
+6 -6
View File
@@ -139,7 +139,7 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 1080,
"width": 750,
"height": 700
},
"_anchorPoint": {
@@ -314,7 +314,7 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 1080,
"width": 750,
"height": 119
},
"_anchorPoint": {
@@ -486,7 +486,7 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 1009.279688,
"width": 698.579688,
"height": 112.7
},
"_anchorPoint": {
@@ -525,8 +525,8 @@
"_string": "Insufficient balance, need to purchase",
"_horizontalAlign": 1,
"_verticalAlign": 1,
"_actualFontSize": 49,
"_fontSize": 48,
"_actualFontSize": 37,
"_fontSize": 36,
"_fontFamily": "Arial",
"_lineHeight": 40,
"_overflow": 2,
@@ -595,7 +595,7 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 1080,
"width": 750,
"height": 119
},
"_anchorPoint": {
@@ -52,8 +52,8 @@
"rawHeight": 60,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"borderLeft": 75,
"borderRight": 75,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,
@@ -52,8 +52,8 @@
"rawHeight": 70,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"borderLeft": 78,
"borderRight": 25,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,