# Behavior : Boids

Author:Rex.Rainbow

- Calculate steer force by flocking algorithm.

Download

## Actions

## Force - clean

### Action:Clean

## Force - flocking

### Action:Cohesion

- Add cohesion force which remaining close to the centre of neighbors.
- Neighbors ( object ) : Object of neighbors
- Distance ( number ) : Cohesion distance, in pixels, to normalize the cohesion force.
- weight ( number ) : Weight of cohesion force.

### Action:Alignment

- Add alignment force which aligning to the average direction of neighbors.
- Neighbors ( object ) : Object of neighbors
- weight ( number ) : Weight of alignment force.

### Action:Separation

- Add separation force which retaining separation from close neighbours.
- Neighbors ( object ) : Object of neighbors
- Distance ( number ) : Separation distance, in pixels, to normalize the separation force.
- weight ( number ) : Weight of separation force.

## Forces

### Action:Apply force towards position

- Apply a force towards a position.
- X ( number ) : The X co-ordinate to apply the force towards.
- Y ( number ) : The Y co-ordinate to apply the force towards.
- Force ( number ) : The force to apply.

### Action:Apply force at angle

- Apply a force in a particular direction.
- Angle ( number ) : The angle, in degrees, to apply the force towards.
- Force ( number ) : The force to apply.

## Expressions

## Output

### Expression:ForceAngle

- Get angle of total attracting force.

### Expression:ForceMagnitude

- Get magnitude of total attracting force.

### Expression:ForceDx

- Get dx of total attracting force.

### Expression:ForceDy

- Get dy of total attracting force.

## Output - alignment

### Expression:LastAlignmentAngle

- Get last angle of alignment.

## Output - cohesion

### Expression:LastCohesionX

- Get last position X of cohesion.

### Expression:LastCohesionY

- Get last position Y of cohesion.

## Conditions

## Output

#### Condition:Has force

- Return true if force is not 0.