(client) feat:健康给予,路径优化,结算界面,商店界面 (#60)

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/60
This commit is contained in:
2025-10-10 14:08:23 +08:00
parent 9a797479ff
commit 16b49f3d3a
1900 changed files with 114053 additions and 34157 deletions

View File

@@ -7,53 +7,51 @@ namespace Data
public class TileDef : Define
{
public Tile.ColliderType collider = Tile.ColliderType.None;
public RuleTileRuleDef[] rules;
public string texture;
public float tileCost = 0;
public RuleTileRuleDef[] rules;
}
public class NeighborConditionDef:Define
public class NeighborConditionDef : Define
{
public string position;
public RuleTileRuleDef.NeighborConditionType Type;
}
public class RuleTileRuleDef : Define
{
public enum NeighborConditionType
{
Any, // 可以是任何瓦片
This, // 必须是当前 Rule Tile 自身 (用于[4]位置)
NotThis, // 不能是当前 Rule Tile 自身
NotThis // 不能是当前 Rule Tile 自身
}
public NeighborConditionType[] neighborConditions = new NeighborConditionType[8];
public NeighborConditionDef[] neighborConditionExtend;
public RuleTile.TilingRuleOutput.OutputSprite outputType = RuleTile.TilingRuleOutput.OutputSprite.Single;
public RuleTile.TilingRuleOutput.Transform transform = RuleTile.TilingRuleOutput.Transform.Fixed;
// --- 输出碰撞器类型 (Output Collider Type) ---
// 如果需要为该规则设置特定的碰撞器类型
public Tile.ColliderType outputCollider = Tile.ColliderType.None;
// --- 概率 (Probability) / Perlin Offset ---
// 决定此规则被选中的可能性或者用于Perlin噪声偏移
public float chance = 0.5f; // 默认为100%
public float animationSpeed = 1f;
// --- 动画精灵 (Animation Sprites) ---
// 如果 outputType 是 Animation这里可以定义一系列动画帧的纹理路径或名称
public List<string> animationTextures;
public float animationSpeed = 1f;
// --- 概率 (Probability) / Perlin Offset ---
// 决定此规则被选中的可能性或者用于Perlin噪声偏移
public float chance = 0.5f; // 默认为100%
public NeighborConditionDef[] neighborConditionExtend;
public NeighborConditionType[] neighborConditions = new NeighborConditionType[8];
// --- 输出碰撞器类型 (Output Collider Type) ---
// 如果需要为该规则设置特定的碰撞器类型
public Tile.ColliderType outputCollider = Tile.ColliderType.None;
public RuleTile.TilingRuleOutput.OutputSprite outputType = RuleTile.TilingRuleOutput.OutputSprite.Single;
public float tileCost = 0;
public RuleTile.TilingRuleOutput.Transform transform = RuleTile.TilingRuleOutput.Transform.Fixed;
// 构造函数或其他辅助方法
public RuleTileRuleDef()
{
for (int i = 0; i < neighborConditions.Length; i++)
{
neighborConditions[i] = NeighborConditionType.Any;
}
for (var i = 0; i < neighborConditions.Length; i++) neighborConditions[i] = NeighborConditionType.Any;
}
}
}