🎣Fishing Rod

A specialized melee weapon that acts as your fishing rod. Handles casting, cooldowns, state activation, and integrates with hand-swapping for two-handed animations.

Requires: A FishingCaster on the same MAnimal, and a Fishing state in your Malbers state machine.


🔧 Inspector Settings

  • Cooldown Minimum time (in seconds) between casts. Prevents rapid spamming.

  • Middle Rod Offset Adjusts position, rotation, and scale when the rod is held with both hands (e.g., during reeling or idle poses).


📈 Key Behavior

  • Casting Triggered via the Main Attack input. On cast:

    • Checks for valid water using FishingCaster.TryCastToWater().

    • If successful, activates the Fishing state (ID 16 by default).

    • Passes the hit water object to the fishing state for fish spawning.

  • Unequipping Automatically blocked while in the fishing state. When forced (e.g., via inventory), it gracefully exits the fishing state.

  • Hand Swapping Implements IHandSwapper—supports switching between one-handed and two-handed grips. Use ApplyMiddleRodOffset() or animation events to apply the middle grip pose.

  • Rod Bending Feedback If a FishingRodBendController is attached, it receives hit/miss feedback to drive visual bending.


💡 Notes

  • Casting respects the cooldown even if it fails to find water.

  • Auto-assigns its FishingCaster on equip by searching the animal’s children.

Last updated