无尽关卡,评论
|
|
@ -115,6 +115,9 @@ export default class JiaZai extends cc.Component {
|
|||
private onShowListener: () => void;
|
||||
private onHideListener: () => void;
|
||||
RankNode: cc.Node;
|
||||
|
||||
// 引导动画执行中
|
||||
private guideInProgress: boolean = false;
|
||||
// LIFE-CYCLE CALLBACKS:
|
||||
|
||||
onLoad() {
|
||||
|
|
@ -136,6 +139,10 @@ export default class JiaZai extends cc.Component {
|
|||
this.closeAvatar();
|
||||
this.setShareInfo();
|
||||
this.checkTasks();
|
||||
if (!cc.fx.GameTool.maxLevel()) {
|
||||
this.specialLevelShow();
|
||||
}
|
||||
this.endlessLevelShow();
|
||||
|
||||
this.checkAndSetPlayerPassLevel();
|
||||
// this.checkDailyQuests();
|
||||
|
|
@ -918,15 +925,48 @@ export default class JiaZai extends cc.Component {
|
|||
}
|
||||
}
|
||||
|
||||
// 最大关卡后第一次进入关卡弹窗
|
||||
enterGame() {
|
||||
let recordInfinity = cc.fx.StorageMessage.getStorage("EndLevelPop");
|
||||
console.log("已经最大关卡 弹窗提示", recordInfinity, cc.fx.GameTool.maxLevel())
|
||||
if (cc.fx.GameTool.maxLevel()) {
|
||||
if (recordInfinity == null || recordInfinity == "") {
|
||||
// 没有弹过窗
|
||||
this.node.getChildByName("Load").getChildByName("specialTips").active = true;
|
||||
cc.fx.StorageMessage.setStorage("EndLevelPop", 1);
|
||||
|
||||
} else {
|
||||
this.node.getChildByName("Load").getChildByName("specialTips").active = false;
|
||||
this.startGame()
|
||||
}
|
||||
} else {
|
||||
cc.fx.StorageMessage.setStorage("EndLevelPop", "");
|
||||
this.startGame();
|
||||
}
|
||||
}
|
||||
|
||||
startGame() {
|
||||
cc.fx.AudioManager._instance.playEffect("anniu_Big", null);
|
||||
let version = cc.fx.GameTool.getWechatGameVersion();
|
||||
if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.otherLevel == 0) {
|
||||
if (version != "开发版" && version != "体验版") {
|
||||
MiniGameSdk.API.showToast("关卡每周更新,敬请期待!");
|
||||
cc.fx.GameTool.requestSubscribe();
|
||||
return;
|
||||
}
|
||||
// if (version != "开发版" && version != "体验版") {
|
||||
// MiniGameSdk.API.showToast("关卡每周更新,敬请期待!");
|
||||
// cc.fx.GameTool.requestSubscribe();
|
||||
|
||||
cc.fx.AudioManager._instance.playEffect("zhuan1", null);
|
||||
this.node.getChildByName("zhuanchang").active = true;
|
||||
this.node.getChildByName("zhuanchang").getComponent(sp.Skeleton).setAnimation(1, "up", false);
|
||||
|
||||
// cc.fx.GameConfig.GM_INFO.randomLevel = cc.fx.GameTool.getNextLevel() || 0;
|
||||
let rLevel = cc.fx.GameConfig.GM_INFO.randomLevel;
|
||||
cc.fx.StorageMessage.setStorage("randomLevel", rLevel);
|
||||
console.log("保存玩家随机关卡", rLevel, cc.fx.GameConfig.GM_INFO.endLevelNum)
|
||||
Utils.setEndlessLevel(() => { }, rLevel, cc.fx.GameConfig.GM_INFO.endLevelNum);
|
||||
|
||||
cc.fx.GameConfig.LEVEL_INFO_init(true, 1000, false, true);
|
||||
|
||||
return;
|
||||
// }
|
||||
}
|
||||
|
||||
let power = cc.fx.GameTool.getUserPowerTime();
|
||||
|
|
@ -2081,6 +2121,9 @@ export default class JiaZai extends cc.Component {
|
|||
cc.fx.StorageMessage.setStorage("winStreakTime", dateStr);
|
||||
}
|
||||
else {
|
||||
if (cc.fx.GameConfig.GM_INFO.winStreak && cc.fx.GameConfig.GM_INFO.winStreak < 10) {
|
||||
this.guideHammerAnimation();
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -2193,6 +2236,13 @@ export default class JiaZai extends cc.Component {
|
|||
// 更新缓存
|
||||
cc.fx.StorageMessage.setStorage("CACHE_PASS_CHECK", dateStr);
|
||||
this.openPassCheck();
|
||||
cc.fx.GameConfig.GM_INFO.popPassCheck = false;
|
||||
} else {
|
||||
if (this.node) {
|
||||
this.guidePassCheckAnimation();
|
||||
} else {
|
||||
console.error("not node guidePassCheckAnimation");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -2636,6 +2686,100 @@ export default class JiaZai extends cc.Component {
|
|||
}
|
||||
}
|
||||
|
||||
guideHammerAnimation() {
|
||||
let loadNode = this.node.getChildByName("Load");
|
||||
if (!loadNode) return;
|
||||
|
||||
let top = loadNode.getChildByName("Top");
|
||||
if (!top) return;
|
||||
|
||||
let hammer = top.getChildByName("hammer");
|
||||
if (!hammer) return;
|
||||
|
||||
let guideNode = loadNode.getChildByName("guideNode");
|
||||
if (!guideNode) return;
|
||||
|
||||
let guideSprNode = guideNode.getChildByName("guideHammer");
|
||||
if (!guideSprNode) return;
|
||||
|
||||
this.guideAnimation(hammer, guideSprNode);
|
||||
}
|
||||
|
||||
guidePassCheckAnimation() {
|
||||
// 检查节点是否存在
|
||||
if (!this.node) {
|
||||
return;
|
||||
}
|
||||
|
||||
// 获取passBtn节点位置
|
||||
let loadNode = this.node.getChildByName("Load");
|
||||
if (!loadNode) {
|
||||
return;
|
||||
}
|
||||
|
||||
let top = loadNode.getChildByName("Top");
|
||||
if (!top) {
|
||||
return;
|
||||
}
|
||||
|
||||
let passBtn = top.getChildByName("passBtn");
|
||||
if (!passBtn) {
|
||||
return;
|
||||
}
|
||||
|
||||
let guideSprNode = loadNode.getChildByName("guideNode");
|
||||
if (!guideSprNode) {
|
||||
return;
|
||||
}
|
||||
|
||||
guideSprNode = guideSprNode.getChildByName("guidePassCheck");
|
||||
if (!guideSprNode) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.guideAnimation(passBtn, guideSprNode);
|
||||
}
|
||||
guideAnimation(endNode, guideSprNode) {
|
||||
let timeout = 0;
|
||||
if (this.guideInProgress) {
|
||||
this.guideInProgress = false;
|
||||
timeout = 1400;
|
||||
} else {
|
||||
this.guideInProgress = true;
|
||||
timeout = 0;
|
||||
}
|
||||
setTimeout(() => {
|
||||
|
||||
let worldPos = endNode.parent.convertToWorldSpaceAR(endNode.position);
|
||||
let targetPos = guideSprNode.parent.convertToNodeSpaceAR(worldPos);
|
||||
|
||||
// 设置精灵的 zIndex 保证在上层显示
|
||||
guideSprNode.zIndex = 9999;
|
||||
guideSprNode.setPosition(cc.Vec3.ZERO);
|
||||
guideSprNode.active = true;
|
||||
// 重置动画属性
|
||||
guideSprNode.scale = 0;
|
||||
guideSprNode.angle = 0;
|
||||
|
||||
cc.tween(guideSprNode)
|
||||
.to(0.3, { scale: 2 })
|
||||
.delay(1)
|
||||
// .to(1, { scale: 1 })
|
||||
.to(0.5,
|
||||
{ position: cc.v3(targetPos.x, targetPos.y, targetPos.z), scale: 1 },
|
||||
{ easing: 'quartIn' },)
|
||||
.to(0.2, {
|
||||
scale: 0,
|
||||
// position: cc.v3(targetPos.x, targetPos.y, targetPos.z)
|
||||
})
|
||||
.call(() => {
|
||||
guideSprNode.active = false;
|
||||
cc.fx.GameTool.onBtnJitter(endNode);
|
||||
})
|
||||
.start();
|
||||
}, timeout);
|
||||
}
|
||||
|
||||
closePassCheck() {
|
||||
console.log("关闭过时数据", cc.fx.GameConfig.GM_INFO.getItemType)
|
||||
this.checkAndSetPlayerPassLevel();
|
||||
|
|
@ -3002,6 +3146,71 @@ export default class JiaZai extends cc.Component {
|
|||
this.node.addChild(reddemCodeNode);
|
||||
|
||||
}
|
||||
// 困难关卡显示紫色图标
|
||||
specialLevelShow() {
|
||||
let startBtn = this.node.getChildByName("Load").getChildByName("startBtn")
|
||||
startBtn.getChildByName("difficultySpr").active = false;
|
||||
|
||||
const currentLevel = cc.fx.GameConfig.GM_INFO.level + 1;
|
||||
const passCheckJson = cc.fx.GameConfig.PASS_RATE;
|
||||
// 直接查找匹配的记录
|
||||
const levelData = passCheckJson.find(item => item.level === currentLevel);
|
||||
if (levelData) {
|
||||
// 找到了对应的记录
|
||||
startBtn.getChildByName("difficultySpr").active = true;
|
||||
} else {
|
||||
console.log("未找到关卡数据");
|
||||
}
|
||||
}
|
||||
|
||||
endlessLevelShow() {
|
||||
const currentLevel = cc.fx.GameConfig.GM_INFO.level;
|
||||
let levelNode = this.node.getChildByName("Load").getChildByName("levelNode");
|
||||
let levelNum = levelNode.getChildByName("endlessNode").getChildByName("levelNum");
|
||||
let startBtn = this.node.getChildByName("Load").getChildByName("startBtn")
|
||||
startBtn.getChildByName("difficultySpr").active = false;
|
||||
|
||||
if (cc.fx.GameTool.maxLevel()) {
|
||||
|
||||
if (!cc.fx.GameConfig.GM_INFO.randomLevel) {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = 0;
|
||||
}
|
||||
let rLevel = cc.fx.StorageMessage.getStorage("randomLevel");
|
||||
let endLevelNum = cc.fx.StorageMessage.getStorage("endLevelNum");
|
||||
Utils.getEndlessLevel((data) => {
|
||||
if (data.code == 1) {
|
||||
rLevel = data.data.userLevel;
|
||||
endLevelNum = data.data.endLevelNum;
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = Number(rLevel) || 0;
|
||||
cc.fx.GameConfig.GM_INFO.endLevelNum = Number(endLevelNum) || 1;
|
||||
} else {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = rLevel || 0;
|
||||
cc.fx.GameConfig.GM_INFO.endLevelNum = endLevelNum || 1;
|
||||
}
|
||||
if (!cc.fx.GameConfig.GM_INFO.randomLevel || cc.fx.GameConfig.GM_INFO.randomLevel === 0) {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = cc.fx.GameTool.getNextLevel() || 0;
|
||||
}
|
||||
cc.fx.StorageMessage.setStorage("randomLevel", cc.fx.GameConfig.GM_INFO.randomLevel);
|
||||
|
||||
startBtn.getChildByName("endless").active = true;
|
||||
levelNode.getChildByName("endlessNode").active = true;
|
||||
levelNode.getChildByName("diguan").active = false;
|
||||
NumberToImage.numberToImageNodes(cc.fx.GameConfig.GM_INFO.endLevelNum, 45, 48, "half_black_", levelNum, true);// 45 48
|
||||
cc.fx.GameTool.setEndLevelLabelPos(levelNum);
|
||||
this.level.active = false;
|
||||
});
|
||||
|
||||
} else {
|
||||
startBtn.getChildByName("endless").active = false;
|
||||
levelNode.getChildByName("endlessNode").active = false;
|
||||
levelNode.getChildByName("diguan").active = true;
|
||||
this.level.active = true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
update(dt) {
|
||||
if (this.newbieGift && this.monthlyCardNode) {
|
||||
if (this.monthlyCardNode.active == true) {
|
||||
|
|
|
|||
|
|
@ -461,8 +461,16 @@ export default class MapConroler extends cc.Component {
|
|||
if (cc.fx.GameConfig.GM_INFO.winStreak >= 10) {
|
||||
this.is_frenzy = true;
|
||||
}
|
||||
|
||||
let endLevel = false;
|
||||
console.log("33333333333333333", cc.fx.GameTool.maxLevel(), cc.fx.GameConfig.GM_INFO.GameplayType)
|
||||
if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
endLevel = true;
|
||||
}
|
||||
|
||||
let data = {
|
||||
"is_frenzy": this.is_frenzy
|
||||
"is_frenzy": this.is_frenzy,
|
||||
"infinity": endLevel,
|
||||
}
|
||||
if (cc.fx.GameConfig.GM_INFO.winStreak >= 10 && cc.fx.GameConfig.GM_INFO.otherLevel == 0) {
|
||||
cc.fx.GameConfig.GM_INFO.winState = false;
|
||||
|
|
@ -506,8 +514,20 @@ export default class MapConroler extends cc.Component {
|
|||
let levelName = (cc.fx.GameConfig.GM_INFO.level + 1);
|
||||
if (cc.fx.GameConfig.GM_INFO.otherLevel) {
|
||||
levelName = cc.fx.GameConfig.GM_INFO.otherLevel;
|
||||
} else {
|
||||
if (cc.fx.GameTool.maxLevel()) {
|
||||
levelName = cc.fx.GameConfig.GM_INFO.randomLevel;
|
||||
|
||||
// let rLevel = cc.fx.GameConfig.GM_INFO.randomLevel;
|
||||
// cc.fx.StorageMessage.setStorage("randomLevel", rLevel);
|
||||
// Utils.setEndlessLevel(() => { }, rLevel)
|
||||
} else {
|
||||
levelName = cc.fx.GameConfig.GM_INFO.level + 1;
|
||||
}
|
||||
}
|
||||
NumberToImage.numberToImageNodes5(levelName, 35, 0, "custom", this.levelLabel, true)
|
||||
NumberToImage.numberToImageNodes5(levelName, 35, 0, "custom", this.levelLabel, true);
|
||||
this.endlessLevelShow();
|
||||
|
||||
for (let i = 0; i < this.levelLabel.children.length; i++) {
|
||||
this.levelLabel.children[i].color = cc.color(0, 0, 0);
|
||||
}
|
||||
|
|
@ -623,6 +643,7 @@ export default class MapConroler extends cc.Component {
|
|||
const currentLevel = cc.fx.GameConfig.GM_INFO.level + 1;
|
||||
const lastVisitedLevel = cc.fx.StorageMessage.getStorage("visitedLevels");
|
||||
const isFirstTime = (lastVisitedLevel !== currentLevel);
|
||||
this.node.parent.getChildByName("Top").getChildByName("difficultySpr").active = false;
|
||||
if (isFirstTime) {
|
||||
cc.fx.StorageMessage.setStorage("visitedLevels", currentLevel);
|
||||
const passCheckJson = cc.fx.GameConfig.PASS_RATE;
|
||||
|
|
@ -632,6 +653,7 @@ export default class MapConroler extends cc.Component {
|
|||
// 找到了对应的记录
|
||||
let passRateNode = this.node.parent.parent.getChildByName("popUpPassRate")
|
||||
passRateNode.active = true;
|
||||
this.node.parent.getChildByName("Top").getChildByName("difficultySpr").active = true;
|
||||
let passRate = passRateNode.getChildByName("passRate");
|
||||
// NumberToImage.numberToImageNodes4(levelData.pass_rate, 50, 0, "Black", passRate, true)
|
||||
if (levelData.pass_rate)
|
||||
|
|
@ -2294,8 +2316,46 @@ export default class MapConroler extends cc.Component {
|
|||
cc.fx.GameTool.shushu_Track("resource_get", data);
|
||||
let overTime = Date.now();
|
||||
this.count_Time = overTime - this.count_Time;
|
||||
|
||||
|
||||
let endLevelShow = () => {
|
||||
|
||||
let levelNum = this.node.parent.parent.getChildByName("Win").getChildByName("tween").getChildByName("endlessNode").getChildByName("levelNum")
|
||||
NumberToImage.numberToImageNodes(cc.fx.GameConfig.GM_INFO.endLevelNum, 45, 48, "half_black_", levelNum, true);// 45 48
|
||||
cc.fx.GameTool.setEndLevelLabelPos(levelNum);
|
||||
if (!cc.fx.GameConfig.GM_INFO.randomLevel || cc.fx.GameConfig.GM_INFO.randomLevel === 0) {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = 31;
|
||||
}
|
||||
cc.fx.StorageMessage.setStorage("randomLevel", cc.fx.GameConfig.GM_INFO.randomLevel);
|
||||
}
|
||||
console.log("222222222222222", cc.fx.GameTool.maxLevel(), cc.fx.GameConfig.GM_INFO.GameplayType)
|
||||
if (cc.fx.GameConfig.GM_INFO.otherLevel > 0) {
|
||||
|
||||
} else if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
if (!cc.fx.GameConfig.GM_INFO.randomLevel || cc.fx.GameConfig.GM_INFO.randomLevel === 0) {
|
||||
Utils.getEndlessLevel((data) => {
|
||||
if (data.code == 1) {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = Number(data.data.userLevel) || cc.fx.GameTool.getNextLevel();
|
||||
cc.fx.GameConfig.GM_INFO.endLevelNum = Number(data.data.endLevelNum) || 1;
|
||||
console.log("获取无尽模式等级成功", cc.fx.GameConfig.GM_INFO.randomLevel, data);
|
||||
|
||||
} else {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = cc.fx.GameTool.getNextLevel() || 0;
|
||||
cc.fx.GameConfig.GM_INFO.endLevelNum = 1;
|
||||
|
||||
}
|
||||
endLevelShow();
|
||||
});
|
||||
} else {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = cc.fx.GameTool.getNextLevel();
|
||||
endLevelShow();
|
||||
|
||||
cc.fx.GameConfig.GM_INFO.endLevelNum = cc.fx.GameConfig.GM_INFO.endLevelNum + 1;
|
||||
cc.fx.StorageMessage.setStorage("endLevelNum", cc.fx.GameConfig.GM_INFO.endLevelNum);
|
||||
|
||||
console.log("无尽模式保存下一关等级:", cc.fx.GameConfig.GM_INFO.randomLevel, cc.fx.GameConfig.GM_INFO.endLevelNum);
|
||||
Utils.setEndlessLevel(() => { }, cc.fx.GameConfig.GM_INFO.randomLevel, cc.fx.GameConfig.GM_INFO.endLevelNum);
|
||||
}
|
||||
}
|
||||
else cc.fx.GameTool.addLevel(this.count_Time, this.add_Time, (data) => {
|
||||
// console.log("加分后排行结果", data);
|
||||
|
|
@ -2363,6 +2423,29 @@ export default class MapConroler extends cc.Component {
|
|||
}
|
||||
}
|
||||
|
||||
winMaxLevelShowClose() {
|
||||
this.node.parent.parent.getChildByName("Win").getChildByName("specialTips").active = false;
|
||||
}
|
||||
|
||||
winLevel2() {
|
||||
let recordInfinity = cc.fx.StorageMessage.getStorage("EndLevelPop");
|
||||
console.log("已经最大关卡房间 弹窗提示", recordInfinity, cc.fx.GameTool.maxLevel())
|
||||
if (cc.fx.GameTool.maxLevel()) {
|
||||
if (recordInfinity == null || recordInfinity == "") {
|
||||
// 没有弹过窗
|
||||
this.node.parent.parent.getChildByName("Win").getChildByName("specialTips").active = true;
|
||||
cc.fx.StorageMessage.setStorage("EndLevelPop", 1);
|
||||
|
||||
} else {
|
||||
this.node.parent.parent.getChildByName("Win").getChildByName("specialTips").active = false;
|
||||
this.winLevel()
|
||||
}
|
||||
} else {
|
||||
cc.fx.StorageMessage.setStorage("EndLevelPop", "");
|
||||
this.winLevel();
|
||||
}
|
||||
}
|
||||
|
||||
winLevel() {
|
||||
// MiniGameSdk.API.showToast(cc.fx.GameConfig.GM_INFO.level);
|
||||
if (this.node.parent.parent.getChildByName("Win").getChildByName("tween").
|
||||
|
|
@ -2375,11 +2458,58 @@ export default class MapConroler extends cc.Component {
|
|||
console.log("下一关", cc.fx.GameConfig.GM_INFO.level);
|
||||
this.uploadToCloud(cc.fx.GameConfig.GM_INFO.level + 1);
|
||||
if (cc.fx.GameTool.maxLevel()) {
|
||||
MiniGameSdk.API.showToast("每周更新,敬请期待");
|
||||
// 正常游戏到最后一关时 先弹出提示 无尽关暂时都是从外面进入
|
||||
// if (cc.fx.GameConfig.GM_INFO.randomLevel == 0) {
|
||||
|
||||
// if (cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
cc.fx.AudioManager._instance.playEffect("zhuan1", null);
|
||||
this.node.parent.parent.parent.getChildByName("zhuanchang").active = true;
|
||||
this.node.parent.parent.parent.getChildByName("zhuanchang").getComponent(sp.Skeleton).setAnimation(1, "up", false);
|
||||
setTimeout(() => {
|
||||
console.log("11111111111111111111111", cc.fx.GameConfig.GM_INFO.randomLevel);
|
||||
let rLevel = cc.fx.StorageMessage.getStorage("randomLevel");
|
||||
let endLevelNum = cc.fx.StorageMessage.getStorage("endLevelNum");
|
||||
if (!cc.fx.GameConfig.GM_INFO.randomLevel || cc.fx.GameConfig.GM_INFO.randomLevel === 0) {
|
||||
Utils.getEndlessLevel((data) => {
|
||||
if (data.code == 1) {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = Number(data.data.userLevel) || cc.fx.GameTool.getNextLevel();
|
||||
cc.fx.GameConfig.GM_INFO.endLevelNum = Number(data.data.endLevelNum) || 1;
|
||||
console.log("获取无尽模式等级成功", cc.fx.GameConfig.GM_INFO.randomLevel, data);
|
||||
|
||||
} else {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = rLevel || 0;
|
||||
cc.fx.GameConfig.GM_INFO.endLevelNum = endLevelNum || 1;
|
||||
}
|
||||
if (!cc.fx.GameConfig.GM_INFO.randomLevel || cc.fx.GameConfig.GM_INFO.randomLevel === 0) {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = cc.fx.GameTool.getNextLevel() || 0;
|
||||
}
|
||||
|
||||
cc.fx.GameConfig.LEVEL_INFO_init(true, 0, false, true);
|
||||
});
|
||||
} else {
|
||||
cc.fx.GameConfig.LEVEL_INFO_init(true, 0, false, true);
|
||||
}
|
||||
// else {
|
||||
// cc.fx.GameConfig.GM_INFO.randomLevel = cc.fx.GameTool.getNextLevel();
|
||||
|
||||
// cc.fx.GameConfig.GM_INFO.endLevelNum = cc.fx.GameConfig.GM_INFO.endLevelNum + 1;
|
||||
// cc.fx.StorageMessage.setStorage("endLevelNum", cc.fx.GameConfig.GM_INFO.endLevelNum);
|
||||
|
||||
// console.log("无尽模式保存下一关等级:", cc.fx.GameConfig.GM_INFO.randomLevel, cc.fx.GameConfig.GM_INFO.endLevelNum);
|
||||
// Utils.setEndlessLevel(() => { }, cc.fx.GameConfig.GM_INFO.randomLevel, cc.fx.GameConfig.GM_INFO.endLevelNum);
|
||||
// }
|
||||
|
||||
|
||||
}, 1200);
|
||||
|
||||
setTimeout(() => {
|
||||
this.node.parent.parent.getChildByName("Win").getChildByName("tween").
|
||||
getChildByName("nextBtn").getComponent("btnControl").setTouch(true);
|
||||
}, 500);
|
||||
|
||||
// } else {
|
||||
// MiniGameSdk.API.showToast("每周更新,敬请期待");
|
||||
// }
|
||||
}
|
||||
else {
|
||||
// console.log("下一关");
|
||||
|
|
@ -2625,7 +2755,14 @@ export default class MapConroler extends cc.Component {
|
|||
// }
|
||||
// });
|
||||
setTimeout(() => {
|
||||
cc.fx.GameConfig.LEVEL_INFO_init(true, 0, false);
|
||||
|
||||
if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
cc.fx.GameConfig.LEVEL_INFO_init(true, 0, false, true);
|
||||
} else {
|
||||
cc.fx.GameConfig.LEVEL_INFO_init(true, 0, false);
|
||||
}
|
||||
|
||||
|
||||
}, 1200);
|
||||
// this.node.parent.parent.parent.destroy();
|
||||
}
|
||||
|
|
@ -2794,11 +2931,17 @@ export default class MapConroler extends cc.Component {
|
|||
this.node.parent.parent.getChildByName("Lose").getChildByName("lose").getChildByName("WinStreak").active = false;
|
||||
let overTime = Date.now();
|
||||
this.count_Time = overTime - this.count_Time;
|
||||
|
||||
let endLevel = false;
|
||||
if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
endLevel = true;
|
||||
}
|
||||
let data = {
|
||||
time: this.count_Time,
|
||||
add_Time: this.add_Time,
|
||||
is_frenzy: this.is_frenzy,
|
||||
result: "fail"
|
||||
result: "fail",
|
||||
"infinity": endLevel,
|
||||
}
|
||||
|
||||
cc.fx.GameTool.shushu_Track("finish_stage", data);
|
||||
|
|
@ -4729,7 +4872,16 @@ export default class MapConroler extends cc.Component {
|
|||
let diguan = this.gameOverNode.getChildByName("diguan");
|
||||
let ruzhi = this.gameOverNode.getChildByName("Ruzhi");
|
||||
diguan.scaleX = diguan.scaleY = 0.01;
|
||||
diguan.active = true;
|
||||
// diguan.active = true;
|
||||
// 无尽关卡
|
||||
let endlessNode = this.gameOverNode.getChildByName("endlessNode");
|
||||
endlessNode.scaleX = diguan.scaleY = 0.01;
|
||||
if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
endlessNode.active = true;
|
||||
} else {
|
||||
diguan.active = true;
|
||||
}
|
||||
|
||||
// caidai 先播放骨骼动画
|
||||
cc.tween(caidai)
|
||||
.to(0, { scale: 2 })
|
||||
|
|
@ -4787,6 +4939,14 @@ export default class MapConroler extends cc.Component {
|
|||
.to(0.06, { scale: 1.05 }, { easing: 'quadOut' })
|
||||
.to(0.04, { scale: 1 }, { easing: 'quadIn' })
|
||||
.start();
|
||||
|
||||
cc.tween(endlessNode)
|
||||
.delay(0.3)
|
||||
.to(0.15, { scale: 1.15 }, { easing: 'backOut' })
|
||||
.to(0.08, { scale: 0.9 }, { easing: 'quadIn' })
|
||||
.to(0.06, { scale: 1.05 }, { easing: 'quadOut' })
|
||||
.to(0.04, { scale: 1 }, { easing: 'quadIn' })
|
||||
.start();
|
||||
}
|
||||
|
||||
setOtherLevel() {
|
||||
|
|
@ -5003,6 +5163,24 @@ export default class MapConroler extends cc.Component {
|
|||
})
|
||||
}
|
||||
|
||||
endlessLevelShow() {
|
||||
console.log("刷新关卡等级", cc.fx.GameTool.maxLevel(), cc.fx.GameConfig.GM_INFO.endLevelNum);
|
||||
let top = this.node.parent.getChildByName("Top");
|
||||
top.getChildByName("shareBtn").active = true;
|
||||
this.node.parent.parent.parent.getChildByName("Pause").getChildByName("share").active = true;
|
||||
if (cc.fx.GameTool.maxLevel()) {
|
||||
let endlessNode = top.getChildByName("endlessNode");
|
||||
endlessNode.active = true;
|
||||
top.getChildByName("shareBtn").active = false;
|
||||
top.getChildByName("level").active = false;
|
||||
top.getChildByName("difficultySpr").active = false;
|
||||
this.node.parent.parent.parent.getChildByName("Pause").getChildByName("share").active = false;
|
||||
let levelNum = endlessNode.getChildByName("levelNum");
|
||||
NumberToImage.numberToImageNodes(cc.fx.GameConfig.GM_INFO.endLevelNum, 45, 48, "half_black_", levelNum, true);
|
||||
cc.fx.GameTool.setEndLevelLabelPos(levelNum);
|
||||
}
|
||||
}
|
||||
|
||||
update(dt) {
|
||||
// 检测连击超时,如果超过3秒没有播放音效,重置连击计数
|
||||
if (this.hitSoundCount > 0 && this.hitSoundTime && Date.now() - this.hitSoundTime > 3000) {
|
||||
|
|
|
|||
871
assets/Script/Message.ts
Normal file
|
|
@ -0,0 +1,871 @@
|
|||
import Utils from "./module/Pay/Utils";
|
||||
import { MiniGameSdk } from "./Sdk/MiniGameSdk";
|
||||
|
||||
const { ccclass, property } = cc._decorator;
|
||||
|
||||
@ccclass
|
||||
export default class Message extends cc.Component {
|
||||
|
||||
@property(cc.Label)
|
||||
selectLabel: cc.Label = null;
|
||||
|
||||
@property(cc.Label)
|
||||
jushiLabel: cc.Label = null;
|
||||
|
||||
@property(cc.Node)
|
||||
node2: cc.Node = null;
|
||||
|
||||
@property(cc.Node)
|
||||
node3: cc.Node = null;
|
||||
|
||||
@property(cc.Prefab)
|
||||
contentNode: cc.Prefab = null;
|
||||
|
||||
@property(cc.Prefab)
|
||||
optionNode: cc.Prefab = null;
|
||||
|
||||
@property(cc.Prefab)
|
||||
menuLabel: cc.Prefab = null;
|
||||
|
||||
private comment: any[] = [];
|
||||
private jushiList: any = null;
|
||||
|
||||
private currentJushi: any = null;
|
||||
private currentOption: any = null;
|
||||
|
||||
// 存储所有内容节点的数组
|
||||
private contentNodes: cc.Node[] = [];
|
||||
|
||||
private selectIndex: number = -1;
|
||||
private recordMenu: any = null;
|
||||
|
||||
// 存储每列的值,key是列索引(0,1,2...)
|
||||
private columnValues: Map<number, string> = new Map();
|
||||
|
||||
// 保存原始模板
|
||||
private originalTemplate: string = '';
|
||||
|
||||
// 记录占位符总数
|
||||
private placeholderCount: number = 0;
|
||||
|
||||
private _pos: number = 1;
|
||||
|
||||
protected onLoad(): void {
|
||||
|
||||
}
|
||||
|
||||
start() {
|
||||
|
||||
}
|
||||
showNode(nodeType: any, pos: number) {
|
||||
this.node.getChildByName("commentNode").active = false;
|
||||
this.node.getChildByName("levelWordNode").active = false;
|
||||
this._pos = pos;
|
||||
console.log("nodeType", nodeType);
|
||||
if (nodeType === "commentNode") {
|
||||
this.node.getChildByName("commentNode").active = true;
|
||||
this.onShowComment();
|
||||
} else {
|
||||
this.node.getChildByName("levelWordNode").active = true;
|
||||
this.onShowLevelWord();
|
||||
}
|
||||
}
|
||||
|
||||
onShowComment() {
|
||||
// const passCheckJson = cc.fx.GameConfig.PASS_CHECK;
|
||||
const message = cc.fx.GameConfig.MESSAGE_MODEL;
|
||||
// 解析JSON数据并赋值给comment
|
||||
// const jsonData = jsonAsset.json;
|
||||
console.log("解析后的JSON数据:", message);
|
||||
// 遍历jsonData的所有键
|
||||
for (const key in message) {
|
||||
if (Array.isArray(message[key])) {
|
||||
if (key === "模板") {
|
||||
// 将"模板"键的数据赋值给this.jushiList
|
||||
// this.jushiList = jsonData[key];
|
||||
this.jushiList = {
|
||||
keyName: key, // 使用键名作为标识
|
||||
data: message[key] // 保存对应的数据
|
||||
};
|
||||
} else {
|
||||
// 将其他键的数据添加到this.comment中
|
||||
this.comment.push({
|
||||
keyName: key, // 使用键名作为标识
|
||||
data: message[key] // 保存对应的数据
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.onCreateJushi();
|
||||
|
||||
console.log("this.jushiList", this.jushiList);
|
||||
|
||||
console.log("this.comment", this.comment);
|
||||
// });
|
||||
|
||||
}
|
||||
|
||||
onCreateJushi() {
|
||||
// 创建contentNode节点
|
||||
this.currentJushi = cc.instantiate(this.contentNode);
|
||||
this.node2.addChild(this.currentJushi);
|
||||
this.currentJushi.active = false;
|
||||
|
||||
let contentBg = this.currentJushi.getChildByName("contentBg");
|
||||
const contentHeight = this.jushiList.data.length * 60 + 20;
|
||||
contentBg.setContentSize(768, contentHeight);
|
||||
|
||||
// 获取contentNode上的脚本组件
|
||||
const contentScript = this.currentJushi.getComponent('MessageContent');
|
||||
|
||||
// 定义回调函数
|
||||
const callback = (index: number, data: any) => {
|
||||
// 处理回调逻辑
|
||||
console.log("回调数据:", index, data);
|
||||
// this.selectLabel.string = data.context;
|
||||
// this.onJushiClick(index, data);
|
||||
|
||||
// this.node3.active = true;
|
||||
|
||||
if (data && data.context) {
|
||||
// 保存原始模板
|
||||
this.originalTemplate = data.context;
|
||||
|
||||
// 统计占位符数量
|
||||
const matches = data.context.match(/\{0\}/g);
|
||||
this.placeholderCount = matches ? matches.length : 0;
|
||||
|
||||
let updatedText = data.context;
|
||||
for (let i = 0; i < this.placeholderCount; i++) {
|
||||
console.log("数据显示", i);
|
||||
}
|
||||
|
||||
this.selectLabel.string = data.context;
|
||||
// 创建对应数量的creatorOptionNodes
|
||||
this.createJushiOptionNodes(this.placeholderCount);
|
||||
}
|
||||
this.onJushiClick(index, data);
|
||||
};
|
||||
|
||||
if (contentScript) {
|
||||
// 设置数据
|
||||
contentScript.setContentData(this.jushiList.data, callback);
|
||||
}
|
||||
|
||||
// 创建optionNode节点
|
||||
// this.createOptionNodes();
|
||||
|
||||
}
|
||||
|
||||
createJushiOptionNodes(placeholderCount: number) {
|
||||
// 清除现有的jushi选项节点
|
||||
this.node3.removeAllChildren();
|
||||
this.contentNodes = []; // 同时清空内容节点数组
|
||||
this.selectIndex = -1; // 重置选择索引
|
||||
this.recordMenu = null; // 重置记录的菜单
|
||||
this.node3.active = true;
|
||||
|
||||
// 重置占位符值映射
|
||||
this.columnValues.clear();
|
||||
|
||||
// 重置原始模板和占位符数量
|
||||
this.placeholderCount = placeholderCount;
|
||||
|
||||
// 初始化占位符值数组
|
||||
for (let i = 0; i < placeholderCount; i++) {
|
||||
// 创建基础的选项节点
|
||||
this.createOptionNodes(i);
|
||||
}
|
||||
}
|
||||
|
||||
// 创建optionNode节点
|
||||
createOptionNodes(index: number) {
|
||||
// 定义节点尺寸和间距
|
||||
const itemWidth = 240; // 节点宽度
|
||||
const itemHeight = 98; // 节点高度
|
||||
const spacingX = 20; // X轴间距
|
||||
const spacingY = 22; // Y轴间距 (120 - 98)
|
||||
|
||||
let node = new cc.Node();
|
||||
// node.name = `placeholder_${index}`;
|
||||
node.groupIndex = index;
|
||||
this.node3.addChild(node, this.placeholderCount - index);
|
||||
|
||||
// 为不同组的选项设置不同的Y位置,但确保都在可见区域内
|
||||
node.setPosition(0, -index * 300); // 使用固定的间距来避免位置计算错误
|
||||
console.log("创建选项节点", index, -index * 260, node.position);
|
||||
// 遍历this.comment数组,创建相应数量的optionNode
|
||||
for (let i = 0; i < this.comment.length; i++) {
|
||||
const optionNode = cc.instantiate(this.optionNode);
|
||||
// this.node3.addChild(optionNode, this.comment.length-i);
|
||||
node.addChild(optionNode, this.comment.length - i);
|
||||
|
||||
console.log("设置大小", this.node3.getContentSize());
|
||||
// 计算位置:每排3个,上下排列
|
||||
const row = Math.floor(i / 3); // 行号(0为上排,1为下排,以此类推)
|
||||
const col = i % 3; // 列号(0, 1, 2)
|
||||
|
||||
// 设置位置,基于宽240,高98的元素
|
||||
// 以node3的锚点(0.5, 1)为参考点,从顶部开始向下排列
|
||||
const totalColumnsInRow = Math.min(3, this.comment.length - row * 3); // 当前行的总列数
|
||||
// 计算起始X位置,使每行节点居中显示
|
||||
const startX = (-(totalColumnsInRow - 1)) * (itemWidth + spacingX) / 2; // 计算起始X位置,使整行居中
|
||||
const x = startX + col * (itemWidth + spacingX); // 每个节点间隔为宽度+间距
|
||||
// 从顶部开始,依次向下排列(使用负值,因为锚点在顶部)
|
||||
const y = -row * (itemHeight + spacingY); // 从上到下分布,每行间距为高度+间距
|
||||
|
||||
|
||||
optionNode.setPosition(x, y);
|
||||
|
||||
// 获取contentLabel并设置文本为keyName
|
||||
const contentLabel = optionNode.getChildByName("contentLabel");
|
||||
if (contentLabel) {
|
||||
const labelComponent = contentLabel.getComponent(cc.Label);
|
||||
if (labelComponent) {
|
||||
labelComponent.string = this.comment[i].keyName;
|
||||
}
|
||||
}
|
||||
const menuBtn = optionNode.getChildByName("menu");
|
||||
const background_1 = menuBtn ? menuBtn.getChildByName("background_1") : null;
|
||||
const background_2 = menuBtn ? menuBtn.getChildByName("background_2") : null;
|
||||
if (background_2) background_2.active = false;
|
||||
|
||||
// 存储选项节点和其背景状态的映射关系
|
||||
if (menuBtn) {
|
||||
// 使用闭包保存i的值,创建一个唯一的索引
|
||||
const optionIndex = index * this.comment.length + i; // 计算全局索引
|
||||
menuBtn.on(cc.Node.EventType.TOUCH_END, (event) => {
|
||||
console.log(`this.comment[${i}] = `, this.comment[i]);
|
||||
// 可以在这里添加更多处理逻辑
|
||||
if (background_1) background_1.active = false;
|
||||
if (background_2) background_2.active = true;
|
||||
this.onCreateOption(optionIndex, this.comment[i], menuBtn, index);
|
||||
|
||||
}, this)
|
||||
|
||||
|
||||
if (this.comment[i].data && Array.isArray(this.comment[i].data)) {
|
||||
// 创建内容节点
|
||||
const contentNode = cc.instantiate(this.contentNode);
|
||||
optionNode.addChild(contentNode);
|
||||
this.contentNodes.push(contentNode);
|
||||
|
||||
// 设置内容节点的位置(默认隐藏在选项节点下方)
|
||||
contentNode.setPosition(0, -contentNode.height / 2 - 60);
|
||||
contentNode.active = false;
|
||||
|
||||
// 获取contentBg并设置尺寸
|
||||
let contentBg = contentNode.getChildByName("contentBg");
|
||||
if (contentBg) {
|
||||
const contentHeight = this.comment[i].data.length * 60 + 20;
|
||||
contentBg.setContentSize(268, contentHeight); // 宽默认268,高度根据数据长度计算
|
||||
|
||||
// 获取contentNode上的脚本组件
|
||||
const contentScript = contentNode.getComponent('MessageContent');
|
||||
|
||||
// const dataContext =
|
||||
// 定义回调函数
|
||||
const callback = (num: number, data: any) => {
|
||||
// 处理回调逻辑
|
||||
console.log("内容节点回调数据:", num, data, `来自第${i}个选项`);
|
||||
this.onCreateOption();
|
||||
// this.selectLabel
|
||||
if (this.selectLabel && data && data.context) {
|
||||
// 设置指定列的值
|
||||
this.columnValues.set(index, data.context);
|
||||
|
||||
// 更新显示
|
||||
this.updateDisplay();
|
||||
|
||||
// 检查是否所有占位符都已替换
|
||||
let allReplaced = true;
|
||||
for (let j = 0; j < this.placeholderCount; j++) {
|
||||
if (!this.columnValues.has(j)) {
|
||||
allReplaced = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (allReplaced) {
|
||||
this.node3.active = false;
|
||||
}
|
||||
|
||||
// 重置所有选项的背景状态
|
||||
this.resetAllOptionBackgrounds();
|
||||
}
|
||||
};
|
||||
|
||||
if (contentScript) {
|
||||
// 设置数据
|
||||
contentScript.setContentData(this.comment[i].data, callback);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// 动态调整node3的尺寸以适应所有选项节点
|
||||
if (this.comment.length > 0) {
|
||||
const totalRows = Math.ceil(this.comment.length / 3);
|
||||
const totalColumns = Math.min(3, this.comment.length); // 第一行的列数
|
||||
|
||||
// 计算node3需要的宽度和高度
|
||||
const requiredWidth = totalColumns > 1 ? (totalColumns - 1) * spacingX + totalColumns * itemWidth : itemWidth;
|
||||
const requiredHeight = (totalRows - 1) * (itemHeight + spacingY) + itemHeight;
|
||||
|
||||
// 设置node3的尺寸,稍微增加一些边距
|
||||
this.node3.width = requiredWidth + 20; // 添加10像素边距
|
||||
this.node3.height = requiredHeight + 20; // 添加10像素边距
|
||||
}
|
||||
}
|
||||
|
||||
// 重置所有选项的背景状态为白色
|
||||
resetAllOptionBackgrounds() {
|
||||
for (let j = 0; j < this.node3.childrenCount; j++) {
|
||||
const groupNode = this.node3.children[j];
|
||||
// 遍历组节点的所有子节点(即选项节点)
|
||||
for (let k = 0; k < groupNode.childrenCount; k++) {
|
||||
const optionNode = groupNode.children[k];
|
||||
const menuBtn = optionNode.getChildByName("menu");
|
||||
const background_1 = menuBtn ? menuBtn.getChildByName("background_1") : null;
|
||||
const background_2 = menuBtn ? menuBtn.getChildByName("background_2") : null;
|
||||
|
||||
if (background_1) background_1.active = true;
|
||||
if (background_2) background_2.active = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private updateChildNodeVisibility(selectedIndex: number) {
|
||||
if (!this.node3) return;
|
||||
console.log("updateChildNodeVisibility", selectedIndex);
|
||||
|
||||
|
||||
// 如果当前索引小于选中的索引,则隐藏
|
||||
// if (i < selectedIndex) {
|
||||
// child.active = false;
|
||||
// } else {
|
||||
// // 否则显示
|
||||
// child.active = true;
|
||||
// }
|
||||
if (selectedIndex === 1) {
|
||||
for (let i = 0; i < this.node3.childrenCount; i++) {
|
||||
const child = this.node3.children[i];
|
||||
if (i === 2) {
|
||||
child.active = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (selectedIndex === 2) {
|
||||
for (let i = 0; i < this.node3.childrenCount; i++) {
|
||||
const child = this.node3.children[i];
|
||||
if (i > 0) {
|
||||
child.active = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
onCreateOption(index?: number, data?: any, clickedMenuBtn?: cc.Node, optionIndex?: number) {
|
||||
// 计算node3的位置,使用固定的y值
|
||||
|
||||
if (optionIndex !== undefined && optionIndex >= 0) {
|
||||
// 根据点击的索引设置node3的固定y位置
|
||||
let targetY = 0;
|
||||
switch (optionIndex) {
|
||||
case 0:
|
||||
targetY = 0;
|
||||
break;
|
||||
case 1:
|
||||
targetY = 300;
|
||||
break;
|
||||
case 2:
|
||||
targetY = 600;
|
||||
break;
|
||||
default:
|
||||
targetY = optionIndex * 300;
|
||||
break;
|
||||
}
|
||||
console.log("node3的y位置:", optionIndex);
|
||||
if (this.node3) {
|
||||
this.node3.y = 218 + targetY;
|
||||
if (optionIndex !== 0) {
|
||||
this.updateChildNodeVisibility(optionIndex);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// 如果没有有效索引(即关闭所有子节点),则设置为默认位置(index为0的位置)
|
||||
if (this.node3) {
|
||||
this.node3.y = 218; // 回到index为0的位置
|
||||
|
||||
for (let i = 0; i < this.node3.childrenCount; i++) {
|
||||
const child = this.node3.children[i];
|
||||
child.active = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (this.selectIndex !== -1) {
|
||||
this.recordMenu.getChildByName("menu");
|
||||
this.recordMenu.getChildByName("background_1").active = true;
|
||||
this.recordMenu.getChildByName("background_2").active = false;
|
||||
}
|
||||
if (index === undefined || index < 0) {
|
||||
// 如果没有提供有效索引,隐藏所有内容节点
|
||||
for (let i = 0; i < this.contentNodes.length; i++) {
|
||||
if (this.contentNodes[i]) {
|
||||
this.contentNodes[i].active = false;
|
||||
}
|
||||
}
|
||||
// 重置选择索引
|
||||
this.selectIndex = -1;
|
||||
if (this.node3) {
|
||||
this.node3.y = 218;
|
||||
for (let i = 0; i < this.node3.childrenCount; i++) {
|
||||
const child = this.node3.children[i];
|
||||
child.active = true;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
// 检查索引是否在有效范围内
|
||||
if (index >= this.contentNodes.length) {
|
||||
console.log("无效索引");
|
||||
return;
|
||||
}
|
||||
|
||||
// 检查是否与上次点击的是同一个选项
|
||||
if (this.selectIndex === index) {
|
||||
// 如果是同一个选项,则隐藏对应的内容节点
|
||||
if (this.contentNodes[index]) {
|
||||
this.contentNodes[index].active = false;
|
||||
}
|
||||
this.selectIndex = -1;
|
||||
if (this.node3) {
|
||||
this.node3.y = 218;
|
||||
}
|
||||
} else {
|
||||
// 隐藏所有内容节点
|
||||
for (let i = 0; i < this.contentNodes.length; i++) {
|
||||
if (this.contentNodes[i]) {
|
||||
this.contentNodes[i].active = false;
|
||||
}
|
||||
}
|
||||
// 显示当前点击的内容节点
|
||||
if (this.contentNodes[index]) {
|
||||
this.contentNodes[index].active = true;
|
||||
}
|
||||
// 更新选择索引为当前索引
|
||||
this.selectIndex = index;
|
||||
this.recordMenu = clickedMenuBtn;
|
||||
}
|
||||
}
|
||||
|
||||
onJushiClick(event, customData) {
|
||||
if (this.currentJushi) {
|
||||
if (this.currentJushi.active) {
|
||||
this.currentJushi.active = false;
|
||||
} else {
|
||||
this.currentJushi.active = true;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
onCloseClick(event, customData) {
|
||||
console.log("onCloseClick", event, customData);
|
||||
this.node.destroy();
|
||||
}
|
||||
|
||||
onUpClick(event, customData) {
|
||||
console.log("onUpClick", event, customData);
|
||||
|
||||
// 获取当前玩家的名称、头像和当前关卡等级
|
||||
const playerName = cc.fx.GameConfig.GM_INFO.username;
|
||||
let playerAvatar = cc.fx.GameConfig.GM_INFO.useravatar;
|
||||
if (cc.fx.GameConfig.GM_INFO.useravatarIcon.length > 10) {
|
||||
console.log("获取头像链接:", cc.fx.GameConfig.GM_INFO.useravatarIcon);
|
||||
playerAvatar = cc.fx.GameConfig.GM_INFO.useravatarIcon;
|
||||
}
|
||||
const currentLevel = cc.fx.GameConfig.GM_INFO.level;
|
||||
|
||||
// 获取留言内容
|
||||
const messageContent = this.selectLabel.string; // 使用当前显示的消息内容
|
||||
let data = {
|
||||
name: playerName,
|
||||
head: playerAvatar,
|
||||
content: messageContent,
|
||||
};
|
||||
|
||||
// 输出信息到控制台
|
||||
console.log("玩家名称:", playerName);
|
||||
console.log("玩家头像:", playerAvatar);
|
||||
console.log("当前关卡等级:", currentLevel);
|
||||
console.log("留言内容:", messageContent);
|
||||
console.log("lick 0"); // 按照要求添加
|
||||
Utils.setCommentInfo((res) => {
|
||||
if (res.code == 1) {
|
||||
// cc.fx.GameTool.shushu_Track("comment", data);
|
||||
// cc.fx.GameTool.typingAni(this.selectLabel, messageContent, () => {
|
||||
// this.onCloseClick(null, null);
|
||||
// }, this.node);
|
||||
console.log("留言成功", res.msg);
|
||||
MiniGameSdk.API.showToast(res.msg);
|
||||
}
|
||||
}, data, this._pos)
|
||||
// 删除当前节点
|
||||
// this.node.destroy();
|
||||
}
|
||||
updateDisplay() {
|
||||
if (this.selectLabel) {
|
||||
this.selectLabel.string = this.getFinalResult();
|
||||
}
|
||||
}
|
||||
getFinalResult(): string {
|
||||
if (!this.originalTemplate) {
|
||||
return '';
|
||||
}
|
||||
|
||||
let result = this.originalTemplate;
|
||||
let matchIndex = 0;
|
||||
|
||||
result = result.replace(/\{0\}/g, () => {
|
||||
// 如果该位置有设置的值,就用设置的值
|
||||
if (this.columnValues.has(matchIndex)) {
|
||||
matchIndex++;
|
||||
return this.columnValues.get(matchIndex - 1);
|
||||
}
|
||||
// 否则保持占位符
|
||||
matchIndex++;
|
||||
return "{0}";
|
||||
});
|
||||
|
||||
return result;
|
||||
}
|
||||
setColumnValue(columnIndex: number, value: string) {
|
||||
if (columnIndex < 0 || columnIndex >= this.placeholderCount) {
|
||||
cc.warn("列索引超出范围:", columnIndex);
|
||||
return;
|
||||
}
|
||||
this.columnValues.set(columnIndex, value);
|
||||
this.updateDisplay(); // 实时更新显示
|
||||
}
|
||||
// 清除指定列的值
|
||||
clearColumnValue(columnIndex: number) {
|
||||
this.columnValues.delete(columnIndex);
|
||||
this.updateDisplay();
|
||||
}
|
||||
|
||||
onShowLevelWord() {
|
||||
let levelWordNode = this.node.getChildByName("levelWordNode");
|
||||
let showNum = 3;
|
||||
|
||||
// 检查是否存在labelContainer节点,如果没有则创建
|
||||
let labelContainer = levelWordNode.getChildByName("labelContainer");
|
||||
if (!labelContainer) {
|
||||
// 如果场景中没有预设的labelContainer节点,则创建一个新的
|
||||
labelContainer = new cc.Node("labelContainer");
|
||||
labelContainer.parent = levelWordNode;
|
||||
labelContainer.zIndex = 100; // 确保label在正确层级
|
||||
}
|
||||
|
||||
let comment = null;
|
||||
// let commentData = [{
|
||||
// content: "首先,方块吧",
|
||||
// head: "https://thirdwx.qlogo.cn/mmopen/vi_32/oCAezhMhThqmsb7ovGhC4ZDU7QoBCYqbLlAJqOofpzkCSOzqmzlXVqVc87ib1Oo9f6HOgbFLSJq83AIefT0M7xTkaE3Jb0kaFKRlYkhJol6M/132",
|
||||
// index: 0,
|
||||
// like: 2310,
|
||||
// name: "卡越来越",
|
||||
// uid: "68d0edf0cc79706182bda53f"
|
||||
// }, {
|
||||
// content: "首先,2*2方块吧",
|
||||
// head: "https://thirdwx.qlogo.cn/mmopen/vi_32/oCAezhMhThqmsb7ovGhC4ZDU7QoBCYqbLlAJqOofpzkCSOzqmzlXVqVc87ib1Oo9f6HOgbFLSJq83AIefT0M7xTkaE3Jb0kaFKRlYkhJol6M/132",
|
||||
// index: 0,
|
||||
// like: 110,
|
||||
// name: "卡越来越",
|
||||
// uid: "68d0edf0cc79706182bda53f"
|
||||
// }, {
|
||||
// content: "首先,1x3方块吧",
|
||||
// head: "https://thirdwx.qlogo.cn/mmopen/vi_32/oCAezhMhThqmsb7ovGhC4ZDU7QoBCYqbLlAJqOofpzkCSOzqmzlXVqVc87ib1Oo9f6HOgbFLSJq83AIefT0M7xTkaE3Jb0kaFKRlYkhJol6M/132",
|
||||
// index: 0,
|
||||
// like: 120,
|
||||
// name: "卡越来越",
|
||||
// uid: "68d0edf0cc79706182bda53f"
|
||||
// }, {
|
||||
// content: "首先,方块吧",
|
||||
// head: "https://thirdwx.qlogo.cn/mmopen/vi_32/oCAezhMhThqmsb7ovGhC4ZDU7QoBCYqbLlAJqOofpzkCSOzqmzlXVqVc87ib1Oo9f6HOgbFLSJq83AIefT0M7xTkaE3Jb0kaFKRlYkhJol6M/132",
|
||||
// index: 0,
|
||||
// like: 0,
|
||||
// name: "卡越来越",
|
||||
// uid: "68d0edf0cc79706182bda53f"
|
||||
// }, {
|
||||
// content: "首先,方块吧",
|
||||
// head: "https://thirdwx.qlogo.cn/mmopen/vi_32/oCAezhMhThqmsb7ovGhC4ZDU7QoBCYqbLlAJqOofpzkCSOzqmzlXVqVc87ib1Oo9f6HOgbFLSJq83AIefT0M7xTkaE3Jb0kaFKRlYkhJol6M/132",
|
||||
// index: 0,
|
||||
// like: 0,
|
||||
// name: "卡越来越",
|
||||
// uid: "68d0edf0cc79706182bda53f"
|
||||
// }];
|
||||
// let res = { code: 1, data: commentData, msg: "成功" }
|
||||
Utils.getLikeInfo((res) => {
|
||||
console.log("获取点赞信息", res);
|
||||
|
||||
comment = res.data.comment;
|
||||
|
||||
const likedDataKey = 'liked_data';
|
||||
let likedData = cc.sys.localStorage.getItem(likedDataKey);
|
||||
likedData = likedData ? JSON.parse(likedData) : { level: null, pos: null, likedIds: [] };
|
||||
|
||||
console.log("从本地获取点赞信息", likedData);
|
||||
// 检查当前关卡等级和pos是否与缓存中的匹配
|
||||
const currentLevel = cc.fx.GameConfig.GM_INFO.level;
|
||||
const currentPos = this._pos;
|
||||
const shouldUseCachedIds = likedData.level === currentLevel && likedData.pos === currentPos;
|
||||
|
||||
// comment = res.data;
|
||||
// if (comment.length <= showNum) {
|
||||
for (let i = 0; i < comment.length; i++) {
|
||||
let node = levelWordNode.getChildByName("node" + (i + 1));
|
||||
console.log("node", node)
|
||||
// 检查节点是否存在
|
||||
if (node) {
|
||||
node.active = false;
|
||||
if (i < showNum) {
|
||||
node.active = true;
|
||||
|
||||
// 为每个node添加文本显示,但将Label放在单独的容器中以优化合批
|
||||
let labelNode = labelContainer.getChildByName("labelNode" + i);
|
||||
|
||||
// 检查menuLabel是否存在,再实例化
|
||||
if (!labelNode && this.menuLabel) {
|
||||
labelNode = cc.instantiate(this.menuLabel);
|
||||
if (labelNode) {
|
||||
labelNode.name = "labelNode" + i;
|
||||
labelContainer.addChild(labelNode);
|
||||
}
|
||||
} else if (!labelNode && !this.menuLabel) {
|
||||
console.warn(`menuLabel prefab is not assigned, creating label node directly`);
|
||||
// 如果没有预制体,直接创建一个带Label组件的节点
|
||||
labelNode = new cc.Node();
|
||||
let labelComponent = labelNode.addComponent(cc.Label);
|
||||
|
||||
// 设置统一的字体和样式以优化合批
|
||||
// labelComponent.fontSize = 40;
|
||||
// labelComponent.lineHeight = 45;
|
||||
// labelComponent.enableBold = true;
|
||||
labelComponent.horizontalAlign = cc.Label.HorizontalAlign.CENTER;
|
||||
labelComponent.verticalAlign = cc.Label.VerticalAlign.CENTER;
|
||||
labelComponent.overflow = cc.Label.Overflow.NONE;
|
||||
|
||||
// 重要:设置CHAR模式以优化合批
|
||||
labelComponent.cacheMode = cc.Label.CacheMode.CHAR;
|
||||
|
||||
labelNode.name = "labelNode" + i;
|
||||
labelContainer.addChild(labelNode);
|
||||
}
|
||||
|
||||
// 检查labelNode是否存在再设置属性
|
||||
if (labelNode) {
|
||||
// 设置label位置与对应的node对齐
|
||||
labelNode.active = true;
|
||||
// 使用node的世界坐标转换为labelContainer的局部坐标
|
||||
labelNode.position = labelContainer.convertToNodeSpaceAR(node.parent.convertToWorldSpaceAR(node.position));
|
||||
|
||||
// 如果需要显示特定文本,可以在这里设置
|
||||
let labelComponent = labelNode.getComponent(cc.Label);
|
||||
if (labelComponent) {
|
||||
// 重要:设置CHAR模式以优化合批
|
||||
labelComponent.cacheMode = cc.Label.CacheMode.CHAR;
|
||||
|
||||
// 设置统一的文本内容,如果需要不同内容,请确保使用相同的字体资源
|
||||
// labelComponent.string = "文本内容";
|
||||
console.log("comment[i].content", comment[i].content);
|
||||
labelComponent.string = comment[i].content;
|
||||
|
||||
// 确保所有Label使用相同的字体和样式设置
|
||||
// labelComponent.font = null; // 清除可能存在的字体资源引用
|
||||
// labelComponent.useSystemFont = true;
|
||||
// labelComponent.fontSize = 60;
|
||||
// labelComponent.lineHeight = 60;
|
||||
// labelComponent.enableBold = true;
|
||||
labelComponent.horizontalAlign = cc.Label.HorizontalAlign.CENTER;
|
||||
labelComponent.verticalAlign = cc.Label.VerticalAlign.CENTER;
|
||||
labelComponent.overflow = cc.Label.Overflow.NONE;
|
||||
}
|
||||
}
|
||||
|
||||
// 获取当前节点下的likeBtn
|
||||
let likeBtn = node.getChildByName("likeBtn");
|
||||
if (likeBtn) {
|
||||
// 移除之前的点击事件监听器,避免重复添加
|
||||
likeBtn.off(cc.Node.EventType.TOUCH_END);
|
||||
// 查找或创建点赞数显示标签
|
||||
let likeLabel = node.getChildByName("likeLabel");
|
||||
if (!likeLabel) {
|
||||
// 创建点赞数显示标签
|
||||
likeLabel = new cc.Node("likeLabel");
|
||||
let labelComponent = likeLabel.addComponent(cc.Label);
|
||||
|
||||
// 设置标签样式
|
||||
labelComponent.string = comment[i].like.toString();
|
||||
labelComponent.fontSize = 30;
|
||||
labelComponent.lineHeight = 32;
|
||||
labelComponent.horizontalAlign = cc.Label.HorizontalAlign.LEFT;
|
||||
labelComponent.verticalAlign = cc.Label.VerticalAlign.CENTER;
|
||||
|
||||
// 设置颜色
|
||||
likeLabel.color = cc.Color.BLACK;
|
||||
likeLabel.anchorX = 0;
|
||||
likeLabel.anchorY = 0.5;
|
||||
|
||||
// 添加到节点
|
||||
node.addChild(likeLabel);
|
||||
|
||||
// 设置位置(通常在likeBtn旁边)
|
||||
likeLabel.setPosition(likeBtn.x + likeBtn.width / 2 + 20, likeBtn.y); // 根据实际需求调整位置
|
||||
} else {
|
||||
// 如果标签已存在,更新显示的点赞数
|
||||
let labelComponent = likeLabel.getComponent(cc.Label);
|
||||
if (labelComponent) {
|
||||
labelComponent.string = comment[i].like.toString();
|
||||
}
|
||||
}
|
||||
// 检查当前评论ID是否已经在本地缓存的已点赞列表中
|
||||
const currentCommentId = comment[i].index; // 使用index作为唯一标识
|
||||
const isAlreadyLiked = shouldUseCachedIds && likedData.likedIds.includes(currentCommentId);
|
||||
|
||||
if (isAlreadyLiked) {
|
||||
// 如果已经点赞过,设置按钮为不可点击状态
|
||||
likeBtn['_hasLiked'] = true;
|
||||
console.log(`节点 ${i + 1} 的likeBtn已点赞过,设置为不可点击状态`);
|
||||
} else {
|
||||
// 如果没有点赞过,添加点击事件
|
||||
likeBtn['_hasLiked'] = false;
|
||||
likeBtn.on(cc.Node.EventType.TOUCH_END, (event) => {
|
||||
if (likeBtn['_hasLiked']) {
|
||||
console.log(`节点 ${i + 1} 的likeBtn已经点赞,不可再次点击`);
|
||||
return; // 如果已经点赞,则不执行后续操作
|
||||
}
|
||||
|
||||
console.log(`调用事件信息: 节点 ${i + 1} 的likeBtn被点击,评论内容: ${comment[i].content}, 用户: ${comment[i].name}`);
|
||||
// 这里可以添加点赞逻辑
|
||||
this.handleLikeClick(i, comment[i], likeLabel, likeBtn, currentCommentId, currentLevel, currentPos);
|
||||
}, this);
|
||||
}
|
||||
// 设置按钮的ID,以便在后续处理中识别
|
||||
likeBtn['_commentId'] = currentCommentId;
|
||||
} else {
|
||||
console.warn(`节点 ${i + 1} 下未找到名为 likeBtn 的子节点`);
|
||||
}
|
||||
} else {
|
||||
// 如果节点超出显示范围,隐藏其对应的label
|
||||
let labelNode = labelContainer.getChildByName("labelNode" + i);
|
||||
if (labelNode) {
|
||||
labelNode.active = false;
|
||||
}
|
||||
|
||||
// 检查超出范围的节点是否也有likeBtn,也需要处理
|
||||
let likeBtn = node.getChildByName("likeBtn");
|
||||
if (likeBtn) {
|
||||
likeBtn.off(cc.Node.EventType.TOUCH_END); // 移除可能存在的事件监听器
|
||||
likeBtn.active = false; // 隐藏超出范围的点赞按钮
|
||||
}
|
||||
}
|
||||
} else {
|
||||
console.warn(`Node with name "node${i}" not found in levelWordNode`);
|
||||
}
|
||||
}
|
||||
// }
|
||||
|
||||
}, this._pos)
|
||||
}
|
||||
|
||||
// 添加点赞点击处理函数
|
||||
private handleLikeClick(index: number, commentData: any, likeLabel: cc.Node, likeBtn: cc.Node, commentId: number, level: number, pos: number) {
|
||||
console.log(`点赞按钮被点击,索引: ${index}, 评论数据:`, commentData);
|
||||
Utils.setLikeInfo((res) => {
|
||||
if (res.code === 1) {
|
||||
commentData.like += 1;
|
||||
let labelComponent = likeLabel.getComponent(cc.Label);
|
||||
if (labelComponent) {
|
||||
labelComponent.string = commentData.like.toString();
|
||||
}
|
||||
|
||||
// 设置按钮为已点赞状态,不可再次点击
|
||||
likeBtn['_hasLiked'] = true;
|
||||
likeBtn.off(cc.Node.EventType.TOUCH_END); // 移除点击事件
|
||||
|
||||
// 更新本地缓存中的已点赞数据
|
||||
const likedDataKey = 'liked_data';
|
||||
let likedData = cc.sys.localStorage.getItem(likedDataKey);
|
||||
likedData = likedData ? JSON.parse(likedData) : { level: null, pos: null, likedIds: [] };
|
||||
|
||||
// 更新关卡等级和pos
|
||||
likedData.level = level;
|
||||
likedData.pos = pos;
|
||||
|
||||
// 添加当前ID到已点赞列表(如果不存在)
|
||||
if (!likedData.likedIds.includes(commentId)) {
|
||||
likedData.likedIds.push(commentId);
|
||||
}
|
||||
|
||||
// 保存到本地缓存
|
||||
cc.sys.localStorage.setItem(likedDataKey, JSON.stringify(likedData));
|
||||
|
||||
console.log("点赞成功!");
|
||||
} else {
|
||||
console.log("点赞失败!");
|
||||
}
|
||||
}, this._pos, index);
|
||||
}
|
||||
|
||||
onUpLikeClick(event, customData) {
|
||||
console.log("onUpClick", event, customData);
|
||||
|
||||
// 获取当前玩家的名称、头像和当前关卡等级
|
||||
const playerName = cc.fx.GameConfig.GM_INFO.username;
|
||||
const playerAvatar = cc.fx.GameConfig.GM_INFO.useravatar;
|
||||
const currentLevel = cc.fx.GameConfig.GM_INFO.level;
|
||||
|
||||
// 获取留言内容
|
||||
const messageContent = this.selectLabel.string; // 使用当前显示的消息内容
|
||||
|
||||
let likeNum = 0;
|
||||
|
||||
let data = {
|
||||
name: playerName,
|
||||
head: playerAvatar,
|
||||
content: messageContent,
|
||||
like: likeNum,
|
||||
};
|
||||
let pos = 1;
|
||||
let index = 1;
|
||||
// 输出信息到控制台
|
||||
// console.log("玩家名称:", playerName);
|
||||
// console.log("玩家头像:", playerAvatar);
|
||||
// console.log("当前关卡等级:", currentLevel);
|
||||
// console.log("留言内容:", messageContent);
|
||||
// console.log("lick 0"); // 按照要求添加
|
||||
Utils.setLikeInfo((res) => {
|
||||
if (res.code == 1) {
|
||||
// cc.fx.GameTool.shushu_Track("comment", data);
|
||||
// cc.fx.GameTool.typingAni(this.selectLabel, messageContent, () => {
|
||||
// this.onCloseClick(null, null);
|
||||
// }, this.node);
|
||||
|
||||
}
|
||||
}, pos, index)
|
||||
// 删除当前节点
|
||||
// this.node.destroy();
|
||||
}
|
||||
// 清除所有
|
||||
clearAll() {
|
||||
this.columnValues.clear();
|
||||
this.updateDisplay();
|
||||
}
|
||||
|
||||
}
|
||||
10
assets/Script/Message.ts.meta
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"ver": "1.1.0",
|
||||
"uuid": "d5f79f9c-09d1-4f1e-bef3-e80e6bcf1bd6",
|
||||
"importer": "typescript",
|
||||
"isPlugin": false,
|
||||
"loadPluginInWeb": true,
|
||||
"loadPluginInNative": true,
|
||||
"loadPluginInEditor": false,
|
||||
"subMetas": {}
|
||||
}
|
||||
67
assets/Script/MessageContent.ts
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
const { ccclass, property } = cc._decorator;
|
||||
|
||||
@ccclass
|
||||
export default class MessageContent extends cc.Component {
|
||||
|
||||
@property(cc.Prefab)
|
||||
itemPrefab: cc.Prefab = null;
|
||||
|
||||
private contentData: any[] = [];
|
||||
private itemNodes: cc.Node[] = [];
|
||||
private callback: any = null;
|
||||
start() {
|
||||
}
|
||||
|
||||
setContentData(data: any[], callback) {
|
||||
this.contentData = data;
|
||||
this.updateContent();
|
||||
|
||||
this.callback = callback;
|
||||
}
|
||||
|
||||
updateContent() {
|
||||
// 清除现有的项目
|
||||
this.clearItems();
|
||||
|
||||
// 为每个数据项创建一个节点
|
||||
for (let i = 0; i < this.contentData.length; i++) {
|
||||
const itemNode = cc.instantiate(this.itemPrefab);
|
||||
this.node.addChild(itemNode);
|
||||
|
||||
// 设置位置
|
||||
const yPos = -30 - i * 60; // 每个项目的高度为60
|
||||
itemNode.setPosition(0, yPos);
|
||||
|
||||
// 获取并设置标签内容
|
||||
const label = itemNode.getComponent(cc.Label);
|
||||
if (label) {
|
||||
label.string = this.contentData[i].context.toString(); // 根据实际数据结构调整
|
||||
}
|
||||
// 添加点击事件
|
||||
itemNode.on(cc.Node.EventType.TOUCH_END, () => {
|
||||
this.onItemClick(i, this.contentData[i]);
|
||||
});
|
||||
|
||||
|
||||
this.itemNodes.push(itemNode);
|
||||
}
|
||||
}
|
||||
|
||||
onItemClick(index: number, data: any) {
|
||||
console.log(`点击了第 ${index} 个项目,数据为:`, data);
|
||||
|
||||
if (this.callback) {
|
||||
this.callback(index, data);
|
||||
}
|
||||
// 发送自定义事件到父节点(Message组件)
|
||||
// this.node.emit('item-clicked', index, data);
|
||||
}
|
||||
|
||||
clearItems() {
|
||||
for (let i = 0; i < this.itemNodes.length; i++) {
|
||||
this.itemNodes[i].off(cc.Node.EventType.TOUCH_END);
|
||||
this.itemNodes[i].destroy();
|
||||
}
|
||||
this.itemNodes = [];
|
||||
}
|
||||
}
|
||||
10
assets/Script/MessageContent.ts.meta
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"ver": "1.1.0",
|
||||
"uuid": "cb2e560f-ac0e-4e58-8196-1eb0a8db8c57",
|
||||
"importer": "typescript",
|
||||
"isPlugin": false,
|
||||
"loadPluginInWeb": true,
|
||||
"loadPluginInNative": true,
|
||||
"loadPluginInEditor": false,
|
||||
"subMetas": {}
|
||||
}
|
||||
|
|
@ -74,6 +74,10 @@ export default class SceneManager extends cc.Component {
|
|||
@property(cc.SpriteAtlas)
|
||||
avatar: cc.SpriteAtlas = null;
|
||||
|
||||
@property(cc.Prefab)
|
||||
messageNode: cc.Node = null;
|
||||
|
||||
|
||||
particleEffects: cc.ParticleAsset[];
|
||||
// @property({type: [cc.ParticleSystem], tooltip:"粒子数组"})
|
||||
// particleEffects : Array<cc.ParticleSystem> = [];
|
||||
|
|
@ -157,6 +161,9 @@ export default class SceneManager extends cc.Component {
|
|||
let levelName = (cc.fx.GameConfig.GM_INFO.level + 1);
|
||||
if (cc.fx.GameConfig.GM_INFO.otherLevel > 0) {
|
||||
levelName = cc.fx.GameConfig.GM_INFO.otherLevel;
|
||||
} else if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
// levelName = cc.fx.GameConfig.GM_INFO.randomLevel.newLevel;
|
||||
levelName = cc.fx.GameConfig.GM_INFO.randomLevel;
|
||||
}
|
||||
NumberToImage.numberToImageNodes3(levelName, 43, 15, "rank_", this.level, true);
|
||||
//time金币数量
|
||||
|
|
@ -257,11 +264,17 @@ export default class SceneManager extends cc.Component {
|
|||
let overTime = Date.now();
|
||||
let count_Time = overTime - MapConroler._instance.count_Time;
|
||||
let add_Time = MapConroler._instance.add_Time;
|
||||
|
||||
let endLevel = false;
|
||||
if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
endLevel = true;
|
||||
}
|
||||
let data = {
|
||||
time: count_Time,
|
||||
add_Time: add_Time,
|
||||
is_frenzy: MapConroler._instance.is_frenzy,
|
||||
result: "give_up"
|
||||
result: "give_up",
|
||||
"infinity": endLevel,
|
||||
}
|
||||
cc.fx.GameTool.shushu_Track("finish_stage", data);
|
||||
let data2 = {
|
||||
|
|
@ -655,7 +668,24 @@ export default class SceneManager extends cc.Component {
|
|||
closeLoad() {
|
||||
this.node.getChildByName("Loading").active = false;
|
||||
}
|
||||
|
||||
openMessage() {
|
||||
let reddemCodeNode = cc.instantiate(this.messageNode);
|
||||
let messageScrpit = reddemCodeNode.getComponent("Message");
|
||||
let nodeType = "commentNode";
|
||||
console.log("打开界面", nodeType);
|
||||
let pos = 1;
|
||||
messageScrpit.showNode(nodeType, pos);
|
||||
this.node.addChild(reddemCodeNode);
|
||||
}
|
||||
openMessage2() {
|
||||
let reddemCodeNode = cc.instantiate(this.messageNode);
|
||||
let messageScrpit = reddemCodeNode.getComponent("Message");
|
||||
let nodeType = "levelWordNode";
|
||||
console.log("打开界面", nodeType);
|
||||
let pos = 1;
|
||||
messageScrpit.showNode(nodeType, pos);
|
||||
this.node.addChild(reddemCodeNode);
|
||||
}
|
||||
update(dt) {
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,6 +58,7 @@ export class GameConfig {
|
|||
static NEW_GUIDE: any;
|
||||
static PASS_CHECK: any;
|
||||
static PASS_RATE: any;
|
||||
static MESSAGE_MODEL: any;
|
||||
|
||||
static TA: any;
|
||||
static GE: any;
|
||||
|
|
@ -143,6 +144,9 @@ export class GameConfig {
|
|||
cityRank: number; //城市排名
|
||||
sceneValue: string; //当前场景值
|
||||
shopDouble: { gold_1: boolean; gold_2: boolean; gold_3: boolean; gold_4: boolean; gold_5: boolean; gold_6: boolean; };
|
||||
randomLevel: number;
|
||||
endLevelNum: number; // 通关后 记录玩家随机游戏关卡数量
|
||||
GameplayType: number; //游戏类型
|
||||
};
|
||||
|
||||
|
||||
|
|
@ -336,7 +340,10 @@ export class GameConfig {
|
|||
"gold_4": false,
|
||||
"gold_5": false,
|
||||
"gold_6": false
|
||||
}
|
||||
},
|
||||
randomLevel: 0,
|
||||
endLevelNum: 1,
|
||||
GameplayType: 0, // 0 正常模式, 1无尽模式
|
||||
};
|
||||
// this.setCode(this.getKey("scode"));
|
||||
// this.GM_INFO.level = 0;
|
||||
|
|
@ -381,26 +388,50 @@ export class GameConfig {
|
|||
const newLevelData = res.json;
|
||||
this.PASS_RATE = newLevelData;
|
||||
})
|
||||
|
||||
cc.resources.load("Json/MESSAGE_MODEL", (err: any, res: cc.JsonAsset) => {
|
||||
if (err) {
|
||||
console.error("加载 MESSAGE_MODEL.JSON 失败:", err);
|
||||
return;
|
||||
}
|
||||
const newLevelData = res.json;
|
||||
this.MESSAGE_MODEL = newLevelData;
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
|
||||
static LEVEL_INFO_init(type, time, otherLevel) {
|
||||
static LEVEL_INFO_init(type, time, otherLevel, endless = false) {
|
||||
// 示例 围墙会根据缺的地块自动生成
|
||||
// 带缺口 {"id":"1006","map":[10,11],"gap":[cc.v2(4,9),cc.v2(5,9)]},
|
||||
// 带升降地块 {"id":"1004","map":[7,8],"risefall":[{pos:cc.v2(5,4),color:2},{pos:cc.v2(5,5),color:5}]},
|
||||
// 如果普通的就 {"id":"1001","map":[6,7]}, 这个样子就可以了
|
||||
var self = this;
|
||||
|
||||
let name = null;
|
||||
if (endless) {
|
||||
let level = 0;
|
||||
if (!cc.fx.GameConfig.GM_INFO.randomLevel || cc.fx.GameConfig.GM_INFO.randomLevel <= 0) {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = cc.fx.GameTool.getNextLevel();
|
||||
}
|
||||
level = cc.fx.GameConfig.GM_INFO.randomLevel;
|
||||
|
||||
if (cc.fx.GameTool.maxLevel() && otherLevel == false) {
|
||||
MiniGameSdk.API.showToast("关卡每周更新,敬请期待");
|
||||
cc.fx.GameTool.requestSubscribe();
|
||||
return;
|
||||
}
|
||||
let name = "Json/level" + (cc.fx.GameConfig.GM_INFO.level + 1);
|
||||
if (cc.fx.GameConfig.GM_INFO.otherLevel > 0) {
|
||||
console.log("进入特殊帮助关卡,可越过自己关卡等级");
|
||||
name = "Json/level" + cc.fx.GameConfig.GM_INFO.otherLevel;
|
||||
name = "Json/level" + (level);
|
||||
console.log("无尽模式关卡", level);
|
||||
cc.fx.GameConfig.GM_INFO.GameplayType = 1;
|
||||
} else {
|
||||
if (cc.fx.GameTool.maxLevel() && otherLevel == false) {
|
||||
// MiniGameSdk.API.showToast("关卡每周更新,敬请期待");
|
||||
// cc.fx.GameTool.requestSubscribe();
|
||||
console.log("关卡更新提示")
|
||||
return;
|
||||
}
|
||||
|
||||
name = "Json/level" + (cc.fx.GameConfig.GM_INFO.level + 1);
|
||||
if (cc.fx.GameConfig.GM_INFO.otherLevel > 0) {
|
||||
console.log("进入特殊帮助关卡,可越过自己关卡等级");
|
||||
name = "Json/level" + cc.fx.GameConfig.GM_INFO.otherLevel;
|
||||
}
|
||||
}
|
||||
|
||||
let bundleName = "custom"; // 替换为实际的分包名称
|
||||
|
|
|
|||
|
|
@ -1401,6 +1401,54 @@ export default class Utils {
|
|||
})
|
||||
}
|
||||
}
|
||||
|
||||
static setEndlessLevel(callBack, data1, data2) {
|
||||
if (typeof wx !== 'undefined' && wx !== null) {
|
||||
let uid = cc.fx.StorageMessage.getStorage("uid");
|
||||
//旧的读取数据设置数据方法,以强联网为主
|
||||
if (uid != undefined && uid != "" && uid != null) {
|
||||
cc.fx.GameConfig.GM_INFO.uid = uid;
|
||||
}
|
||||
let setData = {
|
||||
uid: cc.fx.GameConfig.GM_INFO.uid,
|
||||
action: 'save',
|
||||
userLevel: parseInt(data1), // JSON.stringify(data1), //
|
||||
endLevelNum: parseInt(data2),
|
||||
}
|
||||
console.log("设置无尽关卡等级:", setData);
|
||||
Utils.POST("setUserLevel", setData, res => {
|
||||
if (res.code === 1) {
|
||||
console.log("设置无尽关卡", res);
|
||||
if (callBack) callBack(res);
|
||||
} else {
|
||||
console.log("设置无尽关卡", res);
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
static getEndlessLevel(callBack) {
|
||||
if (typeof wx !== 'undefined' && wx !== null) {
|
||||
let uid = cc.fx.StorageMessage.getStorage("uid");
|
||||
//旧的读取数据设置数据方法,以强联网为主
|
||||
if (uid != undefined && uid != "" && uid != null) {
|
||||
cc.fx.GameConfig.GM_INFO.uid = uid;
|
||||
}
|
||||
let setData = {
|
||||
uid: cc.fx.GameConfig.GM_INFO.uid,
|
||||
action: 'read',
|
||||
}
|
||||
Utils.POST("setUserLevel", setData, res => {
|
||||
console.log("获得无尽关卡等级:", res);
|
||||
if (res.code === 1) {
|
||||
if (callBack) callBack(res);
|
||||
} else {
|
||||
if (callBack) callBack(res);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
static getRedeemInfo(callBack, cdk) {
|
||||
//@ts-ignore
|
||||
if (typeof wx !== 'undefined' && wx !== null) {
|
||||
|
|
@ -1443,4 +1491,119 @@ export default class Utils {
|
|||
});
|
||||
}
|
||||
}
|
||||
|
||||
//获取
|
||||
static getCommentInfo(callBack) {
|
||||
//@ts-ignore
|
||||
if (typeof wx !== 'undefined' && wx !== null) {
|
||||
let uid = cc.fx.StorageMessage.getStorage("uid");
|
||||
//旧的读取数据设置数据方法,以强联网为主
|
||||
if (uid != undefined && uid != "" && uid != null) {
|
||||
cc.fx.GameConfig.GM_INFO.uid = uid;
|
||||
}
|
||||
let setData = {
|
||||
uid: cc.fx.GameConfig.GM_INFO.uid,
|
||||
action: 'read',
|
||||
}
|
||||
Utils.POST("comment", setData, res => {
|
||||
|
||||
if (res.code === 1) {
|
||||
console.log("请求评论成功:", res);
|
||||
if (callBack) callBack(res);
|
||||
} else {
|
||||
console.log("请求评论失败:", res);
|
||||
if (callBack) callBack(res);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
//设置评论
|
||||
static setCommentInfo(callBack, data, _pos) {
|
||||
//@ts-ignore
|
||||
if (typeof wx !== 'undefined' && wx !== null) {
|
||||
let uid = cc.fx.StorageMessage.getStorage("uid");
|
||||
//旧的读取数据设置数据方法,以强联网为主
|
||||
if (uid != undefined && uid != "" && uid != null) {
|
||||
cc.fx.GameConfig.GM_INFO.uid = uid;
|
||||
}
|
||||
let setData = {
|
||||
uid: cc.fx.GameConfig.GM_INFO.uid,
|
||||
action: 'save',
|
||||
pos: _pos,
|
||||
level: cc.fx.GameConfig.GM_INFO.level,
|
||||
comment: JSON.stringify(data),
|
||||
|
||||
}
|
||||
|
||||
console.log("设置评论数据:", setData);
|
||||
Utils.POST("comment", setData, res => {
|
||||
if (res.code === 1) {
|
||||
console.log("设置评论成功", res);
|
||||
if (callBack) callBack(res);
|
||||
} else {
|
||||
console.log("设置评论失败", res);
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
//获取点赞
|
||||
static getLikeInfo(callBack, _pos) {
|
||||
//@ts-ignore
|
||||
if (typeof wx !== 'undefined' && wx !== null) {
|
||||
let uid = cc.fx.StorageMessage.getStorage("uid");
|
||||
//旧的读取数据设置数据方法,以强联网为主
|
||||
if (uid != undefined && uid != "" && uid != null) {
|
||||
cc.fx.GameConfig.GM_INFO.uid = uid;
|
||||
}
|
||||
let setData = {
|
||||
uid: cc.fx.GameConfig.GM_INFO.uid,
|
||||
action: 'read',
|
||||
level: cc.fx.GameConfig.GM_INFO.level,
|
||||
pos: _pos,
|
||||
}
|
||||
Utils.POST("comment", setData, res => {
|
||||
|
||||
if (res.code === 1) {
|
||||
console.log("请求点赞成功:", res);
|
||||
if (callBack) callBack(res);
|
||||
} else {
|
||||
console.log("请求点赞失败:", res);
|
||||
if (callBack) callBack(res);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
//设置点赞
|
||||
static setLikeInfo(callBack, _pos, _index) {
|
||||
//@ts-ignore
|
||||
if (typeof wx !== 'undefined' && wx !== null) {
|
||||
let uid = cc.fx.StorageMessage.getStorage("uid");
|
||||
//旧的读取数据设置数据方法,以强联网为主
|
||||
if (uid != undefined && uid != "" && uid != null) {
|
||||
cc.fx.GameConfig.GM_INFO.uid = uid;
|
||||
}
|
||||
let setData = {
|
||||
uid: cc.fx.GameConfig.GM_INFO.uid,
|
||||
action: 'like',
|
||||
level: cc.fx.GameConfig.GM_INFO.level,
|
||||
pos: _pos,
|
||||
index: _index,
|
||||
// comment: JSON.stringify(data),
|
||||
|
||||
}
|
||||
|
||||
console.log("设置点赞数据:", setData);
|
||||
Utils.POST("comment", setData, res => {
|
||||
if (res.code === 1) {
|
||||
console.log("设置点赞成功", res);
|
||||
if (callBack) callBack(res);
|
||||
} else {
|
||||
console.log("设置点赞失败", res);
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,6 +32,16 @@ export default class ItemRender extends cc.Component {
|
|||
NumberToImage.numberToImageNodes3((this.data.rank), 43, 15, "rank_", this.node.getChildByName("rankLab"), true);
|
||||
NumberToImage.numberToImageNodes3(this.data.levelAmount, 43, 15, "level_", this.node.getChildByName("totalLab"), true);
|
||||
|
||||
console.log("查看排行", this.data.endLebelNum);
|
||||
if (this.data.endLebelNum && Number(this.data.endLebelNum) > 1) {
|
||||
let endlessNode = this.node.getChildByName("endlessNode");
|
||||
endlessNode.active = true;
|
||||
NumberToImage.numberToImageNodes5(this.data.endLebelNum - 1, 30, 15, "Black", endlessNode.getChildByName("levelNum"), true);
|
||||
// NumberToImage.numberToImageNodes5(this.data.rank, 30, 15, "Black", endlessNode.getChildByName("levelNum"), true);
|
||||
} else {
|
||||
this.node.getChildByName("endlessNode").active = false;
|
||||
}
|
||||
|
||||
// this.node.getChildByName("timeLab").getComponent(cc.Label).string = timeTemp + "";
|
||||
this.node.getChildByName("rank").getChildByName("one").active = false;
|
||||
this.node.getChildByName("rank").getChildByName("two").active = false;
|
||||
|
|
|
|||
|
|
@ -375,11 +375,16 @@ var GameTool = {
|
|||
is_frenzy = MapConroler._instance.is_frenzy;
|
||||
}
|
||||
if (time1 != null && time2 != null) {
|
||||
let endLevel = false;
|
||||
if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
endLevel = true;
|
||||
}
|
||||
let data = {
|
||||
time: time1,
|
||||
add_Time: time2,
|
||||
is_frenzy: is_frenzy,
|
||||
result: "success"
|
||||
result: "success",
|
||||
"infinity": endLevel,
|
||||
}
|
||||
cc.fx.GameTool.shushu_Track("finish_stage", data);
|
||||
let data2 = {
|
||||
|
|
@ -1249,9 +1254,14 @@ var GameTool = {
|
|||
}
|
||||
break;
|
||||
case "enter_stage":
|
||||
let userLevel = (cc.fx.GameConfig.GM_INFO.level + 1);
|
||||
if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
userLevel = cc.fx.GameConfig.GM_INFO.randomLevel;
|
||||
}
|
||||
eventData = {
|
||||
stage_id: (cc.fx.GameConfig.GM_INFO.level + 1),
|
||||
stage_id: userLevel,
|
||||
is_frenzy: data.is_frenzy,
|
||||
infinity: data.infinity,
|
||||
}
|
||||
if (cc.fx.GameConfig.GM_INFO.otherLevel > 0) {
|
||||
eventData = {
|
||||
|
|
@ -1260,12 +1270,17 @@ var GameTool = {
|
|||
}
|
||||
break;
|
||||
case "finish_stage":
|
||||
let userLevel2 = (cc.fx.GameConfig.GM_INFO.level + 1);
|
||||
if (cc.fx.GameTool.maxLevel() && cc.fx.GameConfig.GM_INFO.GameplayType == 1) {
|
||||
userLevel2 = cc.fx.GameConfig.GM_INFO.randomLevel;
|
||||
}
|
||||
eventData = {
|
||||
stage_id: (cc.fx.GameConfig.GM_INFO.level + 1),
|
||||
stage_id: userLevel2,
|
||||
stage_duration: data.time,
|
||||
added_time: data.add_Time,
|
||||
is_frenzy: data.is_frenzy,
|
||||
result: data.result
|
||||
result: data.result,
|
||||
infinity: data.infinity,
|
||||
}
|
||||
if (cc.fx.GameConfig.GM_INFO.otherLevel > 0) {
|
||||
eventData = {
|
||||
|
|
@ -2088,7 +2103,67 @@ var GameTool = {
|
|||
return;
|
||||
}
|
||||
MiniGameSdk.API.shushu_Track('error', errorData);
|
||||
}
|
||||
},
|
||||
getNextLevel() {
|
||||
const MAX_LEVEL = cc.fx.GameConfig.GM_INFO.level - 30;
|
||||
const MIN_LEVEL = 30; // 从30开始
|
||||
if (cc.fx.GameTool.maxLevel()) {
|
||||
if (cc.fx.GameConfig.GM_INFO.randomLevel >= MAX_LEVEL) {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = MIN_LEVEL;
|
||||
} else if (cc.fx.GameConfig.GM_INFO.randomLevel == 0) {
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = MIN_LEVEL;
|
||||
}
|
||||
let nextLevel = 0;
|
||||
if (cc.fx.GameConfig.GM_INFO.randomLevel == MAX_LEVEL - 1) {
|
||||
nextLevel = MAX_LEVEL;
|
||||
} else {
|
||||
nextLevel = Math.round(Math.random() * (MAX_LEVEL - cc.fx.GameConfig.GM_INFO.randomLevel)) + cc.fx.GameConfig.GM_INFO.randomLevel + 1;
|
||||
nextLevel = Math.min(nextLevel, MAX_LEVEL);
|
||||
}
|
||||
// Math.floor(Math.random() * 100) + 1;
|
||||
cc.fx.GameConfig.GM_INFO.randomLevel = nextLevel;
|
||||
return nextLevel;
|
||||
}
|
||||
return 0;
|
||||
},
|
||||
|
||||
getPurelyRandom() {
|
||||
const MAX_LEVEL = cc.fx.GameConfig.GM_INFO.level;
|
||||
const MIN_LEVEL = 30;
|
||||
if (cc.fx.GameTool.maxLevel()) {
|
||||
let randomNum = MAX_LEVEL - MIN_LEVEL;
|
||||
// 修改为包含两端的随机数生成方式
|
||||
let nextLevel = Math.floor(Math.random() * (randomNum + 1)) + MIN_LEVEL;
|
||||
return nextLevel;
|
||||
}
|
||||
},
|
||||
// 抖动效果
|
||||
onBtnJitter(node) {
|
||||
let originalPosition = node.position.clone();
|
||||
// 定义抖动幅度
|
||||
let strength = 5;
|
||||
|
||||
// 创建抖动动画
|
||||
cc.tween(node)
|
||||
.by(0.05, { position: cc.v3(strength, strength, 0) }) // 向右上角偏移
|
||||
.by(0.1, { position: cc.v3(-strength * 2, -strength * 2, 0) }) // 向左下角偏移
|
||||
.by(0.1, { position: cc.v3(strength * 2, 0, 0) }) // 向右下角偏移
|
||||
.by(0.1, { position: cc.v3(-strength * 2, strength * 2, 0) }) // 向左上角偏移
|
||||
.to(0.05, { position: originalPosition }) // 回到原始位置
|
||||
.start();
|
||||
},
|
||||
|
||||
setEndLevelLabelPos(levelNum) {
|
||||
let numDigits = 1;
|
||||
if (cc.fx.GameConfig.GM_INFO.endLevelNum > 0) {
|
||||
numDigits = Math.floor(Math.log10(cc.fx.GameConfig.GM_INFO.endLevelNum)) + 1;
|
||||
} else if (cc.fx.GameConfig.GM_INFO.endLevelNum === 0) {
|
||||
numDigits = 1;
|
||||
} else {
|
||||
numDigits = Math.floor(Math.log10(-cc.fx.GameConfig.GM_INFO.endLevelNum)) + 1;
|
||||
}
|
||||
levelNum.x = 50 + numDigits * 15;
|
||||
},
|
||||
|
||||
};
|
||||
export { GameTool };
|
||||
|
|
@ -291,6 +291,15 @@ export default class ranking extends cc.Component {
|
|||
this.selfNode.getChildByName("add").active = true;
|
||||
}
|
||||
else this.selfNode.getChildByName("add").active = false;
|
||||
|
||||
// if (this.selfInfo.endLebelNum && Number(this.selfInfo.endLebelNum) > 1) {
|
||||
// let endlessNode = this.selfNode.getChildByName("endlessNode");
|
||||
// endlessNode.active = true;
|
||||
// NumberToImage.numberToImageNodes5(this.selfInfo.endLebelNum - 1, 30, 15, "Black", endlessNode.getChildByName("levelNum"), true);
|
||||
// } else {
|
||||
// this.node.getChildByName("endlessNode").active = false;
|
||||
// }
|
||||
|
||||
// this.node.getChildByName("timeLab").getComponent(cc.Label).string = timeTemp + "";
|
||||
this.selfNode.getChildByName("rank").getChildByName("one").active = false;
|
||||
this.selfNode.getChildByName("rank").getChildByName("two").active = false;
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
"genMipmaps": false,
|
||||
"packable": true,
|
||||
"width": 120,
|
||||
"height": 120,
|
||||
"height": 132,
|
||||
"platformSettings": {},
|
||||
"subMetas": {
|
||||
"floor": {
|
||||
|
|
|
|||
13
assets/UI/UI/message.meta
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
"ver": "1.1.3",
|
||||
"uuid": "8b64088f-17a4-4e06-b4bd-22c60adbe367",
|
||||
"importer": "folder",
|
||||
"isBundle": false,
|
||||
"bundleName": "",
|
||||
"priority": 1,
|
||||
"compressionType": {},
|
||||
"optimizeHotUpdate": {},
|
||||
"inlineSpriteFrames": {},
|
||||
"isRemoteBundle": {},
|
||||
"subMetas": {}
|
||||
}
|
||||
126
assets/UI/UI/message/message.plist
Normal file
|
|
@ -0,0 +1,126 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>frames</key>
|
||||
<dict>
|
||||
<key>bg_1.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{2,2},{950,1801}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{950,1801}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{950,1801}</string>
|
||||
</dict>
|
||||
<key>dialog_box.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{1805,2},{768,113}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{768,113}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{768,113}</string>
|
||||
</dict>
|
||||
<key>display_area.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{570,954},{788,266}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{788,266}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{788,266}</string>
|
||||
</dict>
|
||||
<key>menu_bg.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{2,954},{268,566}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{268,566}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{268,566}</string>
|
||||
</dict>
|
||||
<key>option_1.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{1600,1119},{238,96}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{238,96}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{238,96}</string>
|
||||
</dict>
|
||||
<key>option_2.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{1360,1119},{238,96}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{238,96}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{238,96}</string>
|
||||
</dict>
|
||||
<key>tijiao_btn.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{1360,954},{476,163}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{476,163}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{476,163}</string>
|
||||
</dict>
|
||||
<key>title.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{1805,772},{131,64}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{131,64}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{131,64}</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>metadata</key>
|
||||
<dict>
|
||||
<key>format</key>
|
||||
<integer>2</integer>
|
||||
<key>realTextureFileName</key>
|
||||
<string>message.png</string>
|
||||
<key>size</key>
|
||||
<string>{1920,1224}</string>
|
||||
<key>smartupdate</key>
|
||||
<string>$TexturePacker:SmartUpdate:5687cfd6b7cc4c3586f5d634dc55d038$</string>
|
||||
<key>textureFileName</key>
|
||||
<string>message.png</string>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
197
assets/UI/UI/message/message.plist.meta
Normal file
|
|
@ -0,0 +1,197 @@
|
|||
{
|
||||
"ver": "1.2.6",
|
||||
"uuid": "67562408-3b02-4c6d-804e-5b957afe77aa",
|
||||
"importer": "asset",
|
||||
"rawTextureUuid": "78517160-7689-4bc5-b0bf-6762cf030bb2",
|
||||
"size": {
|
||||
"width": 1920,
|
||||
"height": 1224
|
||||
},
|
||||
"type": "Texture Packer",
|
||||
"subMetas": {
|
||||
"bg_1.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "e77e9f91-1901-422c-88bd-8d24b238190e",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "78517160-7689-4bc5-b0bf-6762cf030bb2",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 2,
|
||||
"trimY": 2,
|
||||
"width": 950,
|
||||
"height": 1801,
|
||||
"rawWidth": 950,
|
||||
"rawHeight": 1801,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"dialog_box.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "53ae246b-de03-4db0-b2bc-674409def194",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "78517160-7689-4bc5-b0bf-6762cf030bb2",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 1805,
|
||||
"trimY": 2,
|
||||
"width": 768,
|
||||
"height": 113,
|
||||
"rawWidth": 768,
|
||||
"rawHeight": 113,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"display_area.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "5fc66fd5-0b21-4877-b908-cdc815cf86a2",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "78517160-7689-4bc5-b0bf-6762cf030bb2",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 570,
|
||||
"trimY": 954,
|
||||
"width": 788,
|
||||
"height": 266,
|
||||
"rawWidth": 788,
|
||||
"rawHeight": 266,
|
||||
"borderTop": 80,
|
||||
"borderBottom": 80,
|
||||
"borderLeft": 80,
|
||||
"borderRight": 80,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"menu_bg.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "c9e00cfc-2ebf-4c1c-9db6-dcfd0d06dae2",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "78517160-7689-4bc5-b0bf-6762cf030bb2",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 2,
|
||||
"trimY": 954,
|
||||
"width": 268,
|
||||
"height": 566,
|
||||
"rawWidth": 268,
|
||||
"rawHeight": 566,
|
||||
"borderTop": 80,
|
||||
"borderBottom": 80,
|
||||
"borderLeft": 80,
|
||||
"borderRight": 80,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"option_1.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "63e12cb5-9d72-4ef0-8fae-d0b7ddae0a73",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "78517160-7689-4bc5-b0bf-6762cf030bb2",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 1600,
|
||||
"trimY": 1119,
|
||||
"width": 238,
|
||||
"height": 96,
|
||||
"rawWidth": 238,
|
||||
"rawHeight": 96,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"option_2.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "faa5e43d-2a28-4b4d-a566-4d895c7ace54",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "78517160-7689-4bc5-b0bf-6762cf030bb2",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 1360,
|
||||
"trimY": 1119,
|
||||
"width": 238,
|
||||
"height": 96,
|
||||
"rawWidth": 238,
|
||||
"rawHeight": 96,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"tijiao_btn.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "1731fb78-1608-4f46-9fbd-c15d24137b9a",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "78517160-7689-4bc5-b0bf-6762cf030bb2",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 1360,
|
||||
"trimY": 954,
|
||||
"width": 476,
|
||||
"height": 163,
|
||||
"rawWidth": 476,
|
||||
"rawHeight": 163,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"title.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "81df6f09-18b0-4a76-9ba4-63931dda3e66",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "78517160-7689-4bc5-b0bf-6762cf030bb2",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 1805,
|
||||
"trimY": 772,
|
||||
"width": 131,
|
||||
"height": 64,
|
||||
"rawWidth": 131,
|
||||
"rawHeight": 64,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
assets/UI/UI/message/message.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
15
assets/UI/UI/message/message.png.meta
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"ver": "2.3.7",
|
||||
"uuid": "78517160-7689-4bc5-b0bf-6762cf030bb2",
|
||||
"importer": "texture",
|
||||
"type": "raw",
|
||||
"wrapMode": "clamp",
|
||||
"filterMode": "bilinear",
|
||||
"premultiplyAlpha": false,
|
||||
"genMipmaps": false,
|
||||
"packable": true,
|
||||
"width": 1920,
|
||||
"height": 1224,
|
||||
"platformSettings": {},
|
||||
"subMetas": {}
|
||||
}
|
||||
BIN
assets/UI/UI/special_beginBtn.png
Normal file
|
After Width: | Height: | Size: 4.5 KiB |
38
assets/UI/UI/special_beginBtn.png.meta
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
"ver": "2.3.7",
|
||||
"uuid": "54509a9d-9056-49a6-b258-6d2d77d9cdcc",
|
||||
"importer": "texture",
|
||||
"type": "sprite",
|
||||
"wrapMode": "clamp",
|
||||
"filterMode": "bilinear",
|
||||
"premultiplyAlpha": false,
|
||||
"genMipmaps": false,
|
||||
"packable": true,
|
||||
"width": 570,
|
||||
"height": 170,
|
||||
"platformSettings": {},
|
||||
"subMetas": {
|
||||
"special_beginBtn": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "7ea6946c-2a75-4166-bb7a-bd22f1fea5e5",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "54509a9d-9056-49a6-b258-6d2d77d9cdcc",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 0,
|
||||
"trimY": 0,
|
||||
"width": 570,
|
||||
"height": 170,
|
||||
"rawWidth": 570,
|
||||
"rawHeight": 170,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"subMetas": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
assets/UI/UI/special_level_bg.png
Normal file
|
After Width: | Height: | Size: 3.5 KiB |
38
assets/UI/UI/special_level_bg.png.meta
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
"ver": "2.3.7",
|
||||
"uuid": "3688e5d1-1bc2-4776-b8c4-e3a8a51e19ba",
|
||||
"importer": "texture",
|
||||
"type": "sprite",
|
||||
"wrapMode": "clamp",
|
||||
"filterMode": "bilinear",
|
||||
"premultiplyAlpha": false,
|
||||
"genMipmaps": false,
|
||||
"packable": true,
|
||||
"width": 423,
|
||||
"height": 186,
|
||||
"platformSettings": {},
|
||||
"subMetas": {
|
||||
"special_level_bg": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "e5f4ce1c-a588-46a9-a8ba-ef90ecf475eb",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "3688e5d1-1bc2-4776-b8c4-e3a8a51e19ba",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 0,
|
||||
"trimY": 0,
|
||||
"width": 423,
|
||||
"height": 186,
|
||||
"rawWidth": 423,
|
||||
"rawHeight": 186,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"subMetas": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
assets/UI/UI/special_logo.png
Normal file
|
After Width: | Height: | Size: 3.8 KiB |
38
assets/UI/UI/special_logo.png.meta
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
"ver": "2.3.7",
|
||||
"uuid": "fc6f7855-df1d-440d-9782-e90c42986ef9",
|
||||
"importer": "texture",
|
||||
"type": "sprite",
|
||||
"wrapMode": "clamp",
|
||||
"filterMode": "bilinear",
|
||||
"premultiplyAlpha": false,
|
||||
"genMipmaps": false,
|
||||
"packable": true,
|
||||
"width": 111,
|
||||
"height": 85,
|
||||
"platformSettings": {},
|
||||
"subMetas": {
|
||||
"special_logo": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "cfbd1a61-f596-42a2-a7bb-c39160d78236",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "fc6f7855-df1d-440d-9782-e90c42986ef9",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 0,
|
||||
"trimY": 0,
|
||||
"width": 111,
|
||||
"height": 85,
|
||||
"rawWidth": 111,
|
||||
"rawHeight": 85,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"subMetas": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
assets/UI/UI/special_logo_rank.png
Normal file
|
After Width: | Height: | Size: 3.2 KiB |
38
assets/UI/UI/special_logo_rank.png.meta
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
"ver": "2.3.7",
|
||||
"uuid": "a12f8f40-17bb-4ee3-b2d6-732676908ae5",
|
||||
"importer": "texture",
|
||||
"type": "sprite",
|
||||
"wrapMode": "clamp",
|
||||
"filterMode": "bilinear",
|
||||
"premultiplyAlpha": false,
|
||||
"genMipmaps": false,
|
||||
"packable": true,
|
||||
"width": 117,
|
||||
"height": 121,
|
||||
"platformSettings": {},
|
||||
"subMetas": {
|
||||
"special_logo_rank": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "bcf4ab95-f14a-4a45-a7e1-627451f8f051",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "a12f8f40-17bb-4ee3-b2d6-732676908ae5",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 0,
|
||||
"trimY": 0,
|
||||
"width": 117,
|
||||
"height": 121,
|
||||
"rawWidth": 117,
|
||||
"rawHeight": 121,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"subMetas": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
assets/UI/UI/special_tips.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
38
assets/UI/UI/special_tips.png.meta
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
"ver": "2.3.7",
|
||||
"uuid": "e3ca3a92-ff58-43bd-8964-6531d84ff329",
|
||||
"importer": "texture",
|
||||
"type": "sprite",
|
||||
"wrapMode": "clamp",
|
||||
"filterMode": "bilinear",
|
||||
"premultiplyAlpha": false,
|
||||
"genMipmaps": false,
|
||||
"packable": true,
|
||||
"width": 900,
|
||||
"height": 1249,
|
||||
"platformSettings": {},
|
||||
"subMetas": {
|
||||
"special_tips": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "97821dd6-5f27-42b5-85ac-aebdc868c994",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "e3ca3a92-ff58-43bd-8964-6531d84ff329",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0.5,
|
||||
"trimX": 1,
|
||||
"trimY": 0,
|
||||
"width": 898,
|
||||
"height": 1248,
|
||||
"rawWidth": 900,
|
||||
"rawHeight": 1249,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"subMetas": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
assets/UI/UI/special_tips_btn.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
38
assets/UI/UI/special_tips_btn.png.meta
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
"ver": "2.3.7",
|
||||
"uuid": "5b5c1117-20cc-4f4b-bd99-cc835e63b211",
|
||||
"importer": "texture",
|
||||
"type": "sprite",
|
||||
"wrapMode": "clamp",
|
||||
"filterMode": "bilinear",
|
||||
"premultiplyAlpha": false,
|
||||
"genMipmaps": false,
|
||||
"packable": true,
|
||||
"width": 93,
|
||||
"height": 104,
|
||||
"platformSettings": {},
|
||||
"subMetas": {
|
||||
"special_tips_btn": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "16d3bc5f-f179-4a18-8074-d4728906f905",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "5b5c1117-20cc-4f4b-bd99-cc835e63b211",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 0,
|
||||
"trimY": 0,
|
||||
"width": 93,
|
||||
"height": 104,
|
||||
"rawWidth": 93,
|
||||
"rawHeight": 104,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"subMetas": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
226
assets/prefab/map/contentNode.prefab
Normal file
|
|
@ -0,0 +1,226 @@
|
|||
[
|
||||
{
|
||||
"__type__": "cc.Prefab",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"_native": "",
|
||||
"data": {
|
||||
"__id__": 1
|
||||
},
|
||||
"optimizationPolicy": 0,
|
||||
"asyncLoadAssets": false,
|
||||
"readonly": false
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Node",
|
||||
"_name": "contentNode",
|
||||
"_objFlags": 0,
|
||||
"_parent": null,
|
||||
"_children": [
|
||||
{
|
||||
"__id__": 2
|
||||
}
|
||||
],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 6
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 7
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 255,
|
||||
"g": 255,
|
||||
"b": 255,
|
||||
"a": 255
|
||||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 0,
|
||||
"height": 0
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0.5,
|
||||
"y": 0.5
|
||||
},
|
||||
"_trs": {
|
||||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
0,
|
||||
-42,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
"_eulerAngles": {
|
||||
"__type__": "cc.Vec3",
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"_skewX": 0,
|
||||
"_skewY": 0,
|
||||
"_is3DNode": false,
|
||||
"_groupIndex": 0,
|
||||
"groupIndex": 0,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Node",
|
||||
"_name": "contentBg",
|
||||
"_objFlags": 0,
|
||||
"_parent": {
|
||||
"__id__": 1
|
||||
},
|
||||
"_children": [],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 3
|
||||
},
|
||||
{
|
||||
"__id__": 4
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 5
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 255,
|
||||
"g": 255,
|
||||
"b": 255,
|
||||
"a": 255
|
||||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 268,
|
||||
"height": 300
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0.5,
|
||||
"y": 1
|
||||
},
|
||||
"_trs": {
|
||||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
"_eulerAngles": {
|
||||
"__type__": "cc.Vec3",
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"_skewX": 0,
|
||||
"_skewY": 0,
|
||||
"_is3DNode": false,
|
||||
"_groupIndex": 0,
|
||||
"groupIndex": 0,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Sprite",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 2
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
{
|
||||
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
|
||||
}
|
||||
],
|
||||
"_srcBlendFactor": 770,
|
||||
"_dstBlendFactor": 771,
|
||||
"_spriteFrame": {
|
||||
"__uuid__": "c9e00cfc-2ebf-4c1c-9db6-dcfd0d06dae2"
|
||||
},
|
||||
"_type": 1,
|
||||
"_sizeMode": 0,
|
||||
"_fillType": 0,
|
||||
"_fillCenter": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0,
|
||||
"y": 0
|
||||
},
|
||||
"_fillStart": 0,
|
||||
"_fillRange": 0,
|
||||
"_isTrimmedMode": true,
|
||||
"_atlas": {
|
||||
"__uuid__": "67562408-3b02-4c6d-804e-5b957afe77aa"
|
||||
},
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.BlockInputEvents",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 2
|
||||
},
|
||||
"_enabled": true,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.PrefabInfo",
|
||||
"root": {
|
||||
"__id__": 1
|
||||
},
|
||||
"asset": {
|
||||
"__id__": 0
|
||||
},
|
||||
"fileId": "2dhwYh3SRB96weWNjH8QBk",
|
||||
"sync": false
|
||||
},
|
||||
{
|
||||
"__type__": "cb2e5YPrA5OWIGWHrCo24xX",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 1
|
||||
},
|
||||
"_enabled": true,
|
||||
"itemPrefab": {
|
||||
"__uuid__": "481a5aaa-a20b-4381-bb03-87ac9598cff5"
|
||||
},
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.PrefabInfo",
|
||||
"root": {
|
||||
"__id__": 1
|
||||
},
|
||||
"asset": {
|
||||
"__id__": 0
|
||||
},
|
||||
"fileId": "",
|
||||
"sync": false
|
||||
}
|
||||
]
|
||||
9
assets/prefab/map/contentNode.prefab.meta
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"ver": "1.3.2",
|
||||
"uuid": "2aad7723-ee9e-4d54-b348-8b775d98febd",
|
||||
"importer": "prefab",
|
||||
"optimizationPolicy": "AUTO",
|
||||
"asyncLoadAssets": false,
|
||||
"readonly": false,
|
||||
"subMetas": {}
|
||||
}
|
||||
120
assets/prefab/map/menuLabel.prefab
Normal file
|
|
@ -0,0 +1,120 @@
|
|||
[
|
||||
{
|
||||
"__type__": "cc.Prefab",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"_native": "",
|
||||
"data": {
|
||||
"__id__": 1
|
||||
},
|
||||
"optimizationPolicy": 0,
|
||||
"asyncLoadAssets": false,
|
||||
"readonly": false
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Node",
|
||||
"_name": "menuLabel",
|
||||
"_objFlags": 0,
|
||||
"_parent": null,
|
||||
"_children": [],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 2
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 3
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 0,
|
||||
"g": 0,
|
||||
"b": 0,
|
||||
"a": 255
|
||||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 240,
|
||||
"height": 60
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0.5,
|
||||
"y": 0.5
|
||||
},
|
||||
"_trs": {
|
||||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
0,
|
||||
-42,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
"_eulerAngles": {
|
||||
"__type__": "cc.Vec3",
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"_skewX": 0,
|
||||
"_skewY": 0,
|
||||
"_is3DNode": false,
|
||||
"_groupIndex": 0,
|
||||
"groupIndex": 0,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Label",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 1
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
{
|
||||
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
|
||||
}
|
||||
],
|
||||
"_srcBlendFactor": 770,
|
||||
"_dstBlendFactor": 771,
|
||||
"_string": "内容详情",
|
||||
"_N$string": "内容详情",
|
||||
"_fontSize": 60,
|
||||
"_lineHeight": 60,
|
||||
"_enableWrapText": true,
|
||||
"_N$file": null,
|
||||
"_isSystemFontUsed": true,
|
||||
"_spacingX": 0,
|
||||
"_batchAsBitmap": false,
|
||||
"_styleFlags": 1,
|
||||
"_underlineHeight": 0,
|
||||
"_N$horizontalAlign": 1,
|
||||
"_N$verticalAlign": 1,
|
||||
"_N$fontFamily": "Arial",
|
||||
"_N$overflow": 0,
|
||||
"_N$cacheMode": 2,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.PrefabInfo",
|
||||
"root": {
|
||||
"__id__": 1
|
||||
},
|
||||
"asset": {
|
||||
"__id__": 0
|
||||
},
|
||||
"fileId": "",
|
||||
"sync": false
|
||||
}
|
||||
]
|
||||
9
assets/prefab/map/menuLabel.prefab.meta
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"ver": "1.3.2",
|
||||
"uuid": "481a5aaa-a20b-4381-bb03-87ac9598cff5",
|
||||
"importer": "prefab",
|
||||
"optimizationPolicy": "AUTO",
|
||||
"asyncLoadAssets": false,
|
||||
"readonly": false,
|
||||
"subMetas": {}
|
||||
}
|
||||
5509
assets/prefab/map/messageNode.prefab
Normal file
9
assets/prefab/map/messageNode.prefab.meta
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"ver": "1.3.2",
|
||||
"uuid": "eb0ee703-6d66-42d6-88a5-d6cd43669080",
|
||||
"importer": "prefab",
|
||||
"optimizationPolicy": "AUTO",
|
||||
"asyncLoadAssets": false,
|
||||
"readonly": false,
|
||||
"subMetas": {}
|
||||
}
|
||||
597
assets/prefab/map/optionNode.prefab
Normal file
|
|
@ -0,0 +1,597 @@
|
|||
[
|
||||
{
|
||||
"__type__": "cc.Prefab",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"_native": "",
|
||||
"data": {
|
||||
"__id__": 1
|
||||
},
|
||||
"optimizationPolicy": 0,
|
||||
"asyncLoadAssets": false,
|
||||
"readonly": false
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Node",
|
||||
"_name": "optionNode",
|
||||
"_objFlags": 0,
|
||||
"_parent": null,
|
||||
"_children": [
|
||||
{
|
||||
"__id__": 2
|
||||
},
|
||||
{
|
||||
"__id__": 11
|
||||
}
|
||||
],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 14
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 15
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 255,
|
||||
"g": 255,
|
||||
"b": 255,
|
||||
"a": 255
|
||||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 240,
|
||||
"height": 98
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0.5,
|
||||
"y": 0.5
|
||||
},
|
||||
"_trs": {
|
||||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
"_eulerAngles": {
|
||||
"__type__": "cc.Vec3",
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"_skewX": 0,
|
||||
"_skewY": 0,
|
||||
"_is3DNode": false,
|
||||
"_groupIndex": 0,
|
||||
"groupIndex": 0,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Node",
|
||||
"_name": "menu",
|
||||
"_objFlags": 0,
|
||||
"_parent": {
|
||||
"__id__": 1
|
||||
},
|
||||
"_children": [
|
||||
{
|
||||
"__id__": 3
|
||||
},
|
||||
{
|
||||
"__id__": 6
|
||||
}
|
||||
],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 9
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 10
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 255,
|
||||
"g": 255,
|
||||
"b": 255,
|
||||
"a": 255
|
||||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 240,
|
||||
"height": 98
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0.5,
|
||||
"y": 0.5
|
||||
},
|
||||
"_trs": {
|
||||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
"_eulerAngles": {
|
||||
"__type__": "cc.Vec3",
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"_skewX": 0,
|
||||
"_skewY": 0,
|
||||
"_is3DNode": false,
|
||||
"_groupIndex": 0,
|
||||
"groupIndex": 0,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Node",
|
||||
"_name": "background_1",
|
||||
"_objFlags": 0,
|
||||
"_parent": {
|
||||
"__id__": 2
|
||||
},
|
||||
"_children": [],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 4
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 5
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 255,
|
||||
"g": 255,
|
||||
"b": 255,
|
||||
"a": 255
|
||||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 238,
|
||||
"height": 96
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0.5,
|
||||
"y": 0.5
|
||||
},
|
||||
"_trs": {
|
||||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
"_eulerAngles": {
|
||||
"__type__": "cc.Vec3",
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"_skewX": 0,
|
||||
"_skewY": 0,
|
||||
"_is3DNode": false,
|
||||
"_groupIndex": 0,
|
||||
"groupIndex": 0,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Sprite",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 3
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
{
|
||||
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
|
||||
}
|
||||
],
|
||||
"_srcBlendFactor": 770,
|
||||
"_dstBlendFactor": 771,
|
||||
"_spriteFrame": {
|
||||
"__uuid__": "63e12cb5-9d72-4ef0-8fae-d0b7ddae0a73"
|
||||
},
|
||||
"_type": 1,
|
||||
"_sizeMode": 0,
|
||||
"_fillType": 0,
|
||||
"_fillCenter": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0,
|
||||
"y": 0
|
||||
},
|
||||
"_fillStart": 0,
|
||||
"_fillRange": 0,
|
||||
"_isTrimmedMode": true,
|
||||
"_atlas": {
|
||||
"__uuid__": "67562408-3b02-4c6d-804e-5b957afe77aa"
|
||||
},
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.PrefabInfo",
|
||||
"root": {
|
||||
"__id__": 1
|
||||
},
|
||||
"asset": {
|
||||
"__id__": 0
|
||||
},
|
||||
"fileId": "36OH6fB+FPhZzOB+P+pRlZ",
|
||||
"sync": false
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Node",
|
||||
"_name": "background_2",
|
||||
"_objFlags": 0,
|
||||
"_parent": {
|
||||
"__id__": 2
|
||||
},
|
||||
"_children": [],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 7
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 8
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 255,
|
||||
"g": 255,
|
||||
"b": 255,
|
||||
"a": 255
|
||||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 238,
|
||||
"height": 96
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0.5,
|
||||
"y": 0.5
|
||||
},
|
||||
"_trs": {
|
||||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
"_eulerAngles": {
|
||||
"__type__": "cc.Vec3",
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"_skewX": 0,
|
||||
"_skewY": 0,
|
||||
"_is3DNode": false,
|
||||
"_groupIndex": 0,
|
||||
"groupIndex": 0,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Sprite",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 6
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
{
|
||||
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
|
||||
}
|
||||
],
|
||||
"_srcBlendFactor": 770,
|
||||
"_dstBlendFactor": 771,
|
||||
"_spriteFrame": {
|
||||
"__uuid__": "faa5e43d-2a28-4b4d-a566-4d895c7ace54"
|
||||
},
|
||||
"_type": 1,
|
||||
"_sizeMode": 0,
|
||||
"_fillType": 0,
|
||||
"_fillCenter": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0,
|
||||
"y": 0
|
||||
},
|
||||
"_fillStart": 0,
|
||||
"_fillRange": 0,
|
||||
"_isTrimmedMode": true,
|
||||
"_atlas": {
|
||||
"__uuid__": "67562408-3b02-4c6d-804e-5b957afe77aa"
|
||||
},
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.PrefabInfo",
|
||||
"root": {
|
||||
"__id__": 1
|
||||
},
|
||||
"asset": {
|
||||
"__id__": 0
|
||||
},
|
||||
"fileId": "0fQGL7cztHJK103a1L343h",
|
||||
"sync": false
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Button",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 2
|
||||
},
|
||||
"_enabled": true,
|
||||
"_normalMaterial": null,
|
||||
"_grayMaterial": null,
|
||||
"duration": 0.1,
|
||||
"zoomScale": 1.2,
|
||||
"clickEvents": [],
|
||||
"_N$interactable": true,
|
||||
"_N$enableAutoGrayEffect": false,
|
||||
"_N$transition": 0,
|
||||
"transition": 0,
|
||||
"_N$normalColor": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 230,
|
||||
"g": 230,
|
||||
"b": 230,
|
||||
"a": 255
|
||||
},
|
||||
"_N$pressedColor": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 200,
|
||||
"g": 200,
|
||||
"b": 200,
|
||||
"a": 255
|
||||
},
|
||||
"pressedColor": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 200,
|
||||
"g": 200,
|
||||
"b": 200,
|
||||
"a": 255
|
||||
},
|
||||
"_N$hoverColor": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 255,
|
||||
"g": 255,
|
||||
"b": 255,
|
||||
"a": 255
|
||||
},
|
||||
"hoverColor": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 255,
|
||||
"g": 255,
|
||||
"b": 255,
|
||||
"a": 255
|
||||
},
|
||||
"_N$disabledColor": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 120,
|
||||
"g": 120,
|
||||
"b": 120,
|
||||
"a": 200
|
||||
},
|
||||
"_N$normalSprite": {
|
||||
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
|
||||
},
|
||||
"_N$pressedSprite": {
|
||||
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
|
||||
},
|
||||
"pressedSprite": {
|
||||
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
|
||||
},
|
||||
"_N$hoverSprite": {
|
||||
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
|
||||
},
|
||||
"hoverSprite": {
|
||||
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
|
||||
},
|
||||
"_N$disabledSprite": {
|
||||
"__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
|
||||
},
|
||||
"_N$target": {
|
||||
"__id__": 3
|
||||
},
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.PrefabInfo",
|
||||
"root": {
|
||||
"__id__": 1
|
||||
},
|
||||
"asset": {
|
||||
"__id__": 0
|
||||
},
|
||||
"fileId": "04BvN27FBNr4NZslJngRWC",
|
||||
"sync": false
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Node",
|
||||
"_name": "contentLabel",
|
||||
"_objFlags": 0,
|
||||
"_parent": {
|
||||
"__id__": 1
|
||||
},
|
||||
"_children": [],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 12
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 13
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 0,
|
||||
"g": 0,
|
||||
"b": 0,
|
||||
"a": 255
|
||||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 238,
|
||||
"height": 60
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0.5,
|
||||
"y": 0.5
|
||||
},
|
||||
"_trs": {
|
||||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
0,
|
||||
3,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
"_eulerAngles": {
|
||||
"__type__": "cc.Vec3",
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"_skewX": 0,
|
||||
"_skewY": 0,
|
||||
"_is3DNode": false,
|
||||
"_groupIndex": 0,
|
||||
"groupIndex": 0,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Label",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 11
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
{
|
||||
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
|
||||
}
|
||||
],
|
||||
"_srcBlendFactor": 770,
|
||||
"_dstBlendFactor": 771,
|
||||
"_string": "内容1",
|
||||
"_N$string": "内容1",
|
||||
"_fontSize": 40,
|
||||
"_lineHeight": 50,
|
||||
"_enableWrapText": false,
|
||||
"_N$file": null,
|
||||
"_isSystemFontUsed": true,
|
||||
"_spacingX": 0,
|
||||
"_batchAsBitmap": false,
|
||||
"_styleFlags": 1,
|
||||
"_underlineHeight": 0,
|
||||
"_N$horizontalAlign": 1,
|
||||
"_N$verticalAlign": 1,
|
||||
"_N$fontFamily": "Arial",
|
||||
"_N$overflow": 1,
|
||||
"_N$cacheMode": 1,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.PrefabInfo",
|
||||
"root": {
|
||||
"__id__": 1
|
||||
},
|
||||
"asset": {
|
||||
"__id__": 0
|
||||
},
|
||||
"fileId": "6epSveW7FHr5g1aXehbC92",
|
||||
"sync": false
|
||||
},
|
||||
{
|
||||
"__type__": "cb2e5YPrA5OWIGWHrCo24xX",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 1
|
||||
},
|
||||
"_enabled": true,
|
||||
"itemPrefab": {
|
||||
"__uuid__": "481a5aaa-a20b-4381-bb03-87ac9598cff5"
|
||||
},
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.PrefabInfo",
|
||||
"root": {
|
||||
"__id__": 1
|
||||
},
|
||||
"asset": {
|
||||
"__id__": 0
|
||||
},
|
||||
"fileId": "",
|
||||
"sync": false
|
||||
}
|
||||
]
|
||||
9
assets/prefab/map/optionNode.prefab.meta
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"ver": "1.3.2",
|
||||
"uuid": "98f34fed-fed5-446c-8ac4-8bf6f5798ad9",
|
||||
"importer": "prefab",
|
||||
"optimizationPolicy": "AUTO",
|
||||
"asyncLoadAssets": false,
|
||||
"readonly": false,
|
||||
"subMetas": {}
|
||||
}
|
||||
284
assets/resources/Json/MESSAGE_MODEL.json
Normal file
|
|
@ -0,0 +1,284 @@
|
|||
{
|
||||
"模板": [
|
||||
{
|
||||
"id": 1,
|
||||
"context": "首先,{0}吧"
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"context": "以{0}为目标吧"
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"context": "{0}{0}{0}很有用"
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"context": "{0}。"
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"context": "{0}!"
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"context": "{0}?"
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"context": "{0}……"
|
||||
}
|
||||
],
|
||||
"基础颜色": [
|
||||
{
|
||||
"id": 1,
|
||||
"context": "白色"
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"context": "黄色"
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"context": "浅绿"
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"context": "深绿"
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"context": "浅蓝"
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"context": "深蓝"
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"context": "粉色"
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"context": "红色"
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"context": "橙色"
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"context": "紫色"
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"context": "灰色"
|
||||
}
|
||||
],
|
||||
"形状": [
|
||||
{
|
||||
"id": 1,
|
||||
"context": "方块"
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"context": "2x2方块"
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"context": "1x3方块"
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"context": "L方块"
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"context": "反L方块"
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"context": "十字方块"
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"context": "丁字方块"
|
||||
}
|
||||
],
|
||||
"物品": [
|
||||
{
|
||||
"id": 1,
|
||||
"context": "方块"
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"context": "门"
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"context": "金币"
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"context": "方块克星"
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"context": "时间冻结器"
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"context": "魔杖"
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"context": "体力"
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"context": "x x x"
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"context": "x x x"
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"context": "x x x"
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"context": "钥匙"
|
||||
},
|
||||
{
|
||||
"id": 12,
|
||||
"context": "锁"
|
||||
},
|
||||
{
|
||||
"id": 13,
|
||||
"context": "冰块"
|
||||
},
|
||||
{
|
||||
"id": 14,
|
||||
"context": "左右"
|
||||
},
|
||||
{
|
||||
"id": 15,
|
||||
"context": "上下"
|
||||
}
|
||||
],
|
||||
"方位": [
|
||||
{
|
||||
"id": 1,
|
||||
"context": "上边"
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"context": "下边"
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"context": "左边"
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"context": "右边"
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"context": "中间"
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"context": "左上"
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"context": "右上"
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"context": "左下"
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"context": "右下"
|
||||
}
|
||||
],
|
||||
"方位(副本)": [
|
||||
{
|
||||
"id": 1,
|
||||
"context": "上边"
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"context": "下边"
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"context": "左边"
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"context": "右边"
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"context": "中间"
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"context": "左上"
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"context": "右上"
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"context": "左下"
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"context": "右下"
|
||||
}
|
||||
],
|
||||
"方位(副本)(副本)": [
|
||||
{
|
||||
"id": 1,
|
||||
"context": "上边"
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"context": "下边"
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"context": "左边"
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"context": "右边"
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"context": "中间"
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"context": "左上"
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"context": "右上"
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"context": "左下"
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"context": "右下"
|
||||
}
|
||||
]
|
||||
}
|
||||
6
assets/resources/Json/MESSAGE_MODEL.json.meta
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"ver": "1.0.2",
|
||||
"uuid": "6e53925f-ecb3-463f-a814-edd2212f7511",
|
||||
"importer": "json",
|
||||
"subMetas": {}
|
||||
}
|
||||
|
|
@ -7,11 +7,11 @@
|
|||
<key>15.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{980,1505},{141,37}}</string>
|
||||
<string>{{1583,1166},{141,37}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{141,37}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -20,11 +20,11 @@
|
|||
<key>18yuan.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{965,947},{182,63}}</string>
|
||||
<string>{{505,1154},{182,63}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{182,63}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -33,11 +33,11 @@
|
|||
<key>activate_btn.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{409,1673},{394,160}}</string>
|
||||
<string>{{1763,409},{394,160}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{394,160}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -46,25 +46,38 @@
|
|||
<key>bright_bg.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{494,1916},{116,124}}</string>
|
||||
<string>{{1899,958},{116,124}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{116,124}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{116,124}</string>
|
||||
</dict>
|
||||
<key>description_1.png</key>
|
||||
<key>buy_btn.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{2,737},{1079,126}}</string>
|
||||
<string>{{1597,458},{516,164}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{516,164}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{516,164}</string>
|
||||
</dict>
|
||||
<key>description_1.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{862,2},{1079,126}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{1079,126}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{1079,126}</string>
|
||||
|
|
@ -72,7 +85,7 @@
|
|||
<key>description_2.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{731,2},{300,460}}</string>
|
||||
<string>{{1295,458},{300,460}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
|
|
@ -85,11 +98,11 @@
|
|||
<key>description_3.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{125,1819},{136,140}}</string>
|
||||
<string>{{1763,805},{136,140}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{136,140}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -98,11 +111,11 @@
|
|||
<key>description_5.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{557,737},{501,214}}</string>
|
||||
<string>{{774,881},{501,214}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{501,214}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -111,11 +124,11 @@
|
|||
<key>description_6.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{557,1240},{421,431}}</string>
|
||||
<string>{{862,458},{421,431}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{421,431}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -124,11 +137,11 @@
|
|||
<key>description_7.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{144,737},{770,270}}</string>
|
||||
<string>{{2,802},{770,270}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{770,270}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -137,7 +150,7 @@
|
|||
<key>description_8.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{893,727},{426,70}}</string>
|
||||
<string>{{1925,409},{426,70}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
|
|
@ -147,10 +160,23 @@
|
|||
<key>sourceSize</key>
|
||||
<string>{426,70}</string>
|
||||
</dict>
|
||||
<key>free.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{774,802},{84,44}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{84,44}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{84,44}</string>
|
||||
</dict>
|
||||
<key>get.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{267,1815},{124,95}}</string>
|
||||
<string>{{1605,285},{124,95}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
|
|
@ -163,11 +189,11 @@
|
|||
<key>get_btn.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{965,727},{218,78}}</string>
|
||||
<string>{{505,1074},{218,78}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{218,78}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -176,7 +202,7 @@
|
|||
<key>left_bg.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{731,464},{304,261}}</string>
|
||||
<string>{{1277,920},{304,261}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
|
|
@ -189,11 +215,11 @@
|
|||
<key>line.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{130,737},{1080,12}}</string>
|
||||
<string>{{862,130},{1080,12}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{1080,12}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -202,7 +228,7 @@
|
|||
<key>lock.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{409,1583},{66,88}}</string>
|
||||
<string>{{1943,2},{66,88}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
|
|
@ -215,11 +241,11 @@
|
|||
<key>miaoshu.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{416,737},{844,139}}</string>
|
||||
<string>{{862,144},{844,139}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{844,139}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -228,7 +254,7 @@
|
|||
<key>no_bright_bg.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{368,1916},{116,124}}</string>
|
||||
<string>{{1763,947},{116,124}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
|
|
@ -241,7 +267,7 @@
|
|||
<key>num_xg.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{893,1155},{29,41}}</string>
|
||||
<string>{{1055,1159},{29,41}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
|
|
@ -254,11 +280,11 @@
|
|||
<key>progress_bar_1.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{980,1131},{372,60}}</string>
|
||||
<string>{{725,1097},{372,60}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{372,60}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -267,7 +293,7 @@
|
|||
<key>progress_bar_2.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{2,1957},{364,52}}</string>
|
||||
<string>{{689,1159},{364,52}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
|
|
@ -280,11 +306,11 @@
|
|||
<key>progress_bar_3.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{833,727},{58,501}}</string>
|
||||
<string>{{2,1134},{58,501}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{58,501}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -293,11 +319,11 @@
|
|||
<key>progress_bar_4.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{773,727},{58,501}}</string>
|
||||
<string>{{2,1074},{58,501}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{58,501}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -306,11 +332,11 @@
|
|||
<key>quit.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{682,1835},{102,119}}</string>
|
||||
<string>{{1901,837},{102,119}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{102,119}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -319,11 +345,11 @@
|
|||
<key>right_bg.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{144,1509},{304,263}}</string>
|
||||
<string>{{1708,144},{304,263}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{304,263}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -332,24 +358,37 @@
|
|||
<key>skylineHealth.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{2,1818},{137,121}}</string>
|
||||
<string>{{1760,1065},{137,121}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{137,121}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{137,121}</string>
|
||||
</dict>
|
||||
<key>tongpiao.png</key>
|
||||
<key>tongpaizi.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{805,1673},{188,175}}</string>
|
||||
<string>{{1207,1097},{84,43}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{84,43}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{84,43}</string>
|
||||
</dict>
|
||||
<key>tongpiao.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{1583,976},{188,175}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{188,175}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -358,33 +397,33 @@
|
|||
<key>tongpiaozi.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{368,1835},{312,79}}</string>
|
||||
<string>{{862,285},{741,171}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{312,79}}</string>
|
||||
<string>{{0,0},{741,171}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{312,79}</string>
|
||||
<string>{741,171}</string>
|
||||
</dict>
|
||||
<key>tu.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{2,2},{727,733}}</string>
|
||||
<string>{{2,2},{858,798}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<string>{-1,0}</string>
|
||||
<key>rotated</key>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{727,733}}</string>
|
||||
<string>{{0,31},{858,798}}</string>
|
||||
<key>sourceSize</key>
|
||||
<string>{727,733}</string>
|
||||
<string>{860,860}</string>
|
||||
</dict>
|
||||
<key>wenhao.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{620,1939},{93,103}}</string>
|
||||
<string>{{1899,1084},{93,103}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
|
|
@ -397,11 +436,11 @@
|
|||
<key>yaoshi.png</key>
|
||||
<dict>
|
||||
<key>frame</key>
|
||||
<string>{{803,1850},{106,122}}</string>
|
||||
<string>{{1099,1097},{106,122}}</string>
|
||||
<key>offset</key>
|
||||
<string>{0,0}</string>
|
||||
<key>rotated</key>
|
||||
<true/>
|
||||
<false/>
|
||||
<key>sourceColorRect</key>
|
||||
<string>{{0,0},{106,122}}</string>
|
||||
<key>sourceSize</key>
|
||||
|
|
@ -415,9 +454,9 @@
|
|||
<key>realTextureFileName</key>
|
||||
<string>passCheck.png</string>
|
||||
<key>size</key>
|
||||
<string>{1045,2034}</string>
|
||||
<string>{2017,1221}</string>
|
||||
<key>smartupdate</key>
|
||||
<string>$TexturePacker:SmartUpdate:b38bba9c8092bec15cd84139fb51241d$</string>
|
||||
<string>$TexturePacker:SmartUpdate:66738798be9bf9b5bc5221ea3b379a93$</string>
|
||||
<key>textureFileName</key>
|
||||
<string>passCheck.png</string>
|
||||
</dict>
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@
|
|||
"importer": "asset",
|
||||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"size": {
|
||||
"width": 1045,
|
||||
"height": 2034
|
||||
"width": 2017,
|
||||
"height": 1221
|
||||
},
|
||||
"type": "Texture Packer",
|
||||
"subMetas": {
|
||||
|
|
@ -16,11 +16,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 980,
|
||||
"trimY": 1505,
|
||||
"trimX": 1583,
|
||||
"trimY": 1166,
|
||||
"width": 141,
|
||||
"height": 37,
|
||||
"rawWidth": 141,
|
||||
|
|
@ -39,11 +39,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 965,
|
||||
"trimY": 947,
|
||||
"trimX": 505,
|
||||
"trimY": 1154,
|
||||
"width": 182,
|
||||
"height": 63,
|
||||
"rawWidth": 182,
|
||||
|
|
@ -62,11 +62,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 409,
|
||||
"trimY": 1673,
|
||||
"trimX": 1763,
|
||||
"trimY": 409,
|
||||
"width": 394,
|
||||
"height": 160,
|
||||
"rawWidth": 394,
|
||||
|
|
@ -85,11 +85,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 494,
|
||||
"trimY": 1916,
|
||||
"trimX": 1899,
|
||||
"trimY": 958,
|
||||
"width": 116,
|
||||
"height": 124,
|
||||
"rawWidth": 116,
|
||||
|
|
@ -101,6 +101,29 @@
|
|||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"buy_btn.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "0b892182-2a4f-4811-99ac-6f6ee27d5ef0",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 1597,
|
||||
"trimY": 458,
|
||||
"width": 516,
|
||||
"height": 164,
|
||||
"rawWidth": 516,
|
||||
"rawHeight": 164,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"description_1.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "3e9915b7-f51b-415d-9014-e05d5b0a6c2e",
|
||||
|
|
@ -108,11 +131,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 2,
|
||||
"trimY": 737,
|
||||
"trimX": 862,
|
||||
"trimY": 2,
|
||||
"width": 1079,
|
||||
"height": 126,
|
||||
"rawWidth": 1079,
|
||||
|
|
@ -134,8 +157,8 @@
|
|||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 731,
|
||||
"trimY": 2,
|
||||
"trimX": 1295,
|
||||
"trimY": 458,
|
||||
"width": 300,
|
||||
"height": 460,
|
||||
"rawWidth": 300,
|
||||
|
|
@ -154,11 +177,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 125,
|
||||
"trimY": 1819,
|
||||
"trimX": 1763,
|
||||
"trimY": 805,
|
||||
"width": 136,
|
||||
"height": 140,
|
||||
"rawWidth": 136,
|
||||
|
|
@ -177,11 +200,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 557,
|
||||
"trimY": 737,
|
||||
"trimX": 774,
|
||||
"trimY": 881,
|
||||
"width": 501,
|
||||
"height": 214,
|
||||
"rawWidth": 501,
|
||||
|
|
@ -200,11 +223,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 557,
|
||||
"trimY": 1240,
|
||||
"trimX": 862,
|
||||
"trimY": 458,
|
||||
"width": 421,
|
||||
"height": 431,
|
||||
"rawWidth": 421,
|
||||
|
|
@ -223,11 +246,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 144,
|
||||
"trimY": 737,
|
||||
"trimX": 2,
|
||||
"trimY": 802,
|
||||
"width": 770,
|
||||
"height": 270,
|
||||
"rawWidth": 770,
|
||||
|
|
@ -249,8 +272,8 @@
|
|||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 893,
|
||||
"trimY": 727,
|
||||
"trimX": 1925,
|
||||
"trimY": 409,
|
||||
"width": 426,
|
||||
"height": 70,
|
||||
"rawWidth": 426,
|
||||
|
|
@ -262,6 +285,29 @@
|
|||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"free.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "fe76d61f-966d-48db-a6a5-a0edb479d756",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 774,
|
||||
"trimY": 802,
|
||||
"width": 84,
|
||||
"height": 44,
|
||||
"rawWidth": 84,
|
||||
"rawHeight": 44,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"get.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "f8ee887f-42e6-4c42-a42c-d31d1aed99fb",
|
||||
|
|
@ -272,8 +318,8 @@
|
|||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 267,
|
||||
"trimY": 1815,
|
||||
"trimX": 1605,
|
||||
"trimY": 285,
|
||||
"width": 124,
|
||||
"height": 95,
|
||||
"rawWidth": 124,
|
||||
|
|
@ -292,11 +338,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 965,
|
||||
"trimY": 727,
|
||||
"trimX": 505,
|
||||
"trimY": 1074,
|
||||
"width": 218,
|
||||
"height": 78,
|
||||
"rawWidth": 218,
|
||||
|
|
@ -318,8 +364,8 @@
|
|||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 731,
|
||||
"trimY": 464,
|
||||
"trimX": 1277,
|
||||
"trimY": 920,
|
||||
"width": 304,
|
||||
"height": 261,
|
||||
"rawWidth": 304,
|
||||
|
|
@ -338,11 +384,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 130,
|
||||
"trimY": 737,
|
||||
"trimX": 862,
|
||||
"trimY": 130,
|
||||
"width": 1080,
|
||||
"height": 12,
|
||||
"rawWidth": 1080,
|
||||
|
|
@ -364,8 +410,8 @@
|
|||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 409,
|
||||
"trimY": 1583,
|
||||
"trimX": 1943,
|
||||
"trimY": 2,
|
||||
"width": 66,
|
||||
"height": 88,
|
||||
"rawWidth": 66,
|
||||
|
|
@ -384,11 +430,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 416,
|
||||
"trimY": 737,
|
||||
"trimX": 862,
|
||||
"trimY": 144,
|
||||
"width": 844,
|
||||
"height": 139,
|
||||
"rawWidth": 844,
|
||||
|
|
@ -410,8 +456,8 @@
|
|||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 368,
|
||||
"trimY": 1916,
|
||||
"trimX": 1763,
|
||||
"trimY": 947,
|
||||
"width": 116,
|
||||
"height": 124,
|
||||
"rawWidth": 116,
|
||||
|
|
@ -433,8 +479,8 @@
|
|||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 893,
|
||||
"trimY": 1155,
|
||||
"trimX": 1055,
|
||||
"trimY": 1159,
|
||||
"width": 29,
|
||||
"height": 41,
|
||||
"rawWidth": 29,
|
||||
|
|
@ -453,11 +499,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 980,
|
||||
"trimY": 1131,
|
||||
"trimX": 725,
|
||||
"trimY": 1097,
|
||||
"width": 372,
|
||||
"height": 60,
|
||||
"rawWidth": 372,
|
||||
|
|
@ -479,8 +525,8 @@
|
|||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 2,
|
||||
"trimY": 1957,
|
||||
"trimX": 689,
|
||||
"trimY": 1159,
|
||||
"width": 364,
|
||||
"height": 52,
|
||||
"rawWidth": 372,
|
||||
|
|
@ -499,11 +545,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 833,
|
||||
"trimY": 727,
|
||||
"trimX": 2,
|
||||
"trimY": 1134,
|
||||
"width": 58,
|
||||
"height": 501,
|
||||
"rawWidth": 58,
|
||||
|
|
@ -522,11 +568,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 773,
|
||||
"trimY": 727,
|
||||
"trimX": 2,
|
||||
"trimY": 1074,
|
||||
"width": 58,
|
||||
"height": 501,
|
||||
"rawWidth": 58,
|
||||
|
|
@ -545,11 +591,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 682,
|
||||
"trimY": 1835,
|
||||
"trimX": 1901,
|
||||
"trimY": 837,
|
||||
"width": 102,
|
||||
"height": 119,
|
||||
"rawWidth": 102,
|
||||
|
|
@ -568,11 +614,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 144,
|
||||
"trimY": 1509,
|
||||
"trimX": 1708,
|
||||
"trimY": 144,
|
||||
"width": 304,
|
||||
"height": 263,
|
||||
"rawWidth": 304,
|
||||
|
|
@ -591,11 +637,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 2,
|
||||
"trimY": 1818,
|
||||
"trimX": 1760,
|
||||
"trimY": 1065,
|
||||
"width": 137,
|
||||
"height": 121,
|
||||
"rawWidth": 137,
|
||||
|
|
@ -607,6 +653,29 @@
|
|||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"tongpaizi.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "da215dcf-d967-49d7-a843-5125c4e5d55d",
|
||||
"importer": "sprite-frame",
|
||||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 1207,
|
||||
"trimY": 1097,
|
||||
"width": 84,
|
||||
"height": 43,
|
||||
"rawWidth": 84,
|
||||
"rawHeight": 43,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
"borderRight": 0,
|
||||
"spriteType": "normal",
|
||||
"subMetas": {}
|
||||
},
|
||||
"tongpiao.png": {
|
||||
"ver": "1.0.6",
|
||||
"uuid": "98d96ffe-0116-4556-8620-cae510fe250b",
|
||||
|
|
@ -614,11 +683,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 805,
|
||||
"trimY": 1673,
|
||||
"trimX": 1583,
|
||||
"trimY": 976,
|
||||
"width": 188,
|
||||
"height": 175,
|
||||
"rawWidth": 188,
|
||||
|
|
@ -640,12 +709,12 @@
|
|||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 368,
|
||||
"trimY": 1835,
|
||||
"width": 312,
|
||||
"height": 79,
|
||||
"rawWidth": 312,
|
||||
"rawHeight": 79,
|
||||
"trimX": 862,
|
||||
"trimY": 285,
|
||||
"width": 741,
|
||||
"height": 171,
|
||||
"rawWidth": 741,
|
||||
"rawHeight": 171,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
|
|
@ -661,14 +730,14 @@
|
|||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetX": -1,
|
||||
"offsetY": 0,
|
||||
"trimX": 2,
|
||||
"trimY": 2,
|
||||
"width": 727,
|
||||
"height": 733,
|
||||
"rawWidth": 727,
|
||||
"rawHeight": 733,
|
||||
"width": 858,
|
||||
"height": 798,
|
||||
"rawWidth": 860,
|
||||
"rawHeight": 860,
|
||||
"borderTop": 0,
|
||||
"borderBottom": 0,
|
||||
"borderLeft": 0,
|
||||
|
|
@ -686,8 +755,8 @@
|
|||
"rotated": true,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 620,
|
||||
"trimY": 1939,
|
||||
"trimX": 1899,
|
||||
"trimY": 1084,
|
||||
"width": 93,
|
||||
"height": 103,
|
||||
"rawWidth": 93,
|
||||
|
|
@ -706,11 +775,11 @@
|
|||
"rawTextureUuid": "975e92ea-9360-41e9-a282-065297f61fea",
|
||||
"trimType": "auto",
|
||||
"trimThreshold": 1,
|
||||
"rotated": true,
|
||||
"rotated": false,
|
||||
"offsetX": 0,
|
||||
"offsetY": 0,
|
||||
"trimX": 803,
|
||||
"trimY": 1850,
|
||||
"trimX": 1099,
|
||||
"trimY": 1097,
|
||||
"width": 106,
|
||||
"height": 122,
|
||||
"rawWidth": 106,
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 285 KiB After Width: | Height: | Size: 282 KiB |
|
|
@ -8,8 +8,8 @@
|
|||
"premultiplyAlpha": false,
|
||||
"genMipmaps": false,
|
||||
"packable": true,
|
||||
"width": 1045,
|
||||
"height": 2034,
|
||||
"width": 2017,
|
||||
"height": 1221,
|
||||
"platformSettings": {},
|
||||
"subMetas": {}
|
||||
}
|
||||
|
|
@ -27,14 +27,14 @@
|
|||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 46
|
||||
"__id__": 43
|
||||
},
|
||||
{
|
||||
"__id__": 47
|
||||
"__id__": 44
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 48
|
||||
"__id__": 45
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
|
|
@ -221,7 +221,7 @@
|
|||
"_active": true,
|
||||
"_components": [],
|
||||
"_prefab": {
|
||||
"__id__": 45
|
||||
"__id__": 42
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
|
|
@ -394,7 +394,7 @@
|
|||
"__id__": 14
|
||||
},
|
||||
{
|
||||
"__id__": 17
|
||||
"__id__": 18
|
||||
},
|
||||
{
|
||||
"__id__": 21
|
||||
|
|
@ -403,19 +403,16 @@
|
|||
"__id__": 24
|
||||
},
|
||||
{
|
||||
"__id__": 27
|
||||
"__id__": 35
|
||||
},
|
||||
{
|
||||
"__id__": 38
|
||||
},
|
||||
{
|
||||
"__id__": 41
|
||||
}
|
||||
],
|
||||
"_active": true,
|
||||
"_components": [],
|
||||
"_prefab": {
|
||||
"__id__": 44
|
||||
"__id__": 41
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
|
|
@ -466,7 +463,7 @@
|
|||
},
|
||||
{
|
||||
"__type__": "cc.Node",
|
||||
"_name": "topBg",
|
||||
"_name": "tongpiaozi",
|
||||
"_objFlags": 0,
|
||||
"_parent": {
|
||||
"__id__": 10
|
||||
|
|
@ -491,8 +488,8 @@
|
|||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 773,
|
||||
"height": 180
|
||||
"width": 741,
|
||||
"height": 171
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
|
|
@ -503,7 +500,7 @@
|
|||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
17,
|
||||
5.386,
|
||||
760,
|
||||
0,
|
||||
0,
|
||||
|
|
@ -543,113 +540,6 @@
|
|||
],
|
||||
"_srcBlendFactor": 770,
|
||||
"_dstBlendFactor": 771,
|
||||
"_spriteFrame": {
|
||||
"__uuid__": "3cac0c04-c634-4a91-8e3f-75c231e2cafe"
|
||||
},
|
||||
"_type": 0,
|
||||
"_sizeMode": 1,
|
||||
"_fillType": 0,
|
||||
"_fillCenter": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0,
|
||||
"y": 0
|
||||
},
|
||||
"_fillStart": 0,
|
||||
"_fillRange": 0,
|
||||
"_isTrimmedMode": true,
|
||||
"_atlas": null,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.PrefabInfo",
|
||||
"root": {
|
||||
"__id__": 1
|
||||
},
|
||||
"asset": {
|
||||
"__id__": 0
|
||||
},
|
||||
"fileId": "ee8YOTE0ZIhbADo7JxXy0E",
|
||||
"sync": false
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Node",
|
||||
"_name": "tongpiaozi",
|
||||
"_objFlags": 0,
|
||||
"_parent": {
|
||||
"__id__": 10
|
||||
},
|
||||
"_children": [],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 15
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 16
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 255,
|
||||
"g": 255,
|
||||
"b": 255,
|
||||
"a": 255
|
||||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 312,
|
||||
"height": 79
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
"x": 0.5,
|
||||
"y": 0.5
|
||||
},
|
||||
"_trs": {
|
||||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
5.386,
|
||||
790.794,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
"_eulerAngles": {
|
||||
"__type__": "cc.Vec3",
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"_skewX": 0,
|
||||
"_skewY": 0,
|
||||
"_is3DNode": false,
|
||||
"_groupIndex": 0,
|
||||
"groupIndex": 0,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
"__type__": "cc.Sprite",
|
||||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 14
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
{
|
||||
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
|
||||
}
|
||||
],
|
||||
"_srcBlendFactor": 770,
|
||||
"_dstBlendFactor": 771,
|
||||
"_spriteFrame": {
|
||||
"__uuid__": "12c8c8a1-3158-4495-9339-6e1c810a6316"
|
||||
},
|
||||
|
|
@ -691,14 +581,14 @@
|
|||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 18
|
||||
"__id__": 15
|
||||
},
|
||||
{
|
||||
"__id__": 19
|
||||
"__id__": 16
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 20
|
||||
"__id__": 17
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
|
|
@ -710,8 +600,8 @@
|
|||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 66,
|
||||
"height": 66
|
||||
"width": 114,
|
||||
"height": 114
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
|
|
@ -722,8 +612,8 @@
|
|||
"__type__": "TypedArray",
|
||||
"ctor": "Float64Array",
|
||||
"array": [
|
||||
429.677,
|
||||
719.897,
|
||||
447,
|
||||
704,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
|
|
@ -752,7 +642,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 17
|
||||
"__id__": 14
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
|
|
@ -763,7 +653,7 @@
|
|||
"_srcBlendFactor": 770,
|
||||
"_dstBlendFactor": 771,
|
||||
"_spriteFrame": {
|
||||
"__uuid__": "8e755f4b-6c32-4acd-95f2-e48afcf0c3ee"
|
||||
"__uuid__": "24417002-6e72-4d4d-96e3-6117d8420e9b"
|
||||
},
|
||||
"_type": 0,
|
||||
"_sizeMode": 1,
|
||||
|
|
@ -776,9 +666,7 @@
|
|||
"_fillStart": 0,
|
||||
"_fillRange": 0,
|
||||
"_isTrimmedMode": true,
|
||||
"_atlas": {
|
||||
"__uuid__": "52d3eb5b-948f-403a-aafa-1c8f1a40a8c8"
|
||||
},
|
||||
"_atlas": null,
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
|
|
@ -786,7 +674,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 17
|
||||
"__id__": 14
|
||||
},
|
||||
"_enabled": true,
|
||||
"_normalMaterial": null,
|
||||
|
|
@ -871,11 +759,11 @@
|
|||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 22
|
||||
"__id__": 19
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 23
|
||||
"__id__": 20
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
|
|
@ -887,8 +775,8 @@
|
|||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 727,
|
||||
"height": 733
|
||||
"width": 858,
|
||||
"height": 798
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
|
|
@ -929,7 +817,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 21
|
||||
"__id__": 18
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
|
|
@ -980,11 +868,11 @@
|
|||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 25
|
||||
"__id__": 22
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 26
|
||||
"__id__": 23
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
|
|
@ -1038,7 +926,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 24
|
||||
"__id__": 21
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
|
|
@ -1087,26 +975,26 @@
|
|||
},
|
||||
"_children": [
|
||||
{
|
||||
"__id__": 28
|
||||
"__id__": 25
|
||||
},
|
||||
{
|
||||
"__id__": 31
|
||||
"__id__": 28
|
||||
}
|
||||
],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 34
|
||||
"__id__": 31
|
||||
},
|
||||
{
|
||||
"__id__": 35
|
||||
"__id__": 32
|
||||
},
|
||||
{
|
||||
"__id__": 36
|
||||
"__id__": 33
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 37
|
||||
"__id__": 34
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
|
|
@ -1118,8 +1006,8 @@
|
|||
},
|
||||
"_contentSize": {
|
||||
"__type__": "cc.Size",
|
||||
"width": 519,
|
||||
"height": 168
|
||||
"width": 516,
|
||||
"height": 164
|
||||
},
|
||||
"_anchorPoint": {
|
||||
"__type__": "cc.Vec2",
|
||||
|
|
@ -1160,17 +1048,17 @@
|
|||
"_name": "18yuan",
|
||||
"_objFlags": 0,
|
||||
"_parent": {
|
||||
"__id__": 27
|
||||
"__id__": 24
|
||||
},
|
||||
"_children": [],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 29
|
||||
"__id__": 26
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 30
|
||||
"__id__": 27
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
|
|
@ -1224,7 +1112,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 28
|
||||
"__id__": 25
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
|
|
@ -1269,17 +1157,17 @@
|
|||
"_name": "tongpiao",
|
||||
"_objFlags": 0,
|
||||
"_parent": {
|
||||
"__id__": 27
|
||||
"__id__": 24
|
||||
},
|
||||
"_children": [],
|
||||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 32
|
||||
"__id__": 29
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 33
|
||||
"__id__": 30
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
|
|
@ -1333,7 +1221,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 31
|
||||
"__id__": 28
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
|
|
@ -1378,7 +1266,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 27
|
||||
"__id__": 24
|
||||
},
|
||||
"_enabled": true,
|
||||
"_normalMaterial": null,
|
||||
|
|
@ -1451,7 +1339,7 @@
|
|||
"__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
|
||||
},
|
||||
"_N$target": {
|
||||
"__id__": 27
|
||||
"__id__": 24
|
||||
},
|
||||
"_id": ""
|
||||
},
|
||||
|
|
@ -1460,7 +1348,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 27
|
||||
"__id__": 24
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
|
|
@ -1471,7 +1359,7 @@
|
|||
"_srcBlendFactor": 770,
|
||||
"_dstBlendFactor": 771,
|
||||
"_spriteFrame": {
|
||||
"__uuid__": "d9be6eea-569b-46da-bb80-0d9c8b8f5263"
|
||||
"__uuid__": "0b892182-2a4f-4811-99ac-6f6ee27d5ef0"
|
||||
},
|
||||
"_type": 0,
|
||||
"_sizeMode": 1,
|
||||
|
|
@ -1484,7 +1372,9 @@
|
|||
"_fillStart": 0,
|
||||
"_fillRange": 0,
|
||||
"_isTrimmedMode": true,
|
||||
"_atlas": null,
|
||||
"_atlas": {
|
||||
"__uuid__": "56aacf5e-256b-4c72-b5d1-3982932775c9"
|
||||
},
|
||||
"_id": ""
|
||||
},
|
||||
{
|
||||
|
|
@ -1492,7 +1382,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 27
|
||||
"__id__": 24
|
||||
},
|
||||
"_enabled": true,
|
||||
"_id": ""
|
||||
|
|
@ -1519,18 +1409,18 @@
|
|||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 39
|
||||
"__id__": 36
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 40
|
||||
"__id__": 37
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
"__type__": "cc.Color",
|
||||
"r": 193,
|
||||
"g": 141,
|
||||
"b": 93,
|
||||
"r": 78,
|
||||
"g": 63,
|
||||
"b": 58,
|
||||
"a": 255
|
||||
},
|
||||
"_contentSize": {
|
||||
|
|
@ -1577,7 +1467,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 38
|
||||
"__id__": 35
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
|
|
@ -1627,11 +1517,11 @@
|
|||
"_active": true,
|
||||
"_components": [
|
||||
{
|
||||
"__id__": 42
|
||||
"__id__": 39
|
||||
}
|
||||
],
|
||||
"_prefab": {
|
||||
"__id__": 43
|
||||
"__id__": 40
|
||||
},
|
||||
"_opacity": 255,
|
||||
"_color": {
|
||||
|
|
@ -1685,7 +1575,7 @@
|
|||
"_name": "",
|
||||
"_objFlags": 0,
|
||||
"node": {
|
||||
"__id__": 41
|
||||
"__id__": 38
|
||||
},
|
||||
"_enabled": true,
|
||||
"_materials": [
|
||||
|
|
@ -1782,13 +1672,13 @@
|
|||
},
|
||||
"_enabled": true,
|
||||
"qiutBtn": {
|
||||
"__id__": 19
|
||||
"__id__": 16
|
||||
},
|
||||
"buyBtn": {
|
||||
"__id__": 34
|
||||
"__id__": 31
|
||||
},
|
||||
"countdown": {
|
||||
"__id__": 42
|
||||
"__id__": 39
|
||||
},
|
||||
"_id": ""
|
||||
},
|
||||
|
|
|
|||