์๋ ํ์ธ์. ๊ทธ๊ฐ ๋ช๊ฐ์ง์ ์ง๋ฌธ์ ์ฌ๋ฆฌ๊ณ ์ถ์์ง๋ง, ํ๋ฃจ๋ง ๋ ํ๋ฃจ๋ง ๋ ์ฐพ์๋ณด๊ณ ๋ฐ๋ณตํด์ ํด๊ฒฐ์ ํด์์ต๋๋ค. ์ง๋ฌธ์ ์ฌ๋ฆฌ๊ธฐ๊ฐ ๋ญ๊ฐ ์กฐ์ฌ์ค๋ฝ๋ค์โฆ!
์ค๋ ์ฌ์ญค๋ณด๊ณ ์ ๊ฐ์ก๊ณ ๊ธ์ ์ฐ๋ ์ง๋ฌธ์ ์ ์ค๋ ฅ์ผ๋ก๋ ๋์ ํ ๊ฐ๋ฅํ์ง, ๋ถ๊ฐ๋ฅํ์ง ํ๋จ์กฐ์ฐจ ์์ง ์์ ์ฐ์ ์ ๊ฐ๋ณ๊ฒโฆ ๊ฐ๋ฅ์ฌ๋ถ๋ฅผ ์ข ์ฌ์ญ์ด๋ณด๊ณ ์ถ์ด์์ ๋๋ค.
์ผ๋จ์ ํ๋ก๊ทธ๋จ์ด ์กฐ๊ธ ๋์กํ ๋ถ๋ถ์ด ์์ต๋๋ค. ์๋ ์ด๋ณด์ธ๋ฐ๋คโฆ ์ง์ง๊ธฐ๋ก ๋ง๋ค๋ค๋ณด๋โฆ
์ฃผ ๊ธฐ๋ฅ์, ์ค์๊ฐ์ผ๋ก ์ฌ๋ผ์ค๋ ํ
์คํธํ์ผ์ โํ ์ค์ฉโ ์ฝ๊ณ ๊ณ์ฐํด์ ๋ฐ์ํด์ฃผ๋ ํ๋ก๊ทธ๋จ์
๋๋ค.
์๋ฐฑkb๋จ์์ ์ฉ๋์ ๋์ด์ ๋น ๋ฅผ ํ์๊ฐ ์์ ์ ๋๋ก ์ ๊ณ์ฐํด์ฃผ๊ณ ์๋๋ฐ,
1-2๋ถ๋ง์ 100๋ฉ๊ฐ์ ๊ทผ์ ํ๋ ์ ๋์ ํ์ผ ์ฒ๋ฆฌ๋ ๋๋ฌด ๋๋ฆฌ๋๋ผ๊ตฌ์.
๋ผ์ธ์๋ก๋ 1-2๋ถ๋ง์ ์ฝ 100๋ง์ค๊ฐ๋ ์์ฑ์ด ๋ฉ๋๋ค.
๋๋ฏธ์ง๋ฅผ์คฌ์ต๋๋คRegex = new Regex(timeStampRegex + "(์น๋ช
ํ! )?((?<name>.+)[์ด๊ฐ] )?(((?<skill>.+)[์๋ฅผ] ์ฌ์ฉํด )|๊ณต๊ฒฉ์ ๋ฐ์ฌํ์ฌ )?(?<target>.+)(์๊ฒ|[์ด๊ฐ]) (?<damage>[^a-zA-Z]+)์ (|์น๋ช
์ ์ธ )๋๋ฏธ์ง๋ฅผ (์คฌ์ต๋๋ค|์ฃผ๊ณ ๋ฌธ์ ๊ฐ์ธ ํจ๊ณผ๊ฐ ๋ฐ์|(๋ฐ๊ณ |์
๊ณ ) ์ผ๋ถ ๊ฐํ ๋ง๋ฒ์ด ์ ๊ฑฐ๋์ต๋๋ค)", RegexOptions.Compiled);
๋๋ฏธ์ง๋ฅผ๋ฐ์์ต๋๋คRegex = new Regex(timeStampRegex + "(์น๋ช
ํ! )?((?<name>.+)[์ด๊ฐ] )?((?<from>.+)์๊ฒ์ |(?<skill>.+)์ ํจ๊ณผ๋ก )(?<damage>[^a-zA-Z]+)์ (์น๋ช
์ ์ธ )?((์ค๋
|์ถํ) )?๋๋ฏธ์ง๋ฅผ ๋ฐ์์ต๋๋ค", RegexOptions.Compiled);
์๊ฐ์ ์ ๊ท์์ผ๋ก ์ฒ๋ฆฌํ๋ ํญ๋ชฉ์ด 20์ฌ๊ฐ์ ๋๋๊ณ
public void AddHeal(RecoverEventArgs e)
{
this.HealAmount += e.Amount;
if (Class == ClassType.NONE)
{
Class = SkillDictionary.GetClass(e.Skill);
}
this.HealLogList.Add(e.log);
HealSkillEntity entity = null;
foreach (HealSkillEntity hse in HealList)
{
if (hse.Target == e.Name)
{
entity = hse;
break;
}
}
if (entity == null)
{
entity = new HealSkillEntity();
entity.Target = e.Name;
this.HealList.Add(entity);
}
entity.TotalRecover += e.Amount;
entity.Count++;
}
์ ๊ฐ์ ํญ๋ชฉ๋ค์ด ๋ชจ์ฌ์
public void UpdataListView2()
{
dd1 = ((double)NewTotalDealCount / (double)TotalDealTime); //22-05-04 ๋์ค ์๊ณต๋น ์ถ๊ฐ
rd3 = Math.Round(dd1, 2);
if (ListItem.SubItems[1].Text == "")
{
ListItem.SubItems[1].Text = SkillDictionary.GetClassString(Class);
}
ListItem.SubItems[3].Text = DPS + ""; //DPS
ListItem.SubItems[4].Text = String.Format("{0:#,0}", TotalDamage) + ""; //๋์ ๋ 23.07.20. ์ฝค๋ง ํ์
ListItem.SubItems[5].Text = TotalDealTime + "์ด"; //๋์๊ฐ
ListItem.SubItems[6].Text = PercentNormalCancel + "%"; //ํ์บ
ListItem.SubItems[7].Text = rd3 + ""; //์๊ณต๋น
ListItem.SubItems[8].Text = percentCritical + "%"; //์คํฌ์น๋ช
ListItem.SubItems[9].Text = HealAmount + ""; //ํ๋
ListItem.SubItems[10].Text = percentSkill + "%"; //์คํฌํผ์ผํธ
ListItem.SubItems[11].Text = percentNormal + "%"; //ํํํผ์ผํธ
ListItem.SubItems[12].Text = MaxDamage + ""; //ํ๋ฐฉ
ListItem.SubItems[13].Text = NewTotalNormalDealCount + "ํ"; //ํํ๊ณต๊ฒฉ
ListItem.SubItems[14].Text = NewTotalSkillDealCount + "ํ"; //์คํฌ๊ณต๊ฒฉ
ListItem.SubItems[15].Text = NewTotalDealCount + "ํ"; //์๊ณต๊ฒฉ
ListItem.SubItems[16].Text = TotalNormalCancelCount + "ํ"; //์ดํ์บ์
ListItem.SubItems[17].Text = MaxNormalCancelCount + "ํ"; //์ต๋ํ์บ์
ListItem.SubItems[18].Text = TotalDealCount + "ํ"; //๊ณต๊ฒฉ์
ListItem.SubItems[19].Text = (NewTotalNormalDealCount == 0) ? "0" : (NewTotalNormalDamage / NewTotalNormalDealCount) + ""; //ํํํ๊ท
ListItem.SubItems[20].Text = (NewTotalSkillDealCount == 0) ? "0" : (NewTotalSkillDamage / NewTotalSkillDealCount) + ""; //์คํฌํ๊ท
ListItem.SubItems[21].Text = (NewTotalDealCount == 0) ? "0" : (TotalDamage / NewTotalDealCount) + ""; //ํ๊ท ๋
ListItem.SubItems[22].Text = HPRecover + ""; //HPํ๋ณต
ListItem.SubItems[23].Text = MPRecover + ""; //MPํ๋ณต
}
์์ฒ๋ผ ๋ง๋ค์ด์
else
{
user.AddRecover(e);
this.BeginInvoke(new EventHandler(delegate (object s, EventArgs ee)
{
user.UpdataListView();
}));
}
์ด๋ฐ์์ผ๋ก ๋ณด์ฌ์ง๊ฒ ๋๋๊ฑฐ๊ฐ์ต๋๋ค.
(์ฒ์๋ถํฐ ์ ๊ฐ ๋ง๋ ๊ฒ ์๋๋ผ์โฆ)
๋ช๋ช
์ ์ ๋ณด๋ ์์ฃผ ์๋ฌด๋ฐ ๋ฌธ์ ๊ฐ ์๋๋ฐ
์ธ์์ด ๋ง์์ง๊ณ ์ ๋ณด๋์ด ๋ง์์ง๋ฉด ์ค์ ๋ก 1์ด์ ์ ๋ณด๋ฅผ ์ฒ๋ฆฌํ๋๋ฐ 10์ด 20์ด์ด์์ด ๊ฑธ๋ฆฌ๋๋ผ๊ตฌ์.
์ด๊ฒ ์ฒ๋ฆฌ์๋์ ๋ฌธ์ ์ธ์ง, ํผ์์ ๋ณด์ฌ์ง๋ ๋ถ๋ถ๋ค์ด ์๋ก๊ณ ์นจ๋๋ ์๋์ ๋ฌธ์ (?)์ธ์ง
๊ถ๊ธํ๊ณ , ๊ฐ์ ์ ์ฌ์ง๊ฐ ์๋์ง๋ ๊ถ๊ธํฉ๋๋คโฆ!!
์ ๋ ฌ์ ์ฌ์ฉํ์ง ์๊ณ ,(์ต์
์ผ๋ก ์จ์คํ๊ฐ๋ฅ)
ํผ์์ ๋ณด์ฌ์ง๋ ๋ผ์ธ์ ์ค์ ๋ก 2-300๋ผ์ธ์ธ๋ฐ,
ํ ๋ผ์ธ ํ๋ผ์ธ์ ์ ๋ณด๊ฐ ์ค์๊ฐ์ผ๋ก ๋ฐ๋๋ ๊ตฌ์กฐ์
๋๋ค.
์ด๋ณด์ธ๊ฒ ์๋์ ์๋์ง๋งโฆ ์ง๋ฌธ๋ ์๋ ๋งํผ ํ๊ฒ๋๋๊ฒ๊ฐ๊ณ โฆใ
_ใ
์๋ฌด์ชผ๋กโฆ ์ด๋ป๊ฒ ๊ฐ๋ก๊ฐ์ด ๋งํด๋ ์ฐฐ๋ก๊ฐ์ด ์์๋ค์ด์ฃผ์
์ ์ด๋ค ๋ฐฉํฅ์ผ๋ก ๊ฐ๋ฅ์ ์ก์์งโฆ
ํน์ ์ ์ด๊ฑด ์ด๋์ ๋์ ์ต์ ์ธ๊ฑฐ๊ฐ๋ค๋ผ๋์งโฆ
๋์์ ์ฃผ์ค ์ ์๋ ๋ถ์ด ๊ณ์๋ค๋ฉด ๊ฐ์ฌํ ๊ฒธํํ ๋ฐ์๋ณด๊ฒ ์ต๋๋ค!!