Files
crystall-punk-14/Content.Client/GameObjects/Components/Weapons/Ranged/ClientRangedWeaponComponent.cs

30 lines
849 B
C#
Raw Normal View History

using System;
using Content.Shared.GameObjects.Components.Weapons.Ranged;
2019-07-31 15:02:36 +02:00
using Robust.Shared.GameObjects;
using Robust.Shared.Interfaces.Timing;
using Robust.Shared.IoC;
using Robust.Shared.Map;
namespace Content.Client.GameObjects.Components.Weapons.Ranged
{
2019-07-31 15:02:36 +02:00
[RegisterComponent]
public sealed class ClientRangedWeaponComponent : SharedRangedWeaponComponent
{
private TimeSpan _lastFireTime;
private int _tick;
public void TryFire(GridCoordinates worldPos)
{
var curTime = IoCManager.Resolve<IGameTiming>().CurTime;
var span = curTime - _lastFireTime;
if (span.TotalSeconds < 1 / FireRate)
{
return;
}
_lastFireTime = curTime;
SendNetworkMessage(new FireMessage(worldPos, _tick++));
}
}
}