Example #1
0
        public static NPCScript GetOrAdd(uint loadedObjectID, string fileName, NPCScriptType type)
        {
            var script = Envir.Scripts.SingleOrDefault(x => x.Value.FileName.Equals(fileName, StringComparison.OrdinalIgnoreCase) && x.Value.LoadedObjectID == loadedObjectID).Value;

            if (script != null)
            {
                return(script);
            }

            return(new NPCScript(loadedObjectID, fileName, type));
        }
Example #2
0
        private NPCScript(uint loadedObjectID, string fileName, NPCScriptType type)
        {
            ScriptID = ++Envir.ScriptIndex;

            LoadedObjectID = loadedObjectID;
            FileName       = fileName;
            Type           = type;

            Load();

            Envir.Scripts.Add(ScriptID, this);
        }
Example #3
0
        public NPCScript(uint loadedObjectID, string fileName, NPCScriptType type)
        {
            ScriptID = ++Envir.ScriptIndex;

            LoadedObjectID = loadedObjectID;
            FileName       = fileName;
            Type           = type;

            LoadInfo();
            LoadGoods();

            Envir.Scripts.Add(ScriptID, this);
        }