地图上的地块配置完成
This commit is contained in:
parent
3b41a3fcd0
commit
1ec2f0afc0
|
|
@ -1,5 +1,5 @@
|
||||||
import { _decorator, Component, Node } from 'cc';
|
import { _decorator, Component, Node } from 'cc';
|
||||||
import { MapTileType } from './MapTileData';
|
import { MapTileType, MapTileTypes } from './MapTileData';
|
||||||
import { MapTileNode } from './MapTileNode';
|
import { MapTileNode } from './MapTileNode';
|
||||||
const { ccclass, property } = _decorator;
|
const { ccclass, property } = _decorator;
|
||||||
|
|
||||||
|
|
@ -15,25 +15,13 @@ export class BoardRoot extends Component {
|
||||||
|
|
||||||
/// 初始化 地图快
|
/// 初始化 地图快
|
||||||
initMapTile(){
|
initMapTile(){
|
||||||
// 从枚举类型 添加所有地块
|
|
||||||
const types = Object.values(MapTileType);
|
|
||||||
console.log(types);
|
|
||||||
|
|
||||||
types.forEach((a,b) => {
|
// 从枚举类型 添加所有地块
|
||||||
const node = new MapTileNode(b);
|
MapTileTypes.forEach((type) => {
|
||||||
|
const node = new MapTileNode(type);
|
||||||
this.node.addChild(node);
|
this.node.addChild(node);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
// for( let i = 0; i < types.length ; i++){
|
|
||||||
// const type = types[i];
|
|
||||||
// const node = new MapTileNode(type);
|
|
||||||
// this.node.addChild(node);
|
|
||||||
// }
|
|
||||||
|
|
||||||
// console.log('地图块初始化完成');
|
|
||||||
// console.log(this.node);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
update(deltaTime: number) {
|
update(deltaTime: number) {
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,8 @@ export class MapTileController extends Component {
|
||||||
/// 进入选择地下城状态,海上列车选择,决斗场选择
|
/// 进入选择地下城状态,海上列车选择,决斗场选择
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
this.node.setPosition(0,0);
|
const location = this._tileData.location;
|
||||||
|
this.node.setPosition(location.x,location.y);
|
||||||
}
|
}
|
||||||
|
|
||||||
update(deltaTime: number) {}
|
update(deltaTime: number) {}
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,9 @@
|
||||||
import { Vec2, v2 } from "cc";
|
import { Vec2, v2 } from "cc";
|
||||||
import { NpkImage } from "../Tool/NPKImage";
|
import { NpkImage } from "../Tool/NPKImage";
|
||||||
|
|
||||||
/// 地块类型
|
/// 地块类型
|
||||||
export enum MapTileType {
|
export enum MapTileType {
|
||||||
/// 赫顿玛尔
|
/// 赫顿玛尔
|
||||||
HeDunMaEr,
|
HeDunMaEr = 0,
|
||||||
/// 时间广场
|
/// 时间广场
|
||||||
ShiJianGuangChang,
|
ShiJianGuangChang,
|
||||||
/// 兽人峡谷
|
/// 兽人峡谷
|
||||||
|
|
@ -18,14 +17,14 @@ export enum MapTileType {
|
||||||
|
|
||||||
/// 月光酒馆
|
/// 月光酒馆
|
||||||
YueGuangJiuGuan,
|
YueGuangJiuGuan,
|
||||||
/// 哈林的命运硬币(左边)
|
|
||||||
HaLinMingYunYinBi,
|
|
||||||
/// 亡命杀阵
|
/// 亡命杀阵
|
||||||
WangMingShaZhen,
|
WangMingShaZhen,
|
||||||
/// 皇家娱乐
|
/// 皇家娱乐
|
||||||
HuangJaiYuLe,
|
HuangJaiYuLe,
|
||||||
/// 黑暗都市
|
/// 黑暗都市
|
||||||
AnHeiDuShi,
|
HeiAnDuShi,
|
||||||
|
/// 哈林的命运硬币(左边)
|
||||||
|
HaLinMingYunYinBi,
|
||||||
/// 第九隔离区
|
/// 第九隔离区
|
||||||
DiJiuGeLiQu,
|
DiJiuGeLiQu,
|
||||||
|
|
||||||
|
|
@ -44,18 +43,72 @@ export enum MapTileType {
|
||||||
|
|
||||||
/// 海上列车
|
/// 海上列车
|
||||||
HaiShangLieChe,
|
HaiShangLieChe,
|
||||||
/// 切斯特小镇的命运硬币(右边)
|
|
||||||
XiaoZhenMingYunYinBi,
|
|
||||||
/// 暗黑神殿
|
/// 暗黑神殿
|
||||||
AnHeiShenDian,
|
AnHeiShenDian,
|
||||||
/// 痛苦地下城
|
/// 痛苦地下城
|
||||||
TongKuDiXiaChen,
|
TongKuDiXiaChen,
|
||||||
/// 无底坑道
|
/// 无底坑道
|
||||||
WuDiKenDao,
|
WuDiKenDao,
|
||||||
|
/// 切斯特小镇的命运硬币(右边)
|
||||||
|
XiaoZhenMingYunYinBi,
|
||||||
/// 记忆之地
|
/// 记忆之地
|
||||||
JiYiZhiDi,
|
JiYiZhiDi,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const MapTileTypes = [
|
||||||
|
/// 赫顿玛尔
|
||||||
|
MapTileType.HeDunMaEr,
|
||||||
|
/// 时间广场
|
||||||
|
MapTileType.ShiJianGuangChang,
|
||||||
|
/// 兽人峡谷
|
||||||
|
MapTileType.ShouRenXiaGu,
|
||||||
|
/// 超时空漩涡
|
||||||
|
MapTileType.ChaoShiKongXuanWo,
|
||||||
|
/// 恐怖的栖息地
|
||||||
|
MapTileType.KongBuDeQiXiDi,
|
||||||
|
/// 红色魔女之森
|
||||||
|
MapTileType.HongSeMoNvZhiSen,
|
||||||
|
|
||||||
|
/// 月光酒馆
|
||||||
|
MapTileType.YueGuangJiuGuan,
|
||||||
|
/// 亡命杀阵
|
||||||
|
MapTileType.WangMingShaZhen,
|
||||||
|
/// 皇家娱乐
|
||||||
|
MapTileType.HuangJaiYuLe,
|
||||||
|
/// 黑暗都市
|
||||||
|
MapTileType.HeiAnDuShi,
|
||||||
|
/// 哈林的命运硬币(左边)
|
||||||
|
MapTileType.HaLinMingYunYinBi,
|
||||||
|
/// 第九隔离区
|
||||||
|
MapTileType.DiJiuGeLiQu,
|
||||||
|
|
||||||
|
/// 决斗场
|
||||||
|
MapTileType.JueDouChang,
|
||||||
|
/// 腐坏街道
|
||||||
|
MapTileType.FuHuaiJieDao,
|
||||||
|
/// 溢血的地下城
|
||||||
|
MapTileType.YiXueDeDiXiaChen,
|
||||||
|
/// 普雷·伊西斯
|
||||||
|
MapTileType.PuLeiYiXiSi,
|
||||||
|
/// 沉重的礼拜堂
|
||||||
|
MapTileType.ChenZhongDeLiBaiTang,
|
||||||
|
/// 螺旋王国
|
||||||
|
MapTileType.LuoXuanWangGuo,
|
||||||
|
|
||||||
|
/// 海上列车
|
||||||
|
MapTileType.HaiShangLieChe,
|
||||||
|
/// 暗黑神殿
|
||||||
|
MapTileType.AnHeiShenDian,
|
||||||
|
/// 痛苦地下城
|
||||||
|
MapTileType.TongKuDiXiaChen,
|
||||||
|
/// 无底坑道
|
||||||
|
MapTileType.WuDiKenDao,
|
||||||
|
/// 切斯特小镇的命运硬币(右边)
|
||||||
|
MapTileType.XiaoZhenMingYunYinBi,
|
||||||
|
/// 记忆之地
|
||||||
|
MapTileType.JiYiZhiDi,
|
||||||
|
];
|
||||||
|
|
||||||
/// 地块方向
|
/// 地块方向
|
||||||
export enum MapTileDirection {
|
export enum MapTileDirection {
|
||||||
/// 横
|
/// 横
|
||||||
|
|
@ -74,8 +127,6 @@ export class MapTileData {
|
||||||
npkPath: NpkImage;
|
npkPath: NpkImage;
|
||||||
/// 地块背景index
|
/// 地块背景index
|
||||||
backgroundIndex: number;
|
backgroundIndex: number;
|
||||||
/// 地块名称图片index
|
|
||||||
nameIndex: number;
|
|
||||||
/// 地块方向
|
/// 地块方向
|
||||||
direction: MapTileDirection;
|
direction: MapTileDirection;
|
||||||
/// 怪物相关数据
|
/// 怪物相关数据
|
||||||
|
|
@ -87,87 +138,272 @@ export class MapTileData {
|
||||||
/// 占领许可
|
/// 占领许可
|
||||||
occupyLicense: boolean;
|
occupyLicense: boolean;
|
||||||
|
|
||||||
constructor({
|
constructor({
|
||||||
/// 坐标
|
/// 坐标
|
||||||
location,
|
location,
|
||||||
/// 背景index
|
/// 背景index
|
||||||
backgroundIndex,
|
backgroundIndex,
|
||||||
/// 名称index
|
/// 地块方向
|
||||||
nameIndex,
|
direction,
|
||||||
/// 地块方向
|
/// 占领许可
|
||||||
direction,
|
occupyLicense,
|
||||||
/// 占领许可
|
/// 列车选择许可
|
||||||
occupyLicense = true,
|
trainsSelectLicense,
|
||||||
/// 列车选择许可
|
/// 决斗场选择许可
|
||||||
trainsSelectLicense,
|
duelSelectLicense,
|
||||||
/// 决斗场选择许可
|
}: {
|
||||||
duelSelectLicense,
|
location: Vec2;
|
||||||
}: {
|
backgroundIndex?: number;
|
||||||
location: Vec2;
|
direction: MapTileDirection;
|
||||||
backgroundIndex?: number;
|
occupyLicense?: boolean;
|
||||||
nameIndex?: number;
|
trainsSelectLicense?: boolean;
|
||||||
direction: MapTileDirection;
|
duelSelectLicense?: boolean;
|
||||||
occupyLicense?: boolean;
|
}) {
|
||||||
trainsSelectLicense: boolean;
|
this.location = location;
|
||||||
duelSelectLicense: boolean;
|
this.npkPath = NpkImage.board;
|
||||||
}) {
|
this.backgroundIndex = backgroundIndex;
|
||||||
this.location = location;
|
this.direction = direction;
|
||||||
this.npkPath = NpkImage.board;
|
|
||||||
this.backgroundIndex = backgroundIndex;
|
|
||||||
this.nameIndex = nameIndex;
|
|
||||||
this.direction = direction;
|
|
||||||
|
|
||||||
this.trainsSelectLicense = trainsSelectLicense;
|
this.trainsSelectLicense = trainsSelectLicense ?? true;
|
||||||
this.duelSelectLicense = duelSelectLicense;
|
this.duelSelectLicense = duelSelectLicense ?? true;
|
||||||
this.occupyLicense = occupyLicense;
|
this.occupyLicense = occupyLicense ?? true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class MapTileFactory {
|
export class MapTileFactory {
|
||||||
static getData(type: MapTileType): MapTileData{
|
static getData(type: MapTileType): MapTileData {
|
||||||
|
|
||||||
// const tts = type as MapTileType;
|
|
||||||
// const ss = tts == MapTileType.HeDunMaEr;
|
|
||||||
// const nn = Number(type);
|
|
||||||
// const aa = +type;
|
|
||||||
// const tttt: MapTileType = MapTileType.HeDunMaEr;
|
|
||||||
|
|
||||||
switch (type) {
|
switch (type) {
|
||||||
/// 赫顿玛尔
|
/// 赫顿玛尔
|
||||||
case MapTileType.HeDunMaEr:
|
case MapTileType.HeDunMaEr:
|
||||||
console.log(type);
|
|
||||||
return MapTileFactory.HeDunMaErData;
|
return MapTileFactory.HeDunMaErData;
|
||||||
/// 时间广场
|
/// 时间广场
|
||||||
case MapTileType.ShiJianGuangChang:
|
case MapTileType.ShiJianGuangChang:
|
||||||
console.log(type);
|
return MapTileFactory.ShiJianGuangChangData;
|
||||||
return MapTileFactory.ShiJianGuangChangData;
|
/// 兽人峡谷
|
||||||
|
case MapTileType.ShouRenXiaGu:
|
||||||
|
return MapTileFactory.ShouRenXiaGuData;
|
||||||
|
/// 超时空漩涡
|
||||||
|
case MapTileType.ChaoShiKongXuanWo:
|
||||||
|
return MapTileFactory.ChaoShiKongXuanWoData;
|
||||||
|
/// 恐怖的栖息地
|
||||||
|
case MapTileType.KongBuDeQiXiDi:
|
||||||
|
return MapTileFactory.KongBuDeQiXiDiData;
|
||||||
|
/// 红色魔女之森
|
||||||
|
case MapTileType.HongSeMoNvZhiSen:
|
||||||
|
return MapTileFactory.HongSeMoNvZhiSenData;
|
||||||
|
/// 月光酒馆
|
||||||
|
case MapTileType.YueGuangJiuGuan:
|
||||||
|
return MapTileFactory.YueGuangJiuGuanData;
|
||||||
|
/// 亡命杀镇子
|
||||||
|
case MapTileType.WangMingShaZhen:
|
||||||
|
return MapTileFactory.WangMingShaZhenData;
|
||||||
|
/// 皇家娱乐
|
||||||
|
case MapTileType.HuangJaiYuLe:
|
||||||
|
return MapTileFactory.HuangJaiYuLeData;
|
||||||
|
/// 黑暗都市
|
||||||
|
case MapTileType.HeiAnDuShi:
|
||||||
|
return MapTileFactory.HeiAnDuShiData;
|
||||||
|
/// 哈林的命运硬币(左边)
|
||||||
|
case MapTileType.HaLinMingYunYinBi:
|
||||||
|
return MapTileFactory.HaLinMingYunYinBiData;
|
||||||
|
/// 第九隔离区
|
||||||
|
case MapTileType.DiJiuGeLiQu:
|
||||||
|
return MapTileFactory.DiJiuGeLiQuData;
|
||||||
|
/// 决斗场
|
||||||
|
case MapTileType.JueDouChang:
|
||||||
|
return MapTileFactory.JueDouChangData;
|
||||||
|
/// 腐坏街道
|
||||||
|
case MapTileType.FuHuaiJieDao:
|
||||||
|
return MapTileFactory.FuHuaiJieDaoData;
|
||||||
|
/// 溢血的地下城
|
||||||
|
case MapTileType.YiXueDeDiXiaChen:
|
||||||
|
return MapTileFactory.YiXueDeDiXiaChenData;
|
||||||
|
/// 普雷·伊西斯
|
||||||
|
case MapTileType.PuLeiYiXiSi:
|
||||||
|
return MapTileFactory.PuLeiYiXiSiData;
|
||||||
|
/// 沉重的礼拜堂
|
||||||
|
case MapTileType.ChenZhongDeLiBaiTang:
|
||||||
|
return MapTileFactory.ChenZhongDeLiBaiTangData;
|
||||||
|
/// 螺旋王国
|
||||||
|
case MapTileType.LuoXuanWangGuo:
|
||||||
|
return MapTileFactory.LuoXuanWangGuoData;
|
||||||
|
/// 海上列车
|
||||||
|
case MapTileType.HaiShangLieChe:
|
||||||
|
return MapTileFactory.HaiShangLieCheData;
|
||||||
|
/// 暗黑神殿
|
||||||
|
case MapTileType.AnHeiShenDian:
|
||||||
|
return MapTileFactory.AnHeiShenDianData;
|
||||||
|
/// 痛苦地下城
|
||||||
|
case MapTileType.TongKuDiXiaChen:
|
||||||
|
return MapTileFactory.TongKuDiXiaChenData;
|
||||||
|
/// 无底坑道
|
||||||
|
case MapTileType.WuDiKenDao:
|
||||||
|
return MapTileFactory.WuDiKenDaoData;
|
||||||
|
/// 切斯特小镇的命运硬币(右边)
|
||||||
|
case MapTileType.XiaoZhenMingYunYinBi:
|
||||||
|
return MapTileFactory.XiaoZhenMingYunYinBiData;
|
||||||
|
/// 记忆之地
|
||||||
|
case MapTileType.JiYiZhiDi:
|
||||||
|
return MapTileFactory.JiYiZhiDiData;
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(type);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 赫顿玛尔
|
// 赫顿玛尔
|
||||||
private static HeDunMaErData = new MapTileData({
|
private static HeDunMaErData = new MapTileData({
|
||||||
location: v2(507, -500),
|
location: v2(475, -448),
|
||||||
direction: MapTileDirection.nook,
|
direction: MapTileDirection.nook,
|
||||||
trainsSelectLicense: true,
|
|
||||||
duelSelectLicense: false,
|
duelSelectLicense: false,
|
||||||
occupyLicense: false,
|
occupyLicense: false,
|
||||||
});
|
});
|
||||||
|
|
||||||
/// 时间广场
|
/// 时间广场 (55,34)
|
||||||
private static ShiJianGuangChangData = new MapTileData({
|
private static ShiJianGuangChangData = new MapTileData({
|
||||||
location: v2(507, -500),
|
location: v2(420, -414),
|
||||||
backgroundIndex: 1,
|
|
||||||
direction: MapTileDirection.horizontal,
|
direction: MapTileDirection.horizontal,
|
||||||
trainsSelectLicense: true,
|
|
||||||
duelSelectLicense: true,
|
|
||||||
occupyLicense: true,
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/// 兽人峡谷 (52,34)
|
||||||
|
private static ShouRenXiaGuData = new MapTileData({
|
||||||
|
location: v2(368, -380),
|
||||||
|
direction: MapTileDirection.horizontal,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 超时空漩涡 (53,34)
|
||||||
|
private static ChaoShiKongXuanWoData = new MapTileData({
|
||||||
|
location: v2(315, -346),
|
||||||
|
backgroundIndex: 32,
|
||||||
|
direction: MapTileDirection.horizontal,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 恐怖的栖息地 (52,34)
|
||||||
|
private static KongBuDeQiXiDiData = new MapTileData({
|
||||||
|
location: v2(262, -312),
|
||||||
|
direction: MapTileDirection.horizontal,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 红色魔女之森 (52,34)
|
||||||
|
private static HongSeMoNvZhiSenData = new MapTileData({
|
||||||
|
location: v2(209, -278),
|
||||||
|
direction: MapTileDirection.horizontal,
|
||||||
|
});
|
||||||
|
|
||||||
|
// 月光酒馆(69,44)
|
||||||
|
private static YueGuangJiuGuanData = new MapTileData({
|
||||||
|
location: v2(140, -234),
|
||||||
|
direction: MapTileDirection.nook,
|
||||||
|
duelSelectLicense: false,
|
||||||
|
occupyLicense: false,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 亡命杀镇 (53,34)
|
||||||
|
private static WangMingShaZhenData = new MapTileData({
|
||||||
|
location: v2(209, -198),
|
||||||
|
direction: MapTileDirection.vertical,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 皇家娱乐(53,34)
|
||||||
|
private static HuangJaiYuLeData = new MapTileData({
|
||||||
|
location: v2(262, -164),
|
||||||
|
direction: MapTileDirection.vertical,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 黑暗都市
|
||||||
|
private static HeiAnDuShiData = new MapTileData({
|
||||||
|
location: v2(315, -130),
|
||||||
|
direction: MapTileDirection.vertical,
|
||||||
|
});
|
||||||
|
/// 哈林的命运硬币(左边)
|
||||||
|
private static HaLinMingYunYinBiData = new MapTileData({
|
||||||
|
location: v2(368, -96),
|
||||||
|
backgroundIndex: 34,
|
||||||
|
direction: MapTileDirection.vertical,
|
||||||
|
duelSelectLicense: false,
|
||||||
|
occupyLicense: false,
|
||||||
|
});
|
||||||
|
/// 第九隔离区
|
||||||
|
private static DiJiuGeLiQuData = new MapTileData({
|
||||||
|
location: v2(421, -62),
|
||||||
|
direction: MapTileDirection.vertical,
|
||||||
|
});
|
||||||
|
|
||||||
|
// 决斗场(54,44)
|
||||||
|
private static JueDouChangData = new MapTileData({
|
||||||
|
location: v2(475, -18),
|
||||||
|
direction: MapTileDirection.nook,
|
||||||
|
duelSelectLicense: false,
|
||||||
|
occupyLicense: false,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 腐坏街道(53,34)
|
||||||
|
private static FuHuaiJieDaoData = new MapTileData({
|
||||||
|
location: v2(544, -62),
|
||||||
|
direction: MapTileDirection.horizontal,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 溢血的地下城(53,34)
|
||||||
|
private static YiXueDeDiXiaChenData = new MapTileData({
|
||||||
|
location: v2(597, -96),
|
||||||
|
direction: MapTileDirection.horizontal,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 普雷·伊西斯
|
||||||
|
private static PuLeiYiXiSiData = new MapTileData({
|
||||||
|
location: v2(650, -130),
|
||||||
|
backgroundIndex: 33,
|
||||||
|
direction: MapTileDirection.horizontal,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 沉重的礼拜堂
|
||||||
|
private static ChenZhongDeLiBaiTangData = new MapTileData({
|
||||||
|
location: v2(703, -164),
|
||||||
|
direction: MapTileDirection.horizontal,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 螺旋王国
|
||||||
|
private static LuoXuanWangGuoData = new MapTileData({
|
||||||
|
location: v2(756, -198),
|
||||||
|
direction: MapTileDirection.horizontal,
|
||||||
|
});
|
||||||
|
|
||||||
|
// 海上列车(69,44)
|
||||||
|
private static HaiShangLieCheData = new MapTileData({
|
||||||
|
location: v2(808, -234),
|
||||||
|
direction: MapTileDirection.nook,
|
||||||
|
trainsSelectLicense: false,
|
||||||
|
duelSelectLicense: false,
|
||||||
|
occupyLicense: false,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 暗黑神殿
|
||||||
|
private static AnHeiShenDianData = new MapTileData({
|
||||||
|
location: v2(756, -278),
|
||||||
|
direction: MapTileDirection.vertical,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 痛苦地下城
|
||||||
|
private static TongKuDiXiaChenData = new MapTileData({
|
||||||
|
location: v2(703, -312),
|
||||||
|
direction: MapTileDirection.vertical,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 无底坑道
|
||||||
|
private static WuDiKenDaoData = new MapTileData({
|
||||||
|
location: v2(650, -346),
|
||||||
|
direction: MapTileDirection.vertical,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 切斯特小镇的命运硬币(右边)
|
||||||
|
private static XiaoZhenMingYunYinBiData = new MapTileData({
|
||||||
|
location: v2(597, -380),
|
||||||
|
backgroundIndex: 34,
|
||||||
|
direction: MapTileDirection.vertical,
|
||||||
|
duelSelectLicense: false,
|
||||||
|
occupyLicense: false,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// 记忆之地
|
||||||
|
private static JiYiZhiDiData = new MapTileData({
|
||||||
|
location: v2(544, -414),
|
||||||
|
direction: MapTileDirection.vertical,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,9 @@ export class MapTileNode extends Node {
|
||||||
/// 鼠标操作变化的边框
|
/// 鼠标操作变化的边框
|
||||||
private borderNode: Node;
|
private borderNode: Node;
|
||||||
|
|
||||||
|
/// 禁止选择
|
||||||
|
private disableNode: Node;
|
||||||
|
|
||||||
/// 占领图标
|
/// 占领图标
|
||||||
private occupyIconNode: Node;
|
private occupyIconNode: Node;
|
||||||
|
|
||||||
|
|
@ -45,7 +48,13 @@ export class MapTileNode extends Node {
|
||||||
this.initNode();
|
this.initNode();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// 测试使用按钮
|
||||||
|
initButtons(){
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
initNode() {
|
initNode() {
|
||||||
|
|
||||||
/// 背景
|
/// 背景
|
||||||
if (this.controller.tileData.backgroundIndex) {
|
if (this.controller.tileData.backgroundIndex) {
|
||||||
const node = new Node();
|
const node = new Node();
|
||||||
|
|
@ -61,42 +70,72 @@ export class MapTileNode extends Node {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// 名称
|
/// 名称
|
||||||
if (this.controller.tileData.nameIndex) {
|
const node = new Node();
|
||||||
const node = new Node();
|
this.addChild(node);
|
||||||
this.addChild(node);
|
|
||||||
|
|
||||||
const bs = node.addComponent(BaseSprite);
|
const bs = node.addComponent(BaseSprite);
|
||||||
bs.updateSpriteFrame(this.controller.tileData.npkPath, this.controller.tileData.nameIndex);
|
bs.updateSpriteFrame(
|
||||||
|
this.controller.tileData.npkPath,
|
||||||
|
this.controller.tileType
|
||||||
|
);
|
||||||
|
|
||||||
this.nameNode = node;
|
this.nameNode = node;
|
||||||
}
|
|
||||||
|
|
||||||
/// 决斗场选择后的红色边框
|
/// 决斗场选择后的红色边框
|
||||||
// 四角和命运硬币 没有红框
|
// 四角和命运硬币 没有红框
|
||||||
if (
|
if (
|
||||||
this.controller.tileData.direction != MapTileDirection.nook ||
|
this.controller.tileData.direction != MapTileDirection.nook &&
|
||||||
this.controller.tileType !=
|
this.controller.tileType !=
|
||||||
(MapTileType.XiaoZhenMingYunYinBi || MapTileType.HaLinMingYunYinBi)
|
(MapTileType.XiaoZhenMingYunYinBi || MapTileType.HaLinMingYunYinBi)
|
||||||
) {
|
) {
|
||||||
const node = new Node();
|
const node = new Node();
|
||||||
// node.active = false;
|
node.active = false;
|
||||||
this.addChild(node);
|
this.addChild(node);
|
||||||
|
|
||||||
const bs = node.addComponent(BaseSprite);
|
|
||||||
// 横向地块27 竖向28
|
// 横向地块27 竖向28
|
||||||
|
const bs = node.addComponent(BaseSprite);
|
||||||
bs.updateSpriteFrame(
|
bs.updateSpriteFrame(
|
||||||
this.controller.tileData.npkPath,
|
this.controller.tileData.npkPath,
|
||||||
this.controller.tileData.direction == MapTileDirection.horizontal ? 27 : 28
|
this.controller.tileData.direction == MapTileDirection.horizontal ? 27 : 28
|
||||||
);
|
);
|
||||||
|
|
||||||
this.nameNode = node;
|
this.fightNode = node;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// 鼠标选择边框
|
if (this.controller.tileData.trainsSelectLicense){
|
||||||
const bordeNode = new Node();
|
// 鼠标选择边框
|
||||||
// bordeNode.active = false;
|
const bordeNode = new Node();
|
||||||
const bordeBS = bordeNode.addComponent(MapTileButtonComponent);
|
this.addChild(bordeNode);
|
||||||
bordeBS.direction = this.controller.tileData.direction;
|
bordeNode.active = false;
|
||||||
this.borderNode = bordeNode;
|
const bordeBC = bordeNode.addComponent(MapTileButtonComponent);
|
||||||
|
bordeBC.direction = this.controller.tileData.direction;
|
||||||
|
this.borderNode = bordeNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// 禁止选择
|
||||||
|
const disableNode = new Node();
|
||||||
|
this.addChild(disableNode);
|
||||||
|
disableNode.active = false;
|
||||||
|
const disableBS = disableNode.addComponent(BaseSprite);
|
||||||
|
disableBS.updateSpriteFrame(this.controller.tileData.npkPath,this.controller.tileData.direction + 5)
|
||||||
|
this.disableNode = disableNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// 显示海上列车选择
|
||||||
|
shwTrainsSelect(show: boolean){
|
||||||
|
if (this.borderNode){
|
||||||
|
/// 许可选择
|
||||||
|
if (this.controller.tileData.trainsSelectLicense){
|
||||||
|
this.borderNode.active = show;
|
||||||
|
}else{
|
||||||
|
this.disableNode.active = true;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
this.disableNode.active = false;
|
||||||
|
this.borderNode.active = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue