virtual void update()override
	{
		for (auto& uni : m_units)
		{
			uni.update();

			//言ったりきたり
			if (uni.getProgressRate() == 1.0)
			{
				if (m_leftPos.distanceFrom(uni.m_pos) > m_rightPos.distanceFrom(uni.m_pos))
				{
					uni.setPath(m_leftPos);
				}
				else
				{
					uni.setPath(m_rightPos);
				}
			}
		}


		switch (m_state.m_state)
		{
		case 0:
		{
			const bool finish = AllOf(m_units, [](const BossUnitBase& unit){ return unit.m_shot->isFinished(); });
			if (finish)
			{
				m_state.nextState(120);
			}
			break;
		}
		case 1:

			if (m_state.isFinished())
			{
				m_isFinish = true;
			}
			break;
		case 2:
			break;
		default:
			break;
		}

		m_state.update();
	}