扩充游戏内容,保持敌人基本行为不变,使用缩放和颜色区分不同敌人

This commit is contained in:
SepComet
2026-06-16 17:09:19 +08:00
committed by basil
parent 29c4468d54
commit 649930c666
26 changed files with 812 additions and 235 deletions
@@ -12,9 +12,18 @@ public abstract class EnemyBase : TargetableObject
public virtual float AttackRange => 1f;
public virtual void SetTarget(Transform target) => _target = target;
protected EnemyData _enemyData;
protected override void OnShow(object userData)
{
base.OnShow(userData);
if (userData is EnemyData enemyData)
{
ApplyVisualParams(enemyData);
}
}
protected override void OnDead(EntityBase attacker)
{
@@ -35,8 +44,21 @@ public abstract class EnemyBase : TargetableObject
};
GameEntry.Entity.ShowExpAsync(data).Forget();
}
base.OnDead(attacker);
}
private void ApplyVisualParams(EnemyData data)
{
CachedTransform.localScale = Vector3.one * Mathf.Max(0.1f, data.Scale);
var renderer = GetComponentInChildren<Renderer>();
if (renderer != null)
{
var block = new MaterialPropertyBlock();
block.SetColor("_BaseColor", data.Color);
renderer.SetPropertyBlock(block);
}
}
}