コード例 #1
0
 internal void SetVar(string name, object value)
 {
     if (name.Contains('.'))
     {
         try
         {
             if (globalvars.ContainsKey(name.Split('.')[0]))
             {
                 if (globalvars[name.Split('.')[0]] is Instance)
                 {
                     (globalvars[name.Split('.')[0]] as Instance).SetVar(name.Substring(name.IndexOf('.') + 1), value);
                 }
                 else if (globalvars[name.Split('.')[0]] is vArray)
                 {
                     (globalvars[name.Split('.')[0]] as vArray).SetValue(name.Substring(name.IndexOf('.') + 1), value);
                 }
                 else
                 {
                     parent.Error("Var not found!", "Could not find variable: " + name + " in globalvars of thread: " + this.Name);
                 }
             }
         }
         catch
         {
         }
     }
     else
     {
         if (globalvars.ContainsKey(name))
         {
             globalvars[name] = value;
         }
         else
         {
             globalvars.Add(name, value);
         }
     }
 }