[fix] fixed bug in parseTimeLineElement and parseFunction
- damn you Lua arrays!!!
This commit is contained in:
@@ -97,7 +97,7 @@ class SimulationConfigParser(input: Map[String, Any], simulationBehaviours: Simu
|
||||
private def parseTimeLineElement(timeLineElement: Any): (Int, Option[Int]) = {
|
||||
timeLineElement match {
|
||||
case timeLineElement: Vector[_] => val elementVector = timeLineElement.asInstanceOf[Vector[Int]]
|
||||
(elementVector(1), if(timeLineElement.contains(2)) Some(elementVector(2)) else None)
|
||||
(elementVector(0), if(elementVector.size > 1) Some(elementVector(1)) else None)
|
||||
case timeLineElement: Map[_, _] => val elementMap = timeLineElement.asInstanceOf[Map[String, Int]]
|
||||
(elementMap("start"), if(elementMap.contains("end")) Some(elementMap("end")) else None)
|
||||
}
|
||||
@@ -111,7 +111,7 @@ class SimulationConfigParser(input: Map[String, Any], simulationBehaviours: Simu
|
||||
val start: Int = function(0).asInstanceOf[Int]
|
||||
// val end: Option[Int] = None // Not used
|
||||
val name: String = function(1).asInstanceOf[String]
|
||||
val args: Option[FunctionArgs] = if (function.contains(3)) Some(FunctionArgs(function(2).asInstanceOf[Map[String, Any]])) else None
|
||||
val args: Option[FunctionArgs] = if (function.size > 2) Some(FunctionArgs(function(2).asInstanceOf[Map[String, Any]])) else None
|
||||
if (!simulationBehaviours.get(name).isEmpty) funcPointer = Some((simulationBehaviours.get(name).get, args))
|
||||
Map[Int, Option[(SimulationBehaviour, Option[FunctionArgs])]](start -> funcPointer)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user