mirror of
http://47.107.252.169:3000/Roguelite-Game-Developing-Team/Gen_Hack-and-Slash-Roguelite.git
synced 2025-11-20 09:57:13 +08:00
(client) feat:实现技能树界面,实现地图生成器,实现维度指定,实现规则瓦片定义,实现逃跑逻辑,实现消息定义,实现武器动画,实现受击动画 fix: 修复单攻击子弹击中多个目标,修复人物属性计算错误 (#56)
Co-authored-by: m0_75251201 <m0_75251201@noreply.gitcode.com> Reviewed-on: http://47.107.252.169:3000/Roguelite-Game-Developing-Team/Gen_Hack-and-Slash-Roguelite/pulls/56
This commit is contained in:
@@ -1,3 +1,6 @@
|
||||
using System.Threading.Tasks;
|
||||
using Data;
|
||||
using Managers;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Map
|
||||
@@ -19,6 +22,9 @@ namespace Map
|
||||
public Vector3 cameraPosition;
|
||||
|
||||
public Entity.Entity focusEntity;
|
||||
|
||||
public string mapGeneratorId;
|
||||
public DimensionDef dimensionDefinition;
|
||||
/// <summary>
|
||||
/// 获取此维度的唯一标识符。
|
||||
/// </summary>
|
||||
@@ -53,7 +59,7 @@ namespace Map
|
||||
Program.Instance.RegisterDimension(this);
|
||||
|
||||
mapGenerator.Init();
|
||||
var size = mapGenerator.baseMap.GetSize();
|
||||
var size = mapGenerator.GetSize();
|
||||
cameraPosition = new Vector3(size.x / 2f, size.y / 2f, -10)+transform.position;
|
||||
|
||||
// 5. 处理 defaultOpen 逻辑,设置Program的焦点维度
|
||||
@@ -63,6 +69,15 @@ namespace Map
|
||||
Program.Instance.SetFocusedDimension(_dimensionId);
|
||||
}
|
||||
|
||||
mapGeneratorId = Configs.ConfigManager.Instance.GetValue<string>(mapGeneratorId);
|
||||
if (!string.IsNullOrEmpty(mapGeneratorId))
|
||||
{
|
||||
dimensionDefinition=DefineManager.Instance.FindDefine<DimensionDef>(mapGeneratorId);
|
||||
if (dimensionDefinition != null)
|
||||
{
|
||||
_=ApplyDimensionDef(dimensionDefinition);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -74,6 +89,17 @@ namespace Map
|
||||
Program.Instance.UnregisterDimension(this);
|
||||
}
|
||||
}
|
||||
|
||||
private async Task ApplyDimensionDef(DimensionDef def)
|
||||
{
|
||||
if (def.mapGenerators != null)
|
||||
{
|
||||
foreach (var defMapGenerator in def.mapGenerators)
|
||||
{
|
||||
await TileManager.Instance.ApplyMapGenerator(defMapGenerator.defName, mapGenerator);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user