Advertisement
kazmadan

Untitled

Oct 17th, 2013
165
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 47.82 KB | None | 0 0
  1. ;
  2. ; http://mircboard.net/index.php
  3. ;
  4. ;Author SexisBadToTheBone, with help from IRC channels : Gummibaer, Flobe, Liath, Alex ( Central.irc.de ) , Jay2k1, Vliedel ( Quakenet) and jagged ( Freenode ) thank u help out when i was stucked
  5. ;
  6. ;date Juli the 3rd 2013
  7. ;Verison : 0.9
  8. ;
  9. ;die hashtabelle folgt folgender logic
  10. ;0 0 1500 0 0 1500 0 0 1500 0 0 0
  11. ;1gibt gewonne duel spiele an, 2 verlorene duel spiele, 3 gib den elo wert fur duel an
  12. ;4gibt gewonne ffa spiele an, 5 verlorene ffa spiele, 6 den elo wert fur ffa
  13. ;7gibt gewonne team spiele an, 8 verlorene team spiele, 9 den elo wert fur teamspiele
  14. ;10, 11 und 12 fur evtl zukunfige verwendung
  15. ;--------------------------------------------------------------------------------------------------
  16. ;the script stores won and lost games. also it calculate a elo rating for the gametype duel, ffa and teamer
  17. ;commandos: ......
  18. ; !register : put nickname in the hashtable
  19. ; !won : Syntax : !won gametype nickname(s), on 2v2teamer the inputer and the 2nd nick is stored to winner section the 3rd and 4th nickname is loser and stored so all parameter just delimeted by a space character. on 3v3 teamer inputer 2nd and 3rd nick counted to winner teamer 4th 5th and 6th nick stored to loser how it will work for 4v4?
  20. ; !confirm : here just the loser confirm his loss, its enough one of the losers confirm e.g in ffa or teamer
  21. ; !top10 : syntax : !top10 gametype..... !top10 duel, !top10 ffa, !top10 teamer - shows top 10 of gametype
  22. ; !rank : syntax: !rank gametype nickname - shows rank of a certain nickname rated by elo
  23. ; !report stores waht ever was said in logfile with date day time
  24. ;u might need create for logfile the textfile logforscores.txt manually
  25.  
  26. on *:START:{
  27. hmake -s jiggle 10
  28. echo -s table created
  29. hload -s jiggle jiggle.txt
  30. echo-s table loaded
  31. }
  32.  
  33. on *:EXIT:{
  34. hsave -os jiggle jiggle.txt
  35. }
  36.  
  37. ;here we have all elo equations for different gametypes begin
  38.  
  39. alias BerechneEloDuel {
  40.  
  41. var %RBWindDuelNickElo-Old = $gettok($hget(jiggle,%winduelnick),3,32)
  42. var %RALostDuelNickElo-Old = $gettok($hget(jiggle,%lostduelnick),3,32)
  43. ;zählen der gespielten Spiele zur berechnung des k-faktors unter 30
  44. var %gameamountb = $calc($gettok($hget(jiggle,%winduelnick),1,32) + ($gettok($hget(jiggle,%winduelnick),2,32)))
  45.  
  46. if ( %gameamountb <= 30 ) {
  47. var %kfactorb = 30 }
  48. elseif ( %RBWindDuelNickElo-Old >= 2400 ) {
  49. var %kfactorb = 10 }
  50. else { var %kfactorb = 15 }
  51. ;zählen der gespielten Spiele zur berechnung des k-faktors unter 30
  52. var %gameamounta = $calc($gettok($hget(jiggle,%lostduelnick),1,32) + ($gettok($hget(jiggle,%lostduelnick),2,32)))
  53.  
  54. if ( %gameamounta <= 30 ) {
  55. var %kfactora = 30 }
  56. elseif ( %RALostDuelNickElo-Old >= 2400 ) {
  57. var %kfactora = 10 }
  58. else { var %kfactora = 15 }
  59.  
  60. var %EaOddsa = $calc(1/(1 + 10^$calc((%RBWindDuelNickElo-Old - %RALostDuelNickElo-Old) / 400)))
  61. var %EaOddsb = $calc(1/(1 + 10^$calc((%RALostDuelNickElo-Old - %RBWindDuelNickElo-Old) / 400)))
  62. var %RBWindDuelNickElo-New = $calc(%RBWindDuelNickElo-Old + (%kfactorb *(1- %EaOddsb)))
  63. var %RALostDuelNickElo-New = $calc(%RALostDuelNickElo-Old + (%kfactora * (0 - %EaOddsa)))
  64. return $round(%RBWindDuelNickElo-New,0) $round(%RALostDuelNickElo-New,0)
  65. }
  66.  
  67. alias BerechneEloFFA-2 {
  68. var %RBWinffaNickElo-Old = $gettok($hget(jiggle,%winffanick),6,32)
  69. var %RALostffaNickElo-Old1 = $gettok($hget(jiggle,%lostffanick1),6,32)
  70. var %RALostffaNickElo-Old2 = $gettok($hget(jiggle,%lostffanick2),6,32)
  71. var %RALostffaNickElo-Old3 = $gettok($hget(jiggle,%lostffanick3),6,32)
  72. var %RALostffaNickElo-Old4 = $gettok($hget(jiggle,%lostffanick4),6,32)
  73. var %RALostffaNickElo-Old5 = $gettok($hget(jiggle,%lostffanick5),6,32)
  74. var %RALostffaNickElo-Old6 = $gettok($hget(jiggle,%lostffanick6),6,32)
  75.  
  76. ;zählen der gespielten Spiele zur berechnung des k-faktorsb unter 30
  77. var %gameamountb = $calc(($gettok($hget(jiggle,%lostffanick1),4,32) + ($gettok($hget(jiggle,%lostffanick1),5,32)) + ($gettok($hget(jiggle,%lostffanick2),4,32)) + ($gettok($hget(jiggle,%lostffanick2),5,32)) + ($gettok($hget(jiggle,%lostffanick3),4,32)) + ($gettok($hget(jiggle,%lostffanick3),5,32)) + ($gettok($hget(jiggle,%lostffanick4),4,32)) + ($gettok($hget(jiggle,%lostffanick4),5,32)) + ($gettok($hget(jiggle,%lostffanick5),4,32)) + ($gettok($hget(jiggle,%lostffanick5),5,32)) + ($gettok($hget(jiggle,%lostffanick6),4,32)) + ($gettok($hget(jiggle,%lostffanick6),5,32))) / %playeramount)
  78.  
  79. if ( %gameamountb <= 30 ) {
  80. var %kfactorb = 30 }
  81. elseif ( %RBWinffaNickElo-Old >= 2400 ) {
  82. var %kfactorb = 10 }
  83. else { var %kfactorb = 15 }
  84.  
  85. ;zählen der gespielten Spiele zur berechnung des k-faktorsa unter spileranzahl/playeramount
  86. var %gameamounta = $calc($gettok($hget(jiggle,%winffanick),4,32) + ($gettok($hget(jiggle,%winffanick),5,32)))
  87.  
  88. if ( %gameamounta <= 30 ) {
  89. var %kfactora = 30 }
  90. elseif ( %RALostffaNickElo-Old1 >= 2400 ) {
  91. var %kfactora = 10 }
  92. else { var %kfactora = 15 }
  93.  
  94. var %EaOddsA = $calc(1/(1 + 10^$calc((%RBWinffaNickElo-Old - ((%RALostffaNickElo-Old1 + %RALostffaNickElo-Old2 + %RALostffaNickElo-Old3 + %RALostffaNickElo-Old4 + %RALostffaNickElo-Old5 + %RALostffaNickElo-Old6) /%playeramount)) / 400)))
  95. var %EaOddsB = $calc(1/(1 + 10^$calc((((%RALostffaNickElo-Old1 + %RALostffaNickElo-Old2 + %RALostffaNickElo-Old3 + %RALostffaNickElo-Old4 + %RALostffaNickElo-Old5 + %RALostffaNickElo-Old6)/%playeramount) - %RBWinffaNickElo-Old ) / 400)))
  96.  
  97. var %RBWinffaNickElo-New = $calc(%RBWinffaNickElo-Old + (%kfactorb * ( 1- %EaOddsB)))
  98. var %RALostffaNickElo-New1 = $calc(%RALostffaNickElo-Old1 + (%kfactora * (0 - %EaOddsA)))
  99. var %RALostffaNickElo-New2 = $calc(%RALostffaNickElo-Old2 + (%kfactora * (0 - %EaOddsA)))
  100. var %RALostffaNickElo-New3 = $calc(%RALostffaNickElo-Old3 + (%kfactora * (0 - %EaOddsA)))
  101. var %RALostffaNickElo-New4 = $calc(%RALostffaNickElo-Old4 + (%kfactora * (0 - %EaOddsA)))
  102. var %RALostffaNickElo-New5 = $calc(%RALostffaNickElo-Old5 + (%kfactora * (0 - %EaOddsA)))
  103. var %RALostffaNickElo-New6 = $calc(%RALostffaNickElo-Old6 + (%kfactora * (0 - %EaOddsA)))
  104. return $round(%RBWinffaNickElo-New,0) $round(%RALostffaNickElo-New1,0) $round(%RALostffaNickElo-New2,0) $round(%RALostffaNickElo-New3,0) $round(%RALostffaNickElo-New4,0) $round(%RALostffaNickElo-New5,0) $round(%RALostffaNickElo-New6,0)
  105. }
  106.  
  107. alias BerechneElo22team {
  108.  
  109. var %RBWinTeamNickElo-Old1 = $gettok($hget(jiggle,%winteamnick1),9,32)
  110. var %RBWinTeamNickElo-Old2 = $gettok($hget(jiggle,%winteamnick2),9,32)
  111. var %RALostTeamNickElo-Old1 = $gettok($hget(jiggle,%lostteamnick1),9,32)
  112. var %RALostTeamNickElo-Old2 = $gettok($hget(jiggle,%lostteamnick2),9,32)
  113. ;zählen der gespielten Spiele zur berechnung des k-faktors unter 60, 60 weil zwei spiler antreten und nicht nur einer. haben beide spieler 30 spiele absolviert sinds insgesamt 60
  114. var %gameamountb = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + ($gettok($hget(jiggle,%winteamnick1),8,32)) + ($gettok($hget(jiggle,%winteamnick2),7,32)) + ($gettok($hget(jiggle,%winteamnick2),8,32)))
  115. ;zählen der gespielten Spiele zur berechnung des k-faktors unter 60, 60 weil zwei spiler antreten und nicht nur einer. haben beide spieler 30 spiele absolviert sinds insgesamt 60
  116.  
  117. if ( %gameamountb <= 60 ) {
  118. var %kfactorb = 30 }
  119. elseif ( $calc(%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2) >= 4800 ) {
  120. var %kfactorb = 10 }
  121. else { var %kfactorb = 15 }
  122.  
  123. ;zählen der gespielten Spiele zur berechnung des k-faktors unter 60, 60 weil zwei spiler antreten und nicht nur einer. haben beide spieler 30 spiele absolviert sinds insgesamt 60
  124. var %gameamounta = $calc($gettok($hget(jiggle,%lostteamnick1),7,32) + ($gettok($hget(jiggle,%lostteamnick1),8,32)) + ($gettok($hget(jiggle,%lostteamnick2),7,32)) + ($gettok($hget(jiggle,%lostteamnick2),8,32)))
  125.  
  126. if ( %gameamounta <= 60 ) {
  127. var %kfactora = 30 }
  128. elseif ( $calc(%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2) >= 4800 ) {
  129. var %kfactora = 10 }
  130. else { var %kfactora = 15 }
  131.  
  132. var %EaOddsa = $calc(1/(1 + 10^$calc(((%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2) - (%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2)) / 400)))
  133. var %EaOddsb = $calc(1/(1 + 10^$calc(((%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2) - (%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2)) / 400)))
  134. var %RBWindTeamNickElo-New1 = $calc(%RBWinTeamNickElo-Old1 + (%kfactorb * (1 - %EaOddsb)))
  135. var %RBWindTeamNickElo-New2 = $calc(%RBWinTeamNickElo-Old2 + (%kfactorb * (1 - %EaOddsb)))
  136. var %RALostTeamNickElo-New1 = $calc(%RALostTeamNickElo-Old1 + (%kfactora * (0 - %EaOddsa)))
  137. var %RALostTeamNickElo-New2 = $calc(%RALostTeamNickElo-Old2 + (%kfactora * (0 - %EaOddsa)))
  138. return $round(%RBWindTeamNickElo-New1,0) $round(%RBWindTeamNickElo-New2,0) $round(%RALostTeamNickElo-New1,0) $round(%RALostTeamNickElo-New2,0)
  139. }
  140.  
  141. alias BerechneElo33team {
  142.  
  143. var %RBWinTeamNickElo-Old1 = $gettok($hget(jiggle,%winteamnick1),9,32)
  144. var %RBWinTeamNickElo-Old2 = $gettok($hget(jiggle,%winteamnick2),9,32)
  145. var %RBWinTeamNickElo-Old3 = $gettok($hget(jiggle,%winteamnick3),9,32)
  146. var %RALostTeamNickElo-Old1 = $gettok($hget(jiggle,%lostteamnick1),9,32)
  147. var %RALostTeamNickElo-Old2 = $gettok($hget(jiggle,%lostteamnick2),9,32)
  148. var %RALostTeamNickElo-Old3 = $gettok($hget(jiggle,%lostteamnick3),9,32)
  149. ;zählen der gespielten Spiele zur berechnung des k-faktors unter 90, 90 weil drei spiler antreten und nicht nur einer. haben drei spieler 30 spiele absolviert sinds insgesamt 90
  150. var %gameamountb = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + ($gettok($hget(jiggle,%winteamnick1),8,32)) + ($gettok($hget(jiggle,%winteamnick2),7,32)) + ($gettok($hget(jiggle,%winteamnick2),8,32)) + ($gettok($hget(jiggle,%winteamnick3),7,32)) + ($gettok($hget(jiggle,%winteamnick3),8,32)))
  151.  
  152. if ( %gameamountb <= 90 ) {
  153. var %kfactorb = 30 }
  154. elseif ( $calc(%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3) >= 7200 ) {
  155. var %kfactorb = 10 }
  156. else { var %kfactorb = 15 }
  157.  
  158. ;zählen der gespielten Spiele zur berechnung des k-faktors unter 90, 90 weil drei spiler antreten und nicht nur einer. haben drei spieler 30 spiele absolviert sinds insgesamt 90
  159. var %gameamounta = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + ($gettok($hget(jiggle,%winteamnick1),8,32)) + ($gettok($hget(jiggle,%winteamnick2),7,32)) + ($gettok($hget(jiggle,%winteamnick2),8,32)) + ($gettok($hget(jiggle,%winteamnick3),7,32)) + ($gettok($hget(jiggle,%winteamnick3),8,32)))
  160.  
  161. if ( %gameamounta <= 90 ) {
  162. var %kfactora = 30 }
  163. elseif ( $calc(%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3) >= 7200 ) {
  164. var %kfactora = 10 }
  165. else { var %kfactora = 15 }
  166.  
  167. var %EaOddsa = $calc(1/(1 + 10^$calc(((%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3) - (%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3)) / 400)))
  168. var %EaOddsb = $calc(1/(1 + 10^$calc(((%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3) - (%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3)) / 400)))
  169. var %RBWindTeamNickElo-New1 = $calc(%RBWinTeamNickElo-Old1 + (%kfactorb * (1 - %EaOddsb)))
  170. var %RBWindTeamNickElo-New2 = $calc(%RBWinTeamNickElo-Old2 + (%kfactorb * (1 - %EaOddsb)))
  171. var %RBWindTeamNickElo-New3 = $calc(%RBWinTeamNickElo-Old3 + (%kfactorb * (1 - %EaOddsb)))
  172. var %RALostTeamNickElo-New1 = $calc(%RALostTeamNickElo-Old1 + (%kfactora * (0 - %EaOddsa)))
  173. var %RALostTeamNickElo-New2 = $calc(%RALostTeamNickElo-Old2 + (%kfactora * (0 - %EaOddsa)))
  174. var %RALostTeamNickElo-New3 = $calc(%RALostTeamNickElo-Old3 + (%kfactora * (0 - %EaOddsa)))
  175. return $round(%RBWindTeamNickElo-New1,0) $round(%RBWindTeamNickElo-New2,0) $round(%RBWindTeamNickElo-New3,0) $round(%RALostTeamNickElo-New1,0) $round(%RALostTeamNickElo-New2,0) $round(%RALostTeamNickElo-New3,0)
  176. }
  177.  
  178. alias BerechneElo44team {
  179.  
  180. var %RBWinTeamNickElo-Old1 = $gettok($hget(jiggle,%winteamnick1),9,32)
  181. var %RBWinTeamNickElo-Old2 = $gettok($hget(jiggle,%winteamnick2),9,32)
  182. var %RBWinTeamNickElo-Old3 = $gettok($hget(jiggle,%winteamnick3),9,32)
  183. var %RBWinTeamNickElo-Old4 = $gettok($hget(jiggle,%winteamnick4),9,32)
  184. var %RALostTeamNickElo-Old1 = $gettok($hget(jiggle,%lostteamnick1),9,32)
  185. var %RALostTeamNickElo-Old2 = $gettok($hget(jiggle,%lostteamnick2),9,32)
  186. var %RALostTeamNickElo-Old3 = $gettok($hget(jiggle,%lostteamnick3),9,32)
  187. var %RALostTeamNickElo-Old4 = $gettok($hget(jiggle,%lostteamnick4),9,32)
  188. ;zählen der gespielten Spiele zur berechnung des k-faktors unter 120, 120 weil vier spiler antreten und nicht nur einer. haben vieri spieler 30 spiele absolviert sinds insgesamt 120
  189. var %gameamountb = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + ($gettok($hget(jiggle,%winteamnick1),8,32)) + ($gettok($hget(jiggle,%winteamnick2),7,32)) + ($gettok($hget(jiggle,%winteamnick2),8,32)) + ($gettok($hget(jiggle,%winteamnick3),7,32)) + ($gettok($hget(jiggle,%winteamnick3),8,32)) + ($gettok($hget(jiggle,%winteamnick4),7,32)) + ($gettok($hget(jiggle,%winteamnick4),8,32)))
  190.  
  191. if ( %gameamountb <= 120 ) {
  192. var %kfactorb = 30 }
  193. elseif ( $calc(%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3 + %RBWinTeamNickElo-Old4) >= 9600 ) {
  194. var %kfactorb = 10 }
  195. else { var %kfactorb = 15 }
  196.  
  197. ;zählen der gespielten Spiele zur berechnung des k-faktors unter 120, 120 weil vier spiler antreten und nicht nur einer. haben vieri spieler 30 spiele absolviert sinds insgesamt 120
  198. var %gameamounta = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + ($gettok($hget(jiggle,%winteamnick1),8,32)) + ($gettok($hget(jiggle,%winteamnick2),7,32)) + ($gettok($hget(jiggle,%winteamnick2),8,32)) + ($gettok($hget(jiggle,%winteamnick3),7,32)) + ($gettok($hget(jiggle,%winteamnick3),8,32)) + ($gettok($hget(jiggle,%winteamnick4),7,32)) + ($gettok($hget(jiggle,%winteamnick4),8,32)))
  199.  
  200. if ( %gameamounta <= 120 ) {
  201. var %kfactora = 30 }
  202. elseif ( $calc(%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3 + %RALostTeamNickElo-Old4) >= 9600 ) {
  203. var %kfactora = 10 }
  204. else { var %kfactora = 15 }
  205.  
  206. var %EaOddsa = $calc(1/(1 + 10^$calc(((%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3 + %RBWinTeamNickElo-Old4) - (%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3 + %RALostTeamNickElo-Old4)) / 400)))
  207. var %EaOddsb = $calc(1/(1 + 10^$calc(((%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3 + %RALostTeamNickElo-Old4) - (%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3 + %RBWinTeamNickElo-Old4)) / 400)))
  208.  
  209. var %RBWindTeamNickElo-New1 = $calc(%RBWinTeamNickElo-Old1 + (%kfactorb * (1 - %EaOddsb)))
  210. var %RBWindTeamNickElo-New2 = $calc(%RBWinTeamNickElo-Old2 + (%kfactorb * (1 - %EaOddsb)))
  211. var %RBWindTeamNickElo-New3 = $calc(%RBWinTeamNickElo-Old3 + (%kfactorb * (1 - %EaOddsb)))
  212. var %RBWindTeamNickElo-New4 = $calc(%RBWinTeamNickElo-Old4 + (%kfactorb * (1 - %EaOddsb)))
  213. var %RALostTeamNickElo-New1 = $calc(%RALostTeamNickElo-Old1 + (%kfactora * (0 - %EaOddsa)))
  214. var %RALostTeamNickElo-New2 = $calc(%RALostTeamNickElo-Old2 + (%kfactora * (0 - %EaOddsa)))
  215. var %RALostTeamNickElo-New3 = $calc(%RALostTeamNickElo-Old3 + (%kfactora * (0 - %EaOddsa)))
  216. var %RALostTeamNickElo-New4 = $calc(%RALostTeamNickElo-Old4 + (%kfactora * (0 - %EaOddsa)))
  217. return $round(%RBWindTeamNickElo-New1,0) $round(%RBWindTeamNickElo-New2,0) $round(%RBWindTeamNickElo-New3,0) $round(%RBWindTeamNickElo-New4,0) $round(%RALostTeamNickElo-New1,0) $round(%RALostTeamNickElo-New2,0) $round(%RALostTeamNickElo-New3,0) $round(%RALostTeamNickElo-New4,0)
  218. }
  219. ;here we have all elo equations for different gametypes end
  220.  
  221. on *:TEXT:!register:#:{
  222. if (!$hget(jiggle,$remove($nick,-tk))) {
  223. hadd -s jiggle $remove($nick,-tk) 0 0 1500 0 0 1500 0 0 1500 0 0 0
  224. msg $chan Thanks for registering, $remove($nick,-tk)
  225. write -a logforscores.txt $fulldate :: Register :: $remove($nick,-tk)
  226. }
  227. else {
  228. msg $chan You are already registered, $remove($nick,-tk)
  229. echo -ag hashtable entry for $remove($nick,-tk) $+ : $hget(jiggle,$remove($nick,-tk))
  230. }
  231. hsave -os jiggle jiggle.txt
  232. }
  233.  
  234. ;§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
  235.  
  236.  
  237. on *:TEXT:!won*:#:{
  238. if ($timer(1).reps > 0) {
  239. msg $chan Please wait 20 sec. Procedure in progress... }
  240. else {
  241. ;FFA Section Won Begin--------------------------------------------------------%
  242. if ($2 == ffa) && ($hget(jiggle,$remove($nick,-tk))) && ($hget(jiggle,$3)) && (($hget(jiggle,$4)) || ($4 == $null)) && (($hget(jiggle,$5)) || ($5 == $null)) && (($hget(jiggle,$6)) || ($6 == $null)) && (($hget(jiggle,$7)) || ($7 == $null)) && (($hget(jiggle,$8)) || ($8 == $null)) && ($3 != $remove($nick,-tk)) && ($4 != $remove($nick,-tk)) && ($5 != $remove($nick,-tk)) && ($6 != $remove($nick,-tk)) && ($7 != $remove($nick,-tk)) && ($8 != $remove($nick,-tk)) {
  243. set -u20 %winffanick $remove($nick,-tk)
  244. set -u20 %lostffanick1 $3
  245. set -u20 %playeramount $calc($0 - 2)
  246. if ($4 != $null) { set -u20 %lostffanick2 $4 }
  247. else { var %slot2 = 2 }
  248. if ($5 != $null) { set -u20 %lostffanick3 $5 }
  249. else { var %slot3 = 3 }
  250. if ($6 != $null) { set -u20 %lostffanick4 $6 }
  251. else { var %slot4 = 4 }
  252. if ($7 != $null) { set -u20 %lostffanick5 $7 }
  253. else { var %slot5 = 5 }
  254. if ($8 != $null) { set -u20 %lostffanick6 $8 }
  255. else { var %slot6 = 6 }
  256. set -u20 %gametypeffa $2
  257. msg $chan Did %winffanick won vs u $2 %lostffanick1 %lostffanick2 %lostffanick3 %lostffanick4 %lostffanick5 %lostffanick6 ? - Confirm within 20 seconds by typing " !confirm "
  258. timer1 20 1 echo -s timer running }
  259. ;FFA Section Won End---------------------------------------------------------%
  260. ;Duell Section Won Begin-----------------------------------------------------%
  261. elseif ($2 == duel) && ($3 != $remove($nick,-tk)) && ($hget(jiggle,$3)) && ($hget(jiggle,$remove($nick,-tk))) {
  262. set -u20 %winduelnick $remove($nick,-tk)
  263. set -u20 %lostduelnick $3
  264. set -u20 %gametypeduel $2
  265. msg $chan Did %winduelnick won vs u in $2 %lostduelnick ? Confirm within 20 seconds by typing " !confirm "
  266. timerpsrwon 20 1 echo -s timer running }
  267. //echo -a its a duel!
  268. ;Duel Section Won End-------------------------------------------------------%
  269. ;Teamer 2v2 Section Won Begin----------------------------------------------------------------------------%
  270. elseif ($2 == 22team) && ($hget(jiggle,$remove($nick,-tk))) && ($3 != $remove($nick,-tk)) && ($4 != $remove($nick,-tk)) && ($5 != $remove($nick,-tk)) && ($hget(jiggle,$3)) && ($hget(jiggle,$4)) && ($hget(jiggle,$5)) {
  271. set -u20 %winteamnick1 $remove($nick,-tk)
  272. set -u20 %winteamnick2 $3
  273. set -u20 %lostteamnick1 $4
  274. set -u20 %lostteamnick2 $5
  275. set -u20 %gametype22team $2
  276. msg $chan Did Team %winteamnick1 + %winteamnick2 won vs u %lostteamnick1 + %lostteamnick2 ? One of u have to type !confirm
  277. timerpsrwon 20 1 echo -s timer running }
  278. ;Teamer 2v2 Section Won End------------------------------------------------------------------------------%
  279. ;Teamer 3v3 Section Won Begin----------------------------------------------------------------------------%
  280. elseif ($2 == 33team) && ($3 != $remove($nick,-tk)) && ($4 != $remove($nick,-tk)) && ($5 != $remove($nick,-tk)) && ($6 != $remove($nick,-tk)) && ($7 != $remove($nick,-tk)) && ($3 != $4) && ($3 != $5) && ($3 != $6) && ($3 != $7) && ($4 != $5) && ($4 != $6) && ($4 != $7) && ($5 != $6) && ($5 != $7) && ($6 != $7) && ($hget(jiggle,$remove($nick,-tk))) && ($hget(jiggle,$3)) && ($hget(jiggle,$4)) && ($hget(jiggle,$5)) && ($hget(jiggle,$6)) && ($hget(jiggle,$7)) {
  281. set -u20 %winteamnick1 $remove($nick,-tk)
  282. set -u20 %winteamnick2 $3
  283. set -u20 %winteamnick3 $4
  284. set -u20 %lostteamnick1 $5
  285. set -u20 %lostteamnick2 $6
  286. set -u20 %lostteamnick3 $7
  287. set -u20 %gametype33team $2
  288. msg $chan Did Team %winteamnick1 + %winteamnick2 + %winteamnick3 won vs u %lostteamnick1 + %lostteamnick2 + %lostteamnick3 ? One of u have to type !confirm
  289. timerpsrwon 20 1 echo -s timer running }
  290. ;Teamer 3v3 Section Won End------------------------------------------------------------------------------%
  291. ;Teamer 4v4 Section Won Begin----------------------------------------------------------------------------%
  292. elseif ($2 == 44team) && ($3 != $remove($nick,-tk)) && ($4 != $remove($nick,-tk)) && ($5 != $remove($nick,-tk)) && ($6 != $remove($nick,-tk)) && ($7 != $remove($nick,-tk)) && ($8 != $remove($nick,-tk)) && ($9 != $remove($nick,-tk)) && ($3 != $4) && ($3 != $5) && ($3 != $6) && ($3 != $7) && ($3 != $8) && ($3 != $9) && ($4 != $5) && ($4 != $6) && ($4 != $7) && ($4 != $8) && ($4 != $9) && ($5 != $6) && ($5 != $7) && ($5 != $8) && ($5 != $9) && ($6 != $7) && ($6 != $8) && ($6 != $9) && ($7 != $8) && ($7 != $9) && ($8 != $9) && ($hget(jiggle,$remove($nick,-tk))) && ($hget(jiggle,$3)) && ($hget(jiggle,$4)) && ($hget(jiggle,$5)) && ($hget(jiggle,$6)) && ($hget(jiggle,$7)) && ($hget(jiggle,$8)) && ($hget(jiggle,$9)) {
  293. set -u20 %winteamnick1 $remove($nick,-tk)
  294. set -u20 %winteamnick2 $3
  295. set -u20 %winteamnick3 $4
  296. set -u20 %winteamnick4 $5
  297. set -u20 %lostteamnick1 $6
  298. set -u20 %lostteamnick2 $7
  299. set -u20 %lostteamnick3 $8
  300. set -u20 %lostteamnick4 $9
  301. set -u20 %gametype44team $2
  302. msg $chan Did Team %winteamnick1 + %winteamnick2 + %winteamnick3 + %winteamnick4 won vs u %lostteamnick1 + %lostteamnick2 + %lostteamnick3 + %lostteamnick4 ? One of u have to type !confirm
  303. timerpsrwon 20 1 echo -s timer running }
  304. ;Teamer 5v5 Section Won Begin----------------------------------------------------------------------------%
  305. elseif ($2 == 55team) {
  306. msg $chan teamer 5v5 is under construction }
  307. ;Teamer Section End-----------------------------------------------------------%
  308. else {
  309. msg $chan no GameType - $2 - Check spelling - Unregistered Player? }
  310. }
  311. }
  312.  
  313. ;§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
  314. ;§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
  315.  
  316.  
  317.  
  318. on *:TEXT:!confirm:#:{
  319. ;Duel Section Confirm Begin-----------------------------------------------------%
  320. ;Bedingung prüfen auf berechtigten Zugriff gleichzeitig ausschliessen das selber "confirmed" wird und gametype
  321. if (%lostduelnick == $remove($nick,-tk)) && ((duel == %gametypeduel) && (%winduelnick != $remove($nick,-tk))) {
  322. if ($timer(2).reps > 0) {
  323. msg $chan Please wait 20 sec. Procedure in progress... }
  324. else {
  325. ;zugreifen auf Alias und Werte von $BerechneEloDuel in variable %retelo zuweisen
  326. var %retelo = $BerechneEloDuel(%winduelnick,%lostduelnick)
  327.  
  328. ;abspeichern des alias BerechneEloDuel in Haschtable fur gewinner und verlierer mittles $gettok(%retelo,x,y)
  329. hadd jiggle %winduelnick $puttok($hget(jiggle,%winduelnick),$gettok(%retelo,1,32),3,32)
  330. hadd jiggle %lostduelnick $puttok($hget(jiggle,%lostduelnick),$gettok(%retelo,2,32),3,32)
  331.  
  332. ;hinzufugen der zahler fur gewinner
  333. ;add to winner beginn-----------------------------------%
  334. var %counter = $calc($gettok($hget(jiggle,%winduelnick),1,32) + 1)
  335. hadd jiggle %winduelnick $puttok($hget(jiggle,%winduelnick),%counter,1,32)
  336. var %msgaddwinner = %winduelnick u won already %counter duel games :: Elo: $gettok(%retelo,1,32)
  337. ;add to winner end--------------------------------------%
  338.  
  339. ;hinzufugen des zahlers fur verlierer
  340. ;add to loser begin-------------------------------------%
  341. var %counter1 = $calc($gettok($hget(jiggle,%lostduelnick),2,32) + 1)
  342. hadd jiggle %lostduelnick $puttok($hget(jiggle,%lostduelnick),%counter1,2,32)
  343. var %msgaddloser = %lostduelnick its ur %counter duel game u lost :: Elo : $gettok(%retelo,2,32)
  344. ;abspeichern in hashtable
  345. hsave -os jiggle jiggle.txt
  346. ;add to loser end---------------------------------------%
  347. msg $chan %msgaddwinner
  348. msg $chan %msgaddloser
  349. write -a logforscores.txt $fulldate :: Confirmed :: %msgaddwinner :: %msgaddloser
  350. timer2 20 1 echo -s timer running } }
  351. ;Duel Section Confirm End-------------------------------------------------------%
  352.  
  353. ;FFA Section Confirm Begin------------------------------------------------------%
  354. elseif ((%gametypeffa == ffa) && ((%lostffanick1 == $remove($nick,-tk)) || ((%lostffanick2 == $remove($nick,-tk)) || (%lostffanick2 == $null)) || ((%lostffanick3 == $remove($nick,-tk)) || (%lostffanick3 == $null)) || ((%lostffanick4 == $remove($nick,-tk)) || (%lostffanick4 == $null)) || ((%lostffanick5 == $remove($nick,-tk)) || (%lostffanick5 == $null)) || ((%lostffanick6 == $remove($nick,-tk)) || (%lostffanick6 == $null)))) {
  355. if ($timer(2).reps > 0) {
  356. msg $chan Please wait 20 sec. Procedure in progress... }
  357. else {
  358. ;zugreifen auf Alias und Werte von $BerechneEloFFA-2 in variable %retelo zuweisen
  359. var %retelo = $BerechneEloFFA-2(%winffanick,%lostffanick1,%lostffanick2,%lostffanick3,%lostffanick4,%lostffanick5,%lostffanick6)
  360.  
  361. ;abspeichern des alias BerechneEloDuel in Haschtable fur gewinner und verlierer mittles $gettok(%retelo,x,y)
  362. hadd jiggle %winffanick $puttok($hget(jiggle,%winffanick),$gettok(%retelo,1,32),6,32)
  363.  
  364. ;add to winner beginn----Punkte-------------------------------%
  365. var %counter = $calc($gettok($hget(jiggle,%winffanick),4,32) + 1)
  366. hadd jiggle %winffanick $puttok($hget(jiggle,%winffanick),%counter,4,32)
  367. hsave -os jiggle jiggle.txt
  368. var %msgaddwinner = %winffanick u won already %counter ffa games :: Elo: $gettok(%retelo,1,32)
  369. ;add to winner end-------Punkte-------------------------------%
  370.  
  371. ;add to loser1 begin-----Punkte-------------------------------%
  372. var %counter1 = $calc($gettok($hget(jiggle,%lostffanick1),5,32) + 1)
  373. hadd jiggle %lostffanick1 $puttok($hget(jiggle,%lostffanick1),%counter1,5,32)
  374. hadd jiggle %lostffanick1 $puttok($hget(jiggle,%lostffanick1),$gettok(%retelo,2,32),6,32)
  375. hsave -os jiggle jiggle.txt
  376. var %msgaddloser1 = %lostffanick1 its ur %counter1 lost ffa game :: Elo : $gettok(%retelo,2,32)
  377. ;add to loser1 end--------Punkte------------------------------%
  378.  
  379. ;add to loser2 begin------------------------------------%
  380. if (%lostffanick2 != $null) {
  381. var %counter2 = $calc($gettok($hget(jiggle,%lostffanick2),5,32) + 1)
  382. hadd jiggle %lostffanick2 $puttok($hget(jiggle,%lostffanick2),%counter2,5,32)
  383. hadd jiggle %lostffanick2 $puttok($hget(jiggle,%lostffanick2),$gettok(%retelo,3,32),6,32)
  384. hsave -os jiggle jiggle.txt
  385. var %msgaddloser2 = %lostffanick2 its ur %counter2 lost ffa game :: Elo: $gettok(%retelo,3,32)
  386. }
  387. else { var %noentry = noentry }
  388. ;add to loser2 end--------------------------------------%
  389.  
  390. ;add to loser3 begin------------------------------------%
  391. if (%lostffanick3 != $null) {
  392. var %counter3 = $calc($gettok($hget(jiggle,%lostffanick3),5,32) + 1)
  393. hadd jiggle %lostffanick3 $puttok($hget(jiggle,%lostffanick3),%counter3,5,32)
  394. hadd jiggle %lostffanick3 $puttok($hget(jiggle,%lostffanick3),$gettok(%retelo,4,32),6,32)
  395. hsave -os jiggle jiggle.txt
  396. var %msgaddloser3 = %lostffanick3 its ur %counter3 lost ffa game :: Elo: $gettok(%retelo,4,32)
  397. }
  398. else { var %noentry = noentry }
  399. ;add to loser3 end--------------------------------------%
  400.  
  401. ;add to loser4 begin------------------------------------%
  402. if (%lostffanick4 != $null) {
  403. var %counter4 = $calc($gettok($hget(jiggle,%lostffanick4),5,32) + 1)
  404. hadd jiggle %lostffanick4 $puttok($hget(jiggle,%lostffanick4),%counter4,5,32)
  405. hadd jiggle %lostffanick4 $puttok($hget(jiggle,%lostffanick4),$gettok(%retelo,5,32),6,32)
  406. hsave -os jiggle jiggle.txt
  407. var %msgaddloser4 = %lostffanick4 its ur %counter4 lost ffa game ::Elo: $gettok(%retelo,5,32)
  408. }
  409. else { var %noentry = noentry }
  410. ;add to loser5 end--------------------------------------%
  411.  
  412. ;add to loser5 begin------------------------------------%
  413. if (%lostffanick5 != $null) {
  414. var %counter5 = $calc($gettok($hget(jiggle,%lostffanick5),5,32) + 1)
  415. hadd jiggle %lostffanick5 $puttok($hget(jiggle,%lostffanick5),%counter5,5,32)
  416. hadd jiggle %lostffanick5 $puttok($hget(jiggle,%lostffanick5),$gettok(%retelo,6,32),6,32)
  417. hsave -os jiggle jiggle.txt
  418. var %msgaddloser5 = %lostffanick5 its ur %counter5 lost ffa game :: Elo: $gettok(%retelo,6,32)
  419. }
  420. else { var %noentry = noentry }
  421. ;add to loser5 end--------------------------------------%
  422.  
  423. ;add to loser6 begin------------------------------------%
  424. if (%lostffanick6 != $null) {
  425. var %counter6 = $calc($gettok($hget(jiggle,%lostffanick6),5,32) + 1)
  426. hadd jiggle %lostffanick6 $puttok($hget(jiggle,%lostffanick6),%counter6,5,32)
  427. hadd jiggle %lostffanick6 $puttok($hget(jiggle,%lostffanick6),$gettok(%retelo,7,32),6,32)
  428. hsave -os jiggle jiggle.txt
  429. var %msgaddloser6 = %lostffanick5 its ur %counter6 lost ffa game :: Elo: $gettok(%retelo,7,32)
  430. }
  431. else { var %noentry = noentry }
  432. ;add to loser6 end--------------------------------------%
  433. msg $chan %msgaddwinner
  434. msg $chan %msgaddloser1 %msgaddloser2 %msgaddloser3 %msgaddloser4 %msgaddloser5 %msgaddloser6
  435. write -a logforscores.txt $fulldate :: Confirmed :: %msgaddwinner :: %msgaddloser1 :: %msgaddloser2 :: %msgaddloser3 :: %msgaddloser4 :: %msgaddloser5 :: %msgaddloser6 }
  436. timerpsrconfirm 20 1 echo -s timer running }
  437. ;FFA Section Confirm End--------------------------------------------------------%
  438.  
  439. ;22team Section Confirm Begin---------------------------------------------------%
  440. elseif (((%lostteamnick1 == $remove($nick,-tk)) || (%lostteamnick2 == $remove($nick,-tk))) && (22team == %gametype22team)) {
  441. if ($timer(2).reps > 0) {
  442. msg $chan Please wait 20 sec. Procedure in progress... }
  443. else {
  444. ;zugreifen auf Alias und Werte von $BerechneElo22team in variable %retelo zuweisen
  445. var %retelo = $BerechneElo22team(%winteamnick1,%winteamnick2,%lostteamnick1,%lostteamnick2)
  446.  
  447. ;abspeichern des alias $BerechneElo22team in Haschtable fur gewinner und verlierer mittles $gettok(%retelo,x,y)
  448. hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),$gettok(%retelo,1,32),9,32)
  449. hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),$gettok(%retelo,2,32),9,32)
  450. hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),$gettok(%retelo,3,32),9,32)
  451. hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),$gettok(%retelo,4,32),9,32)
  452.  
  453. ;add to winner1 beginn-----------------------------------%
  454. var %counter1 = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + 1)
  455. hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),%counter1,7,32)
  456. var %msgaddwinner1 = %winteamnick1 won already %counter1 Teamers :: Elo : $gettok(%retelo,1,32)
  457. ;add to winner1 end--------------------------------------%
  458. ;add to winner2 beginn-----------------------------------%
  459. var %counter2 = $calc($gettok($hget(jiggle,%winteamnick2),7,32) + 1)
  460. hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),%counter2,7,32)
  461. var %msgaddwinner2 = %winteamnick2 won already %counter2 Teamers :: Elo : $gettok(%retelo,2,32)
  462. ;add to winner2 end--------------------------------------%
  463. ;add to loser1 begin------------------------------------%
  464. var %counter3 = $calc($gettok($hget(jiggle,%lostteamnick1),8,32) + 1)
  465. hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),%counter3,8,32)
  466. var %msgaddloser1 = %lostteamnick1 lost %counter3 teamers Elo : $gettok(%retelo,3,32)
  467. ;add to loser1 end--------------------------------------%
  468. ;add to loser2 begin------------------------------------%
  469. var %counter4 = $calc($gettok($hget(jiggle,%lostteamnick2),8,32) + 1)
  470. hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),%counter4,8,32)
  471. var %msgaddloser2 = %lostteamnick2 lost %counter4 teamers ::Elo : $gettok(%retelo,4,32)
  472. hsave -os jiggle jiggle.txt
  473. ;add to loser2 end--------------------------------------%
  474. msg $chan %msgaddwinner1 %msgaddwinner2
  475. msg $chan %msgaddloser1 %msgaddloser2
  476. write -a logforscores.txt $fulldate :: Confirmed :: %msgaddwinner1 :: %msgaddwinner2 :: %msgaddloser1 :: %msgaddloser2
  477. ;22team Section Confirm End-----------------------------------------------------%
  478. timerpsrconfirm 20 1 echo -s timer running }
  479. }
  480. ;33team Section Confirm Begin-----------------------------------------------------%
  481. elseif (33team == %gametype33team) && ((%lostteamnick1 == $remove($nick,-tk)) || (%lostteamnick2 == $remove($nick,-tk)) || (%lostteamnick3 == $remove($nick,-tk))) {
  482. if ($timer(2).reps > 0) {
  483. msg $chan Please wait 20 sec. Procedure in progress... }
  484. else {
  485. ;zugreifen auf Alias und Werte von $BerechneElo33team in variable %retelo zuweisen
  486. var %retelo = $BerechneElo33team(%winteamnick1,%winteamnick2,%winteamnick3,%lostteamnick1,%lostteamnick2,%lostteamnick3)
  487.  
  488. ;abspeichern des alias $BerechneElo33team in Haschtable fur gewinner und verlierer mittles $gettok(%retelo,x,y)
  489. hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),$gettok(%retelo,1,32),9,32)
  490. hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),$gettok(%retelo,2,32),9,32)
  491. hadd jiggle %winteamnick3 $puttok($hget(jiggle,%winteamnick3),$gettok(%retelo,3,32),9,32)
  492. hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),$gettok(%retelo,4,32),9,32)
  493. hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),$gettok(%retelo,5,32),9,32)
  494. hadd jiggle %lostteamnick3 $puttok($hget(jiggle,%lostteamnick3),$gettok(%retelo,6,32),9,32)
  495.  
  496. ;add to winner1 beginn-----------------------------------%
  497. var %counter1 = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + 1)
  498. hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),%counter1,7,32)
  499. var %msgaddwinner1 = %winteamnick1 u won already %counter1 teamers :: Elo : $gettok(%retelo,1,32)
  500. ;add to winner1 end--------------------------------------%
  501. ;add to winner2 beginn-----------------------------------%
  502. var %counter2 = $calc($gettok($hget(jiggle,%winteamnick2),7,32) + 1)
  503. hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),%counter2,7,32)
  504. var %msgaddwinner2 = %winteamnick2 u won already %counter2 teamers :: Elo : $gettok(%retelo,2,32)
  505. ;add to winner2 end--------------------------------------%
  506. ;add to winner3 beginn-----------------------------------%
  507. var %counter3 = $calc($gettok($hget(jiggle,%winteamnick3),7,32) + 1)
  508. hadd jiggle %winteamnick3 $puttok($hget(jiggle,%winteamnick3),%counter3,7,32)
  509. var %msgaddwinner3 = %winteamnick3 u won already %counter3 teamers :: Elo : $gettok(%retelo,3,32)
  510. ;add to winner3 end--------------------------------------%
  511. ;add to loser1 begin------------------------------------%
  512. var %counter4 = $calc($gettok($hget(jiggle,%lostteamnick1),8,32) + 1)
  513. hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),%counter4,8,32)
  514. var %msgaddloser1 = %lostteamnick1 u lost %counter4 teamers :: Elo : $gettok(%retelo,4,32)
  515. ;add to loser1 end--------------------------------------%
  516. ;add to loser2 begin------------------------------------%
  517. var %counter5 = $calc($gettok($hget(jiggle,%lostteamnick2),8,32) + 1)
  518. hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),%counter5,8,32)
  519. var %msgaddloser2 = %lostteamnick2 u lost %counter5 teamers :: Elo : $gettok(%retelo,5,32)
  520. ;add to loser2 end--------------------------------------%
  521. ;add to loser3 begin------------------------------------%
  522. var %counter6 = $calc($gettok($hget(jiggle,%lostteamnick3),8,32) + 1)
  523. hadd jiggle %lostteamnick3 $puttok($hget(jiggle,%lostteamnick3),%counter6,8,32)
  524. var %msgaddloser3 = %lostteamnick3 u lost %counter6 teamers :: Elo : $gettok(%retelo,6,32)
  525. hsave -os jiggle jiggle.txt
  526. ;add to loser3 end--------------------------------------%
  527. msg $chan %msgaddwinner1 %msgaddwinner2 %msgaddwinner3
  528. msg $chan %msgaddloser1 %msgaddloser2 %msgaddloser3
  529. write -a logforscores.txt $fulldate :: Confirmed :: %msgaddwinner1 :: %msgaddwinner2 :: %msgaddwinner3 :: %msgaddloser1 :: %msgaddloser2 :: %msgaddloser3
  530. ;33team Section Confirm End-----------------------------------------------------%
  531. timerpsrconfirm 20 1 echo -s timer running }
  532. }
  533. ;44team Section Confirm Begin---------------------------------------------------%
  534. elseif (44team == %gametype44team) && ((%lostteamnick1 == $remove($nick,-tk)) || (%lostteamnick2 == $remove($nick,-tk)) || (%lostteamnick3 == $remove($nick,-tk)) || (%lostteamnick4 == $remove($nick,-tk))) {
  535. if ($timer(2).reps > 0) {
  536. msg $chan Please wait 20 sec. Procedure in progress... }
  537. else {
  538. ;zugreifen auf Alias und Werte von $BerechneElo22team in variable %retelo zuweisen
  539. var %retelo = $BerechneElo44team(%winteamnick1,%winteamnick2,%winteamnick3,%winteamnick4,%lostteamnick1,%lostteamnick2,%lostteamnick3,%lostteamnick4)
  540.  
  541. ;abspeichern des alias $BerechneElo22team in Haschtable fur gewinner und verlierer mittles $gettok(%retelo,x,y)
  542. hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),$gettok(%retelo,1,32),9,32)
  543. hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),$gettok(%retelo,2,32),9,32)
  544. hadd jiggle %winteamnick3 $puttok($hget(jiggle,%winteamnick3),$gettok(%retelo,3,32),9,32)
  545. hadd jiggle %winteamnick4 $puttok($hget(jiggle,%winteamnick4),$gettok(%retelo,4,32),9,32)
  546. hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),$gettok(%retelo,5,32),9,32)
  547. hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),$gettok(%retelo,6,32),9,32)
  548. hadd jiggle %lostteamnick3 $puttok($hget(jiggle,%lostteamnick3),$gettok(%retelo,7,32),9,32)
  549. hadd jiggle %lostteamnick4 $puttok($hget(jiggle,%lostteamnick4),$gettok(%retelo,8,32),9,32)
  550.  
  551. ;add to winner1 beginn-----------------------------------%
  552. var %counter1 = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + 1)
  553. hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),%counter1,7,32)
  554. var %msgaddwinner1 = %winteamnick1 u won already %counter1 teamers :: Elo : $gettok(%retelo,1,32)
  555. ;add to winner1 end--------------------------------------%
  556. ;add to winner2 beginn-----------------------------------%
  557. var %counter2 = $calc($gettok($hget(jiggle,%winteamnick2),7,32) + 1)
  558. hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),%counter2,7,32)
  559. var %msgaddwinner2 = %winteamnick2 u won already %counter2 teamers :: Elo : $gettok(%retelo,2,32)
  560. ;add to winner2 end--------------------------------------%
  561. ;add to winner3 beginn-----------------------------------%
  562. var %counter3 = $calc($gettok($hget(jiggle,%winteamnick3),7,32) + 1)
  563. hadd jiggle %winteamnick3 $puttok($hget(jiggle,%winteamnick3),%counter3,7,32)
  564. var %msgaddwinner3 = %winteamnick3 u won already %counter3 teamers :: Elo : $gettok(%retelo,3,32)
  565. ;add to winner3 end--------------------------------------%
  566. ;add to winner4 beginn-----------------------------------%
  567. var %counter4 = $calc($gettok($hget(jiggle,%winteamnick4),7,32) + 1)
  568. hadd jiggle %winteamnick4 $puttok($hget(jiggle,%winteamnick4),%counter4,7,32)
  569. var %msgaddwinner4 = %winteamnick4 u won already %counter4 teamers :: Elo : $gettok(%retelo,4,32)
  570. ;add to winner4 end--------------------------------------%
  571. ;add to loser1 begin------------------------------------%
  572. var %counter5 = $calc($gettok($hget(jiggle,%lostteamnick1),8,32) + 1)
  573. hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),%counter5,8,32)
  574. var %msgaddloser1 = %lostteamnick1 u lost %counter5 teamers :: Elo : $gettok(%retelo,5,32)
  575. ;add to loser1 end--------------------------------------%
  576. ;add to loser2 begin------------------------------------%
  577. var %counter6 = $calc($gettok($hget(jiggle,%lostteamnick2),8,32) + 1)
  578. hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),%counter6,8,32)
  579. var %msgaddloser2 = %lostteamnick2 u lost %counter5 teamers :: Elo : $gettok(%retelo,6,32)
  580. ;add to loser2 end--------------------------------------%
  581. ;add to loser3 begin------------------------------------%
  582. var %counter7 = $calc($gettok($hget(jiggle,%lostteamnick3),8,32) + 1)
  583. hadd jiggle %lostteamnick3 $puttok($hget(jiggle,%lostteamnick3),%counter7,8,32)
  584. var %msgaddloser3 = %lostteamnick3 u lost %counter7 teamers :: Elo : $gettok(%retelo,7,32)
  585. ;add to loser4 begin------------------------------------%
  586. var %counter8 = $calc($gettok($hget(jiggle,%lostteamnick4),8,32) + 1)
  587. hadd jiggle %lostteamnick4 $puttok($hget(jiggle,%lostteamnick4),%counter8,8,32)
  588. var %msgaddloser4 = %lostteamnick4 u lost %counter8 teamers :: Elo : $gettok(%retelo,8,32)
  589. hsave -os jiggle jiggle.txt
  590. ;add to loser4 end--------------------------------------%
  591. msg $chan %msgaddwinner1 %msgaddwinner2 %msgaddwinner3 %msgaddwinner4
  592. msg $chan %msgaddloser1 %msgaddloser2 %msgaddloser3 %msgaddloser4
  593. write -a logforscores.txt $fulldate :: Confirmed :: %msgaddwinner1 :: %msgaddwinner2 :: %msgaddwinner3 :: %msgaddwinner4 :: %msgaddloser1 :: %msgaddloser2 :: %msgaddloser3 :: %msgaddloser4
  594. ;44team Section Confirm End-----------------------------------------------------%
  595. timerpsrconfirm 20 1 echo -s timer running }
  596. }
  597. else { msg $chan No permission $remove($nick,-tk) or nothing to confirm }
  598. }
  599.  
  600.  
  601. ;§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
  602.  
  603.  
  604. ; if type !top10 + gametype it shows the top 10 players rated by Elo
  605. on *:TEXT:!top10*:#:{
  606. if ( $2 == duel ) {
  607. var %entries = $hget(jiggle, 0).item
  608. var %i = 1
  609. window -sh @bohne
  610. while ( %i <= %entries ) { var %alldata = $hget(jiggle,%i).data
  611. var %partialdata = $base($gettok(%alldata,3,32),10,10,4) $gettok(%alldata,1,32) $gettok(%alldata,2,32) $round($calc(($gettok(%alldata,1,32)) / ($calc(($gettok(%alldata,1,32)) + ($gettok(%alldata,2,32)))) * 100 ),0) $hget(jiggle,%i).item
  612. aline @bohne %partialdata
  613. inc %i
  614. }
  615. var %total = $line(@bohne,0)
  616. var %t = %total
  617. var %k = 0
  618. while ( %k <= 9 ) {
  619. var %scores $line(@bohne,%t) | dec %t | inc %k
  620. msg $chan %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) : Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  621. msg $chan EntireEntries $line(@bohne,0)
  622. window -c @bohne
  623. }
  624. elseif ( $2 == ffa ) {
  625. var %entries = $hget(jiggle, 0).item
  626. var %i = 1
  627. window -s @bohne
  628. while ( %i <= %entries ) { var %alldata = $hget(jiggle,%i).data
  629. var %partialdata = $base($gettok(%alldata,6,32),10,10,4) $gettok(%alldata,4,32) $gettok(%alldata,5,32) $round($calc(($gettok(%alldata,4,32)) / ($calc(($gettok(%alldata,4,32)) + ($gettok(%alldata,5,32)))) * 100 ),0) $hget(jiggle,%i).item
  630. aline @bohne %partialdata
  631. inc %i
  632. }
  633. var %total = $line(@bohne,0)
  634. var %t = %total
  635. var %k = 0
  636. while ( %k <= 9 ) {
  637. var %scores $line(@bohne,%t) | dec %t | inc %k
  638. msg $chan %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) : Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  639. msg $chan EntireEntries $line(@bohne,0)
  640. window -c @bohne
  641. }
  642. elseif ( $2 == teamer ) {
  643. var %entries = $hget(jiggle, 0).item
  644. var %i = 1
  645. window -s @bohne
  646. while ( %i <= %entries ) { var %alldata = $hget(jiggle,%i).data
  647. var %partialdata = $base($gettok(%alldata,9,32),10,10,4) $gettok(%alldata,7,32) $gettok(%alldata,8,32) $round($calc(($gettok(%alldata,7,32)) / ($calc(($gettok(%alldata,7,32)) + ($gettok(%alldata,8,32)))) * 100 ),0) $hget(jiggle,%i).item
  648. aline @bohne %partialdata
  649. inc %i
  650. }
  651. var %total = $line(@bohne,0)
  652. var %t = %total
  653. var %k = 0
  654. while ( %k <= 9 ) {
  655. var %scores $line(@bohne,%t) | dec %t | inc %k
  656. msg $chan %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) : Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  657. msg $chan EntireEntries $line(@bohne,0)
  658. window -c @bohne
  659. }
  660. else { msg $chan To see the Top 10 of duel ffa or teamer type : " !top10 duel " !top10 ffa " !top10 teamer " }
  661. }
  662.  
  663.  
  664. ; syntax !rank gametype nickname
  665. on *:TEXT:!rank*:#:{
  666. if ( $2 == duel ) {
  667. var %entries = $hget(jiggle, 0).item
  668. var %i = 1
  669. window -sh @bohne
  670. while ( %i <= %entries ) { var %alldata = $hget(jiggle,%i).data
  671. var %partialdata = $base($gettok(%alldata,3,32),10,10,4) $gettok(%alldata,1,32) $gettok(%alldata,2,32) $round($calc(($gettok(%alldata,1,32)) / ($calc(($gettok(%alldata,1,32)) + ($gettok(%alldata,2,32)))) * 100 ),0) $hget(jiggle,%i).item
  672. aline @bohne %partialdata
  673. inc %i }
  674. window -h @kraut
  675. var %total = $line(@bohne,0)
  676. var %t = %total
  677. var %k = 0
  678. while ( %k < %total ) {
  679. var %scores = $line(@bohne,%t) | dec %t | inc %k
  680. aline @kraut %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) : Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  681. msg $chan EntireEntries $line(@bohne,0)
  682. msg $chan $fline(@kraut,* $3 *,1).text
  683. window -c @bohne
  684. window -c @kraut }
  685. elseif ( $2 == ffa ) {
  686. var %entries = $hget(jiggle, 0).item
  687. var %i = 1
  688. window -sh @bohne
  689. while ( %i <= %entries ) { var %alldata = $hget(jiggle,%i).data
  690. var %partialdata = $base($gettok(%alldata,6,32),10,10,4) $gettok(%alldata,4,32) $gettok(%alldata,5,32) $round($calc(($gettok(%alldata,4,32)) / ($calc(($gettok(%alldata,4,32)) + ($gettok(%alldata,5,32)))) * 100 ),0) $hget(jiggle,%i).item
  691. aline @bohne %partialdata
  692. inc %i }
  693. window -h @kraut
  694. var %total = $line(@bohne,0)
  695. var %t = %total
  696. var %k = 0
  697. while ( %k < %total ) {
  698. var %scores = $line(@bohne,%t) | dec %t | inc %k
  699. aline @kraut %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) : Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  700. msg $chan EntireEntries $line(@bohne,0)
  701. msg $chan $fline(@kraut,* $3 *,1).text
  702. window -c @bohne
  703. window -c @kraut }
  704. elseif ( $2 == teamer ) {
  705. var %entries = $hget(jiggle, 0).item
  706. var %i = 1
  707. window -sh @bohne
  708. while ( %i <= %entries ) { var %alldata = $hget(jiggle,%i).data
  709. var %partialdata = $base($gettok(%alldata,9,32),10,10,4) $gettok(%alldata,7,32) $gettok(%alldata,8,32) $round($calc(($gettok(%alldata,7,32)) / ($calc(($gettok(%alldata,7,32)) + ($gettok(%alldata,8,32)))) * 100 ),0) $hget(jiggle,%i).item
  710. aline @bohne %partialdata
  711. inc %i }
  712. window -h @kraut
  713. var %total = $line(@bohne,0)
  714. var %t = %total
  715. var %k = 0
  716. while ( %k < %total ) {
  717. var %scores = $line(@bohne,%t) | dec %t | inc %k
  718. aline @kraut %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) : Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  719. msg $chan EntireEntries $line(@bohne,0)
  720. msg $chan $fline(@kraut,* $3 *,1).text
  721. window -c @bohne
  722. window -c @kraut }
  723. else { msg $chan To see a rank of a certain player type !rank duel or ffa or teamer and last parameter the nickname }
  724. }
  725.  
  726. on *:TEXT:!report*:#:{
  727. write -a logforscores.txt $fulldate $2-
  728. msg $chan $2- :: Is Noticed
  729. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement