Пример #1
0
        private void Clear()
        {
            float perc = config.Item("minmana", true).GetValue <Slider>().Value / 100f;
            var   buff = Jungle.GetNearest(player.Position);

            if (buff != null && config.Item("useeLCsteal", true).GetValue <bool>() && E.IsReady())
            {
                var dmg = new double[] { 50, 65, 80, 95, 110 }[E.Level] +0.75 * player.FlatMagicDamageMod +
                Math.Min(300, new double[] { 6, 6.5, 7, 7.5, 8 }[E.Level] / 100 * buff.MaxHealth);
                if (E.CanCast(buff) && Damage.CalcDamage(player, buff, Damage.DamageType.Magical, dmg) > buff.Health)
                {
                    E.CastOnUnit(buff);
                }
            }
            if (player.Mana < player.MaxMana * perc)
            {
                return;
            }
            var pos  = Prediction.GetPrediction(player, 1);
            var coll = Qp.GetCollision(
                player.Position.To2D(),
                new List <Vector2>
            {
                player.Position.Extend(pos.UnitPosition, player.Distance(pos.CastPosition) * -1).To2D()
            });

            if ((coll.Count > 0 || Environment.Minion.countMinionsInrange(player.Position, 250f) > 0) &&
                config.Item("useqLC", true).GetValue <bool>())
            {
                CastQ();
            }
            if (config.Item("moveLC", true).GetValue <bool>() && player.CountEnemiesInRange(1000) < 1 &&
                Orbwalking.CanMove(100) && player.Mana > 30 && !player.IsWindingUp)
            {
                var mini =
                    MinionManager.GetMinions(600, MinionTypes.All, MinionTeam.NotAlly)
                    .Where(m => !m.HasBuff("poisontrailtarget") && !m.UnderTurret(true))
                    .OrderBy(m => m.Distance(player))
                    .FirstOrDefault();

                if (mini != null && !Environment.Minion.KillableMinion(player.AttackRange))
                {
                    player.IssueOrder(
                        GameObjectOrder.MoveTo, player.Position.Extend(mini.Position, player.Distance(mini) + 100));
                    Orbwalking.Attack = false;
                    Orbwalking.Move   = false;
                }
            }
        }
Пример #2
0
        public void cal()
        {
            Double Tdm = Convert.ToDouble(pqwendu_TB.Text);

            Double[] a = calPQ(Te, Tc);
            Double   P = a[0];
            Double   Q = a[1];
            Double   Qp, Pp;
            Double   Ip;
            Double   EER;
            Double   Ts;

            n   = n / 100;
            Qp  = Q * n;
            Pp  = P * (A1 * n * n + A2 * n + A3);
            Ip  = P * 1000 / (3 * 220 * (B1 * n * n + B2 * n + B3));
            EER = Qp / Pp;
            Ts  = Te + SH;
            Double Pe  = PropsSI("P", "T", Te + 273.15, "Q", 1, cool);
            Double Pc  = PropsSI("P", "T", Tc + 273.15, "Q", 1, cool);
            Double ttc = PropsSI("T", "P", Pc, "Q", 0, cool) - 273.5;
            Double hs  = PropsSI("H", "P", Pe, "T", Te + 273.15 + SH, cool);
            Double T1  = ttc - SC;
            Double hc  = PropsSI("H", "P", Pc, "T", T1 + 273.15, cool);
            Double ms  = Qp / (hs - hc) * 3600 * 1000;
            Double hd  = Pp / ms * 3600 * 1000 + hs;
            Double Td1 = PropsSI("T", "H", hd, "P", Pc, cool) - 273.15;
            Double hdm = PropsSI("H", "P", Pc, "T", Tdm + 273.5, cool);


            Double Qc1 = 0, Qc2 = 0, mc2 = 0, Pc2 = 0, Pc1 = 0, mc1 = 0, pi = Pp, moil = 0, CPO = 0, Qoil = 0, Tob = 0, A, B, Pm = 0, TTm = 0, Hmg = 0, Hml = 0, Qeco = 0, meco = 0, Tcc = 0, Peco = 0;

            A            = readParam(cool + "A");
            B            = readParam(cool + "B");
            data_share.A = A;
            data_share.B = B;
            if (Td1 > Tdm && Tc <= 60 && lqfangshi_combox.Text == "A电机腔&压缩腔喷液冷却")
            {
                Qc1 = 0;
                Pc1 = 0;
                mc1 = 0;
                Qc2 = ms / 3600 * (hd - hdm) / 1000;
                mc2 = Qc2 / (hdm - hc) * 1000;
                Pc2 = mc2 * (hdm - hs) / 1000;
                pi  = Pp + Pc1 + Pc2;
            }
            else if (Td1 > Tdm && Tc > 60 && lqfangshi_combox.Text == "A电机腔&压缩腔喷液冷却")
            {
                Qc1 = P * 0.015;
                mc1 = Qc1 / (hs - hc) * 1000;
                ms  = ms - mc1 * 3600;
                Qp  = Qp * (1 - mc1 * 3600 / (ms));
                Qc2 = (ms) * (hd - hdm) / 3600 / 1000;
                mc2 = Qc2 / (hdm - hc) * 1000;
                Pc2 = (mc1 + mc2) * (hdm - hs) / 1000;
                pi  = pi + Pc1 + Pc2;
            }
            else if (Td1 > Tdm && Tc <= 60 && lqfangshi_combox.Text == "B电机腔喷液&外接油冷却")
            {
                moil = (A * Math.Sqrt((Tc - Te)) + B) * 950;
                CPO  = 2.71;
                Qc2  = moil / 3600 * (hd - hdm) / 1000;
                Tob  = Tdm - Qc2 / CPO / moil * 3600;
            }
            else if (Td1 > Tdm && Tc > 60 && lqfangshi_combox.Text == "B电机腔喷液&外接油冷却")
            {
                moil = (A * Math.Sqrt((Tc - Te)) + B) * 950;
                CPO  = 2.71;
                Tob  = Tdm - Q / CPO / moil;
                Qc1  = P * 0.015;
                mc1  = Qc1 / (hs - hc) * 1000;
                ms   = ms - mc1 * 3600;
                Qp   = Qp * (1 - mc1 * 3600 / ms);
                Qc2  = 0;
                mc2  = 0;
                Qc2  = ms / 3600 * (hd - hdm) / 1000;
                Tob  = Tdm - Q / CPO / moil * 3600;
                Pc2  = mc2 * (hdm - hs);
                pi   = pi + Pc2;
            }
            else if (Td1 > Tdm && lqfangshi_combox.Text == "C外接油冷却")
            {
                moil = (A * Math.Sqrt(Tc - Te) + B) * 950;
                CPO  = 2.71;
                Qoil = ms * (hd - hdm);
                Qc2  = ms / 3600 * (hd - hdm) / 1000;
                Tob  = Tdm - Qc2 / CPO / moil * 3600;
            }
            if (economy_mode.CheckState == CheckState.Checked)
            {
                yxmoshi_textBox.Text = "经济模式";
                Pm   = Math.Sqrt((Pe * Pc)) / 1000;
                TTm  = PropsSI("T", "P", Pm * 1000, "Q", 1, cool) - 273.5;
                Hmg  = PropsSI("H", "P", Pm * 1000, "Q", 1, cool) / 1000;
                Hml  = PropsSI("H", "P", Pm * 1000, "Q", 0, cool) / 1000;
                Qeco = ms * (hc / 1000 - Hml) / 3600;
                meco = Qeco / (Hmg - hc / 1000) * 3600;
                Tcc  = PropsSI("T", "H", Hml * 1000, "P", Pc, cool) - 273.15;
                //               hd= pi / ms * 3600 * 1000 + hs;
                Peco = meco / 3600 * (hd / 1000 - Hmg);
                Qp   = Qeco + Qp;
                pi   = pi + Peco;
                T1   = TTm;
            }
            else
            {
                yxmoshi_textBox.Text = "普通模式";
            }
            yxdianliu_textBox.Text    = Ip.ToString("0.00");
            nxbi_textBox.Text         = EER.ToString("0.00");
            zlliang_textBox.Text      = Qp.ToString("0.00");
            srgonglv_textBox.Text     = pi.ToString("0.00");
            xqzlliuliang_textBox.Text = ms.ToString("0.00");
            pqzlliuliang_textBox.Text = (ms + mc1 + mc2).ToString("0.00");
            zypyzl_textBox.Text       = mc1.ToString("0.00");
            dypyzl_textBox.Text       = mc2.ToString("0.00");
            wewlqpq_textBox.Text      = Td1.ToString("0.00");
            zljytwendu_textBox.Text   = T1.ToString("0.00");
            jjqzlll_textBox.Text      = meco.ToString("0.00");
            jjqhrl_textBox.Text       = Qeco.ToString("0.00");
            jjqnbhwd_textBox.Text     = TTm.ToString("0.00");
            jjqnyl_textBox.Text       = Pm.ToString("0.00");
            ylqqnl_textBox.Text       = Qoil.ToString("0.00");
            ylqldyll_textbox.Text     = moil.ToString("0.00");
            ylqqckwd_textbox.Text     = Tob.ToString("0.00");
            zypylql_textBox.Text      = Qc1.ToString("0.00");
            dypylql_textBox.Text      = Qc2.ToString("0.00");
            pyszjgl_textBox.Text      = (Pc1 + Pc2).ToString("0.00");
        }