public static Image GenerateQRCode7(PK7 pk7, int box = 0, int slot = 0, int num_copies = 1) { byte[] data = QR7.GenerateQRData(pk7, box, slot, num_copies); var msg = QRMessageUtil.GetMessage(data); return(GenerateQRCode(msg, ppm: 4)); }
public byte[] GenQR(PKM pokemon) { try { string data = QRMessageUtil.GetMessage(pokemon); QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(data, QRCodeGenerator.ECCLevel.L); PngByteQRCode qrCode = new PngByteQRCode(qrCodeData); byte[] qrCodeAsPngByteArr = qrCode.GetGraphic(3); qrCode.Dispose(); qrGenerator.Dispose(); return(qrCodeAsPngByteArr); } catch (Exception e) { Console.WriteLine(e.ToString()); return(null); } }
public static Image GenerateQRCode(PKM pkm) => GenerateQRCode(QRMessageUtil.GetMessage(pkm));
public static Image GenerateQRCode(DataMysteryGift mg) => GenerateQRCode(QRMessageUtil.GetMessage(mg));
public PokemonSummary(PKM pkm, GameStrings strings) : base(pkm, strings) { Ribbons = new List <string>(); foreach (var ribbon in RibbonInfo.GetRibbonInfo(pkm)) { if (ribbon.HasRibbon) { Ribbons.Add(RibbonStrings.GetName(ribbon.Name)); } } Moves = new List <Move> { new Move() { Move_Name = Move1, Move_Type = MoveType.MT[pkm.Move1].Type, Move_PP = Move1_PP, Move_PP_Up = Move1_PPUp }, new Move() { Move_Name = Move2, Move_Type = MoveType.MT[pkm.Move2].Type, Move_PP = Move2_PP, Move_PP_Up = Move2_PPUp }, new Move() { Move_Name = Move3, Move_Type = MoveType.MT[pkm.Move3].Type, Move_PP = Move3_PP, Move_PP_Up = Move3_PPUp }, new Move() { Move_Name = Move4, Move_Type = MoveType.MT[pkm.Move4].Type, Move_PP = Move4_PP, Move_PP_Up = Move4_PPUp } }; Stats = new List <Stat> { new Stat() { Stat_Name = "HP", Stat_IV = HP_IV, Stat_EV = HP_EV, Stat_Total = HP }, new Stat() { Stat_Name = "Attack", Stat_IV = ATK_IV, Stat_EV = ATK_EV, Stat_Total = ATK }, new Stat() { Stat_Name = "Defense", Stat_IV = DEF_IV, Stat_EV = DEF_EV, Stat_Total = DEF }, new Stat() { Stat_Name = "Speed", Stat_IV = SPE_IV, Stat_EV = SPE_EV, Stat_Total = SPE }, new Stat() { Stat_Name = "Special Attack", Stat_IV = SPA_IV, Stat_EV = SPA_EV, Stat_Total = SPA }, new Stat() { Stat_Name = "Special Defense", Stat_IV = SPD_IV, Stat_EV = SPD_EV, Stat_Total = SPD }, }; Generation = Utils.GetGeneration(pkm); Form = Utils.GetForm(pkm, pkm.Form); HeldItemSpriteURL = ""; HT = pkm.HT_Name; DexNumber = pkm.Species; Size = pkm.SIZE_STORED; ItemNum = pkm.HeldItem; var LC = new LegalityAnalysis(pkm); IllegalReasons = LC.Report(); IsLegal = LC.Valid; QR = Utils.GenerateQR(QRMessageUtil.GetMessage(pkm)); Base64 = System.Convert.ToBase64String(pkm.DecryptedBoxData); SpeciesSpriteURL = Helpers.Sprite.getFormURL(DexNumber, Generation, Form, IsShiny, Gender, Species); }
public Legalize(PKM pk, string version) { CancellationTokenSource cts = new CancellationTokenSource(10000); try { var al = new AutoLegality(pk, version, cts); if (al.OkayToRun) { PKM pkmn; Thread thread = new Thread(() => { al.LegalizePokemon(cts); }); thread.Start(); while (true) { if (cts.IsCancellationRequested) { thread.Interrupt(); pkmn = al.GetLegalPK(); break; } Thread.Sleep(100); } Success = al.Successful; Report = al.Report.Split('\n'); Ran = al.Ran; if (Success) { try { Pokemon = Convert.ToBase64String(pkmn.DecryptedBoxData); Species = new PokemonSummary(pkmn, GameInfo.Strings).Species; try { QR = Utils.GenerateQR(QRMessageUtil.GetMessage(pkmn)); } catch { QR = ""; } } catch { Pokemon = ""; Species = ""; Success = false; Ran = true; Report = new[] { "Stuck in legalization!" }; } } else { Pokemon = ""; } } else { Ran = false; Success = false; Report = new[] { "Could not run legalization!" }; } } catch (Exception e) { cts.Cancel(); if (SentrySdk.IsEnabled) { SentrySdk.ConfigureScope(scope => { scope.Contexts["pokemon"] = new { Version = version, Base64 = Convert.ToBase64String(pk.DecryptedBoxData) }; }); SentrySdk.CaptureException(e); } } }