Initial Commit

This commit is contained in:
Simeon Radivoev 2022-02-12 12:53:50 +02:00
commit ee5c2f922d
Signed by: simeonradivoev
GPG key ID: 7611A451D2A5D37A
2255 changed files with 547750 additions and 0 deletions

View file

@ -0,0 +1,39 @@
using Unity.Entities;
using UnityEngine;
using Zenject;
namespace DefaultNamespace
{
public class ParticleCollisionSystem : InjectableComponentSystem
{
[Inject] private SoundManager soundManager;
protected override void OnSystemUpdate()
{
Entities.WithAll<ParticleCollisionEventContainer>()
.ForEach(
(Entity entity, ParticleCollisionData collision) =>
{
var events = EntityManager.GetBuffer<ParticleCollisionEventContainer>(entity);
foreach (var e in events)
{
var force = e.Evnt.velocity.magnitude;
if (force >= collision.ImpactForceRange.x)
{
soundManager.PlayClip(EntityManager, collision.ImpactSounds, e.Evnt.intersection);
break;
}
}
events = EntityManager.GetBuffer<ParticleCollisionEventContainer>(entity);
events.Clear();
});
}
}
[InternalBufferCapacity(8)]
public struct ParticleCollisionEventContainer : IBufferElementData
{
public ParticleCollisionEvent Evnt;
}
}