TinTin++ Configs for DiscworldMUD
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

159 lines
6.5 KiB

  1. #CLASS {missiontimers} {kill};
  2. #CLASS {missiontimers} {open};
  3. #NOP ==[ Load Individual Mission stuff ]==
  4. #READ {src/missions/sausages.tin};
  5. #READ {src/missions/letters.tin};
  6. #ALIAS {missions} {
  7. #if {&missions == 0} {
  8. #return;
  9. };
  10. #format {current_time} {%T};
  11. #var {mission_display_list} {};
  12. #nop ==============================;
  13. #nop ===== Sausage Missions =====;
  14. #nop ==============================;
  15. #if {&missions[sausage]} {
  16. #foreach {$missions[sausage][active_list][]} {player} {
  17. #if {&missions[sausage][active_list][$player][easy]} {
  18. #math {mins} {$current_time - $missions[sausage][active_list][$player][easy]};
  19. #math {mins} {($mins - (60 - 1)) / 60};
  20. #math {mins} {60 - $mins};
  21. #format {mt_display} {\t<129>%s<099> can do another unspiced sausage mission in <139>%d<099> minutes.<099>} {$player}{$mins};
  22. #list {mission_display_list[$player]} {add} {$mt_display};
  23. };
  24. #if {&missions[sausage][active_list][$player][hard]} {
  25. #math {mins} {$current_time - $missions[sausage][active_list][$player][hard]};
  26. #math {mins} {($mins - (60 - 1)) / 60};
  27. #math {mins} {60 - $mins};
  28. #format {mt_display} {\t<129>%s<099> can do another spiced sausage mission in <139>%d<099> minutes.<099>} {$player}{$mins};
  29. #list {mission_display_list[$player]} {add} {$mt_display};
  30. };
  31. };
  32. #foreach {$missions[sausage][retry_list][]} {player} {
  33. #math {mins} {$current_time - $missions[sausage][retry_list][$player]};
  34. #math {mins} {($mins - (60 - 1)) / 60};
  35. #math {mins} {10 - $mins};
  36. #format {mt_display} {\t<129>%s<099> can request a new sausage mission in <139>%d<099> minutes.<099>} {$player}{$mins};
  37. #list {mission_display_list[$player]} {add} {$mt_display};
  38. };
  39. };
  40. #nop ==============================;
  41. #nop ===== Dead Letters =====;
  42. #nop ==============================;
  43. #if {&missions[letter]} {
  44. #foreach {$missions[letter][active_list][]} {player} {
  45. #if {&missions[letter][active_list][$player][difficult]} {
  46. #math {mins} {$current_time - $missions[letter][active_list][$player][difficult]};
  47. #math {mins} {($mins - (60 - 1)) / 60};
  48. #math {mins} {60 - $mins};
  49. #if {$mins < 0} {
  50. #unvar {missions[letter][active_list][$player][difficult]};
  51. } {
  52. #format {mt_display} {\t<129>%s<099> can do another difficult customer letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  53. #list {mission_display_list[$player]} {add} {$mt_display};
  54. };
  55. };
  56. #if {&missions[letter][active_list][$player][distant]} {
  57. #math {mins} {$current_time - $missions[letter][active_list][$player][distant]};
  58. #math {mins} {($mins - (60 - 1)) / 60};
  59. #math {mins} {60 - $mins};
  60. #if {$mins < 0} {
  61. #unvar {missions[letter][active_list][$player][distant]};
  62. } {
  63. #format {mt_display} {\t<129>%s<099> can do another distant lands letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  64. #list {mission_display_list[$player]} {add} {$mt_display};
  65. };
  66. };
  67. #if {&missions[letter][active_list][$player][far]} {
  68. #math {mins} {$current_time - $missions[letter][active_list][$player][far]};
  69. #math {mins} {($mins - (60 - 1)) / 60};
  70. #math {mins} {60 - $mins};
  71. #if {$mins < 0} {
  72. #unvar {missions[letter][active_list][$player][far]};
  73. } {
  74. #format {mt_display} {\t<129>%s<099> can do another far away letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  75. #list {mission_display_list[$player]} {add} {$mt_display};
  76. };
  77. };
  78. #if {&missions[letter][active_list][$player][close]} {
  79. #math {mins} {$current_time - $missions[letter][active_list][$player][close]};
  80. #math {mins} {($mins - (60 - 1)) / 60};
  81. #math {mins} {60 - $mins};
  82. #if {$mins < 0} {
  83. #unvar {missions[letter][active_list][$player][close]};
  84. } {
  85. #format {mt_display} {\t<129>%s<099> can do another close-by letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  86. #list {mission_display_list[$player]} {add} {$mt_display};
  87. };
  88. };
  89. #if {&missions[letter][active_list][$player][local]} {
  90. #math {mins} {$current_time - $missions[letter][active_list][$player][local]};
  91. #math {mins} {($mins - (60 - 1)) / 60};
  92. #math {mins} {60 - $mins};
  93. #if {$mins < 0} {
  94. #unvar {missions[letter][active_list][$player][local]};
  95. } {
  96. #format {mt_display} {\t<129>%s<099> can do another local letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  97. #list {mission_display_list[$player]} {add} {$mt_display};
  98. };
  99. };
  100. };
  101. #foreach {$missions[letter][retry_list][]} {player} {
  102. #math {mins} {$current_time - $missions[letter][retry_list][$player]};
  103. #math {mins} {($mins - (60 - 1)) / 60};
  104. #math {mins} {10 - $mins};
  105. #if {$mins < 0} {
  106. #unvar {missions[letter][retry_list][player]};
  107. } {
  108. #format {mt_display} {\t<129>%s<099> can request another letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  109. #list {mission_display_list[$player]} {add} {$mt_display};
  110. };
  111. };
  112. };
  113. #nop ==============================;
  114. #nop ===== Print Missions =====;
  115. #nop ==============================;
  116. #list {mission_display_list} {size} {mdl_count};
  117. #if {$mdl_count > 0} {
  118. #echo {<149>[MT] Active Mission Timers:<099>};
  119. #foreach {$mission_display_list[]} {player} {
  120. #foreach {$mission_display_list[$player][%*]} {mt_display} {
  121. #showme {$mt_display};
  122. };
  123. };
  124. } {
  125. #echo {<149>[MT] No current mission timers.<099>};
  126. };
  127. };
  128. #CLASS {missiontimers} {close};