summaryrefslogtreecommitdiff
path: root/StardewModdingAPI/Inheritance
diff options
context:
space:
mode:
authorZoryn <Zoryn4163@users.noreply.github.com>2016-03-20 20:52:56 -0400
committerZoryn <Zoryn4163@users.noreply.github.com>2016-03-20 20:52:56 -0400
commita7af9b5eccde0392d7a47e305ce56ce5d60ae2a9 (patch)
treec00610495d00f6bd4bde9e4eeac390452b5cc978 /StardewModdingAPI/Inheritance
parentf3c7b9eada47233974282d50dc543dcd79a1e3c4 (diff)
parentab0fdb76b0cda10ca44d65e7fd691153bba7a27e (diff)
downloadSMAPI-a7af9b5eccde0392d7a47e305ce56ce5d60ae2a9.tar.gz
SMAPI-a7af9b5eccde0392d7a47e305ce56ce5d60ae2a9.tar.bz2
SMAPI-a7af9b5eccde0392d7a47e305ce56ce5d60ae2a9.zip
Merge pull request #38 from Zoryn4163/master
adds some new events for the update loop
Diffstat (limited to 'StardewModdingAPI/Inheritance')
-rw-r--r--StardewModdingAPI/Inheritance/SGame.cs27
1 files changed, 27 insertions, 0 deletions
diff --git a/StardewModdingAPI/Inheritance/SGame.cs b/StardewModdingAPI/Inheritance/SGame.cs
index 735cd58a..9082d695 100644
--- a/StardewModdingAPI/Inheritance/SGame.cs
+++ b/StardewModdingAPI/Inheritance/SGame.cs
@@ -173,6 +173,8 @@ namespace StardewModdingAPI.Inheritance
public Farmer PreviousFarmer { get; private set; }
+ public Int32 CurrentUpdateTick { get; private set; }
+
private static SGame instance;
public static SGame Instance { get { return instance; } }
@@ -182,6 +184,7 @@ namespace StardewModdingAPI.Inheritance
{
instance = this;
+ /*
#if DEBUG
SaveGame.serializer = new XmlSerializer(typeof (SaveGame), new Type[28]
{
@@ -215,6 +218,7 @@ namespace StardewModdingAPI.Inheritance
typeof (SObject)
});
#endif
+ */
}
protected override void Initialize()
@@ -252,6 +256,29 @@ namespace StardewModdingAPI.Inheritance
Events.GameEvents.InvokeUpdateTick();
+ if (CurrentUpdateTick % 2 == 0)
+ Events.GameEvents.InvokeSecondUpdateTick();
+
+ if (CurrentUpdateTick % 4 == 0)
+ Events.GameEvents.InvokeFourthUpdateTick();
+
+ if (CurrentUpdateTick % 8 == 0)
+ Events.GameEvents.InvokeEighthUpdateTick();
+
+ if (CurrentUpdateTick % 15 == 0)
+ Events.GameEvents.InvokeQuarterSecondTick();
+
+ if (CurrentUpdateTick % 30 == 0)
+ Events.GameEvents.InvokeHalfSecondTick();
+
+ if (CurrentUpdateTick % 60 == 0)
+ Events.GameEvents.InvokeOneSecondTick();
+
+ CurrentUpdateTick += 1;
+ if (CurrentUpdateTick >= 60)
+ CurrentUpdateTick = 0;
+
+
PreviouslyPressedKeys = CurrentlyPressedKeys;
for(PlayerIndex i = PlayerIndex.One; i <= PlayerIndex.Four; i++)
{