public void UpdateSein() { Dictionary <string, object> n = new Dictionary <string, object>() { }; n["Energy Max"] = oriMemory.GetSeinEnergy("Max"); n["Health Max"] = oriMemory.GetSeinHealth <int>("Max"); n["Soul Flame"] = oriMemory.GetSeinHasSoulFlame(); n["Ability Cells"] = oriMemory.GetSeinInventory("Skill Points"); n["Deaths"] = oriMemory.GetDeathsCount(); n["Level"] = oriMemory.GetSeinLevel("Current"); n["Key Stones"] = oriMemory.GetSeinInventory("Keystones"); n["Map %"] = oriMemory.GetTotalMapCompletion(); //n["Soul Flames Cast"] = oriMemory.GetSeinSoulFlame<Int32>("Number of Soul Flames Cast"); //n["Is Gliding"] = oriMemory.GetSeinAbilityState<Boolean>("Is Gliding"); //n["Is Grabbing Block"] = oriMemory.GetSeinAbilityState<Boolean>("Is Grabbing Block"); //n["Is Grabbing Wall"] = oriMemory.GetSeinAbilityState<Boolean>("Is Grabbing Wall"); //n["Is Crouching"] = oriMemory.GetSeinAbilityState<Boolean>("Is Crouching"); //n["Is Bashing"] = oriMemory.GetSeinAbilityState<Boolean>("Is Bashing"); //n["Map Stones"] = oriMemory.GetSeinInventory("Map Stones"); //n["Skill Points"] = oriMemory.GetSeinLevel("Skill Points"); //n["Experience"] = oriMemory.GetSeinLevel("Experience"); //n["Has Died"] = oriMemory.GetSeinDamage<Boolean>("Died"); //n["Immortal"] = oriMemory.GetSeinDamage<Boolean>("Is Immortal"); //n["Swim State"] = oriMemory.GetSeinAbilityState<Int32>("Swim State"); //n["Run State"] = oriMemory.GetSeinAbilityState<Int32>("Run State"); //n["In Game Time"] = oriMemory.GetGameTime(); //n["Position X"] = oriMemory.GetPosition(0); //n["Position Y"] = oriMemory.GetPosition(1); //n["Energy Current"] = oriMemory.GetSeinEnergy("Current"); //n["Health Current"] = oriMemory.GetSeinHealth<Single>("Current"); foreach (var pair in n) { if (!sState.ContainsKey(pair.Key)) { sState[pair.Key] = pair.Value; } if (!sState[pair.Key].Equals(n[pair.Key])) { oriTriggers.OnGenericChange(pair.Key, pair.Value, sState[pair.Key]); sState[pair.Key] = pair.Value; } } }