Beispiel #1
0
        public void PaintWorld(WorldLayer layer)
        {
            //           if (!Hud.Input.IsKeyDown(HotKey)) return;
            var    monsters = Hud.Game.AliveMonsters;
            string text1    = "";

            if (Hud.Game.CurrentGameTick % 60.0f == 0)
            {
                foreach (var monster in monsters)
                {
                    if (Dmonsters.Contains(monster.SnoMonster.Sno))
                    {
                        text1 = "";
                    }
                    else
                    {
                        text1  = "MonstersData:\n";
                        text1 += monster.SnoMonster.Sno + "\t";
                        text1 += (monster.SnoMonster.RiftProgression * 100.0d / this.Hud.Game.MaxQuestProgress).ToString("N2") + "\t"; //650point == 100% //RiftProgression(point)
                        text1 += monster.SnoMonster.NameLocalized + "\t";
                        text1 += monster.SnoMonster.NameEnglish + "\t";
                        text1 += monster.SnoMonster.Code + "\n";
                    }
                }
//          var text1 = string.Format("{0}", );
                var layer1 = DefaultTextFont.GetTextLayout(text1);
                DefaultTextFont.DrawText(layer1, Hud.Window.Size.Width * 0.2f, Hud.Window.Size.Height * 0.05f);
                Hud.TextLog.Log("monsterdic", text1);
//          Says.Debug(text1);
            }
        }
        public void PaintWorld(WorldLayer layer)
        {
            px = Hud.Window.Size.Width * 0.00155f * XScaling;
            py = Hud.Window.Size.Height * 0.001667f * YScaling;
            h  = py * 6;
            w2 = px * 60;
            float yref = 0.01f;
            int   summonerelite1count   = 0;
            int   summonerelite2count   = 0;
            int   summonedelite1count   = 0;
            int   summonedelite2count   = 0;
            int   summonedcount         = 0;
            int   summoner1count        = 0;
            int   summoner2count        = 0;
            int   monstersCountBaseYard = 0;
            int   monstersCountMaxYard  = 0;

            if (ShowMeScreenBaseYard)
            {
                var monsters1 = Hud.Game.AliveMonsters.Where(m => ((m.SummonerAcdDynamicId == 0 && m.IsElite) || !m.IsElite) && m.FloorCoordinate.XYDistanceTo(Hud.Game.Me.FloorCoordinate) <= BaseYard);
                foreach (var monster in monsters1)
                {
                    monstersCountBaseYard++;
                }
                var text1  = string.Format("{0} 야드 : {1}", BaseYard, monstersCountBaseYard);
                var layer1 = DefaultTextFont.GetTextLayout(text1);
                DefaultTextFont.DrawText(layer1, Hud.Window.Size.Width * 0.34f, Hud.Window.Size.Height * 0.22f);
            }
            if (ShowMeScreenMaxYard)
            {
                var monsters2 = Hud.Game.AliveMonsters.Where(m => ((m.SummonerAcdDynamicId == 0 && m.IsElite) || !m.IsElite) && m.FloorCoordinate.XYDistanceTo(Hud.Game.Me.FloorCoordinate) <= MaxYard);
                foreach (var monster in monsters2)
                {
                    monstersCountMaxYard++;
                }
                var text2  = string.Format("{0} 야드 : {1}", MaxYard, monstersCountMaxYard);
                var layer2 = DefaultTextFont.GetTextLayout(text2);
                DefaultTextFont.DrawText(layer2, Hud.Window.Size.Width * 0.34f, Hud.Window.Size.Height * 0.24f);
            }
            if (showdifLabel)
            {
                var monsters3 = Hud.Game.AliveMonsters.Where(m => (m.SummonerAcdDynamicId == 0 && m.IsElite) || !m.IsElite);
                foreach (var monster in monsters3)
                {
                    var smtext = ValueToString(monster.CurHealth * 100 / monster.MaxHealth, ValueFormat.NormalNumberNoDecimal) + "%";
                    if (SummonerMonsternames1.ContainsKey(monster.SnoMonster.NameEnglish) || SummonerMonsternames1.ContainsKey(monster.SnoMonster.NameLocalized))
                    {
                        if (monster.FloorCoordinate.XYDistanceTo(Hud.Game.Me.FloorCoordinate) < BaseYard)
                        {
                            if (monster.IsElite)
                            {
                                Decoratorred.Paint(layer, monster, monster.FloorCoordinate, "E어미");
                            }
                            else
                            {
                                Decoratorred.Paint(layer, monster, monster.FloorCoordinate, "어미" + smtext);
                            }
                        }
                        else
                        {
                            if (monster.IsElite)
                            {
                                Decoratorgray.Paint(layer, monster, monster.FloorCoordinate, "E어미");
                            }
                            else
                            {
                                Decoratorgray.Paint(layer, monster, monster.FloorCoordinate, "어미" + smtext);
                            }
                        }
                    }
                    if (SummonerMonsternames2.ContainsKey(monster.SnoMonster.NameEnglish) || SummonerMonsternames1.ContainsKey(monster.SnoMonster.NameLocalized))
                    {
                        if (monster.FloorCoordinate.XYDistanceTo(Hud.Game.Me.FloorCoordinate) < BaseYard)
                        {
                            if (monster.IsElite)
                            {
                                Decoratorred.Paint(layer, monster, monster.FloorCoordinate, "E소환사");
                            }
                            else
                            {
                                Decoratorred.Paint(layer, monster, monster.FloorCoordinate, "소환사" + smtext);
                            }
                        }
                        else
                        {
                            if (monster.IsElite)
                            {
                                Decoratorgray.Paint(layer, monster, monster.FloorCoordinate, "E소환사");
                            }
                            else
                            {
                                Decoratorgray.Paint(layer, monster, monster.FloorCoordinate, "소환사" + smtext);
                            }
                        }
                    }
                }
            }

            var monsters = Hud.Game.AliveMonsters;

            foreach (var monster in monsters)
            {
                if (monster.IsElite)
                {
                    if (SummonerMonsternames1.ContainsKey(monster.SnoMonster.NameEnglish) || SummonerMonsternames1.ContainsKey(monster.SnoMonster.NameLocalized))
                    {
                        if (monster.SummonerAcdDynamicId == 0)
                        {
                            summonerelite1count++;
                        }
                        else
                        {
                            summonedelite1count++;
                        }
                        if (ShowSummonerEliteBar)
                        {
                            DrawHealthBar(layer, monster, ref yref);
                            yref += 0.5f;
                        }
                        if (!showdifLabel)
                        {
                            Decorator.Paint(layer, monster, monster.FloorCoordinate, "E어미");
                        }
                    }
                    if (SummonerMonsternames2.ContainsKey(monster.SnoMonster.NameEnglish) || SummonerMonsternames2.ContainsKey(monster.SnoMonster.NameLocalized))
                    {
                        if (monster.SummonerAcdDynamicId == 0)
                        {
                            summonerelite2count++;
                        }
                        else
                        {
                            summonedelite2count++;
                        }
                        if (ShowSummonerEliteBar)
                        {
                            DrawHealthBar(layer, monster, ref yref);
                            yref += 0.5f;
                        }
                        if (!showdifLabel)
                        {
                            Decorator.Paint(layer, monster, monster.FloorCoordinate, "E소환사");
                        }
                    }
                }
            }
            foreach (var monster in monsters)
            {
                var smtext = ValueToString(monster.CurHealth * 100 / monster.MaxHealth, ValueFormat.NormalNumberNoDecimal) + "%";
                if (!monster.IsElite)
                {
                    if (monster.SummonerAcdDynamicId != 0)
                    {
                        summonedcount++;
                    }
                    if (SummonerMonsternames1.ContainsKey(monster.SnoMonster.NameEnglish) || SummonerMonsternames1.ContainsKey(monster.SnoMonster.NameLocalized))
                    {
                        summoner1count++;
                        if (ShowSummonerNormalMonsterBar)
                        {
                            DrawHealthBar(layer, monster, ref yref);
                            yref += 0.5f;
                        }
                        if (!showdifLabel)
                        {
                            Decorator.Paint(layer, monster, monster.FloorCoordinate, "어미" + smtext);
                        }
                    }
                    if (SummonerMonsternames2.ContainsKey(monster.SnoMonster.NameEnglish) || SummonerMonsternames2.ContainsKey(monster.SnoMonster.NameLocalized))
                    {
                        summoner2count++;
                        if (ShowSummonerNormalMonsterBar)
                        {
                            DrawHealthBar(layer, monster, ref yref);
                            yref += 0.5f;
                        }
                        if (!showdifLabel)
                        {
                            Decorator.Paint(layer, monster, monster.FloorCoordinate, "소환사" + smtext);
                        }
                    }
                }
            }
            if (ShowSummonerCount)
            {
                textBuilder.Clear();
                if (summonerelite1count > 0)
                {
                    textBuilder.AppendFormat("어미정예: {0}", summonerelite1count);
                    textBuilder.AppendLine();
                }
                if (summonedelite1count > 0)
                {
                    textBuilder.AppendFormat("어미환영: {0}", summonedelite1count);
                    textBuilder.AppendLine();
                }
                if (summonerelite2count > 0)
                {
                    textBuilder.AppendFormat("소환사정예: {0}", summonerelite2count);
                    textBuilder.AppendLine();
                }
                if (summonedelite2count > 0)
                {
                    textBuilder.AppendFormat("소환사환영: {0}", summonedelite2count);
                    textBuilder.AppendLine();
                }
                if (summoner1count > 0)
                {
                    textBuilder.AppendFormat("어미: {0}", summoner1count);
                    textBuilder.AppendLine();
                }
                if (summoner2count > 0)
                {
                    textBuilder.AppendFormat("소환사: {0}", summoner2count);
                    textBuilder.AppendLine();
                }
                if (summonedcount > 0)
                {
                    textBuilder.AppendLine();
                    textBuilder.AppendFormat("소환몹: {0}", summonedcount);
                    textBuilder.AppendLine();
                }
                var layout = DefaultTextFont.GetTextLayout(textBuilder.ToString());
                DefaultTextFont.DrawText(layout, Hud.Window.Size.Width * 0.77f, Hud.Window.Size.Height * 0.61f);
            }
        }