Esempio n. 1
0
        private string GetAssetLink(
            string defName, UInt32 control, int element)
        {
            BINEntry entry = GetBINEntry(defName);

            if (entry != null)
            {
                DefinitionType def =
                    FileDatabase.Instance.Definitions.GetDefinition(
                        entry.Definition);

                def.ReadIn(entry);

                FableMod.ContentManagement.Control c =
                    def.FindControl(control);

                if (c != null)
                {
                    Member mbr = (Member)c.Members[element];

                    ContentObject o = ContentManager.Instance.FindEntry(
                        mbr.Link.To, mbr.Value);

                    if (o != null)
                    {
                        return(o.Name);
                    }
                }
            }

            return(null);
        }
Esempio n. 2
0
        public FormCutscene(BINEntry cutscene)
        {
            InitializeComponent();

            myCutscene = cutscene;

            Text = "Cutscene: " + myCutscene.Name;

            myDefType = ContentManager.Instance.Definitions.GetDefinition(
                myCutscene.Definition);

            myDefType.ReadIn(myCutscene);

            myMode1 = myDefType.FindControl(0x5A1E6CA9);
            myMode2 = myDefType.FindControl(0xC1CABAFF);
            myMode3 = myDefType.FindControl(0x4FC34512);

            textBox1.Text = GetScript(myMode1);
            textBox2.Text = GetScript(myMode2);
            textBox3.Text = GetScript(myMode3);

            myModified = false;
        }
Esempio n. 3
0
        private void AssetLink(
            BINEntry entryDst,
            AssetTemplate assetItem, UInt32 assetId)
        {
            DefinitionType def =
                ContentManager.Instance.Definitions.GetDefinition(
                    entryDst.Definition);

            def.ReadIn(entryDst);

            FableMod.ContentManagement.Control c =
                def.FindControl(assetItem.ControlID);

            if (c != null)
            {
                ((Member)c.Members[assetItem.Element]).Value =
                    assetId.ToString();

                def.Write(entryDst);
            }

            def = null;
        }
Esempio n. 4
0
        protected override void ShowSelectedEntry()
        {
            ContentManager mgr = ContentManager.Instance;

            ContentObject obj = mgr.FindEntry(
                LinkDestination.GameBINEntryName,
                Selected.Name);

            if (obj != null)
            {
                // Open the model.

                DefinitionType defType = mgr.Definitions.GetDefinition(
                    Selected.Definition);

                if (defType != null)
                {
                    defType.ReadIn(Selected);

                    FableMod.ContentManagement.Control c =
                        defType.FindControl(0xC8636B2E);

                    if (c != null && c.Members.Count == 5)
                    {
                        Member m = (Member)c.Members[1];

                        mgr.ShowEntry(
                            LinkDestination.ModelID,
                            m.Value,
                            true);
                    }

                    c       = null;
                    defType = null;
                }
            }
        }