您不能選擇超過 %s 個話題 話題必須以字母或數字為開頭,可包含連接號 ('-') 且最長為 35 個字
 
 
 

61 行
3.0 KiB

  1. using System;
  2. using SUISS.Core;
  3. using SUISS.Scheduling;
  4. using SUISSEngine;
  5. public class CIGInterestingEventFlagging : InterestingEventFlagging<CIGInterestingRatingTriggerEventType>
  6. {
  7. public CIGInterestingEventFlagging(Messenger messenger, Scheduler scheduler, IRatingRequestManager ratingRequestManager) : base(messenger, scheduler, ratingRequestManager)
  8. {
  9. this.SetTimeOutInfo();
  10. }
  11. protected override void HandleFlagAdd(CIGInterestingRatingTriggerEventType eventType)
  12. {
  13. switch (eventType)
  14. {
  15. case CIGInterestingRatingTriggerEventType.SpendCurrencies:
  16. if (base.FlagRaised(CIGInterestingRatingTriggerEventType.IAPPurchase))
  17. {
  18. base.DelayedNotice(10.0);
  19. }
  20. break;
  21. case CIGInterestingRatingTriggerEventType.LevelUp:
  22. base.DelayedNotice(10.0);
  23. break;
  24. case CIGInterestingRatingTriggerEventType.OpenNewIsland:
  25. base.DelayedNotice(20.0);
  26. break;
  27. case CIGInterestingRatingTriggerEventType.FoundTreasure:
  28. base.DelayedNotice(10.0);
  29. break;
  30. case CIGInterestingRatingTriggerEventType.ClaimedAchievementAward:
  31. if (base.FlagsRaised(eventType) == 3)
  32. {
  33. base.DelayedNotice(10.0);
  34. }
  35. break;
  36. }
  37. }
  38. protected void SetTimeOutInfo()
  39. {
  40. this._timeOutInfo.Add(CIGInterestingRatingTriggerEventType.SpendCurrencies, new InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutInfo(0, InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutStyle.FullReset));
  41. this._timeOutInfo.Add(CIGInterestingRatingTriggerEventType.ClaimedAchievementAward, new InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutInfo(10, InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutStyle.FullReset));
  42. this._timeOutInfo.Add(CIGInterestingRatingTriggerEventType.FoundTreasure, new InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutInfo(0, InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutStyle.FullReset));
  43. this._timeOutInfo.Add(CIGInterestingRatingTriggerEventType.IAPPurchase, new InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutInfo(30, InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutStyle.Decrement));
  44. this._timeOutInfo.Add(CIGInterestingRatingTriggerEventType.LevelUp, new InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutInfo(30, InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutStyle.FullReset));
  45. this._timeOutInfo.Add(CIGInterestingRatingTriggerEventType.OpenNewIsland, new InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutInfo(20, InterestingEventFlagging<CIGInterestingRatingTriggerEventType>.TimeOutStyle.Decrement));
  46. }
  47. private const double LevelUpNotifyDelaySeconds = 10.0;
  48. private const double NewIslandNotifyDelaySeconds = 20.0;
  49. private const double FoundTreasureDelaySeconds = 10.0;
  50. private const double AchievementsClaimedDelaySeconds = 10.0;
  51. private const double SomethingBuildDelaySeconds = 10.0;
  52. }