Advertisement
Seb

idlerpg.mrc

Seb
Oct 3rd, 2011
855
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 19.80 KB | None | 0 0
  1. # Idlerpg Script (Auto Play)
  2. # From SReject on Undernet!
  3. # INSTRUCTIONS AT: http://idlerpg.org/forum/viewtopic.php?id=15
  4. # WITH DOWNLOAD LINKS
  5. #########################
  6. on *:START:{ unset %mRPG:* | .mRPGReset }
  7. on *:EXIT: .mRPGOff
  8. on *:UNLOAD:.mRPGOff
  9. on *:ACTIVE:*:if ($mRPG:Bot($mRPG:Char) == $active) .timermRPG-EbCheck -m 1 250 MRPG:EbCheck
  10. on *:SIGNAL:MRPG_UPDATE: set %mRPG:Updated $ctime
  11. on *:DIALOG:mRPG:*:*:{
  12.   if ($devent == init) {
  13.     if (!$line(@mRPG-Players,0)) mRPGUpdate
  14.     if (!$line(@mRPG-Players,0)) dialog -x $dname
  15.     else {
  16.       filter -wk @mRPG-Players mRPG:Load *
  17.       did -c $dname 44 $iif($didwm(mRPG,44,%mRPG:Stats),$v1,1)
  18.       mRPG:Stats
  19.     }
  20.     unset %mRPG:Stats
  21.   }
  22.   elseif ($devent == close) {
  23.     unset %mRPG:Stats
  24.     .timermRPG-Stats off
  25.   }
  26. }
  27. alias mRPGPlay {
  28.   if ($status != connected) echo -a 04/mRPGPlay: You must be connected to a server to use /mRPGPlay
  29.   elseif ($0 < 3) echo -a 04/mRPGPlay: Too few parameters specified please use: /mRPGPlay 12character password gamechan
  30.   elseif ($0 > 3) echo -a 04/mRPGPlay: Too many parameters specified, please use: /mRPGPlay 12character password gamechan
  31.   elseif (#* !iswm $3) echo -a 04/mRPGPlay: Invalid game channel specified!
  32.   elseif ($mRPG:Char) echo -a 04/mRPGPlay: You are already playing a character from this connection: $gettok($v1,1,32)
  33.   elseif ($mRPG:Played($1)) echo -a 04/mRPGPlay: You are already playing $1 from a diffarent connection, please use /mRPGStop from that connection then try again from this connection
  34.   else {
  35.     mRPGUpdate
  36.     if ($fline(@mRPG-Players,/^\Q $+ $replacecs($1,\E,\E\\E\Q) $+ \E\x01/i,1,2).text) {
  37.       echo -a 12/mRPGPlay: Now playing $gettok($v1,1,1) from this connection.
  38.       mRPG:Char $gettok($v1,1,1) $2-3
  39.       mRPG
  40.     }
  41.     else echo -a 04/mRPGPlay: I'm sorry, but $1 was not found in the players list.
  42.   }
  43. }
  44. alias mRPGList {
  45.   if ($var(%mRPG:Play:*,0)) {
  46.     var %x = 1
  47.     while ($var(%mRPG:Play:*,%x)) {
  48.       var %cid = $gettok($v1,3,$asc(:))
  49.       tokenize 32 $($v1,2)
  50.       echo -a 12/mRPGList: Playing $1 on $+($scid(%cid).network,12[,ConID: %cid,12])
  51.       inc %x
  52.     }
  53.   }
  54.   else echo -a 04/mRPGList: You are not currently playing any characters.
  55. }
  56. alias mRPGStats {
  57.   if ($0 > 1) echo -a 04/mRPGStats: Too many parameters specified. Please use: 12/mRPGStats [charname]
  58.   elseif ($dialog(mRPG)) {
  59.     if ($1 && $didwm(mRPG,44,$1)) { did -c mRPG 44 $v1 }
  60.     dialog -v mRPG
  61.   }
  62.   else {
  63.     if ($1) set -e %mRPG:Stats $1
  64.     dialog -m mRPG mRPGStats
  65.   }
  66. }
  67. alias mRPGStop {
  68.   if ($0) echo -a 04/mRPGStop: Too many parameters were specified, please use: 12/mRPGStop
  69.   elseif ($mRPG:Char) {
  70.     unset $+(%,mRPG:Play:,$cid)
  71.     echo -a 12/mRPGStop: Play script stopped for $gettok($v1,1,32)
  72.   }
  73.   else echo -a 04/mRPGStop: You are not currently playing a character from this connect.
  74. }
  75. alias mRPGReset {
  76.   if (!$0) {
  77.     .timermRPG-* off
  78.     close -@ @mRPG-*
  79.     if ($isfile($mircdirmRPG BestBet.txt)) .remove $qt($mircdirmRPG BestBet.txt)
  80.     if ($com(mRPG)) .comclose $v1
  81.     if ($isfile($mircdirmRPG Players.txt)) .remove $qt($mircdirmRPG players.txt)
  82.     if ($isfile($mircdirmRPG Players.vbs)) .remove $qt($mircdirmRPG Players.vbs)
  83.     if ($show) echo -a 12/mRPGReset: The script as been reset.
  84.     mRPGUpdate
  85.   }
  86.   else echo -a 04/mRPGReset: Too many parameters were specified, please use: 12/mRPGReset
  87. }
  88. alias mRPGOff {
  89.   if (!$0) {
  90.     .timermRPG-* off
  91.     close -@ @mRPG-*
  92.     unset %mRPG:*
  93.     if ($com(mRPG)) .comclose $v1
  94.     if ($dialog(mRPG)) dialog -x mRPG
  95.     if ($isfile($mircdirmRPG Players.txt)) .remove $qt($mircdirmRPG players.txt)
  96.     if ($isfile($mircdirmRPG Players.vbs)) .remove $qt($mircdirmRPG Players.vbs)
  97.     if ($isfile($mircdirmRPG BestBet.txt)) .remove $qt($mircdirmRPG BestBet.txt)
  98.     if ($show) echo -a 04/mRPGOff: All playing of MultiRPG has been stoppped.
  99.   }
  100.   else echo -a 04/mRPGOff: Too many parameters were specified, please use: 12/mRPGOff
  101. }
  102. alias mRPG:Read {
  103.   if (mRPG-Throttle:?* !iswm $1) return
  104.   var %w @ $+ $1
  105.   scid $gettok($1,2,58)
  106.   if ($status != connected || !$line(%w,0) || $mRPG:Bot($gettok($mRPG:Char,3,32)) == $null) { close -@ %w }
  107.   else {
  108.     msg $v1 $line(%w,1)
  109.     dline %w 1
  110.     $+(.timer,$1) -oi 1 6 mRPG:Read $1
  111.   }
  112. }
  113. alias MRPG:EbCheck {
  114.   if ($mRPG:Bot($gettok($mRPG:Char,3,32)) == $active) && ($editbox($active)) && ($timer(mRPG-Throttle: $+ $cid)) {
  115.     $+(.timer,$v1) -oi 1 30 mRPG:Read $v1
  116.     .timermRPG-ebcheck -m 1 250 MRPG:EbCheck
  117.   }
  118. }
  119. alias mRPG:Stats {
  120.   if (!$dialog(mRPG)) unset %mRPG:Stats
  121.   else {
  122.     if (!%mRPG:Updated) set -e %mRPG:Updated $ctime
  123.     tokenize 1 $fline(@mRPG-Players,$did(mRPG,44,1).seltext $+ $chr(1) $+ *,1).text
  124.     did -ra mRPG 45 $4
  125.     did -ra mRPG 46 $iif($22 == e,Evil[Undead],$iif($22 == g,Good[Priest],Neutral[Human]))
  126.     did -ra mRPG 47 $iif($4 < 10,N/A,$26 $+ /5)
  127.     did -ra mRPG 48 $iif($4 < 30,N/A,$27 $+ /5)
  128.     did -ra mRPG 49 $iif($5,Yes,No)
  129.     if ($5) {
  130.       did -ra mRPG 50 $iif($calc($6 - ($ctime - %mRPG:Updated)) < 1,Any Moment,$mRPG:Dur($v1))
  131.       did -ra mRPG 51 $iif($4 < 10,N/A,$iif($calc($7 - $ctime) < 0,Now,$mRPG:Dur($v1)))
  132.       did -ra mRPG 52 $iif($4 < 35,N/A,$iif($calc($8 - $ctime) < 0,Now,$mRPG:Dur($v1)))
  133.       did -ra mRPG 53 $iif($4 < 40,N/A,$iif($calc($9 - $ctime) < 0,Now,$mRPG:Dur($v1)))
  134.     }
  135.     else { did -ra mRPG 50,51,52,53 N/A while offline }
  136.     did -ra mRPG 54 $iif(!$31,N/A,$+($ord($32),[+,$calc(2+ $32),%,]))
  137.     did -ra mRPG 55 $iif(!$28,N/A,$+($ord($29),[+,$calc(2+ $29),%,]))
  138.     did -ra mRPG 56 $10
  139.     did -ra mRPG 57 $iif($22 == e,0.9,$iif($22 == n,1.0,1.1))
  140.     did -ra mRPG 58 $30
  141.     did -ra mRPG 59 $floor($calc($10 * $iif($22 == e,0.9,$iif($22 == n,1.0,1.1)) * $30))
  142.     did -ra mRPG 60 $12
  143.     did -ra mRPG 61 $13
  144.     did -ra mRPG 62 $14
  145.     did -ra mRPG 63 $15
  146.     did -ra mRPG 64 $16
  147.     did -ra mRPG 65 $17
  148.     did -ra mRPG 66 $18
  149.     did -ra mRPG 67 $19
  150.     did -ra mRPG 68 $20
  151.     did -ra mRPG 69 $21
  152.     did -ra mRPG 70 $34
  153.     did -ra mRPG 71 $35
  154.     did -ra mRPG 72 $36
  155.     did -ra mRPG 73 $24
  156.     did -ra mRPG 74 $25
  157.     did -ra mRPG 499 Updated $mRPG:Dur($calc($ctime - %mRPG:Updated)) ago.
  158.     .timermRPG-Stats -moi 1 250 mRPG:Stats
  159.   }
  160. }
  161. alias mRPGUpdate {
  162.   if ($com(mRPG)) return
  163.   if ($isfile($mircdirmRPG Players.txt)) .remove $qt($mircdirmRPG Players.txt)
  164.   if ($isfile($mircdirmRPG Players.vbs)) .remove $qt($mircdirmRPG Players.vbs)
  165.   if ($isfile($mircdirmRPG Bestbet.txt)) .remove $qt($mircdirmRPG Bestbet.txt)
  166.   var %f = write $qt($mircdirmRPG Players.vbs)
  167.   %f On Error Resume Next
  168.   %f if (err.number <> 0) then err.clear
  169.   %f set C = CreateObject("msxml2.xmlhttp.6.0")
  170.   %f if (err.number <> 0) then
  171.   %f   err.clear
  172.   %f   set C = CreateObject("msxml2.xmlhttp.4.0")
  173.   %f   if (err.number <> 0) then
  174.   %f     err.clear
  175.   %f     set C = CreateObject("msxml2.xmlhttp.3.0")
  176.   %f     if (err.number <> 0) then
  177.   %f       err.clear
  178.   %f       set C = CreateObject("msxml2.xmlhttp.2.6")
  179.   %f       if (err.number <> 0) then
  180.   %f         err.clear
  181.   %f         wscript.quit
  182.   %f       end if
  183.   %f     end if
  184.   %f   end if
  185.   %f end if
  186.   %f C.open "GET", "http://www.idlerpg.org/rawplayers3.php?nocache="&timer, false
  187.   %f C.send
  188.   %f if (err.number <> 0) then
  189.   %f   if (Hex(err.Number) <> "800C0005") then
  190.   %f     err.clear
  191.   %f     wscript.quit
  192.   %f   else
  193.   %f     err.clear
  194.   %f     C.open "GET", "http://www.multirpg.org/rawplayers3.php?nocache="&timer, false
  195.   %f     C.send
  196.   %f     if (err.Number <> 0) then
  197.   %f       err.clear
  198.   %f       wscript.Quit
  199.   %f     end if
  200.   %f   end if
  201.   %f end if
  202.   %f set F = CreateObject("Scripting.FileSystemObject").CreateTextFile(" $+ $mircdirmRPG Players.txt")
  203.   %f if (err.number <> 0) then
  204.   %f   err.clear
  205.   %f   WScript.Quit
  206.   %f end if
  207.   %f BetChars = ""
  208.   %f set R = New RegExp
  209.   %f R.IgnoreCase = true
  210.   %f R.Global = True
  211.   %f R.Multiline = True
  212.   %f R.Pattern = "^(rank \d+ char ([^\x20]+) network ([^\x20]+) userhost ([^\x20]+) level (\d+) created \d+ lastlogin \d+ online (0|1) sex (?:male|female|not_set) class \{[^\}]+\} team \d+ ttl (\d+) regentm (\d+) challengetm (\d+) slaytm (\d+) idled \d+ x_pos \d+ y_pos \d+ sum (\d+) amulet ([a-z]?\d+[a-z]?) charm ([a-z]?\d+[a-z]?) helm ([a-z]?\d+[a-z]?) boots ([a-z]?\d+[a-z]?) gloves ([a-z]?\d+[a-z]?) ring ([a-z]?\d+[a-z]?) leggings ([a-z]?\d+[a-z]?) shield ([a-z]?\d+[a-z]?) tunic ([a-z]?\d+[a-z]?) weapon ([a-z]?\d+[a-z]?) align (n|e|g) alignchanged [01] powerpots (\d+) luckpots (\d+) fights ([0-5]) bets ([0-5]) bwon \d+ blost \d+ badd \d+ bminus \d+ hero (0|1) hlevel (\d+) engineer (0|1) englevel (\d+) gold (-?\d+) bank (\d+))"
  213.   %f for each L in R.Execute(C.ResponseText)
  214.   %f   Aln = L.SubMatches(21)
  215.   %f   Amd = 1.0
  216.   %f   if (Aln = "e") then Amd = "0.9"
  217.   %f   if (Aln = "g") then Amd = "1.1"
  218.   %f   Hro = L.SubMatches(26)
  219.   %f   HLv = L.SubMatches(27)
  220.   %f   Hmd = 1.0
  221.   %f   if (Hro = "1") then Hmd = 1.02 + .01 * CInt(Hlv)
  222.   %f   Eng = L.SubMatches(28)
  223.   %f   ELv = L.SubMatches(29)
  224.   %f   Emd = 1.0
  225.   %f   if (Eng = "1") then Emd = 1.02 + .01 * CInt(Elv)
  226.   %f   MSm = L.SubMatches(10) * Amd * Hmd
  227.   %f   F.WriteLine(Join(Array(L.SubMatches(1),L.SubMatches(2),L.SubMatches(3),L.SubMatches(4),L.SubMatches(5),L.SubMatches(6),L.SubMatches(7),L.SUbMatches(8),L.SubMatches(9),L.SubMatches(10),MSm,L.SubMatches(11),L.SubMatches(12),L.SubMatches(13),L.SubMatches(14),L.SubMatches(15),L.SubMatches(16),L.SubMatches(17),L.SubMatches(18) ,L.SUbMatches(19),L.SubMatches(20) ,Aln,AMd,L.SubMatches(22),L.SubMatches(23),L.SubMatches(24),L.SubMatches(25),Hro,HLv,HMd,Eng,Elv,EMd,L.SubMatches(30),L.SubMatches(31),CDbl(L.SubMatches(30)) + CDbl(L.SUbMatches(31))),""))
  228.   %f   if (L.SubMatches(5) = 1 and L.SubMatches(4) > 29) then
  229.   %f     if (BetChars <> "") then BetChars = BetChars & vbcrlf
  230.   %f     Betchars = Betchars & Cint(L.SubMatches(4)) * 10000000 + CInt(L.SubMatches(10)) & " " & L.SubMatches(1)
  231.   %f   end if
  232.   %f next
  233.   %f F.Close
  234.   %f arryChars = Split(BetChars,vbcrlf)
  235.   %f if (UBound(ArryChars,1) < 0) then wScript.Quit
  236.   %f for a = 0 to ubound(arryChars,1)
  237.   %f   for b = a + 1 to ubound(arryChars,1)
  238.   %f     cchr = Split(arryChars(a)," ")
  239.   %f     nchr = Split(arryChars(b)," ")
  240.   %f     if (cdbl(cchr(0)) < cdbl(nchr(0))) then
  241.   %f       temp = arryChars(b)
  242.   %f       arryChars(b) = arrychars(a)
  243.   %f       arryChars(a) = temp
  244.   %f     end if
  245.   %f   next
  246.   %f next
  247.   %f cChr = Split(ArryChars(0)," ")
  248.   %f BetChars = cChr(1) & " " & CInt(cChr(0) / 10000000) & " " & cChr(0) mod 10000000 & vbcrlf
  249.   %f for a = 1 to uBound(ArryChars,1) -1
  250.   %f   pChr = Split(ArryChars(a -1), " ")
  251.   %f   cChr = Split(ArryChars(a)," ")
  252.   %f   cLvl = CInt(cChr(0) / 10000000)
  253.   %f   nChr = Split(ArryChars(a +1), " ")
  254.   %f   if (cInt(pChr(0) / 10000000) <> cLvl or cLvl <> CInt(nChr(0) / 10000000)) then
  255.   %f     BetChars = BetChars & cChr(1) & " " & cLvl & " " & cChr(0) mod 10000000 & vbcrlf
  256.   %f   end if
  257.   %f next
  258.   %f cChr = Split(ArryChars(Ubound(ArryChars,1))," ")
  259.   %f arrychars = Split(BetChars & cChr(1) & " " & CInt(cChr(0) / 10000000) & " " & cChr(0) mod 10000000,vbcrlf)
  260.   %f odds = 0.0
  261.   %f bestbet = ""
  262.   %f for a = UBound(ArryChars) to 1 step -1
  263.   %f   aChr = Split(ArryChars(a)," ")
  264.   %f   for b = a -1 to 0 step -1
  265.   %f     bChr = Split(ArryChars(b)," ")
  266.   %f     if (aChr(1) <= bChr(1)) and (odds < aChr(2) / bChr(2)) then
  267.   %f       bestbet = aChr(0) & " " & bChr(0)
  268.   %f       odds = aChr(2) / bChr(2)
  269.   %f     end if
  270.   %f     if (aChr(1) = bChr(1)) and (odds < bChr(2) / aChr(2)) then
  271.   %f       bestbet = bChr(0) & " " & aChr(0)
  272.   %f       odds = bChr(2) / aChr(2)
  273.   %f     end if
  274.   %f   next
  275.   %f next
  276.   %f if (odds <> 0.0) then
  277.   %f    set a = CreateObject("Scripting.FileSystemObject").CreateTextFile(" $+ $Mircdirmrpg bestbet.txt")
  278.   %f    a.write(bestbet)
  279.   %f    a.close
  280.   %f end if
  281.   .comopen mRPG WScript.Shell
  282.   if ($comerr) goto error
  283.   if (!$com(mRPG,Run,1,bstr," $+ $mircdirmRPG Players.vbs",uint,0,bool,true)) goto error
  284.   if ($lines($mircdirmRPG Players.txt) == 0) goto error
  285.   unset %mRPG:BestBet
  286.   if ($isfile($mircdirmRPG BestBet.txt)) set %mRPG:BestBet $read($mircdirmRPG Bestbet.txt,n,1)
  287.   window -hl @mRPG-Players
  288.   loadbuf -r @mRPG-Players $qt($mircdirmRPG Players.txt)
  289.   scon -at1 mRPG
  290.   .signal -n MRPG_UPDATE
  291.   :error
  292.   if ($error) reseterror
  293.   unset %mRPG:BestBet
  294.   if ($com(mRPG)) .comclose mRPG
  295.   if ($com(mRPG2)) .comclose mRPG2
  296.   if ($isfile($mircdirmRPG BestBet.txt)) .remove $qt($mircdirmRPG BestBet.txt)
  297.   if ($isfile($mircdirmRPG Players.txt)) .remove $qt($mircdirmRPG Players.txt)
  298.   if ($isfile($mircdirmRPG Players.vbs)) .remove $qt($mircdirmRPG Players.vbs)
  299.   .timermRPG-Update -oi 0 90 mRPGUpdate
  300. }
  301.  
  302. alias -l mRPG {
  303.   if (!$line(@mRPG-Throttle: $+ $cid,0)) && ($mRPG:GetChar) {
  304.     var %pwd = $gettok($v1,1,32), %gcn = $gettok($v1,2,32), %bot = $mRPG:Bot(%gcn), %mSum, %att, %chl, %sly, %fht
  305.     tokenize 1 $gettok($v1,3-,32)
  306.     if ($me !ison %gcn) join $v2
  307.     elseif (%bot) {
  308.       if ($5 != 1) mRPG:Msg Login $1 %pwd
  309.       else {
  310.         %mSum = $iif($22 != g,$calc($10 * 1.1 * $30),$23)
  311.         %att = $iif($4 > 9 && $calc($7 - $ctime) < -5 && $mRPG:Creeps($4),$v1)
  312.         %chl = $iif($4 > 34 && $calc($8 - $ctime) < -5,$true)
  313.         %sly = $iif($4 > 39 && $calc($9 - $ctime) < -5 && $mRPG:Monsters($10),$v1)
  314.         %fht = $iif($4 > 9 && $26 < 5 && $mRPG:Fight($1,$4),$v1)
  315.         if (%att || %chl || %sly || %fht) {
  316.           if ($22 != g) mRPG:Msg align priest
  317.           if (%att) mRPG:Msg attack $v1
  318.           if (%chl) mRPG:Msg challenge
  319.           if (%sly) mRPG:Msg slay $v1
  320.           if (%fht) {
  321.             var %x = $calc(5 - $25)
  322.             while (%x) {
  323.               mRPG:Msg Fight %fht
  324.               dec %x
  325.             }
  326.           }
  327.           if ($22 != g) mRPG:Msg align $iif($22 == e,undead,human)
  328.         }
  329.         elseif ($4 > 29) && (5 > $27) && ($36 > 139) && (?* ?* iswm %mRPG:BestBet) {
  330.           if ($34 < 140) mRPG:Msg bank withdraw $calc(140 - $34)
  331.           mRPG:Msg bet $gettok(%mRPG:BestBet,1-2,32) 100
  332.         }
  333.         elseif ($34 > 40) {
  334.           mRPG:Msg bank deposit $calc($34 - 40)
  335.         }
  336.         elseif ($34 < 40) && ($36 >= 40) {
  337.           mRPG:Msg bank withdraw $calc(40 - $34)
  338.         }
  339.       }
  340.     }
  341.   }
  342. }
  343. alias -l mRPG:Char if ($isid) return $($+(%,mRPG:Play:,$cid),2) | set $+(%,mRPG:Play:,$cid) $1-
  344. alias -l mRPG:Bot return $fline($1,/^(idle|multi)rpg0*$/i,$fline($1,/^(idle|multi)rpg0*$/i,0,3),3).text
  345. alias -l mRPG:Played var %x = 1 | while ($var(%mRPG:Play:,%x).value) { if ($gettok($v1,1,32) == $1) return $true | inc %x }
  346. alias -l mRPG:GetChar tokenize 32 $mRPG:Char | var %n = /^\Q $+ $replacecs($1,\E,\E\\E\Q) $+ \E\x01/i | if ($fline(@mRPG-Players,%n,$fline(@mRPG-Players,%n,0,2),2).text) return $2-3 $v1
  347. alias -l mRPG:Load did -a mRPG 44 $gettok($1-,1,1)
  348. alias -l mRPG:Dur { return $iif($floor($calc($1 / 86400)) > 0,$iif($v1 == 1,1day,$v1 $+ days)) $duration($calc($1 % 86400),3) }
  349. alias -l mRPG:Msg {
  350.   var %win = @mRPG-Throttle: $+ $cid, %t = $mid(%win,2-)
  351.   if ($status != connected) close -@ %win
  352.   else {
  353.     if (!$window(%win)) window -lhn %win
  354.     aline %win $1-
  355.     if (!$timer(%t)) mRPG:Read %t
  356.   }
  357. }
  358. alias -l mRPG:Fight {
  359.   if (!$line(@mRPG-Players,0) || !$1 || !$2) { return }
  360.   window -nh @mRPG-Fight
  361.   filter -wwgc @mRPG-Players @mRPG-Fight ^[^]+[^]+[^]+[^]+1
  362.   var %x = 1, %Chr, %Sum, %ln
  363.   while ($line(@mRPG-Fight,%x)) {
  364.     %ln = $v1
  365.     if ($gettok(%ln,4,1) < $2) break
  366.     elseif ($1 != $gettok(%ln,1,1)) && (!%sum || $gettok(%ln,11,1) < %Sum) { var %Chr = $gettok(%ln,1,1), %Sum = $gettok(%ln,11,1) }
  367.     inc %x
  368.   }
  369.   close -@ @mRPG-Fight
  370.   return %Chr
  371. }
  372. dialog mRPGStats {
  373.   title "mRPG - Stats"
  374.   size -1 -1 181 247
  375.   option dbu
  376.   tab "Stats", 1, 1 1 180 233
  377.   text "Character:", 2, 5 18 27 8, tab 1
  378.   text "Level:", 3, 5 30 27 8, tab 1
  379.   text "Alignment:", 4, 5 41 27 8, tab 1
  380.   text "Fights:", 5, 5 52 27 8, tab 1
  381.   text "Bets:", 6, 5 63 27 8, tab 1
  382.   text "Online:", 7, 101 19 19 8, tab 1
  383.   text "TTL:", 8, 101 30 12 8, tab 1
  384.   text "TTA:", 9, 101 41 12 8, tab 1
  385.   text "TTC:", 10, 101 52 12 8, tab 1
  386.   text "TTS:", 11, 101 63 12 8, tab 1
  387.   text "Engineer:", 12, 5 85 27 8, tab 1
  388.   text "Hero:", 13, 101 85 13 8, tab 1
  389.   text "Base", 14, 31 103 25 7, tab 1 center
  390.   text "Align", 15, 75 103 18 7, tab 1 center
  391.   text "Hero", 16, 111 103 18 7, tab 1 center
  392.   text "Total", 17, 147 103 28 7, tab 1 center
  393.   text "Sum:", 18, 5 112 25 8, tab 1
  394.   text "X", 19, 60 112 11 8, tab 1 center
  395.   text "X", 20, 97 112 11 8, tab 1 center
  396.   text "=", 21, 133 111 11 8, tab 1 center
  397.   text "Amulet:", 22, 10 127 25 8, tab 1
  398.   text "Charm:", 23, 10 137 25 8, tab 1
  399.   text "Helm:", 24, 10 147 25 8, tab 1
  400.   text "Boots:", 25, 10 157 25 8, tab 1
  401.   text "Gloves:", 26, 10 167 25 8, tab 1
  402.   text "Ring:", 27, 93 127 25 8, tab 1
  403.   text "Leggings:", 28, 93 137 25 8, tab 1
  404.   text "Shield:", 29, 93 147 25 8, tab 1
  405.   text "Tunic:", 30, 93 157 25 8, tab 1
  406.   text "Weapon:", 31, 93 167 25 8, tab 1
  407.   text "Carried", 32, 43 185 25 7, tab 1 center
  408.   text "Banked", 33, 87 185 25 7, tab 1 center
  409.   text "Total", 34, 128 185 25 7, tab 1 center
  410.   text "Gold:", 35, 23 194 16 8, tab 1
  411.   text "+", 36, 72 194 11 8, tab 1 center
  412.   text "=", 37, 115 194 11 8, tab 1 center
  413.   text "Power Potions:", 38, 5 218 40 8, tab 1
  414.   text "Luck Potions:", 39, 109 218 35 8, tab 1
  415.   box "", 40, 5 73 171 5, tab 1
  416.   box "", 41, 5 96 171 5, tab 1
  417.   box "", 42, 5 178 171 5, tab 1
  418.   box "", 43, 5 205 171 5, tab 1
  419.   combo 44, 32 17 60 200, tab 1 sort size drop
  420.   edit "", 45, 32 28 60 10, tab 1 read right
  421.   edit "", 46, 32 39 60 10, tab 1 read right
  422.   edit "", 47, 32 50 60 10, tab 1 read right
  423.   edit "", 48, 32 61 60 10, tab 1 read right
  424.   edit "", 49, 125 17 50 10, tab 1 read right
  425.   edit "", 50, 115 28 60 10, tab 1 read right
  426.   edit "", 51, 115 39 60 10, tab 1 read right
  427.   edit "", 52, 115 50 60 10, tab 1 read right
  428.   edit "", 53, 115 61 60 10, tab 1 read right
  429.   edit "", 54, 35 83 60 10, tab 1 read right
  430.   edit "", 55, 115 83 60 10, tab 1 read right
  431.   edit "", 56, 31 110 25 10, tab 1 read center
  432.   edit "", 57, 75 110 18 10, tab 1 read center
  433.   edit "", 58, 111 110 18 10, tab 1 read center
  434.   edit "", 59, 147 110 28 10, tab 1 read center
  435.   edit "", 60, 37 125 50 10, tab 1 read right
  436.   edit "", 61, 37 135 50 10, tab 1 read right
  437.   edit "", 62, 37 145 50 10, tab 1 read right
  438.   edit "", 63, 37 155 50 10, tab 1 read right
  439.   edit "", 64, 37 165 50 10, tab 1 read right
  440.   edit "", 65, 120 125 50 10, tab 1 read right
  441.   edit "", 66, 120 135 50 10, tab 1 read right
  442.   edit "", 67, 120 145 50 10, tab 1 read right
  443.   edit "", 68, 120 155 50 10, tab 1 read right
  444.   edit "", 69, 120 165 50 10, tab 1 read right
  445.   edit "Carried", 70, 43 192 25 10, tab 1 read center
  446.   edit "Banked", 71, 87 192 25 10, tab 1 read center
  447.   edit "GTOT", 72, 128 192 25 10, tab 1 read center
  448.   edit "Power", 73, 46 216 30 10, tab 1 read center
  449.   edit "Luck", 74, 145 216 30 10, tab 1 read center
  450.   text "", 499, 1 237 100 10
  451.   button "Close", 500, 144 235 37 12, ok cancel
  452. }
  453. alias -l mRPG:Creeps {
  454.   if (!$1 || $1 < 10) { return }
  455.   if ($1 == 10) { return Bush }
  456.   if ($1 < 16) { return Locust }
  457.   if ($1 < 21) { return Spider }
  458.   if ($1 < 31) { return Goblin }
  459.   if ($1 < 41) { return Lich }
  460.   if ($1 < 51) { return Skeleton }
  461.   if ($1 < 61) { return Ghost }
  462.   if ($1 < 71) { return Shadow }
  463.   ;if ($1 < 81) { return Troll }
  464.   ;if ($1 < 91) { return Cyclop }
  465.   ;if ($1 < 101) { return Mutant }
  466.   if ($1 < 111) { return Monkey }
  467.   if ($1 < 121) { return Phoenix }
  468.   if ($1 < 131) { return Minotaur }
  469.   if ($1 < 141) { return Beholder }
  470. }
  471. alias -l mRPG:Monsters {
  472.   if (6000 <= $1) { return Hippogriff }
  473.   if (5000 <= $1) { return Sphinx }
  474.   if (4500 <= $1) { return Dragon }
  475.   if (4000 <= $1) { return Vampire }
  476.   if (3500 <= $1) { return Mammoth }
  477.   if (3000 <= $1) { return Centaur }
  478.   return Medusa
  479. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement