(client)feat:实现子弹定义以及生成,实现初始化动画,实现血条 (#43)

Co-authored-by: zzdxxz <2079238449@qq.com>
Co-committed-by: zzdxxz <2079238449@qq.com>
This commit is contained in:
2025-08-19 20:22:10 +08:00
committed by TheRedApricot
parent 670f778eee
commit d91210a6ff
119 changed files with 4797 additions and 2929 deletions

View File

@ -11,7 +11,7 @@ namespace AI
public abstract JobBase GetJob(Entity.Entity target);
}
public class Selector : AIBase
public class ThinkNode_Selector : AIBase
{
public override JobBase GetJob(Entity.Entity target)
{
@ -24,13 +24,13 @@ namespace AI
return null;
}
}
public class ConditionalAI : Selector
public class ThinkNode_Conditional : ThinkNode_Selector
{
// 条件函数,返回 true 表示满足条件
private Func<Entity.Entity, bool> condition;
// 构造函数,传入条件函数
public ConditionalAI(Func<Entity.Entity, bool> conditionFunc)
public ThinkNode_Conditional(Func<Entity.Entity, bool> conditionFunc)
{
condition = conditionFunc;
}
@ -48,7 +48,7 @@ namespace AI
return null;
}
}
public class SequenceAI : AIBase
public class ThinkNode_Sequence : AIBase
{
public override JobBase GetJob(Entity.Entity target)
{
@ -61,33 +61,5 @@ namespace AI
return null; // 所有子节点完成时返回 null
}
}
public class ContinuousMove : AIBase
{
public override JobBase GetJob(Entity.Entity target)
{
return new MoveJob();
}
}
public class TrackPlayer : AIBase
{
public override JobBase GetJob(Entity.Entity target)
{
return new TrackPlayerJob();
}
}
public class RandomWander : AIBase
{
public override JobBase GetJob(Entity.Entity target)
{
return new WanderJob();
}
}
public class Idel : AIBase
{
public override JobBase GetJob(Entity.Entity target)
{
return new IdleJob();
}
}
}