70 lines
4.4 KiB
C#
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();
|
|
}
|
|
}
|
|
}
|
|
}
|