public ActiveEmotion(EmotionDTO emotionDTO, int threshold, int decay)
{
var occType = OCCEmotionType.Parse(emotionDTO.Type);
if(occType == null)
throw new Exception("Unknown emotion type");
this.EmotionType = occType.Name;
this.Valence = occType.Valence;
this.AppraisalVariables = occType.AppraisalVariables.ToArray();
this.InfluenceMood = occType.InfluencesMood;
this.CauseId = emotionDTO.CauseEventId;
this.Direction = null; //TODO: handle direction correctly
this.Threshold = threshold;
this.Decay = decay;
this.Intensity = emotionDTO.Intensity;
}