Files
wwdpublic/Content.Client/_Goobstation/Fishing/FishingSystem.cs
Will-Oliver-Br 322dba921b Port Fishing 2.0 (#2416)
# Description

Continuation of this
[PR](https://github.com/Simple-Station/Einstein-Engines/pull/2398)

Port fishing from
[Goob-Station](https://github.com/Goob-Station/Goob-Station). Some PRs
from [Wizards](https://github.com/space-wizards/space-station-14) and
sprites from [TG](https://github.com/tgstation/tgstation).
Prs:
https://github.com/space-wizards/space-station-14/pull/30921
https://github.com/Goob-Station/Goob-Station/pull/1970
https://github.com/Goob-Station/Goob-Station/pull/2416

---

# TODO

- [x] Port fishing
- [x] Add more fish

---

<details><summary><h1>Media</h1></summary>
<p>

![Captura de tela 2025-05-04
182540](https://github.com/user-attachments/assets/d6e7984a-b1a2-4dfd-92af-12e968e7e291)
![Captura de tela 2025-05-04
182739](https://github.com/user-attachments/assets/781f2c52-f053-4171-9af1-632979f841ac)

</p>
</details>

---

# Changelog

🆑 Rouden, Aidenkrz, Aviu, Will-Oliver-Br
- add: Added fishing.

---------

Co-authored-by: Rouden <149893554+Roudenn@users.noreply.github.com>
Co-authored-by: Aidenkrz <aiden@djkraz.com>
Co-authored-by: GoobBot <uristmchands@proton.me>
Co-authored-by: Aiden <28298836+Aidenkrz@users.noreply.github.com>
Co-authored-by: Aviu00 <93730715+Aviu00@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

(cherry picked from commit e61def844e5d116d28c4a5ee4e88b1c5a2186937)
2025-05-10 00:57:56 +03:00

37 lines
1.5 KiB
C#

using Content.Client._Goobstation.Fishing.Overlays;
using Content.Shared._Goobstation.Fishing.Components;
using Content.Shared._Goobstation.Fishing.Systems;
using Robust.Client.Graphics;
using Robust.Client.Player;
using Robust.Shared.Map;
using Robust.Shared.Prototypes;
namespace Content.Client._Goobstation.Fishing;
public sealed class FishingSystem : SharedFishingSystem
{
[Dependency] private readonly IOverlayManager _overlay = default!;
[Dependency] private readonly IPlayerManager _player = default!;
public override void Initialize()
{
base.Initialize();
_overlay.AddOverlay(new FishingOverlay(EntityManager, _player));
}
public override void Shutdown()
{
base.Shutdown();
_overlay.RemoveOverlay<FishingOverlay>();
}
// Does nothing on client, because can't spawn entities in prediction
protected override void SetupFishingFloat(Entity<FishingRodComponent> fishingRod, EntityUid player, EntityCoordinates target) {}
// Does nothing on client, because can't delete entities in prediction
protected override void ThrowFishReward(EntProtoId fishId, EntityUid fishSpot, EntityUid target) {}
// Does nothing on client, because NUKE ALL PREDICTION!!!! (UseInHands event sometimes gets declined on Server side, and it desyncs, so we can't predict that sadly.
protected override void CalculateFightingTimings(Entity<ActiveFisherComponent> fisher, ActiveFishingSpotComponent activeSpotComp) {}
}