2024-09-22 23:12:21 -04:00

70 lines
4.4 KiB
C#

using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static MxWSim.Utilities.Sim;
using System.IO;
using MySqlConnector;
namespace MxWSim.Utilities
{
internal class Gear
{
public static int CalculateGearIlvl(int uid)
{
int total = 14;
Root r = JsonConvert.DeserializeObject<Root>(File.ReadAllText($"tmp/{uid}.json"));
int totalgear = r.sim.players[0].gear.head.ilevel + r.sim.players[0].gear.neck.ilevel + r.sim.players[0].gear.shoulders.ilevel + r.sim.players[0].gear.chest.ilevel + r.sim.players[0].gear.waist.ilevel + r.sim.players[0].gear.legs.ilevel + r.sim.players[0].gear.feet.ilevel + r.sim.players[0].gear.wrists.ilevel + r.sim.players[0].gear.hands.ilevel + r.sim.players[0].gear.finger1.ilevel + r.sim.players[0].gear.finger2.ilevel + r.sim.players[0].gear.trinket1.ilevel + r.sim.players[0].gear.trinket2.ilevel + r.sim.players[0].gear.back.ilevel;
if (r.sim.players[0].gear.main_hand != null) { totalgear = totalgear + r.sim.players[0].gear.main_hand.ilevel; total++; }
if (r.sim.players[0].gear.off_hand != null) { totalgear = totalgear + r.sim.players[0].gear.off_hand.ilevel; total++; }
return totalgear / total;
}
public static void AddSimGear(int uid)
{
Root r = JsonConvert.DeserializeObject<Root>(File.ReadAllText($"tmp/{uid}.json"));
string mainhand = "";
string offhand = "";
if (r.sim.players[0].gear.main_hand != null)
{
mainhand = $"{r.sim.players[0].gear.main_hand.encoded_item},item_level={r.sim.players[0].gear.main_hand.ilevel}";
}
if (r.sim.players[0].gear.off_hand != null)
{
offhand = $"{r.sim.players[0].gear.off_hand.encoded_item},item_level={r.sim.players[0].gear.off_hand.ilevel}";
}
using (var con = DB.MxWDB())
{
string cmdText = $"INSERT INTO mxw_gear (sid, uid, head, neck, shoulders, chest, waist, legs, feet, wrists, hands, finger1, finger2, trinket1, trinket2, back, main_hand, off_hand) " +
$"VALUES (" +
$"'{DB.GetSimLatestSIDByUID(uid)}'," +
$"'{uid}'," +
$"'{r.sim.players[0].gear.head.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.head.ilevel)}'," +
$"'{r.sim.players[0].gear.neck.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.neck.ilevel)}'," +
$"'{r.sim.players[0].gear.shoulders.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.shoulders.ilevel)}'," +
$"'{r.sim.players[0].gear.chest.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.chest.ilevel)}'," +
$"'{r.sim.players[0].gear.waist.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.waist.ilevel)}'," +
$"'{r.sim.players[0].gear.legs.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.legs.ilevel)}'," +
$"'{r.sim.players[0].gear.feet.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.feet.ilevel)}'," +
$"'{r.sim.players[0].gear.wrists.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.wrists.ilevel)}'," +
$"'{r.sim.players[0].gear.hands.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.hands.ilevel)}'," +
$"'{r.sim.players[0].gear.finger1.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.finger1.ilevel)}'," +
$"'{r.sim.players[0].gear.finger2.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.finger2.ilevel)}'," +
$"'{r.sim.players[0].gear.trinket1.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.trinket1.ilevel)}'," +
$"'{r.sim.players[0].gear.trinket2.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.trinket2.ilevel)}'," +
$"'{r.sim.players[0].gear.back.encoded_item},item_level={Convert.ToInt32(r.sim.players[0].gear.back.ilevel)}'," +
$"'{mainhand}'," +
$"'{offhand}'" +
$")";
MySqlCommand cmd = new MySqlCommand(cmdText, con);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
}
}
}