private void DrawBehaviourLines(MovingAgent agent) { if (Utilities.IsLineCohesionDrawingOn) { if (agent.GetCohesionLine() != Vector2.Zero) { if (agent.GetCohesionWeight() > 0 && agent.GetCohesionWeight() < 0.2) { DrawLine(0.2f, Color.Blue, agent.Position, agent.GetCohesionLine()); } else { DrawLine(agent.GetCohesionWeight() + 0.2f, Color.Blue, agent.Position, agent.GetCohesionLine()); } } } if (Utilities.IsLineAlignmentDrawingOn) { if (agent.GetAlignmentLine() != Vector2.Zero) { if (agent.GetAlignmentWeight() > 0 && agent.GetAlignmentWeight() < 0.2) { DrawLine(0.2f, Color.Green, agent.Position, agent.GetAlignmentLine()); } else { DrawLine(agent.GetAlignmentWeight(), Color.Green, agent.Position, agent.GetAlignmentLine()); } } } if (Utilities.IsLineSeperationDrawingOn) { if (agent.GetSeperationLine() != Vector2.Zero) { if (agent.GetSeperationWeight() > 0 && agent.GetSeperationWeight() < 0.2) { DrawLine(0.2f, Color.Red, agent.Position, agent.GetSeperationLine()); } else { DrawLine(agent.GetSeperationWeight(), Color.Red, agent.Position, agent.GetSeperationLine()); } } } if (Utilities.IsLineSeekDrawingOn) { if (agent.GetSeekLine() != Vector2.Zero) { if (agent.GetSeekWeight() > 0 && agent.GetSeekWeight() < 0.2) { DrawLine(0.2f, Color.Yellow, agent.Position, agent.GetSeekLine()); } else { DrawLine(agent.GetAlignmentWeight(), Color.Yellow, agent.Position, agent.GetSeekLine()); } } } }