Example #1
0
 public ListViewItemSCraft(MagicRecord record) : base(record)
 {
     SubItems.Add("");
     SubItems.Add("");
     SubItems.Add("");
     UpdateListViewItem(record);
 }
Example #2
0
 public override void UpdateListViewItem(MagicRecord record)
 {
     SubItems[0].Text = record.Name;
     SubItems[1].Text = record.TargetingType;
     SubItems[2].Text = record.Description2ndLine;
     SubItems[3].Text = record.Cost.ToString();
 }
 public override void UpdateListViewItem(MagicRecord record)
 {
     SubItems[0].Text = record.Name;
     SubItems[1].Text = record.OwnerIDString;
     SubItems[2].Text = record.Description2ndLine;
     SubItems[3].Text = record.Cost.ToString();
     SubItems[4].Text = record.IsForAltAttackMode().ToString();
 }
Example #4
0
 public ListViewItemBraveOrder(MagicRecord record) : base(record)
 {
     SubItems.Add("");
     //SubItems.Add("");
     SubItems.Add("");
     SubItems.Add("");
     SubItems.Add("");
     SubItems.Add("");
     UpdateListViewItem(record);
 }
Example #5
0
 private List <byte> ParseMagicRecords(HeaderRecord header, List <byte> fileData)
 {
     magicRecords = new List <MagicRecord>();
     for (int i = 0; i < header.InitialSize; i++)
     {
         MagicRecord magicRecord = new MagicRecord(fileData, nameTable);
         magicRecords.Add(magicRecord);
         fileData = fileData.Skip(magicRecord.Size).ToList();
     }
     header.RecordCount = magicRecords.Count;
     return(fileData);
 }
Example #6
0
        private void OpenStatusEffectsBtn_Click(object sender, EventArgs e)
        {
            ListViewItemMagic selectedItem = null;

            foreach (ListViewItemMagic item in TMagicList.Items)
            {
                if (item.Selected)
                {
                    selectedItem = item; break;
                }
            }
            if (selectedItem == null)
            {
                return;
            }
            MagicRecord            magicRecord = magicTable.GetMagicRecords().First(i => selectedItem.CompareKey(i.ID, i.ForAltAttackMode));
            MagicStatusEffectsForm form        = new MagicStatusEffectsForm(magicRecord);

            form.ShowDialog();
            selectedItem.UpdateListViewItem(magicRecord);
        }
        public MagicRecordForm(MagicRecord magicRecord, NameTable nameTable)
        {
            this.magicRecord = magicRecord;
            InitializeComponent();

            IDBox.Minimum = short.MinValue;
            IDBox.Maximum = short.MaxValue;
            IDBox.Value   = magicRecord.ID;
            IDBox.Enabled = false;

            if (magicRecord.OwnerIDString != null)
            {
                Dictionary <short, string> ownerIDMap = nameTable.PLAYABLE_OWNER_ID_STRING_PAIRS;
                OwnerBox.DataSource    = new BindingSource(ownerIDMap, null);
                OwnerBox.DisplayMember = "Value";
                OwnerBox.ValueMember   = "Key";
                OwnerBox.SelectedItem  = new KeyValuePair <short, string>(magicRecord.OwnerID, magicRecord.OwnerIDString);
            }
            else
            {
                OwnerBox.Enabled = false;
            }

            targetingFlags = new TargetingFlags(magicRecord.TargetingType);
            targetingFlags.LoadFlagsIntoUI(TargetingFlagsGroupBox, Provide1stLineBox);

            ActionIntentBox.DataSource   = Enum.GetValues(typeof(ActionIntentType));
            ActionIntentBox.SelectedItem = magicRecord.ActionIntent;
            ElementBox.DataSource        = Enum.GetValues(typeof(ElementType));
            ElementBox.SelectedItem      = magicRecord.Element;
            CastTimeBox.Minimum          = byte.MinValue;
            CastTimeBox.Maximum          = byte.MaxValue;
            CastTimeBox.Value            = magicRecord.CastTime;
            DelayBox.Minimum             = byte.MinValue;
            DelayBox.Maximum             = byte.MaxValue;
            DelayBox.Value           = magicRecord.Delay;
            CostBox.Minimum          = short.MinValue;
            CostBox.Maximum          = short.MaxValue;
            CostBox.Value            = magicRecord.Cost;
            LevelUnlockedBox.Minimum = byte.MinValue;
            LevelUnlockedBox.Maximum = byte.MaxValue;
            LevelUnlockedBox.Value   = magicRecord.LevelUnlocked;
            MenuSortOrderBox.Minimum = short.MinValue;
            MenuSortOrderBox.Maximum = short.MaxValue;
            MenuSortOrderBox.Value   = magicRecord.MenuSortOrder;

            UnbalanceBox.Minimum            = byte.MinValue;
            UnbalanceBox.Maximum            = byte.MaxValue;
            UnbalanceBox.Value              = magicRecord.Unbalance;
            BreakDamageBox.Minimum          = short.MinValue;
            BreakDamageBox.Maximum          = short.MaxValue;
            BreakDamageBox.Value            = (short)magicRecord.BreakDamage;
            BraveOrderTurnLengthBox.Minimum = short.MinValue;
            BraveOrderTurnLengthBox.Maximum = short.MaxValue;
            if (magicRecord.MagicboRecord != null)
            {
                BraveOrderTurnLengthBox.Value = magicRecord.MagicboRecord.BraveOrderTurnLength;
            }
            else
            {
                BraveOrderTurnLengthBox.Enabled = false;
            }

            SelectionTypeBox.DataSource   = Enum.GetValues(typeof(TargetSelectionType));
            SelectionTypeBox.SelectedItem = magicRecord.SelectionType;
            MaxRangeRadiusBox.Value       = (decimal)magicRecord.MaxRangeRadius;
            SelectionRadiusBox.Minimum    = byte.MinValue;
            SelectionRadiusBox.Maximum    = byte.MaxValue;
            SelectionRadiusBox.Value      = magicRecord.SelectionRadius;

            Description1stLineBox.Text = magicRecord.Description1stLine;
            Description2ndLineBox.Text = magicRecord.Description2ndLine;
            NameBox.Text          = magicRecord.Name;
            AnimationNameBox.Text = magicRecord.AnimationName;
        }
Example #8
0
 public abstract void UpdateListViewItem(MagicRecord record);
Example #9
0
 public ListViewItemMagic(MagicRecord record)
 {
     id = record.ID; forAltAttackMode = record.ForAltAttackMode;
 }
Example #10
0
        public MagicStatusEffectsForm(MagicRecord magicRecord)
        {
            this.magicRecord = magicRecord; magicboRecord = magicRecord.MagicboRecord;
            List <RegStatusEffect>  regStatusEffects = magicRecord.StatusEffects.Select(i => new RegStatusEffect(i.ToBytes())).ToList();
            List <BraveOrderEffect> boStatusEffects  = null;

            InitializeComponent();

            List <StatusEffectGroupBoxContents> regCollection = new List <StatusEffectGroupBoxContents> {
                new StatusEffectGroupBoxContents(RegStatusEffect1GroupBox, RegStatusEffect1TextBox),
                new StatusEffectGroupBoxContents(RegStatusEffect2GroupBox, RegStatusEffect2TextBox),
                new StatusEffectGroupBoxContents(RegStatusEffect3GroupBox, RegStatusEffect3TextBox),
                new StatusEffectGroupBoxContents(RegStatusEffect4GroupBox, RegStatusEffect4TextBox),
                new StatusEffectGroupBoxContents(RegStatusEffect5GroupBox, RegStatusEffect5TextBox)
            };
            StatusEffectModifySection regModifySection = new StatusEffectModifySection()
            {
                strBox  = RegStatusEffectID_StrBox,
                numBox  = RegStatusEffectID_NumBox,
                arg1Box = RegStatusEffectArg1Box,
                arg2Box = RegStatusEffectArg2Box,
                arg3Box = RegStatusEffectArg3Box
            };

            RegStatusEffectType[]      regStatusEffectTypesArray = (RegStatusEffectType[])Enum.GetValues(typeof(RegStatusEffectType));
            Dictionary <short, string> statusEffectTypes         = regStatusEffectTypesArray.OrderBy(i => i.ToString()).ToDictionary(i => (short)i, i => i.ToString());

            regStatusEffectGroupBoxCollection =
                new StatusEffectGroupBoxCollection <RegStatusEffect>(regStatusEffects, StatusEffectTooltip, RegStatusEffectsNewBtn, regCollection,
                                                                     regModifySection, statusEffectTypes);

            if (magicboRecord != null)
            {
                boStatusEffects = magicboRecord.BraveOrderEffects.Select(i => new BraveOrderEffect(i.ToBytes())).ToList();
            }
            if (boStatusEffects == null)
            {
                BOStatusEffectsGroupBox.Enabled = false; return;
            }

            List <StatusEffectGroupBoxContents> boCollection = new List <StatusEffectGroupBoxContents> {
                new StatusEffectGroupBoxContents(BOStatusEffect1GroupBox, BOStatusEffect1TextBox),
                new StatusEffectGroupBoxContents(BOStatusEffect2GroupBox, BOStatusEffect2TextBox),
                new StatusEffectGroupBoxContents(BOStatusEffect3GroupBox, BOStatusEffect3TextBox),
                new StatusEffectGroupBoxContents(BOStatusEffect4GroupBox, BOStatusEffect4TextBox),
                new StatusEffectGroupBoxContents(BOStatusEffect5GroupBox, BOStatusEffect5TextBox),
            };
            StatusEffectModifySection boModifySection = new StatusEffectModifySection()
            {
                strBox  = BOStatusEffectID_StrBox,
                numBox  = BOStatusEffectID_NumBox,
                arg1Box = BOStatusEffectArg1Box,
                arg2Box = BOStatusEffectArg2Box,
                arg3Box = BOStatusEffectArg3Box
            };

            BraveOrderEffectType[] boStatusEffectTypesArray = (BraveOrderEffectType[])Enum.GetValues(typeof(BraveOrderEffectType));
            statusEffectTypes = boStatusEffectTypesArray.OrderBy(i => i.ToString()).ToDictionary(i => (short)i, i => i.ToString());
            boStatusEffectGroupBoxCollection =
                new StatusEffectGroupBoxCollection <BraveOrderEffect>(boStatusEffects, StatusEffectTooltip, BOStatusEffectsNewBtn, boCollection,
                                                                      boModifySection, statusEffectTypes);
        }
 public override void UpdateListViewItem(MagicRecord record)
 {
     SubItems[0].Text = record.Name;
 }
 public ListViewItemDivineLinkAttack(MagicRecord record) : base(record)
 {
     SubItems.Add("");
     UpdateListViewItem(record);
 }
 public override void UpdateListViewItem(MagicRecord record)
 {
     SubItems[0].Text = record.Name;
     SubItems[1].Text = record.TargetingType;
 }
 public ListViewItemLinkAbility(MagicRecord record) : base(record)
 {
     SubItems.Add("");
     SubItems.Add("");
     UpdateListViewItem(record);
 }