summaryrefslogtreecommitdiff
path: root/StardewModdingAPI/Inheritance
diff options
context:
space:
mode:
authorZoryn Aaron <zoryn4163@gmail.com>2016-03-01 19:36:12 -0500
committerZoryn Aaron <zoryn4163@gmail.com>2016-03-01 19:36:12 -0500
commit63392a21e4d95a2803bcb0a6beffc52b9b146dea (patch)
tree7baf70da9d294a57fb49932c4492c0face73171c /StardewModdingAPI/Inheritance
parent069589db98df9e388c919a32f8503ad7cd854b7c (diff)
downloadSMAPI-63392a21e4d95a2803bcb0a6beffc52b9b146dea.tar.gz
SMAPI-63392a21e4d95a2803bcb0a6beffc52b9b146dea.tar.bz2
SMAPI-63392a21e4d95a2803bcb0a6beffc52b9b146dea.zip
fixes my derping
Diffstat (limited to 'StardewModdingAPI/Inheritance')
-rw-r--r--StardewModdingAPI/Inheritance/SGame.cs20
-rw-r--r--StardewModdingAPI/Inheritance/SGameLocation.cs24
2 files changed, 32 insertions, 12 deletions
diff --git a/StardewModdingAPI/Inheritance/SGame.cs b/StardewModdingAPI/Inheritance/SGame.cs
index 0202e55f..fdc6f3f7 100644
--- a/StardewModdingAPI/Inheritance/SGame.cs
+++ b/StardewModdingAPI/Inheritance/SGame.cs
@@ -117,17 +117,19 @@ namespace StardewModdingAPI.Inheritance
{
base.Draw(gameTime);
Events.InvokeDrawTick();
- /*
- spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.AlphaBlend, SamplerState.PointClamp, null, null);
- if (CurrentLocation != null)
- CurrentLocation.draw(Game1.spriteBatch);
+ if (Program.debug)
+ {
+ spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.AlphaBlend, SamplerState.PointClamp, null, null);
- if (player != null && player.position != null)
- spriteBatch.DrawString(Game1.dialogueFont, Game1.player.position.ToString(), new Vector2(0, 180), Color.Orange);
-
- spriteBatch.End();
- */
+ if (CurrentLocation != null)
+ CurrentLocation.draw(Game1.spriteBatch);
+
+ if (player != null && player.position != null)
+ spriteBatch.DrawString(Game1.dialogueFont, Game1.player.position.ToString(), new Vector2(0, 180), Color.Orange);
+
+ spriteBatch.End();
+ }
}
public static Int32 RegisterModItem(SObject modItem)
diff --git a/StardewModdingAPI/Inheritance/SGameLocation.cs b/StardewModdingAPI/Inheritance/SGameLocation.cs
index 69b44003..14d9afa6 100644
--- a/StardewModdingAPI/Inheritance/SGameLocation.cs
+++ b/StardewModdingAPI/Inheritance/SGameLocation.cs
@@ -23,15 +23,30 @@ namespace StardewModdingAPI.Inheritance
SGameLocation s = new SGameLocation();
s.BaseGameLocation = baseClass;
s.ModObjects = new SerializableDictionary<Vector2, SObject>();
+
+ foreach (var v in baseClass.GetType().GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance))
+ {
+ try
+ {
+ var fi = s.GetType().GetField(v.Name, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
+ if (fi != null && !fi.IsStatic)
+ {
+ fi.SetValue(s, v.GetValue(baseClass));
+ //Console.WriteLine("SET {0} ON {1} TO {2}", fi.Name, s.name, v.GetValue(baseClass));
+ }
+ }
+ catch (Exception ex)
+ {
+ Program.LogError(ex);
+ }
+ }
+
//s.IsFarm = baseClass.IsFarm;
//s.IsOutdoors = baseClass.IsOutdoors;
//s.LightLevel = baseClass.LightLevel;
//s.Map = baseClass.Map;
//s.objects = baseClass.objects;
//s.temporarySprites = baseClass.temporarySprites;
- s.map = baseClass.map;
- s.objects = baseClass.objects;
- s.name = baseClass.name;
/*
s.actionObjectForQuestionDialogue = baseClass.actionObjectForQuestionDialogue;
@@ -73,6 +88,9 @@ namespace StardewModdingAPI.Inheritance
s.waterTileFlip = baseClass.waterTileFlip;
s.waterTiles = baseClass.waterTiles;
*/
+
+
+
return s;
}