Applied Factory design pattern for creating game objects