mirror of
https://github.com/kwsch/pk3DS.git
synced 2026-04-26 00:17:21 -05:00
Remove static variable from pk3DS.Core
This commit is contained in:
parent
b8eedf2b58
commit
7f20c9c370
|
|
@ -9,10 +9,6 @@ namespace pk3DS.Core
|
|||
{
|
||||
public class GameConfig
|
||||
{
|
||||
// This static instance variable is a shim to continue using a static instance without breaking direct references to Main
|
||||
// To-Do: Remove Instance in favor of something else
|
||||
public static GameConfig Instance { get; set; }
|
||||
|
||||
private const int FILECOUNT_XY = 271;
|
||||
private const int FILECOUNT_ORASDEMO = 301;
|
||||
private const int FILECOUNT_ORAS = 299;
|
||||
|
|
|
|||
|
|
@ -124,11 +124,11 @@ public string[] getPersonalEntryList(string[][] AltForms, string[] species, int
|
|||
}
|
||||
return result;
|
||||
}
|
||||
public int[] getSpeciesForm(int PersonalEntry)
|
||||
public int[] getSpeciesForm(int PersonalEntry, GameConfig config)
|
||||
{
|
||||
if (PersonalEntry < GameConfig.Instance.MaxSpeciesID) return new[] { PersonalEntry, 0 };
|
||||
if (PersonalEntry < config.MaxSpeciesID) return new[] { PersonalEntry, 0 };
|
||||
|
||||
for (int i = 0; i < GameConfig.Instance.MaxSpeciesID; i++)
|
||||
for (int i = 0; i < config.MaxSpeciesID; i++)
|
||||
{
|
||||
int FormCount = this[i].FormeCount - 1; // Mons with no alt forms have a FormCount of 1.
|
||||
var altformpointer = this[i].FormStatsIndex;
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ public static Bitmap ChangeOpacity(Image img, double trans)
|
|||
|
||||
return bmp;
|
||||
}
|
||||
public static Bitmap getSprite(int species, int form, int gender, int item, bool shiny = false)
|
||||
public static Bitmap getSprite(int species, int form, int gender, int item, GameConfig config, bool shiny = false)
|
||||
{
|
||||
string file;
|
||||
if (species == 0) // fix with SM release
|
||||
|
|
@ -72,7 +72,7 @@ public static Bitmap getSprite(int species, int form, int gender, int item, bool
|
|||
Bitmap baseImage = (Bitmap)Properties.Resources.ResourceManager.GetObject(file);
|
||||
if (baseImage == null)
|
||||
{
|
||||
if (species < GameConfig.Instance.MaxSpeciesID)
|
||||
if (species < config.MaxSpeciesID)
|
||||
{
|
||||
baseImage = LayerImage(
|
||||
(Image)Properties.Resources.ResourceManager.GetObject("_" + species),
|
||||
|
|
|
|||
|
|
@ -55,17 +55,7 @@ public Main()
|
|||
string filename = args.Length > 0 ? Path.GetFileNameWithoutExtension(args[0])?.ToLower() : "";
|
||||
skipBoth = filename.IndexOf("3DSkip", StringComparison.Ordinal) >= 0;
|
||||
}
|
||||
internal static GameConfig Config
|
||||
{
|
||||
get
|
||||
{
|
||||
return GameConfig.Instance;
|
||||
}
|
||||
set
|
||||
{
|
||||
GameConfig.Instance = value;
|
||||
}
|
||||
}
|
||||
internal static GameConfig Config;
|
||||
public static string RomFSPath;
|
||||
public static string ExeFSPath;
|
||||
public static string ExHeaderPath;
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ private void getList()
|
|||
{
|
||||
entry = Util.getIndex(CB_Species);
|
||||
|
||||
int[] specForm = Main.Config.Personal.getSpeciesForm(entry);
|
||||
int[] specForm = Main.Config.Personal.getSpeciesForm(entry, Main.Config);
|
||||
string filename = "_" + specForm[0] + (entry > 721 ? "_" + (specForm[1] + 1) : "");
|
||||
PB_MonSprite.Image = (Bitmap)Resources.ResourceManager.GetObject(filename);
|
||||
|
||||
|
|
|
|||
|
|
@ -75,7 +75,7 @@ private void getList()
|
|||
{
|
||||
entry = Util.getIndex(CB_Species);
|
||||
|
||||
int[] specForm = Main.Config.Personal.getSpeciesForm(entry);
|
||||
int[] specForm = Main.Config.Personal.getSpeciesForm(entry, Main.Config);
|
||||
string filename = "_" + specForm[0] + (entry > 721 ? "_" + (specForm[1] + 1) : "");
|
||||
PB_MonSprite.Image = (Bitmap)Resources.ResourceManager.GetObject(filename);
|
||||
|
||||
|
|
|
|||
|
|
@ -147,7 +147,7 @@ private void setPokemon()
|
|||
|
||||
private void changeSpecies(object sender, EventArgs e)
|
||||
{
|
||||
PB_PKM.Image = Util.getSprite(CB_Species.SelectedIndex, 0, 0, CB_Item.SelectedIndex);
|
||||
PB_PKM.Image = Util.getSprite(CB_Species.SelectedIndex, 0, 0, CB_Item.SelectedIndex, Main.Config);
|
||||
}
|
||||
|
||||
private void B_Remove_Click(object sender, EventArgs e)
|
||||
|
|
|
|||
|
|
@ -177,7 +177,7 @@ private void UpdateImage(PictureBox pb, int species, int form, int item, int gen
|
|||
pb.Image = null;
|
||||
return;
|
||||
}
|
||||
pb.Image = Util.getSprite(species, form, gender, item);
|
||||
pb.Image = Util.getSprite(species, form, gender, item, Main.Config);
|
||||
}
|
||||
private void formClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -418,7 +418,7 @@ private void showTeams(int i)
|
|||
{
|
||||
if (tr == null || randomizing) return;
|
||||
if (i >= tr.Team.Length) { pba[i].Image = null; return; }
|
||||
Bitmap rawImg = Util.getSprite(tr.Team[i].Species, tr.Team[i].Form, tr.Team[i].Gender, tr.Team[i].Item);
|
||||
Bitmap rawImg = Util.getSprite(tr.Team[i].Species, tr.Team[i].Form, tr.Team[i].Gender, tr.Team[i].Item, Main.Config);
|
||||
pba[i].Image = Util.scaleImage(rawImg, 2);
|
||||
}
|
||||
private void showText()
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ private void changeSpecies(object sender, EventArgs e)
|
|||
int index = int.Parse(name[6]+"");
|
||||
|
||||
int species = (sender as ComboBox).SelectedIndex;
|
||||
Previews[group][index].Image = Util.scaleImage(Util.getSprite(species, 0, 0, 0), 3);
|
||||
Previews[group][index].Image = Util.scaleImage(Util.getSprite(species, 0, 0, 0, Main.Config), 3);
|
||||
}
|
||||
|
||||
private void B_Randomize_Click(object sender, EventArgs e)
|
||||
|
|
|
|||
|
|
@ -298,7 +298,7 @@ private void changeInto(object sender, EventArgs e)
|
|||
if (form == -1)
|
||||
form = baseForms[species];
|
||||
|
||||
pic[index].Image = Util.getSprite(species, form, 0, 0);
|
||||
pic[index].Image = Util.getSprite(species, form, 0, 0, Main.Config);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ private void setPokemon()
|
|||
|
||||
private void changeSpecies(object sender, EventArgs e)
|
||||
{
|
||||
PB_PKM.Image = Util.getSprite(CB_Species.SelectedIndex, (int)NUD_Form.Value, 0, CB_Item.SelectedIndex);
|
||||
PB_PKM.Image = Util.getSprite(CB_Species.SelectedIndex, (int)NUD_Form.Value, 0, CB_Item.SelectedIndex, Main.Config);
|
||||
}
|
||||
|
||||
private void B_Remove_Click(object sender, EventArgs e)
|
||||
|
|
|
|||
|
|
@ -177,7 +177,7 @@ private void UpdateImage(PictureBox pb, int species, int form, int item, int gen
|
|||
pb.Image = null;
|
||||
return;
|
||||
}
|
||||
pb.Image = Util.getSprite(species, form, gender, item);
|
||||
pb.Image = Util.getSprite(species, form, gender, item, Main.Config);
|
||||
}
|
||||
private void formClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -132,7 +132,7 @@ private void getSlotColor(int slot, Image color)
|
|||
}
|
||||
private static void getQuickFiller(PictureBox pb, trpoke7 pk)
|
||||
{
|
||||
Bitmap rawImg = Util.getSprite(pk.Species, pk.Form, pk.Gender, pk.Item, pk.Shiny);
|
||||
Bitmap rawImg = Util.getSprite(pk.Species, pk.Form, pk.Gender, pk.Item, Main.Config, pk.Shiny);
|
||||
pb.Image = Util.scaleImage(rawImg, 2);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -292,7 +292,7 @@ private void updateSpeciesForm(object sender, EventArgs e)
|
|||
g.Clear(Color.Transparent);
|
||||
|
||||
var enc = CurrentTable.Encounters[table][slot];
|
||||
g.DrawImage(enc.Species == 0 ? Core.Properties.Resources.empty : Util.getSprite((int)enc.Species, (int)enc.Forme, 0, 0), pnt);
|
||||
g.DrawImage(enc.Species == 0 ? Core.Properties.Resources.empty : Util.getSprite((int)enc.Species, (int)enc.Forme, 0, 0, Main.Config), pnt);
|
||||
}
|
||||
|
||||
cur_pb.Image = cur_img;
|
||||
|
|
@ -450,12 +450,12 @@ public Bitmap GetTableImg()
|
|||
g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.SingleBitPerPixelGridFit;
|
||||
for (int i = 0; i < Encounters.Length - 1; i++)
|
||||
for (int j = 0; j < Encounters[i].Length; j++)
|
||||
g.DrawImage((Encounters[i][j].Species == 0 ? Core.Properties.Resources.empty : Util.getSprite((int)Encounters[i][j].Species, (int)Encounters[i][j].Forme, 0, 0)), new Point(40 * j, 30 * (i+1)));
|
||||
g.DrawImage((Encounters[i][j].Species == 0 ? Core.Properties.Resources.empty : Util.getSprite((int)Encounters[i][j].Species, (int)Encounters[i][j].Forme, 0, 0, Main.Config)), new Point(40 * j, 30 * (i+1)));
|
||||
for (int i = 0; i < Rates.Length; i++)
|
||||
g.DrawString($"{Rates[i]}%", font, Brushes.Black, new PointF(40 * i + 10, 10));
|
||||
g.DrawString("Weather: ", font, Brushes.Black, new PointF(10, 280));
|
||||
for (int i = 0; i < AdditionalSOS.Length; i++)
|
||||
g.DrawImage((AdditionalSOS[i].Species == 0 ? Core.Properties.Resources.empty : Util.getSprite((int)AdditionalSOS[i].Species, (int)AdditionalSOS[i].Forme, 0, 0)), new Point(40*i + 60, 270));
|
||||
g.DrawImage((AdditionalSOS[i].Species == 0 ? Core.Properties.Resources.empty : Util.getSprite((int)AdditionalSOS[i].Species, (int)AdditionalSOS[i].Forme, 0, 0, Main.Config)), new Point(40*i + 60, 270));
|
||||
}
|
||||
return img;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user