private void DrawSkill(Graphics g, Battler battler, CustomSkill item, Rectangle skillrect, Point offset) { if (0 < skillrect.Width) { var drawrect = new Rectangle(skillrect.X + offset.X, skillrect.Y + offset.Y, skillrect.Width, skillrect.Height); var color = GetColor(item); LinearGradientBrush gb = new LinearGradientBrush( drawrect, color, Color.White, LinearGradientMode.Horizontal); g.FillRectangle(gb, drawrect); g.DrawRectangle(Pens.DarkGray, drawrect); if (item.darty) { var flute = drawrect; flute.Inflate(1, 1); g.DrawRectangle(Pens.DarkGray, flute); } if (item.name != null && item.Type != SkillType.Attack) { var clip = g.ClipBounds; g.SetClip(drawrect); g.DrawString(item.name, this.Font, Brushes.Black, drawrect.X + 1, drawrect.Y + 1); g.SetClip(clip); } } }
public List <Battler> DeSerialize() { var battlelist = new List <Battler>(); foreach (var item in blist) { var avatar = avatarlist.Find(n => n.aliasName == item.aliasName); var battler = new Battler(avatar); battlelist.Add(battler); foreach (var ssketch in item.skillsketch) { var battlerskill = battler.timeline[ssketch.index]; if (ssketch.type == battlerskill.Type) { battlerskill.adjustment = ssketch.adjustment; } else { var skill = avatar.GetSkill(ssketch.type); var insertskill = new CustomSkill(skill, SkillType.Default); insertskill.adjustment = ssketch.adjustment; battler.timeline.Insert(ssketch.index, insertskill); } } } return(battlelist); }
private void AddClickPoint(Battler battler, CustomSkill skill, Rectangle skillrect, CustomSkill before) { if (0 < skillrect.Width) { clickablepoint.Add(new ClickPoint() { battler = battler, rect = skillrect, skill = skill, before = before }); } }