예제 #1
0
 public static void AddParameter(string p_parameterName, object p_value, bool p_addToNextScene, bool p_replaceParametersWithSameName)
 {
     if (p_addToNextScene)
     {
         ParametersToPassToNextScene.AddParameter(p_parameterName, p_value, p_replaceParametersWithSameName);
     }
     else
     {
         bool p_containParameterWithName = CurrentSceneParameters.ContainsParameterName(p_parameterName);
         CurrentSceneParameters.AddParameter(p_parameterName, p_value, p_replaceParametersWithSameName);
         if (OnParameterAdded != null && (!p_containParameterWithName || p_replaceParametersWithSameName))
         {
             OnParameterAdded(p_parameterName, p_value);
         }
     }
 }
예제 #2
0
 private static void ApplyNextParametersInCurrentParamenters()
 {
     CurrentSceneParameters = new SceneParameters();
     if (ParametersToPassToNextScene != null)
     {
         CurrentSceneParameters.Message = ParametersToPassToNextScene.Message;
         foreach (AOTKeyValuePair <string, object> v_pair in ParametersToPassToNextScene.GetAllParameters())
         {
             if (v_pair != null)
             {
                 AddParameter(v_pair.Key, v_pair.Value, false, true);
             }
         }
     }
     ParametersToPassToNextScene = null;
 }