Remove unused source files. Fixed an issue where the health tank was empty after resurrection.
移除未使用的源文件。修复复活后生命槽为空的问题。
This commit is contained in:
parent
39ca716e3d
commit
4c61f3b50e
|
@ -130,7 +130,7 @@ public partial class CharacterTemplate : CharacterBody2D
|
||||||
///<para>Sets the amount of Hp a character has after resurrection</para>
|
///<para>Sets the amount of Hp a character has after resurrection</para>
|
||||||
///<para>设置角色复活后拥有的Hp</para>
|
///<para>设置角色复活后拥有的Hp</para>
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
public void Revive(int newHp)
|
public virtual void Revive(int newHp)
|
||||||
{
|
{
|
||||||
//If the new Hp is less than or equal to 0, there is no need to resurrect
|
//If the new Hp is less than or equal to 0, there is no need to resurrect
|
||||||
//如果新的Hp小于等于0,那么不需要复活
|
//如果新的Hp小于等于0,那么不需要复活
|
||||||
|
|
|
@ -378,6 +378,18 @@ public partial class Player : CharacterTemplate
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override void Revive(int newHp)
|
||||||
|
{
|
||||||
|
base.Revive(newHp);
|
||||||
|
var healthBarUi = GameSceneNodeHolder.HealthBarUi;
|
||||||
|
if (healthBarUi!=null)
|
||||||
|
{
|
||||||
|
//The purpose of setting Hp to the current Hp is to cause the life bar to refresh.
|
||||||
|
//将Hp设置为当前Hp的目的是,使生命条刷新。
|
||||||
|
healthBarUi.CurrentHp = CurrentHp;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected override async Task OnDie(DamageTemplate damageTemplate)
|
protected override async Task OnDie(DamageTemplate damageTemplate)
|
||||||
{
|
{
|
||||||
Visible = false;
|
Visible = false;
|
||||||
|
|
|
@ -9,6 +9,10 @@ using Godot;
|
||||||
|
|
||||||
namespace ColdMint.scripts.loader.sceneLoader;
|
namespace ColdMint.scripts.loader.sceneLoader;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// <para>Game scene loader</para>
|
||||||
|
/// <para>游戏场景加载器</para>
|
||||||
|
/// </summary>
|
||||||
public partial class GameSceneLoader : SceneLoaderTemplate
|
public partial class GameSceneLoader : SceneLoaderTemplate
|
||||||
{
|
{
|
||||||
private Label? _seedLabel;
|
private Label? _seedLabel;
|
||||||
|
@ -55,7 +59,7 @@ public partial class GameSceneLoader : SceneLoaderTemplate
|
||||||
_seedLabel = GetNodeOrNull<Label>("CanvasLayer/Control/SeedLabel");
|
_seedLabel = GetNodeOrNull<Label>("CanvasLayer/Control/SeedLabel");
|
||||||
if (_seedLabel != null)
|
if (_seedLabel != null)
|
||||||
{
|
{
|
||||||
_seedLabel.Visible = Config.IsDebug();
|
_seedLabel.Visible = debugMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
MapGenerator.MapRoot = GetNode<Node>("MapRoot");
|
MapGenerator.MapRoot = GetNode<Node>("MapRoot");
|
||||||
|
@ -77,16 +81,8 @@ public partial class GameSceneLoader : SceneLoaderTemplate
|
||||||
//If you have a seedLabel, then set the seed to it.
|
//If you have a seedLabel, then set the seed to it.
|
||||||
//如果有seedLabel,那么将种子设置上去。
|
//如果有seedLabel,那么将种子设置上去。
|
||||||
var seedInfo = TranslationServerUtils.TranslateWithFormat("seed_info", MapGenerator.Seed);
|
var seedInfo = TranslationServerUtils.TranslateWithFormat("seed_info", MapGenerator.Seed);
|
||||||
if (seedInfo == null)
|
_seedLabel.Text = seedInfo ?? $"Seed: {MapGenerator.Seed}";
|
||||||
{
|
|
||||||
_seedLabel.Text = $"Seed: {MapGenerator.Seed}";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
_seedLabel.Text = seedInfo;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
await MapGenerator.GenerateMap();
|
await MapGenerator.GenerateMap();
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -19,30 +19,37 @@ namespace ColdMint.scripts.map.LayoutParsingStrategy;
|
||||||
public class SequenceLayoutParsingStrategy : ILayoutParsingStrategy
|
public class SequenceLayoutParsingStrategy : ILayoutParsingStrategy
|
||||||
{
|
{
|
||||||
private LevelGraphEditorSaveData? _levelGraphEditorSaveData;
|
private LevelGraphEditorSaveData? _levelGraphEditorSaveData;
|
||||||
|
|
||||||
//Check whether data Settings are valid
|
/// <summary>
|
||||||
//设置数据时,是否检查合法了
|
/// <para>Check whether data Settings are valid</para>
|
||||||
|
/// <para>设置数据时,是否检查合法了</para>
|
||||||
|
/// </summary>
|
||||||
private bool _checkLegality;
|
private bool _checkLegality;
|
||||||
|
|
||||||
|
|
||||||
//The connection index of the query
|
/// <summary>
|
||||||
//查询的连接索引
|
/// <para>The connection index of the query</para>
|
||||||
|
/// <para>查询的连接索引</para>
|
||||||
|
/// </summary>
|
||||||
private int _index;
|
private int _index;
|
||||||
private int _maxIndex;
|
private int _maxIndex;
|
||||||
private Dictionary<string, RoomNodeData> _roomNodeDataDictionary = new Dictionary<string, RoomNodeData>();
|
/// <summary>
|
||||||
|
/// <para>Room ID Indicates the dictionary of room node data</para>
|
||||||
|
/// <para>房间ID对应房间节点数据的字典</para>
|
||||||
|
/// </summary>
|
||||||
|
private readonly Dictionary<string, RoomNodeData> _roomNodeDataDictionary = new();
|
||||||
|
|
||||||
public void SetLevelGraph(LevelGraphEditorSaveData levelGraphEditorSaveData)
|
public void SetLevelGraph(LevelGraphEditorSaveData levelGraphEditorSaveData)
|
||||||
{
|
{
|
||||||
_checkLegality = false;
|
if (levelGraphEditorSaveData.RoomNodeDataList == null || levelGraphEditorSaveData.RoomNodeDataList.Count == 0)
|
||||||
_index = -1;
|
|
||||||
_levelGraphEditorSaveData = levelGraphEditorSaveData;
|
|
||||||
if (_levelGraphEditorSaveData.RoomNodeDataList == null || _levelGraphEditorSaveData.RoomNodeDataList.Count == 0)
|
|
||||||
{
|
{
|
||||||
//No room data, unable to parse.
|
//No room data, unable to parse.
|
||||||
//没有房间数据,无法解析。
|
//没有房间数据,无法解析。
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
_checkLegality = false;
|
||||||
|
_index = -1;
|
||||||
|
_levelGraphEditorSaveData = levelGraphEditorSaveData;
|
||||||
if (_levelGraphEditorSaveData.ConnectionDataList == null ||
|
if (_levelGraphEditorSaveData.ConnectionDataList == null ||
|
||||||
_levelGraphEditorSaveData.ConnectionDataList.Count == 0)
|
_levelGraphEditorSaveData.ConnectionDataList.Count == 0)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,28 +0,0 @@
|
||||||
using ColdMint.scripts.map.room;
|
|
||||||
|
|
||||||
namespace ColdMint.scripts.map.interfaces;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// <para>Room holder</para>
|
|
||||||
/// <para>房间持有者</para>
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
///<para>This class holds all generated and placed rooms.</para>
|
|
||||||
///<para>该类保存所有已生成且已放置的房间。</para>
|
|
||||||
/// </remarks>
|
|
||||||
public interface IRoomHolder
|
|
||||||
{
|
|
||||||
bool AddRoom(Room room);
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// <para>LastRoom</para>
|
|
||||||
/// <para>最后添加的房间</para>
|
|
||||||
/// </summary>
|
|
||||||
Room? LastRoom { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// <para>Number of rooms that have been placed</para>
|
|
||||||
/// <para>已放置的房间数量</para>
|
|
||||||
/// </summary>
|
|
||||||
int PlacedRoomNumber { get; }
|
|
||||||
}
|
|
|
@ -1,35 +0,0 @@
|
||||||
namespace ColdMint.scripts.map.interfaces;
|
|
||||||
|
|
||||||
public interface IRoomTemplate
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// <para>The asset path of the room must be available</para>
|
|
||||||
/// <para>必须可获得房间的资产路径</para>
|
|
||||||
/// </summary>
|
|
||||||
string RoomResPath { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// <para>Whether this room template can still be used</para>
|
|
||||||
/// <para>这个房间模板是否还能使用</para>
|
|
||||||
/// </summary>
|
|
||||||
bool CanUse { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// <para>The maximum number of times a room template is used</para>
|
|
||||||
/// <para>房间模板的最大使用次数</para>
|
|
||||||
/// </summary>
|
|
||||||
int MaxNumber { get; set; }
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// <para>AddUsedNumber</para>
|
|
||||||
/// <para>添加使用次数</para>
|
|
||||||
/// </summary>
|
|
||||||
void AddUsedNumber();
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// <para>Times used</para>
|
|
||||||
/// <para>已使用次数</para>
|
|
||||||
/// </summary>
|
|
||||||
int UsedNumber { get; }
|
|
||||||
}
|
|
|
@ -11,17 +11,17 @@ namespace ColdMint.scripts.map.layoutStrategy;
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class TestLayoutStrategy : ILayoutStrategy
|
public class TestLayoutStrategy : ILayoutStrategy
|
||||||
{
|
{
|
||||||
private string _path = "res://data/levelGraphs/test.json";
|
private const string Path = "res://data/levelGraphs/test.json";
|
||||||
|
|
||||||
public Task<LevelGraphEditorSaveData?> GetLayout()
|
public Task<LevelGraphEditorSaveData?> GetLayout()
|
||||||
{
|
{
|
||||||
var exists = FileAccess.FileExists(_path);
|
var exists = FileAccess.FileExists(Path);
|
||||||
if (!exists)
|
if (!exists)
|
||||||
{
|
{
|
||||||
return Task.FromResult<LevelGraphEditorSaveData?>(null);
|
return Task.FromResult<LevelGraphEditorSaveData?>(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
var json = FileAccess.GetFileAsString(_path);
|
var json = FileAccess.GetFileAsString(Path);
|
||||||
if (json == null)
|
if (json == null)
|
||||||
{
|
{
|
||||||
return Task.FromResult<LevelGraphEditorSaveData?>(null);
|
return Task.FromResult<LevelGraphEditorSaveData?>(null);
|
||||||
|
|
|
@ -1,46 +0,0 @@
|
||||||
using ColdMint.scripts.map.interfaces;
|
|
||||||
|
|
||||||
namespace ColdMint.scripts.map.room;
|
|
||||||
|
|
||||||
public class RoomTemplate : IRoomTemplate
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// <para>Unlimited use</para>
|
|
||||||
/// <para>无限次使用</para>
|
|
||||||
/// </summary>
|
|
||||||
public const int Infinite = -1;
|
|
||||||
|
|
||||||
private int _usedNumber;
|
|
||||||
|
|
||||||
public RoomTemplate(string roomResPath)
|
|
||||||
{
|
|
||||||
RoomResPath = roomResPath;
|
|
||||||
MaxNumber = Infinite;
|
|
||||||
_usedNumber = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public string RoomResPath { get; }
|
|
||||||
|
|
||||||
public bool CanUse
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
if (MaxNumber == Infinite)
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return _usedNumber < MaxNumber;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public int MaxNumber { get; set; }
|
|
||||||
|
|
||||||
|
|
||||||
public void AddUsedNumber()
|
|
||||||
{
|
|
||||||
_usedNumber++;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int UsedNumber => _usedNumber;
|
|
||||||
}
|
|
|
@ -1,31 +0,0 @@
|
||||||
using System.Collections.Generic;
|
|
||||||
using ColdMint.scripts.map.interfaces;
|
|
||||||
using ColdMint.scripts.map.room;
|
|
||||||
|
|
||||||
namespace ColdMint.scripts.map.roomHolder;
|
|
||||||
|
|
||||||
public class RoomHolder : IRoomHolder
|
|
||||||
{
|
|
||||||
private readonly List<Room> _rooms = new List<Room>();
|
|
||||||
|
|
||||||
public bool AddRoom(Room room)
|
|
||||||
{
|
|
||||||
_rooms.Add(room);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Room? LastRoom
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
if (_rooms.Count > 0)
|
|
||||||
{
|
|
||||||
return _rooms[_rooms.Count - 1];
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public int PlacedRoomNumber => _rooms.Count;
|
|
||||||
}
|
|
|
@ -263,6 +263,7 @@ public class PatchworkRoomPlacementStrategy : IRoomPlacementStrategy
|
||||||
{
|
{
|
||||||
if (mainRoomSlot == null || mainRoomSlot.Matched)
|
if (mainRoomSlot == null || mainRoomSlot.Matched)
|
||||||
{
|
{
|
||||||
|
//If it's already a match, it's no longer a match
|
||||||
//如果已经匹配过了,就不再匹配
|
//如果已经匹配过了,就不再匹配
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -276,6 +277,7 @@ public class PatchworkRoomPlacementStrategy : IRoomPlacementStrategy
|
||||||
|
|
||||||
if (newRoomSlot.Matched)
|
if (newRoomSlot.Matched)
|
||||||
{
|
{
|
||||||
|
//If it's already a match, it's no longer a match
|
||||||
//如果已经匹配过了,就不再匹配
|
//如果已经匹配过了,就不再匹配
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user