public static void SaveTemplate( ITemplate Template, EItemType Type ) { string filePath = GetTemplatePath( Type, Template ) + ".tpl"; if( File.Exists( filePath ) ) File.Delete( filePath ); using( FileStream fs = File.OpenWrite( filePath ) ) mXml.Serialize( fs, Template ); }
private ITemplate BuildTemplate() { ITemplate tpl = new ITemplate(); EItemType type = (EItemType)cmbType.SelectedIndex; tpl.txtName = txtName.Text; if( type == EItemType.Lapis ) { // Lapis name Lapi l = ( cmbLapi.SelectedItem as ImageComboItem ).Tag as Lapi; tpl.txtName = l.Name; tpl.LapisType = l.Type; tpl.LapisLevel = l.Level; } else if( type == EItemType.Lapisa ) // Lapisa name tpl.txtName = ( (ELapisa)cmbLapisa.SelectedIndex ).ToString(); tpl.cmbType = cmbType.SelectedIndex; tpl.cmbItemIcon = cmbItemIcon.SelectedIndex; tpl.cmbQuality = cmbQuality.SelectedIndex; tpl.cmbASPD = cmbASPD.SelectedIndex; tpl.numEnchant = numEnchant.Value; tpl.cmbLapisa = cmbLapisa.SelectedIndex; tpl.cmbSockel1 = cmbSockel1.SelectedIndex; tpl.cmbSockel2 = cmbSockel2.SelectedIndex; tpl.cmbSockel3 = cmbSockel3.SelectedIndex; tpl.cmbSockel4 = cmbSockel4.SelectedIndex; tpl.cmbSockel5 = cmbSockel5.SelectedIndex; tpl.cmbSockel6 = cmbSockel6.SelectedIndex; tpl.txtGold = txtGold.GoldAmount; tpl.txtANG1 = txtANG1.Text; tpl.txtANG2 = txtANG2.Text; tpl.txtHaltbarkeit = txtHaltbarkeit.Text; tpl.txtLP = txtLP.Text; tpl.txtMP = txtMP.Text; tpl.txtAP = txtAP.Text; tpl.txtGES = txtGES.Text; tpl.txtGLÜ = txtGLÜ.Text; tpl.txtSTR = txtSTR.Text; tpl.txtWEI = txtWEI.Text; tpl.txtINT = txtINT.Text; tpl.txtABW = txtABW.Text; tpl.txtLPEP4 = txtLPEP4.Text; tpl.txtMPEP4 = txtMPEP4.Text; tpl.txtAPEP4 = txtAPEP4.Text; tpl.txtGESEP4 = txtGESEP4.Text; tpl.txtGLÜEP4 = txtGLÜEP4.Text; tpl.txtSTREP4 = txtSTREP4.Text; tpl.txtWEIEP4 = txtWEIEP4.Text; tpl.txtINTEP4 = txtINTEP4.Text; tpl.txtABWEP4 = txtABWEP4.Text; tpl.txtResistenz = txtResistenz.Text; tpl.txtSeller = txtSeller.Text; return tpl; }
private void ApplyTemplate( ITemplate tpl ) { EItemType type = (EItemType)tpl.cmbType; cmbType.SelectedIndex = tpl.cmbType; cmbItemIcon.SelectedIndex = tpl.cmbItemIcon; cmbQuality.SelectedIndex = tpl.cmbQuality; cmbASPD.SelectedIndex = tpl.cmbASPD; numEnchant.Value = tpl.numEnchant; if( type == EItemType.Lapis ) { Lapi tplLapi = new Lapi( tpl.LapisType, tpl.LapisLevel ); int i = 0; foreach( Lapi l in LapiComboBox.Lapis ) { if( l.Name == tplLapi.Name ) { cmbLapi.SelectedIndex = i; break; } i++; } } cmbSockel1.SelectedIndex = tpl.cmbSockel1; cmbSockel2.SelectedIndex = tpl.cmbSockel2; cmbSockel3.SelectedIndex = tpl.cmbSockel3; cmbSockel4.SelectedIndex = tpl.cmbSockel4; cmbSockel5.SelectedIndex = tpl.cmbSockel5; cmbSockel6.SelectedIndex = tpl.cmbSockel6; txtGold.SetGold( tpl.txtGold ); if( type != EItemType.Lapis && type != EItemType.Lapisa ) txtName.Text = tpl.txtName; txtANG1.Text = tpl.txtANG1; txtANG2.Text = tpl.txtANG2; txtHaltbarkeit.Text = tpl.txtHaltbarkeit; txtLP.Text = tpl.txtLP; txtMP.Text = tpl.txtMP; txtAP.Text = tpl.txtAP; txtGES.Text = tpl.txtGES; txtGLÜ.Text = tpl.txtGLÜ; txtSTR.Text = tpl.txtSTR; txtWEI.Text = tpl.txtWEI; txtINT.Text = tpl.txtINT; txtABW.Text = tpl.txtABW; txtLPEP4.Text = tpl.txtLPEP4; txtMPEP4.Text = tpl.txtMPEP4; txtAPEP4.Text = tpl.txtAPEP4; txtGESEP4.Text = tpl.txtGESEP4; txtGLÜEP4.Text = tpl.txtGLÜEP4; txtSTREP4.Text = tpl.txtSTREP4; txtWEIEP4.Text = tpl.txtWEIEP4; txtINTEP4.Text = tpl.txtINTEP4; txtABWEP4.Text = tpl.txtABWEP4; txtResistenz.Text = tpl.txtResistenz; txtSeller.Text = tpl.txtSeller; }
private ToolStripMenuItem TemplateItem_OnAdd( ITemplate Template, ToolStripMenuItem Item ) { EItemType type = (EItemType)Template.cmbType; if( type != EItemType.Lapis && type != EItemType.Lapisa ) Item.Image = GetTemplateItemImage( type, Template.cmbItemIcon ); else if( type == EItemType.Lapis ) { Lapi l = new Lapi( Template.LapisType, Template.LapisLevel ); Item.Image = GetTemplateItemImage( type, l.ToImageIndex() + 1 ); // 0 = free slot } else if( type == EItemType.Lapisa ) Item.Image = GetTemplateItemImage( type, Template.cmbLapisa ); return Item; }
private static void CacheTemplate( ITemplate tpl ) { string key = tpl.ToFilename(); if( mCache.ContainsKey( key ) == true ) { mCache[ key ] = tpl; return; } mCache.Add( key, tpl ); }
private static string GetTemplatePath( EItemType Type, ITemplate Template ) { string path = ""; switch( Type ) { default: throw new Exception( "Unknown EItemType! Can't setup TemplatePath" ); case EItemType.Waffe: path = DirWeapon; break; case EItemType.Rüstung: path = DirArmor; break; case EItemType.Lapis: path = DirLapis; break; case EItemType.APItem: path = DirApItem; break; case EItemType.EtcItem: path = DirEtc; break; } path += Template.ToFilename(); return path; }
private static ToolStripMenuItem BuildMenuItem( string Filename, ITemplate tpl, EventHandler OnClick ) { ToolStripMenuItem item = new ToolStripMenuItem(); item.Text = tpl.ToName(); item.AutoSize = true; item.Tag = tpl.ToFilename(); // to fetch it later back from Cache, saved with ToFilename() item.Click += OnClick; return item; }