28 lines
702 B
C#
28 lines
702 B
C#
using Encompass;
|
|
using PongFE.Components;
|
|
using PongFE.Messages;
|
|
|
|
namespace PongFE.Engines
|
|
{
|
|
[Reads(
|
|
typeof(IncreaseScoreAfterDestroyComponent)
|
|
)]
|
|
[Receives(typeof(DestroyMessage))]
|
|
[Sends(typeof(ScoreMessage))]
|
|
public class DestroyEngine : Engine
|
|
{
|
|
public override void Update(double dt)
|
|
{
|
|
foreach (ref readonly var message in ReadMessages<DestroyMessage>())
|
|
{
|
|
if (HasComponent<IncreaseScoreAfterDestroyComponent>(message.Entity))
|
|
{
|
|
SendMessage(new ScoreMessage(message.DestroyedBy));
|
|
}
|
|
|
|
Destroy(message.Entity);
|
|
}
|
|
}
|
|
}
|
|
}
|