Table of Contents

Interface IAINavigation

Namespace
FishMMO.Shared.Core
Assembly
FishMMO.Shared.dll

Interface for AI navigation — controlling agent movement, stopping, and resuming. Separated from IAIController to satisfy ISP: consumers that only need navigation can depend on this smaller contract.

public interface IAINavigation : ICharacterBehaviour
Inherited Members

Properties

Agent

The NavMeshAgent component used for navigation.

NavMeshAgent Agent { get; }

Property Value

NavMeshAgent

Methods

Resume()

Resumes the agent's movement.

void Resume()

SetRandomDestination(float)

Sets a random destination within a radius around the current position.

bool SetRandomDestination(float radius)

Parameters

radius float

Radius to randomize destination.

Returns

bool

True if a reachable destination was found and set.

SetRandomHomeDestination(float)

Sets a random destination within a radius around the home position.

bool SetRandomHomeDestination(float radius)

Parameters

radius float

Radius to randomize destination.

Returns

bool

True if a reachable destination was found and set.

Stop()

Stops the agent's movement.

void Stop()

WarpTo(Vector3)

Places the agent at a world position, updating its NavMesh location rather than only its transform, and clears whatever it was doing.

bool WarpTo(Vector3 position)

Parameters

position Vector3

The world position to place the agent at.

Returns

bool

True if the agent was placed on the NavMesh.

Remarks

Exposed here so callers outside the AI assembly are not driven to UnityEngine.AI.NavMeshAgent.Warp(UnityEngine.Vector3) directly. The raw call skips NavMesh sampling, leaves the existing path in place so the agent immediately walks back, and throws when the agent is null or inactive — all three of which the pet summon path hit.