Esempio n. 1
0
        static public SimObjectType SetSimType(string aspectName, Cons cons)
        {
            object[]      parseStr = ConsParams(cons);
            SimObjectType type     = GetObjectType(aspectName);
            SimTypeUsage  usage    = null;

            if (type.IsUseType)
            {
                usage = type.CreateObjectUsage(aspectName);
            }
            type.ParseAffect(usage, parseStr);
            return(type);
        }
Esempio n. 2
0
        static public SimTypeUsage CreateTypeUsage(string classname, params object[] parseStr)
        {
            if (parseStr.Length == 1 && parseStr[0] is object[])
            {
                parseStr = (object[])parseStr[0];
            }
            SimObjectType type = GetObjectType(classname);

            type.AddSuperType(USEABLE);
            type.IsUseType = true;
            SimTypeUsage usage = type.CreateObjectUsage(classname);

            type.ParseAffect(usage, parseStr);
            return(usage);
        }
Esempio n. 3
0
        static public SimObjectType CreateObjectType(string aspectName, params object[] parseStr)
        {
            if (parseStr.Length == 1 && parseStr[0] is object[])
            {
                parseStr = (object[])parseStr[0];
            }
            SimObjectType type1 = FindObjectType(aspectName);

            if (type1 == null)
            {
                type1 = new SimObjectType(aspectName);
                type1.ParseAffect(null, new object[] { "Match", "* " + aspectName + " *" });
                lock (objectTypes) objectTypes.Add(type1);
            }
            type1.ParseAffect(null, parseStr);
            return(type1);
        }
Esempio n. 4
0
 static public SimObjectType CreateObjectType(string aspectName, params object[] parseStr)
 {
     if (parseStr.Length == 1 && parseStr[0] is object[]) parseStr = (object[])parseStr[0];
     SimObjectType type1 = FindObjectType(aspectName);
     if (type1 == null)
     {
         type1 = new SimObjectType(aspectName);
         type1.ParseAffect(null, new object[] { "Match", "* " + aspectName + " *" });
         lock (objectTypes) objectTypes.Add(type1);
     }
     type1.ParseAffect(null, parseStr);
     return type1;
 }