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.

142 lines
6.3 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]) + 0.5) / 60 };
  19. #math {mins} {60 - $mins};
  20. #format {mt_display} {\t<129>%s<099> can do another unspiced sausage mission in <139>%d<099> minutes.<099>} {$player}{$mins};
  21. #list {mission_display_list[$player]} {add} {$mt_display};
  22. };
  23. #if {&missions[sausage][active_list][$player][hard]} {
  24. #math {mins} { (($current_time - $missions[sausage][active_list][$player][hard]) + 0.5) / 60 };
  25. #math {mins} {60 - $mins};
  26. #format {mt_display} {\t<129>%s<099> can do another spiced sausage mission in <139>%d<099> minutes.<099>} {$player}{$mins};
  27. #list {mission_display_list[$player]} {add} {$mt_display};
  28. };
  29. };
  30. #foreach {$missions[sausage][retry_list][]} {player} {
  31. #math {mins} { (($current_time - $missions[sausage][retry_list][$player]) + 0.5) / 60 };
  32. #math {mins} {10 - $mins};
  33. #format {mt_display} {\t<129>%s<099> can request a new sausage mission in <139>%d<099> minutes.<099>} {$player}{$mins};
  34. #list {mission_display_list[$player]} {add} {$mt_display};
  35. };
  36. };
  37. #nop ==============================;
  38. #nop ===== Dead Letters =====;
  39. #nop ==============================;
  40. #if {&missions[letter]} {
  41. #foreach {$missions[letter][active_list][]} {player} {
  42. #if {&missions[letter][active_list][$player][difficult]} {
  43. #math {mins} { (($current_time - $missions[letter][active_list][$player][difficult]) + 0.5) / 60 };
  44. #math {mins} {60 - $mins};
  45. #if {$mins < 0} {
  46. #unvar {missions[letter][active_list][$player][difficult]};
  47. } {
  48. #format {mt_display} {\t<129>%s<099> can do another difficult customer letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  49. #list {mission_display_list[$player]} {add} {$mt_display};
  50. };
  51. };
  52. #if {&missions[letter][active_list][$player][distant]} {
  53. #math {mins} { (($current_time - $missions[letter][active_list][$player][distant]) + 0.5) / 60 };
  54. #math {mins} {60 - $mins};
  55. #if {$mins < 0} {
  56. #unvar {missions[letter][active_list][$player][distant]};
  57. } {
  58. #format {mt_display} {\t<129>%s<099> can do another distant lands letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  59. #list {mission_display_list[$player]} {add} {$mt_display};
  60. };
  61. };
  62. #if {&missions[letter][active_list][$player][far]} {
  63. #math {mins} { (($current_time - $missions[letter][active_list][$player][far]) + 0.5) / 60 };
  64. #math {mins} {60 - $mins};
  65. #if {$mins < 0} {
  66. #unvar {missions[letter][active_list][$player][far]};
  67. } {
  68. #format {mt_display} {\t<129>%s<099> can do another far away letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  69. #list {mission_display_list[$player]} {add} {$mt_display};
  70. };
  71. };
  72. #if {&missions[letter][active_list][$player][close]} {
  73. #math {mins} { (($current_time - $missions[letter][active_list][$player][close]) + 0.5) / 60 };
  74. #math {mins} {60 - $mins};
  75. #if {$mins < 0} {
  76. #unvar {missions[letter][active_list][$player][close]};
  77. } {
  78. #format {mt_display} {\t<129>%s<099> can do another close-by letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  79. #list {mission_display_list[$player]} {add} {$mt_display};
  80. };
  81. };
  82. #if {&missions[letter][active_list][$player][local]} {
  83. #math {mins} { (($current_time - $missions[letter][active_list][$player][local]) + 0.5) / 60 };
  84. #math {mins} {60 - $mins};
  85. #if {$mins < 0} {
  86. #unvar {missions[letter][active_list][$player][local]};
  87. } {
  88. #format {mt_display} {\t<129>%s<099> can do another local letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  89. #list {mission_display_list[$player]} {add} {$mt_display};
  90. };
  91. };
  92. };
  93. #foreach {$missions[letter][retry_list][]} {player} {
  94. #format {missions[letter][retry_list][$GMCP[charinfo][capname]]} {%T};
  95. #math {mins} { (($current_time - $missions[letter][retry_list][$player]) + 0.5) / 60 };
  96. #showme {Mission Debug: $current_time - $missions[letter][retry_list][$player]};
  97. #math {mins} {10 - $mins};
  98. #if {$mins < 0} {
  99. #unvar {missions[letter][retry_list][player]};
  100. } {
  101. #format {mt_display} {\t<129>%s<099> can request another letter in <139>%d<099> minutes.<099>} {$player}{$mins};
  102. #list {mission_display_list[$player]} {add} {$mt_display};
  103. };
  104. };
  105. };
  106. #nop ==============================;
  107. #nop ===== Print Missions =====;
  108. #nop ==============================;
  109. #list {mission_display_list} {size} {mdl_count};
  110. #if {$mdl_count > 0} {
  111. #echo {<149>[MT] Active Mission Timers:<099>};
  112. #foreach {$mission_display_list[]} {player} {
  113. #foreach {$mission_display_list[$player][%*]} {mt_display} {
  114. #showme {$mt_display};
  115. };
  116. };
  117. } {
  118. #echo {<149>[MT] No current mission timers.<099>};
  119. };
  120. };
  121. #CLASS {missiontimers} {close};