Advertisement
Guest User

Untitled

a guest
Mar 26th, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.26 KB | None | 0 0
  1. using System;
  2. using Quasar.HabboHotel.GameClients;
  3.  
  4. namespace Quasar.HabboHotel.Items.Interactor
  5. {
  6. class InteractorCounter : IFurniInteractor
  7. {
  8. public void OnPlace(GameClient Session, Item Item)
  9. {
  10. Item.ExtraData = "30";
  11. Item.UpdateState();
  12. }
  13.  
  14. public void OnRemove(GameClient Session, Item Item)
  15. {
  16. }
  17.  
  18. public void OnTrigger(GameClient Session, Item Item, int Request, bool HasRights)
  19. {
  20. if (!HasRights)
  21. {
  22. return;
  23. }
  24.  
  25. int oldValue = 0;
  26.  
  27. if (!int.TryParse(Item.ExtraData, out oldValue))
  28. {
  29. Item.ExtraData = "30";
  30. oldValue = 30;
  31. }
  32.  
  33. if (Request == 0 && oldValue == 0)
  34. {
  35. oldValue = 30;
  36. }
  37. else if (Request == 2)
  38. {
  39. if (Item.GetRoom().GetSoccer().GameIsStarted && Item.pendingReset && oldValue > 0)
  40. {
  41. oldValue = 0;
  42. Item.pendingReset = false;
  43. }
  44. else
  45. {
  46. if (oldValue < 30)
  47. oldValue = 30;
  48. else if (oldValue == 30)
  49. oldValue = 60;
  50. else if (oldValue == 60)
  51. oldValue = 120;
  52. else if (oldValue == 120)
  53. oldValue = 180;
  54. else if (oldValue == 180)
  55. oldValue = 300;
  56. else if (oldValue == 300)
  57. oldValue = 600;
  58. else
  59. oldValue = 0;
  60. Item.UpdateNeeded = false;
  61. }
  62. }
  63. else if (Request == 1 || Request == 0)
  64. {
  65. if (Request == 1 && oldValue == 0)
  66. {
  67. Item.ExtraData = "30";
  68. oldValue = 30;
  69. }
  70.  
  71. if (!Item.GetRoom().GetSoccer().GameIsStarted)
  72. {
  73. Item.UpdateNeeded = !Item.UpdateNeeded;
  74.  
  75. if (Item.UpdateNeeded)
  76. {
  77. Item.GetRoom().GetSoccer().StartGame();
  78. }
  79.  
  80. Item.pendingReset = true;
  81. }
  82. else
  83. {
  84. Item.UpdateNeeded = !Item.UpdateNeeded;
  85.  
  86. if (Item.UpdateNeeded)
  87. {
  88. Item.GetRoom().GetSoccer().StopGame(true);
  89. }
  90.  
  91. Item.pendingReset = true;
  92. }
  93. }
  94.  
  95.  
  96. Item.ExtraData = Convert.ToString(oldValue);
  97. Item.UpdateState();
  98. }
  99.  
  100. public void OnWiredTrigger(Item Item)
  101. {
  102. if (Item.GetRoom().GetSoccer().GameIsStarted)
  103. Item.GetRoom().GetSoccer().StopGame(true);
  104.  
  105. Item.pendingReset = true;
  106. Item.UpdateNeeded = true;
  107. Item.ExtraData = "30";
  108. Item.UpdateState();
  109.  
  110. Item.GetRoom().GetSoccer().StartGame();
  111. }
  112. }
  113. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement