Table of Contents

Class SlugNPCAI

Namespace
MoreSlugcats
Assembly
Assembly-CSharp.dll
public class SlugNPCAI : ArtificialIntelligence, IUseItemTracker, IAINoiseReaction, IUseARelationshipTracker, IReactToSocialEvents, FriendTracker.IHaveFriendTracker
Inheritance
SlugNPCAI
Implements
Inherited Members

Constructors

SlugNPCAI(AbstractCreature, World)

public SlugNPCAI(AbstractCreature creature, World world)

Parameters

creature AbstractCreature
world World

Fields

alreadyIdledAt

public List<WorldCoordinate> alreadyIdledAt

Field Value

List<WorldCoordinate>

attackPos

public WorldCoordinate attackPos

Field Value

WorldCoordinate

behaviorType

public SlugNPCAI.BehaviorType behaviorType

Field Value

SlugNPCAI.BehaviorType

catchDelay

public int catchDelay

Field Value

int

catchPoles

public bool catchPoles

Field Value

bool

changeAttackPositionDelay

public int changeAttackPositionDelay

Field Value

int

combatDebug

public SlugNPCAI.CombatDebug combatDebug

Field Value

SlugNPCAI.CombatDebug

cutCorners

public bool cutCorners

Field Value

bool

followCloseness

public float followCloseness

Field Value

float

foodPreference

public float[] foodPreference

Field Value

float[]

foodReaction

public int foodReaction

Field Value

int

forceJump

public int forceJump

Field Value

int

grabTarget

public PhysicalObject grabTarget

Field Value

PhysicalObject

heldWiggle

public int heldWiggle

Field Value

int

idleCounter

public int idleCounter

Field Value

int

jumpDir

public int jumpDir

Field Value

int

jumping

public bool jumping

Field Value

bool

lastIdleSpot

public WorldCoordinate? lastIdleSpot

Field Value

WorldCoordinate?

nap

public bool nap

Field Value

bool

pathingAssist

public SlugNPCAI.PathingAssist pathingAssist

Field Value

SlugNPCAI.PathingAssist

personalityDebug

public SlugNPCAI.PersonalityDebug personalityDebug

Field Value

SlugNPCAI.PersonalityDebug

playPos

public Vector2 playPos

Field Value

Vector2

playWithItem

public bool playWithItem

Field Value

bool

previousAttackPositions

public List<IntVector2> previousAttackPositions

Field Value

List<IntVector2>

testIdlePos

public WorldCoordinate testIdlePos

Field Value

WorldCoordinate

testThrowPos

public WorldCoordinate testThrowPos

Field Value

WorldCoordinate

throwAtTarget

public int throwAtTarget

Field Value

int

toldToPlay

public int toldToPlay

Field Value

int

transportDelay

public int transportDelay

Field Value

int

turnDelay

public int turnDelay

Field Value

int

Properties

FunStuff

public bool FunStuff { get; }

Property Value

bool

IsFull

public bool IsFull { get; }

Property Value

bool

abstractAI

public SlugNPCAbstractAI abstractAI { get; }

Property Value

SlugNPCAbstractAI

cat

public Player cat { get; }

Property Value

Player

Methods

AnyClimb()

public bool AnyClimb()

Returns

bool

AteFood(PhysicalObject)

public void AteFood(PhysicalObject food)

Parameters

food PhysicalObject

AttackUpdate(ref WorldCoordinate, CreatureRepresentation)

public WorldCoordinate AttackUpdate(ref WorldCoordinate coord, Tracker.CreatureRepresentation target)

Parameters

coord WorldCoordinate
target Tracker.CreatureRepresentation

Returns

WorldCoordinate

AttackingPrey()

public bool AttackingPrey()

Returns

bool

AttackingThreat()

public bool AttackingThreat()

Returns

bool

CanGrabItem(PhysicalObject)

public bool CanGrabItem(PhysicalObject obj)

Parameters

obj PhysicalObject

Returns

bool

CareAboutHitting(Creature, Creature)

public bool CareAboutHitting(Creature crit, Creature intendedTarget)

Parameters

crit Creature
intendedTarget Creature

Returns

bool

Communicate(Player)

public void Communicate(Player player)

Parameters

player Player

CorridorClimbing()

public bool CorridorClimbing()

Returns

bool

CreateTrackerRepresentationForCreature(AbstractCreature)

public override Tracker.CreatureRepresentation CreateTrackerRepresentationForCreature(AbstractCreature otherCreature)

Parameters

otherCreature AbstractCreature

Returns

Tracker.CreatureRepresentation

DecideBehavior()

public void DecideBehavior()

DefineFollowCloseness()

public void DefineFollowCloseness()

FindAttackPosition(CreatureRepresentation)

public void FindAttackPosition(Tracker.CreatureRepresentation target)

Parameters

target Tracker.CreatureRepresentation

GetFoodType(PhysicalObject)

public SlugNPCAI.Food GetFoodType(PhysicalObject food)

Parameters

food PhysicalObject

Returns

SlugNPCAI.Food

GetUpcoming()

public List<MovementConnection> GetUpcoming()

Returns

List<MovementConnection>

GiftRecieved(OwnedItemOnGround)

public void GiftRecieved(SocialEventRecognizer.OwnedItemOnGround giftOfferedToMe)

Parameters

giftOfferedToMe SocialEventRecognizer.OwnedItemOnGround

GoodAttackPos(CreatureRepresentation, int)

public bool GoodAttackPos(Tracker.CreatureRepresentation target, int chunk)

Parameters

target Tracker.CreatureRepresentation
chunk int

Returns

bool

HasEdible()

public bool HasEdible()

Returns

bool

HasLethal(Creature)

public bool HasLethal(Creature creature)

Parameters

creature Creature

Returns

bool

HasLethal(Creature, bool)

public bool HasLethal(Creature creature, bool actuallyLethal)

Parameters

creature Creature
actuallyLethal bool

Returns

bool

HoldingThis(PhysicalObject)

public bool HoldingThis(PhysicalObject obj)

Parameters

obj PhysicalObject

Returns

bool

IdleBehavior()

public WorldCoordinate? IdleBehavior()

Returns

WorldCoordinate?

IdleScore(WorldCoordinate)

public float IdleScore(WorldCoordinate tstPs)

Parameters

tstPs WorldCoordinate

Returns

float

Jump(int, bool, ref InputPackage)

public void Jump(int direction, bool catchPoles, ref Player.InputPackage input)

Parameters

direction int
catchPoles bool
input Player.InputPackage

LethalWeaponScore(PhysicalObject, Creature)

public float LethalWeaponScore(PhysicalObject obj, Creature target)

Parameters

obj PhysicalObject
target Creature

Returns

float

Move()

public void Move()

NearestLethalWeapon(Creature)

public PhysicalObject NearestLethalWeapon(Creature target)

Parameters

target Creature

Returns

PhysicalObject

NeuronsLegal()

public bool NeuronsLegal()

Returns

bool

NoSolidTilesBetween(int, int, int)

public bool NoSolidTilesBetween(int xA, int xB, int y)

Parameters

xA int
xB int
y int

Returns

bool

OnAnyBeam()

public bool OnAnyBeam()

Returns

bool

OnHorizontalBeam()

public bool OnHorizontalBeam()

Returns

bool

OnVerticalBeam()

public bool OnVerticalBeam()

Returns

bool

PassingGrab()

public void PassingGrab()

ReactToNoise(TheorizedSource, InGameNoise)

public void ReactToNoise(NoiseTracker.TheorizedSource source, InGameNoise noise)

Parameters

source NoiseTracker.TheorizedSource
noise InGameNoise

SeeThrownWeapon(PhysicalObject, Creature)

public void SeeThrownWeapon(PhysicalObject obj, Creature thrower)

Parameters

obj PhysicalObject
thrower Creature

SetupFoodPrefs()

public void SetupFoodPrefs()

SocialEvent(EventID, Creature, Creature, PhysicalObject)

public void SocialEvent(SocialEventRecognizer.EventID ID, Creature subjectCrit, Creature objectCrit, PhysicalObject involvedItem)

Parameters

ID SocialEventRecognizer.EventID
subjectCrit Creature
objectCrit Creature
involvedItem PhysicalObject

SpearThrowPositionScore(WorldCoordinate, IntVector2, ref List<IntVector2>)

public float SpearThrowPositionScore(WorldCoordinate tst, IntVector2 creaturePosition, ref List<IntVector2> creatureMovementArea)

Parameters

tst WorldCoordinate
creaturePosition IntVector2
creatureMovementArea List<IntVector2>

Returns

float

TheoreticallyEatMeat(Creature, bool)

public bool TheoreticallyEatMeat(Creature crit, bool excludeCentipedes)

Parameters

crit Creature
excludeCentipedes bool

Returns

bool

TileClimbable(WorldCoordinate)

public bool TileClimbable(WorldCoordinate coordinate)

Parameters

coordinate WorldCoordinate

Returns

bool

TrackItem(AbstractPhysicalObject)

public bool TrackItem(AbstractPhysicalObject obj)

Parameters

obj AbstractPhysicalObject

Returns

bool

TravelPreference(MovementConnection, PathCost)

public override PathCost TravelPreference(MovementConnection coord, PathCost cost)

Parameters

coord MovementConnection
cost PathCost

Returns

PathCost

Tunnel(WorldCoordinate)

public bool Tunnel(WorldCoordinate coordinate)

Parameters

coordinate WorldCoordinate

Returns

bool

Update()

public override void Update()

WantsToEatThis(PhysicalObject)

public bool WantsToEatThis(PhysicalObject obj)

Parameters

obj PhysicalObject

Returns

bool