Exemple #1
0
        public void Start(Entity entity)
        {
            var charging  = entity.Find <ActionTimer>();
            var transform = entity.Tr;

            if (transform == null || charging == null)
            {
                Owner.DefaultPostAdvance(this);
                return;
            }
            var force = transform.forward * ForceRange.Lerp(Mathf.Clamp01(charging.ElapsedTime / MaxChargeTime));

            var rb = entity.Find <RigidbodyComponent>();

            if (rb != null)
            {
                entity.Post(new AddForceEvent(rb.Rb, force));
            }
            Owner.DefaultPostAdvance(this);
        }