private void ConvertAgentDataToSequence(AgentJSONData agent, Dictionary <int, List <Sequence> > agentsAndSequences) { var sequences = new List <Sequence>(); agent.sequences.Sort(); for (var index = 0; index < agent.sequences.Count - 1; index++) { var agentSequence = agent.sequences[index]; var nextAgentSequence = agent.sequences[index + 1]; var startTime = agentSequence.endDate.Split(' ')[1].Split(':'); var startTimeSeconds = int.Parse(startTime[0]) * 3600 + int.Parse(startTime[1]) * 60 + Random.Range(0, 60); var startBuildingAlias = agentSequence.alias; var targetBuildingAlias = nextAgentSequence.alias; if (BuildingManager.HasBuilding(startBuildingAlias) && BuildingManager.HasBuilding(targetBuildingAlias)) { var sequence = new Sequence( int.Parse(agent.deviceId), BuildingManager.GetBuildingId(startBuildingAlias), BuildingManager.GetBuildingId(targetBuildingAlias), startTimeSeconds ); foreach (var id in nextAgentSequence.groupsWith) { sequence.AddGroupingAgent(id); } sequences.Add(sequence); } } agentsAndSequences.Add(int.Parse(agent.deviceId), sequences); }