BF2Statistics.Web.ASP.GetPlayerInfo.AddWeaponData C# (CSharp) Method

AddWeaponData() private method

Adds Weapon Data to the Response
private AddWeaponData ( ) : void
return void
        private void AddWeaponData()
        {
            int time;
            int Fav = 0;
            int FavTime = 0;
            double tempAcc = 0;
            double Acc = 0;

            Rows = Database.Query("SELECT * FROM weapons WHERE id=@P0", Pid);
            if (Rows.Count == 0)
            {
                // Weapon Times
                for (int i = 0; i < 14; i++)
                    Out.Add("wtm-" + i, "0");

                // Weapon kills
                for (int i = 0; i < 14; i++)
                    Out.Add("wkl-" + i, "0");

                // Weapon Deaths
                for (int i = 0; i < 14; i++)
                    Out.Add("wdt-" + i, "0");

                // Weapon Accuracy
                for (int i = 0; i < 14; i++)
                    Out.Add("wac-" + i, "0");

                // Weapon kill/Death Ratio
                for (int i = 0; i < 14; i++)
                    Out.Add("wkd-" + i, "0");
            }
            else
            {
                // Weapon Times
                for (int i = 0; i < 9; i++)
                {
                    time = Int32.Parse(Rows[0]["time" + i].ToString());
                    if (time > FavTime)
                    {
                        Fav = i;
                        FavTime = time;
                    }
                    Out.Add("wtm-" + i, time);
                }

                // Knife
                time = Int32.Parse(Rows[0]["knifetime"].ToString());
                if (time > FavTime)
                {
                    Fav = 9;
                    FavTime = time;
                }
                Out.Add("wtm-9", time);

                // Shock Pads
                time = Int32.Parse(Rows[0]["shockpadtime"].ToString());
                if (time > FavTime)
                {
                    Fav = 10;
                    FavTime = time;
                }
                Out.Add("wtm-10", time);

                // Explosives
                time = (
                    Int32.Parse(Rows[0]["c4time"].ToString()) +
                    Int32.Parse(Rows[0]["claymoretime"].ToString()) +
                    Int32.Parse(Rows[0]["atminetime"].ToString())
                    );
                if (time > FavTime)
                {
                    Fav = 11;
                    FavTime = time;
                }
                Out.Add("wtm-11", time);

                // Hand grenade
                time = Int32.Parse(Rows[0]["handgrenadetime"].ToString());
                if (time > FavTime)
                {
                    Fav = 12;
                    FavTime = time;
                }
                Out.Add("wtm-12", time);

                Out.Add("wtm-13", "0");

                // Weapon kills
                for (int i = 0; i < 9; i++)
                    Out.Add("wkl-" + i, Rows[0]["kills" + i]);
                Out.Add("wkl-9", Rows[0]["knifekills"]);
                Out.Add("wkl-10", Rows[0]["shockpadkills"]);
                Out.Add("wkl-11", (
                    Int32.Parse(Rows[0]["c4kills"].ToString()) +
                    Int32.Parse(Rows[0]["claymorekills"].ToString()) +
                    Int32.Parse(Rows[0]["atminekills"].ToString())
                    )
                );
                Out.Add("wkl-12", Rows[0]["handgrenadekills"]);
                Out.Add("wkl-13", "0");

                // Weapon Deaths
                for (int i = 0; i < 9; i++)
                    Out.Add("wdt-" + i, Rows[0]["deaths" + i]);
                Out.Add("wdt-9", Rows[0]["knifedeaths"]);
                Out.Add("wdt-10", Rows[0]["shockpaddeaths"]);
                Out.Add("wdt-11", (
                    Int32.Parse(Rows[0]["c4deaths"].ToString()) +
                    Int32.Parse(Rows[0]["claymoredeaths"].ToString()) +
                    Int32.Parse(Rows[0]["atminedeaths"].ToString())
                    )
                );
                Out.Add("wdt-12", Rows[0]["handgrenadedeaths"]);
                Out.Add("wdt-13", "0");

                // Weapon Accuracy
                for (int i = 0; i < 9; i++)
                {
                    tempAcc = (Rows[0]["fired" + i].ToString() != "0")
                            ? (100 * (float.Parse(Rows[0]["hit" + i].ToString()) / float.Parse(Rows[0]["fired" + i].ToString())))
                            : 0;
                    Acc += tempAcc;
                    Out.Add("wac-" + i, Math.Round(tempAcc, 0));
                }

                tempAcc = (Rows[0]["knifefired"].ToString() != "0")
                            ? (100 * (float.Parse(Rows[0]["knifehit"].ToString()) / float.Parse(Rows[0]["knifefired"].ToString())))
                            : 0;
                Acc += tempAcc;
                Out.Add("wac-9", Math.Round(tempAcc, 0));

                tempAcc = (Rows[0]["shockpadfired"].ToString() != "0")
                            ? (100 * (float.Parse(Rows[0]["shockpadhit"].ToString()) / float.Parse(Rows[0]["shockpadfired"].ToString())))
                            : 0;
                Acc += tempAcc;
                Out.Add("wac-10", Math.Round(tempAcc));

                int fired = (
                    Int32.Parse(Rows[0]["c4fired"].ToString()) +
                    Int32.Parse(Rows[0]["claymorefired"].ToString()) +
                    Int32.Parse(Rows[0]["atminefired"].ToString())
                );
                if (fired != 0)
                {
                    int hits = (
                        Int32.Parse(Rows[0]["c4hit"].ToString()) +
                        Int32.Parse(Rows[0]["claymorehit"].ToString()) +
                        Int32.Parse(Rows[0]["atminehit"].ToString())
                    );
                    tempAcc = (100 * (float.Parse(hits.ToString()) / float.Parse(fired.ToString())));
                    Acc += tempAcc;
                    Out.Add("wac-11", Math.Round(tempAcc, 0));
                }
                else
                    Out.Add("wac-11", "0");

                tempAcc = (Rows[0]["handgrenadefired"].ToString() != "0")
                            ? (100 * (float.Parse(Rows[0]["handgrenadehit"].ToString()) / float.Parse(Rows[0]["handgrenadefired"].ToString())))
                            : 0;
                Acc += tempAcc;
                Out.Add("wac-12", Math.Round(tempAcc));
                Out.Add("wac-13", "0");

                // Add Overall Small Arms Acc.
                tempAcc = Math.Round((Acc / 12d), 2);
                Out["osaa"] = tempAcc;

                // Weapon kill/Death Ratio
                int kills;
                int deaths;
                int den;

                for (int i = 0; i < 9; i++)
                {
                    kills = Int32.Parse(Rows[0]["kills" + i].ToString());
                    deaths = Int32.Parse(Rows[0]["deaths" + i].ToString());
                    den = GetDenominator(kills, deaths);
                    if (kills == 0 && deaths == 0)
                        Out.Add("wkd-" + i, "0:0");
                    else if (deaths != 0)
                        Out.Add("wkd-" + i, kills / den + ":" + deaths / den);
                    else
                        Out.Add("wkd-" + i, kills + ":0");
                }

                // Knife
                kills = Int32.Parse(Rows[0]["knifekills"].ToString());
                deaths = Int32.Parse(Rows[0]["knifedeaths"].ToString());
                den = GetDenominator(kills, deaths);
                if (kills == 0 && deaths == 0)
                    Out.Add("wkd-9", "0:0");
                else if (deaths != 0)
                    Out.Add("wkd-9", kills / den + ":" + deaths / den);
                else
                    Out.Add("wkd-9", kills + ":0");

                // shockpad
                kills = Int32.Parse(Rows[0]["shockpadkills"].ToString());
                deaths = Int32.Parse(Rows[0]["shockpaddeaths"].ToString());
                den = GetDenominator(kills, deaths);
                if (kills == 0 && deaths == 0)
                    Out.Add("wkd-10", "0:0");
                else if (deaths != 0)
                    Out.Add("wkd-10", kills / den + ":" + deaths / den);
                else
                    Out.Add("wkd-10", kills + ":0");

                // explosives
                kills = (
                    Int32.Parse(Rows[0]["c4kills"].ToString()) +
                    Int32.Parse(Rows[0]["claymorekills"].ToString()) +
                    Int32.Parse(Rows[0]["atminekills"].ToString())
                );
                deaths = (
                    Int32.Parse(Rows[0]["c4deaths"].ToString()) +
                    Int32.Parse(Rows[0]["claymoredeaths"].ToString()) +
                    Int32.Parse(Rows[0]["atminedeaths"].ToString())
                );
                den = GetDenominator(kills, deaths);
                if (kills == 0 && deaths == 0)
                    Out.Add("wkd-11", "0:0");
                else if (deaths != 0)
                    Out.Add("wkd-11", kills / den + ":" + deaths / den);
                else
                    Out.Add("wkd-11", kills + ":0");

                // hand Grenade
                kills = Int32.Parse(Rows[0]["handgrenadekills"].ToString());
                deaths = Int32.Parse(Rows[0]["handgrenadedeaths"].ToString());
                den = GetDenominator(kills, deaths);
                if (kills == 0 && deaths == 0)
                    Out.Add("wkd-12", "0:0");
                else if (deaths != 0)
                    Out.Add("wkd-12", kills / den + ":" + deaths / den);
                else
                    Out.Add("wkd-12", kills + ":0");
                Out.Add("wkd-13", "0:0");
            }

            Out["fwea"] = Fav;
        }