# Class "EntityFamiliar"

## Functions

### AddCoins () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void AddCoins ( int Value ) {: .copyable aria-label='Functions' }

### AddHearts () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void AddHearts ( int Hearts ) {: .copyable aria-label='Functions' }

### AddKeys () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void AddKeys ( int Keys ) {: .copyable aria-label='Functions' }

### AddToDelayed () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void AddToDelayed ( ) {: .copyable aria-label='Functions' }

Adds to delayed. This doesn't remove other flags!

### AddToFollowers () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void AddToFollowers ( ) {: .copyable aria-label='Functions' }

Adds to followers. This doesn't remove other flags!

### AddToOrbit () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void AddToOrbit ( int Layer ) {: .copyable aria-label='Functions' }

Adds to orbitals. This doesn't remove other flags!

### FireProjectile () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### [EntityTear](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/EntityTear/README.md) FireProjectile ( [Vector](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/Vector/README.md) Dir ) {: .copyable aria-label='Functions' }

Shoots a projectile from the center of the familiar in the direction you defined. If used on a familiar that shoots multiple projectiles (example: harlequin baby), this function will only return the left most projectile based on the direction. If used on familiars with special tears (example: Lil Brimstone,...), this will just shoot a regular tear. This function will not play the shoot animation of the familiar.

### FollowParent () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void FollowParent ( ) {: .copyable aria-label='Functions' }

### FollowPosition () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void FollowPosition ( [Vector](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/Vector/README.md) Pos ) {: .copyable aria-label='Functions' }

### GetOrbitDistance () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .static .tooltip .badge } [ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### static [Vector](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/Vector/README.md) GetOrbitDistance ( int Layer ) {: .copyable aria-label='Functions' }

### GetOrbitPosition () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### [Vector](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/Vector/README.md) GetOrbitPosition ( [Vector](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/Vector/README.md) Pos ) {: .copyable aria-label='Functions' }

Returns the position of an orbiting familiar relative to the player's position. Returns `:::lua Vector(0,0) if its a normal familiar.` The "pos" argument is used as an offset.

### MoveDelayed () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void MoveDelayed ( int NumFrames ) {: .copyable aria-label='Functions' }

### MoveDiagonally () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void MoveDiagonally ( float Speed ) {: .copyable aria-label='Functions' }

### PickEnemyTarget () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void PickEnemyTarget ( float MaxDistance, int FrameInterval ) {: .copyable aria-label='Functions' }

### PlayChargeAnim () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void PlayChargeAnim ( [Direction](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/enums/Direction/README.md) Dir ) {: .copyable aria-label='Functions' }

### PlayFloatAnim () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void PlayFloatAnim ( [Direction](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/enums/Direction/README.md) Dir ) {: .copyable aria-label='Functions' }

### PlayShootAnim () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void PlayShootAnim ( [Direction](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/enums/Direction/README.md) Dir ) {: .copyable aria-label='Functions' }

### RecalculateOrbitOffset () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### int RecalculateOrbitOffset ( int Layer, boolean Add ) {: .copyable aria-label='Functions' }

Returns the number of familiars in that layer.

### RemoveFromDelayed () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void RemoveFromDelayed ( ) {: .copyable aria-label='Functions' }

### RemoveFromFollowers () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void RemoveFromFollowers ( ) {: .copyable aria-label='Functions' }

### RemoveFromOrbit () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void RemoveFromOrbit ( ) {: .copyable aria-label='Functions' }

### Shoot () {: aria-label='Functions' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### void Shoot ( ) {: .copyable aria-label='Functions' }

???+ bug "Bugs" This function does not seem to work.

## Variables

### Coins {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### int Coins  {: .copyable aria-label='Variables' }

### FireCooldown {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### int FireCooldown  {: .copyable aria-label='Variables' }

### HeadFrameDelay {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### int HeadFrameDelay  {: .copyable aria-label='Variables' }

### Hearts {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### int Hearts  {: .copyable aria-label='Variables' }

### Keys {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### int Keys  {: .copyable aria-label='Variables' }

### LastDirection {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### [Direction](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/enums/Direction/README.md) LastDirection  {: .copyable aria-label='Variables' }

### MoveDirection {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### [Direction](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/enums/Direction/README.md) MoveDirection  {: .copyable aria-label='Variables' }

### OrbitAngleOffset {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### float OrbitAngleOffset  {: .copyable aria-label='Variables' }

Can be used to override the angular position of the familiar on its orbit based on the initial starting position of the orbit.

???- example "Example Code" This code will make all of your orbitals move as a tight wall around you.

```lua
    for i,v in ipairs(Isaac.GetRoomEntities()) do 
    if v.Type==3 then 
    v:ToFamiliar().OrbitAngleOffset = 0.25*i 
    end 
    end
```

```
Result: ![angle offset](https://raw.githubusercontent.com/wofsauge/IsaacDocs/master/customImg/example_familiar_angleOffset.png)
```

### OrbitDistance {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### [Vector](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/Vector/README.md) OrbitDistance  {: .copyable aria-label='Variables' }

Defines the orbit of the familiar, if its an orbital. The Vector is interpreted as the dimensions of the circle/oval orbit. Example: `:::lua Vector(110,90)` is the orbital of "Forever alone".

### Player {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### [EntityPlayer](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/EntityPlayer/README.md) Player  {: .copyable aria-label='Variables' }

### RoomClearCount {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### int RoomClearCount  {: .copyable aria-label='Variables' }

### ShootDirection {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### [Direction](https://github.com/wofsauge/IsaacDocs/tree/420a6aaa54ea230461fb26e61297c068492684de/beta/enums/Direction/README.md) ShootDirection  {: .copyable aria-label='Variables' }

### State {: aria-label='Variables' }

[ ](/ab_p/beta/docs/entityfamiliar.md){: .abp .tooltip .badge }

#### int State  {: .copyable aria-label='Variables' }


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.moddingofisaac.com/ab_p/beta/docs/entityfamiliar.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
