alias pqc1 return $+(,$readini(pq.ini,n,Settings,c1),$$1) alias pqc2 return $+(,$readini(pq.ini,n,Settings,c2),$$1) alias xpforlvl { if ($1 == 2) return 83 elseif ($1 == 3) return 174 elseif ($1 == 4) return 276 elseif ($1 == 5) return 388 elseif ($1 == 6) return 512 elseif ($1 == 7) return 650 elseif ($1 == 8) return 801 elseif ($1 == 9) return 969 elseif ($1 == 10) return 1154 elseif ($1 == 11) return 1358 elseif ($1 == 12) return 1584 elseif ($1 == 13) return 1833 elseif ($1 == 14) return 2107 elseif ($1 == 15) return 2411 elseif ($1 == 16) return 2746 elseif ($1 == 17) return 3115 elseif ($1 == 18) return 3523 elseif ($1 == 19) return 3973 elseif ($1 == 20) return 4470 elseif ($1 == 21) return 5018 elseif ($1 == 22) return 5624 elseif ($1 == 23) return 6291 elseif ($1 == 24) return 7028 elseif ($1 == 25) return 7842 elseif ($1 == 26) return 8740 elseif ($1 == 27) return 9730 elseif ($1 == 28) return 10824 elseif ($1 == 29) return 12031 elseif ($1 == 30) return 13363 elseif ($1 == 31) return 14833 elseif ($1 == 32) return 16456 elseif ($1 == 33) return 18247 elseif ($1 == 34) return 20224 elseif ($1 == 35) return 22406 elseif ($1 == 36) return 24815 elseif ($1 == 37) return 27473 elseif ($1 == 38) return 30408 elseif ($1 == 39) return 33648 elseif ($1 == 40) return 37224 elseif ($1 == 41) return 41171 elseif ($1 == 42) return 45529 elseif ($1 == 43) return 50339 elseif ($1 == 44) return 55649 elseif ($1 == 45) return 61512 elseif ($1 == 46) return 67983 elseif ($1 == 47) return 75127 elseif ($1 == 48) return 83014 elseif ($1 == 49) return 91721 elseif ($1 == 50) return 101333 elseif ($1 == 51) return 111945 elseif ($1 == 52) return 123660 elseif ($1 == 53) return 136594 elseif ($1 == 54) return 150872 elseif ($1 == 55) return 166636 elseif ($1 == 56) return 184040 elseif ($1 == 57) return 203254 elseif ($1 == 58) return 224466 elseif ($1 == 59) return 247886 elseif ($1 == 60) return 273742 elseif ($1 == 61) return 302288 elseif ($1 == 62) return 333804 elseif ($1 == 63) return 368599 elseif ($1 == 64) return 407015 elseif ($1 == 65) return 449428 elseif ($1 == 66) return 496254 elseif ($1 == 67) return 547953 elseif ($1 == 68) return 605032 elseif ($1 == 69) return 668051 elseif ($1 == 70) return 737627 elseif ($1 == 71) return 814445 elseif ($1 == 72) return 899257 elseif ($1 == 73) return 992895 elseif ($1 == 74) return 1096278 elseif ($1 == 75) return 1210421 elseif ($1 == 76) return 1336443 elseif ($1 == 77) return 1475581 elseif ($1 == 78) return 1629200 elseif ($1 == 79) return 1798808 elseif ($1 == 80) return 1986068 elseif ($1 == 81) return 2192818 elseif ($1 == 82) return 2421087 elseif ($1 == 83) return 2673114 elseif ($1 == 84) return 2951373 elseif ($1 == 85) return 3258594 elseif ($1 == 86) return 3597792 elseif ($1 == 87) return 3972294 elseif ($1 == 88) return 4385776 elseif ($1 == 89) return 4842295 elseif ($1 == 90) return 5346332 elseif ($1 == 91) return 5902831 elseif ($1 == 92) return 6517253 elseif ($1 == 93) return 7195629 elseif ($1 == 94) return 7944614 elseif ($1 == 95) return 8771558 elseif ($1 == 96) return 9684577 elseif ($1 == 97) return 10692629 elseif ($1 == 98) return 11805606 elseif ($1 == 99) return 13034431 } alias cmblvl { ;att,def,hit,range,mage,summoning var %a $calc($3 * 100) var %b $calc($4 * 100) if ($isbit($6,1)) var %c $calc($calc($6 - 1) * 50) else var %c $calc($6 * 50) if ($isbit($8,1)) var %d $calc($calc($8 - 1) * 50) else var %d $calc($8 * 50) var %base $calc($calc(%a + %b + %c + %d) / 400) var %e $calc($1 * 130), %f $calc($2 * 130) if ($isbit($5,1)) var %g $calc($calc($calc($5 - 1) + $calc($5 * 2)) * 65) else var %g $calc($5 * 195) if ($isbit($7,1)) var %h $calc($calc($calc($7 - 1) + $calc($7 * 2)) * 65) else var %h $calc($7 * 195) var %melee $calc($calc(%e + %f) / 400) var %range $calc(%g / 400) var %mage $calc(%h / 400) if ($gettok($sorttok(%melee %range %mage,32,nr),1,32) == %melee) var %type Melee elseif ($v1 == %range) var %type Ranged else var %type Magic return $calc($v1 + %base) } alias hpbar { var %g $round($calc($$1 /5),-1), %r $calc(20 - %g), %x 1 var %t $right(0 $+ $1,-1) while (%x < 21) { var %c $iif(%x isnum 1- $+ %g,09,04) if (%x isnum 10-11) { var %m $+(,01,$chr(44),%c,$mid(%t,$calc(%x -9),1)) } else { var %m $+(,%c,$chr(44),%c,$chr(160)) } var %re %re $+ %m inc %x } return %re $+  } alias admin { var %a $ini(pq.ini,$1,Admin) while (%a >= 1) { if (%a iswm $v1) return $true dec %a } return $false } alias lfield { writeini pq.ini $2 Battle No msg $1 $pqc2($readini(pq.ini,$2,chr)) $pqc1(has escaped from the battle field!) mode $1 -v $2 } alias lock { writeini pq.ini $2 lock $3 msg $1 $pqc2($readini(pq.ini,$2,chr)) $pqc1(has locked on to) $pqc2($readini(pq.ini,$3,chr)) $+ $pqc1(... They can now say) $pqc2(.skill) $pqc1(to attack) $pqc2($iif(($readini(pq.ini,$3,Gender) == M),him,her)) $+ $pqc1(.) } alias datk { writeini pq.ini $1 Attack No notice $1 $readini(pq.ini,$1,chr) has finished $readini(pq.ini,$nick,Gender) attack. } on $*:TEXT:/^[!.~]p(ortal)?q(uest)?c(om)?m(an)?ds?$/Si:*: { $iif($left($1,1) = ~,msg #,msg $nick) $pqc1(A list of commands can be found at:) $pqc2(http://www.portal-quest.com/commands) $iif($left($1,1) = ~,msg #,msg $nick) $pqc1(Scroll lower for) $pqc2(Admin) $pqc1(commands.) $iif($left($1,1) = ~,msg #,msg $nick) $pqc1(If you can't see the URL $+ $chr(44) Type:) $pqc2(/mode $nick -f) $pqc1(and type) $pqc2($1) $pqc1(again.) } on $*:TEXT:/^[!.~]skill(s)?/Si:#: { if (!$2) { set %temp.nick $nick | goto continue } if ($2) { set %temp.nick $2 } :continue $iif($left($1,1) = ~,msg #,msg $nick) $pqc1(Information for) $pqc2(%temp.nick) $+ $pqc1(:) $pqc1($chr(40)) $+ $pqc2(Melee) $+ $pqc1(:) $pqc2($readini(pq.ini,%temp.nick,Melees)) $+ $pqc1($chr(41)) $chr(40) $+ $pqc2(Magic Attack) $+ $pqc1(:) $& $pqc2($readini(pq.ini,%temp.nick,Magics)) $+ $pqc1($chr(41)) $chr(40) $+ $pqc2(Range Attack) $+ $pqc1(:) $pqc2($readini(pq.ini,%temp.nick,Ranges)) $+ $pqc1($chr(41)) $chr(40) $+ $pqc2(Summon Attack) $+ $pqc1(:) $pqc2($readini(pq.ini,%temp.nick,Summons)) $+ $pqc1($chr(41)) unset %temp.nick } on $*:TEXT:/^[!.~]a(dmin)?o(verride)? /Si:#: { if ($admin($nick)) { if ($regex($2,/^(Hp|HpMax|Attack|Summon|Defence|Magic|Range)/i)) { writeini pq.ini $3 $2 $4 $iif($left($1,1) = ~,msg #,notice $nick) $pqc2($3) $+ $pqc1('s) $pqc2($2) $pqc1(is now) $pqc2($4) $+ $pqc1(.) msg #Portal-Quest.Staff $pqc2($nick) $pqc1(used) $pqc2($1-) $pqc1(to set) $pqc2($3) $+ $pqc1('s) $pqc2($2) $pqc1(to) $pqc2($4) $+ $pqc1(.) } } if (!$admin($nick)) { } } on $*:TEXT:/^[!.~]stats ?(-s)?/Si:#: { if ($2 != -s) { set %temp.nick $iif($2,$2,$nick) | goto continue } elseif ($2 == -s) { set %temp.nick $iif($4,$4,$nick) | goto next } :continue if (!$readini(pq.ini,%temp.nick,HPMax)) { $iif($left($1,1) = ~,msg #,notice $nick) $pqc1([PQ] Error) $pqc2(-) $pqc1(There is a problem with your/their stats.) | return } $iif($left($1,1) = ~,msg #,notice $nick) $+($pqc1([),$pqc2($readini(pq.ini,%temp.nick,chr)),$pqc1(])) $+($pqc1([Combat),$chr(32),$pqc2($readini(pq.ini,%temp.nick,Combat)),$pqc1(])) $($pqc1([Attack),$pqc2($readini(pq.ini,%temp.nick,Attack)),$pqc1(| Summoning),$pqc2($readini(pq.ini,%temp.nick,Summon)),$pqc1(| Defence),$pqc2($readini(pq.ini,%temp.nick,Defence)),$pqc1(| Hitpoints),$pqc2($readini(pq.ini,%temp.nick,HPMax)),$pqc1(| Ranged),$pqc2($readini(pq.ini,%temp.nick,Range)),$pqc1(| Magic),$remove($+($pqc2($readini(pq.ini,%temp.nick,Magic)),$pqc1(])),$chr(32))) | return :next if ($regex($3,/^(att(ack)?)/i)) { $iif($left($1,1) = ~,msg #,notice $nick) $+($pqc1([),$pqc2(Attack),$chr(32),$pqc1(for),$chr(32),$pqc2($readini(pq.ini,%temp.nick,chr)),$pqc1(])) $pqc1([Level) $pqc2($readini(pq.ini,%temp.nick,Attack)) $pqc1(| EXP:) $pqc2($bytes($readini(pq.ini,%temp.nick,AEXP),db)) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,AEXP) / 13034431 * 100),2) $+ $chr(37)) $& $pqc1(of 99 $+ $chr(41)) $pqc1(| Exp to) $pqc2($calc($readini(pq.ini,%temp.nick,Attack) + 1) $chr(40) $+ $calc($xpforlvl($calc($readini(pq.ini,%temp.nick,Attack) + 1)) - $readini(pq.ini,%temp.nick,AEXP)) exp $+ $chr(41))) $+ $pqc1(:) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,AEXP) / $xpforlvl($calc($readini(pq.ini,%temp.nick,Attack) + 1)) * 100),2) $+ $chr(37)) $pqc1(of $pqc2($calc($readini(pq.ini,%temp.nick,Attack) + 1)) $+ $pqc1($chr(41) $+ $chr(93))) } if ($regex($3,/^(def(ence)?)/i)) { $iif($left($1,1) = ~,msg #,notice $nick) $+($pqc1([),$pqc2(Defence),$chr(32),$pqc1(for),$chr(32),$pqc2($readini(pq.ini,%temp.nick,chr)),$pqc1(])) $pqc1([Level) $pqc2($readini(pq.ini,%temp.nick,Defence)) $pqc1(| EXP:) $pqc2($bytes($readini(pq.ini,%temp.nick,DEXP),db)) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,DEXP) / 13034431 * 100),2) $+ $chr(37)) $& $pqc1(of 99 $+ $chr(41)) $pqc1(| Exp to) $pqc2($calc($readini(pq.ini,%temp.nick,Defence) + 1) $chr(40) $+ $calc($xpforlvl($calc($readini(pq.ini,%temp.nick,Defence) + 1)) - $readini(pq.ini,%temp.nick,DEXP)) exp $+ $chr(41))) $+ $pqc1(:) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,DEXP) / $xpforlvl($calc($readini(pq.ini,%temp.nick,Defence) + 1)) * 100),2) $+ $chr(37)) $pqc1(of $pqc2($calc($readini(pq.ini,%temp.nick,Defence) + 1)) $+ $pqc1($chr(41) $+ $chr(93))) } if ($regex($3,/^(range(d)?)/i)) { $iif($left($1,1) = ~,msg #,notice $nick) $+($pqc1([),$pqc2(Range),$chr(32),$pqc1(for),$chr(32),$pqc2($readini(pq.ini,%temp.nick,chr)),$pqc1(])) $pqc1([Level) $pqc2($readini(pq.ini,%temp.nick,Range)) $pqc1(| EXP:) $pqc2($bytes($readini(pq.ini,%temp.nick,REXP),db)) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,REXP) / 13034431 * 100),2) $+ $chr(37)) $& $pqc1(of 99 $+ $chr(41)) $pqc1(| Exp to) $pqc2($calc($readini(pq.ini,%temp.nick,Range) + 1) $chr(40) $+ $calc($xpforlvl($calc($readini(pq.ini,%temp.nick,Range) + 1)) - $readini(pq.ini,%temp.nick,REXP)) exp $+ $chr(41))) $+ $pqc1(:) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,REXP) / $xpforlvl($calc($readini(pq.ini,%temp.nick,Range) + 1)) * 100),2) $+ $chr(37)) $pqc1(of $pqc2($calc($readini(pq.ini,%temp.nick,Range) + 1)) $+ $pqc1($chr(41) $+ $chr(93))) } if ($regex($3,/^(sum(mon)?)/i)) { $iif($left($1,1) = ~,msg #,notice $nick) $+($pqc1([),$pqc2(Summoning),$chr(32),$pqc1(for),$chr(32),$pqc2($readini(pq.ini,%temp.nick,chr)),$pqc1(])) $pqc1([Level) $pqc2($readini(pq.ini,%temp.nick,Summon)) $pqc1(| EXP:) $pqc2($bytes($readini(pq.ini,%temp.nick,SEXP),db)) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,SEXP) / 13034431 * 100),2) $+ $chr(37)) $& $pqc1(of 99 $+ $chr(41)) $pqc1(| Exp to) $pqc2($calc($readini(pq.ini,%temp.nick,Summon) + 1) $chr(40) $+ $calc($xpforlvl($calc($readini(pq.ini,%temp.nick,Summon) + 1)) - $readini(pq.ini,%temp.nick,SEXP)) exp $+ $chr(41))) $+ $pqc1(:) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,SEXP) / $xpforlvl($calc($readini(pq.ini,%temp.nick,Summon) + 1)) * 100),2) $+ $chr(37)) $pqc1(of $pqc2($calc($readini(pq.ini,%temp.nick,Summon) + 1)) $+ $pqc1($chr(41) $+ $chr(93))) } if ($regex($3,/^(Mag(e|ic)?)/i)) { $iif($left($1,1) = ~,msg #,notice $nick) $+($pqc1([),$pqc2(Magic),$chr(32),$pqc1(for),$chr(32),$pqc2($readini(pq.ini,%temp.nick,chr)),$pqc1(])) $pqc1([Level) $pqc2($readini(pq.ini,%temp.nick,Magic)) $pqc1(| EXP:) $pqc2($bytes($readini(pq.ini,%temp.nick,MEXP),db)) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,MEXP) / 13034431 * 100),2) $+ $chr(37)) $& $pqc1(of 99 $+ $chr(41)) $pqc1(| Exp to) $pqc2($calc($readini(pq.ini,%temp.nick,Magic) + 1) $chr(40) $+ $capc($xpforlvl($calc($readini(pq.ini,%temp.nick,Magic) + 1)) - $readini(pq.ini,%temp.nick,MEXP)) exp $+ $chr(41))) $+ $pqc1(:) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,MEXP) / $xpforlvl($calc($readini(pq.ini,%temp.nick,Magic) + 1)) * 100),2) $+ $chr(37)) $pqc1(of $pqc2($calc($readini(pq.ini,%temp.nick,Magic) + 1)) $+ $pqc1($chr(41) $+ $chr(93))) } if ($regex($3,/^(HP)/i)) { $iif($left($1,1) = ~,msg #,notice $nick) $+($pqc1([),$pqc2(Hitpoints),$chr(32),$pqc1(for),$chr(32),$pqc2($readini(pq.ini,%temp.nick,chr)),$pqc1(])) $pqc1([Level) $pqc2($readini(pq.ini,%temp.nick,HPMax)) $pqc1(| EXP:) $pqc2($bytes($readini(pq.ini,%temp.nick,HEXP),db)) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,HEXP) / 13034431 * 100),2) $+ $chr(37)) $& $pqc1(of 99 $+ $chr(41)) $pqc1(| Exp to) $pqc2($calc($readini(pq.ini,%temp.nick,HPMax) + 1) $chr(40) $+ $calc($xpforlvl($calc($readini(pq.ini,%temp.nick,HPMax) + 1)) - $readini(pq.ini,%temp.nick,HEXP))) exp $+ $chr(41))) $+ $pqc1(:) $pqc1($chr(40)) $+ $pqc2($round($calc($readini(pq.ini,%temp.nick,HEXP) / $xpforlvl($calc($readini(pq.ini,%temp.nick,HPMax) + 1)) * 100),2) $+ $chr(37)) $pqc1(of $pqc2($calc($readini(pq.ini,%temp.nick,HPMax) + 1)) $+ $pqc1($chr(41) $+ $chr(93))) } } on $*:TEXT:/^[!.@]pqset(tings)?\s.+/Si:#: { if ($admin($nick)) { if ($istok(c1 c2,$2,32) && $3 isnum 0-15) { notice $nick $2 is now color $pqs($2) writein pq.ini Settings $2 $3 var %set . } else { notice $nick Incorrect syntax. Type !pqcmds and scroll down on the webpage for the admin commands. var %set . } elseif (!%set) notice $nick Incorrect syntax. Type !pqcmds and scroll down on the webpage for the admin commands. } elseif (!$admin($nick)) { notice $nick You do not have sufficient access to set Portal Quest settings. } } on *:TEXT:REGISTER *:?: { if (*$* isin $2-) { halt } else { writeini pq.ini $nick chr $replace($2,_,$chr(32),-,$chr(32)) writeini pq.ini $nick Pass $encode($3) if (male == $4) { writeini pq.ini $nick Gender M writeini pq.ini $nick Admin N writeini pq.ini $nick Connected Yes msg $nick $pqc2($nick) $pqc1(Your player name is:) $pqc2($replace($2,_,$chr(32),-,$chr(32))) $+ $pqc1(. Your set gender is:) $pqc2($4) $pqc1(and I have stored and encoded your password as:) $pqc2($3) $+ $pqc1(.) msg $nick $pqc2($nick) $pqc1(Now that you are) $pqc2(Registered) $pqc1(you need to set your Skills. To do so you must type) $pqc2(set Melee/Magic/Range/Summon skill) $+ $pqc1(.) } if (female == $4) { writeini pq.ini $nick Gender F writeini pq.ini $nick Admin N writeini pq.ini $nick Connected Yes msg $nick $pqc2($nick) $pqc1(Your player name is:) $pqc2($replace($2,_,$chr(32),-,$chr(32))) $+ $pqc1(. Your set gender is:) $pqc2($4) $pqc1(and I have stored and encoded your password as:) $pqc2($3) $+ $pqc1(.) msg $nick $pqc2($nick) $pqc1(Now that you are) $pqc2(Registered) $pqc1(you need to set your Skills. To do so you must type) $pqc2(set Melee/Magic/Range/Summon skill) $+ $pqc1(.) } writeini pq.ini $nick Combat 3.4 writeini pq.ini $nick Attack 1 writeini pq.ini $nick AEXP 0 writeini pq.ini $nick NextAlvl 83 writeini pq.ini $nick Defence 1 writeini pq.ini $nick DEXP 0 writeini pq.ini $nick NextDlvl 83 writeini pq.ini $nick Magic 1 writeini pq.ini $nick MEXP 0 writeini pq.ini $nick NextMlvl 83 writeini pq.ini $nick Range 1 writeini pq.ini $nick REXP 0 writeini pq.ini $nick NextRlvl 83 writeini pq.ini $nick Summon 1 writeini pq.ini $nick SEXP 0 writeini pq.ini $nick NextSlvl 83 writeini pq.ini $nick HP 10 writeini pq.ini $nick HPMax 10 writeini pq.ini $nick HEXP 1154 writeini pq.ini $nick NextHlvl 1358 writeini pq.ini $nick Melees 0 writeini pq.ini $nick Magics 0 writeini pq.ini $nick Ranges 0 writeini pq.ini $nick Summons 0 } } on *:TEXT:SET *:?: { if (*$* isin $2-) { halt } if ($readini(pq.ini,$nick,$2) != 0) { msg $nick $nick You already have your set $2 $+ . halt } else { if ($2 == Melee) { writeini pq.ini $nick Melees $replace($3,_,$chr(32),-,$chr(32)) msg $nick $nick You have set your Melee Attack as: $replace($3,_,$chr(32),-,$chr(32)) . } if ($2 == Magic) { writeini pq.ini $nick Magics $replace($3,_,$chr(32),-,$chr(32)) msg $nick $nick You have set your Magic Attack as: $replace($3,_,$chr(32),-,$chr(32)) $+ . } if ($2 == Range) { writeini pq.ini $nick Ranges $replace($3,_,$chr(32),-,$chr(32)) msg $nick $nick $+ , You have set your Range Attack as: $replace($3,_,$chr(32),-,$chr(32)) $+ . } if ($2 == Summon) { writeini pq.ini $nick Summons $replace($3,_,$chr(32),-,$chr(32)) msg $nick $nick You hve set your Summoning Attack as: $replace($3,_,$chr(32),-,$chr(32)) $+ . } } } on *:TEXT:LOGIN *:?: { if ($readini(pq.ini,$nick,Connected) == Y) { notice $nick $nick $+ , You are already logged in. return } elseif ($readini(pq.ini,$nick,pass) != $encode($2)) { notice $nick $nick $+ , Your login has been Denied. msg #PQS $pqc2($nick) $+ $pqc1('s login has been) $pqc2(Denied) $+ $pqc1(.) return } else { writeini pq.ini $nick Connected Y notice $nick $nick $+ , Your login has been Confirmed. msg #PQS $pqc2($nick) $+ $pqc1('s login has been) $pqc2(Confirmed) $+ $pqc1(.) } } on *:TEXT:LOGOUT:?: { if ($readini(pq.ini,$nick,Connected) == N) { notice $nick $nick $+ , You are already logged out. return } else { writeini pq.ini $nick Connected N notice $nick $nick $+ , Your logout has been Confirmed. msg #PQS $pqc2($nick) $+ $pqc1('s logout has been) $pqc2(Confirmed) $+ $pqc1(.) } } on *:PART:#Portal-Quest: { if ($readini(pq.ini,$nick,Battle) = Y) { msg $chan $pqc2($nick) $pqc1(has left the zone due to parting the channel.) writeini pq.ini $nick Battle N } } on *:QUIT: { if ($readini(pq.ini,$nick,Battle) = Y) || ($readini(pq.ini,$nick,Connected) = Y) { msg #Portal-Quest $pqc2($nick) $pqc1(has been logged out due to Quiting.) writeini pq.ini $nick Battle N writeini pq.ini $nick Connected N } } on $*:TEXT:/^[!.]fight$/Si:#: { if (!$readini(pq.ini,$nick,chr)) { notice $nick You are not registered. | return } if ($readini(pq.ini,$nick,Connected) == N) { notice $nick You are not loged in. | return } if ($readini(pq.ini,$nick,Battle) == Y) { msg $chan $pqc2($readini(pq.ini,$nick,chr)) $pqc1(starts running from the battle field..) | timer 1 10 lfield $chan $nick | return } writeini pq.ini $nick Battle Y msg $chan $pqc2($nick $+ ( $+ $readini(pq.ini,$nick,chr) $+ )) $pqc1(has entered the field! To lock on to) $pqc2($iif(($readini(pq.ini,$nick,Gender) == his),him,her)) $pqc1(type) $pqc2(.lo ) $+ $pqc1(.) mode # +v $nick } on $*:TEXT:/^[!.]lo/Si:#: { if (!$2-) && ($readini(pq.ini,$nick,lock) != 0) { notice $nick $nick has stopped locking on to $readini(pq.ini,$nick,lock) $+ . | writeini pq.ini $nick lock 0 | return } if ($2 !ison $chan) { notice $nick Error - That person is not here. | return } if ($readini(pq.ini,$nick,Battle) != Y) { notice $nick Error - You are not in the field. | return } if ($readini(pq.ini,$2,Battle) != Y) { notice $nick Error - That person is not in the field. | return } msg $chan $pqc2($nick) $pqc1(begins targeting) $pqc2($readini(pq.ini,$2,chr)) $+ $pqc1(..) timer 1 5 lock $chan $nick $2 } on $*:TEXT:/^[!.]melee/Si:#: { if (!$readini(pq.ini,$nick,Melees)) { notice $nick You do not have a Melee skill. | return } if ($readini(pq.ini,$nick,lock) == 0) { if (!$2) || ($2 !ison $chan) || ($readini(pq.ini,$2,Battle) != Yes) { notice $nick Error - Incorrect Syntax. | return } set %temp.lo $2 set %temp.miss 5 goto continue } if ($2) { notice $nick Error - You are already locked on to someone. Say .lo to stop, or .lo to lock on to someone else. | return } if ($readini(pq.ini,$nick,Battle) != Yes) { notice $nick Error - You are not in the Battle Field. | return } set %temp.lo $readini(pq.ini,$nick,lock) set %temp.miss 3 :continue var %hit $rand(0,$calc($readini(pq.ini,$nick,Attack) / $rand(1,4))) var %dmg $calc($readini(pq.ini,$nick,Attack) - $readini(pq.ini,%temp.lo,Defence) + %hit) if ($readini(pq.ini,$nick,Attack) == Yes) { notice $nick Error - You are already attacking. | return } writeini pqf.ini $nick Attack Yes timer 1 3 datk $nick set %temp.hom $rand(1,%temp.miss) if (%temp.hom == 1) { msg $chan $pqc1([PQ]) $pqc2($readini(pq.ini,$nick,chr)) $pqc1(attacks) $pqc2($readini(pq.ini,%temp.lo,chr)) $pqc1(but misses.) return } writeini pq.ini %temp.lo HP $calc($readini(pq.ini,%temp.lo,HP) - %dmg) var %exp $calc($rand(2,5)*%dmg)) var %hp $calc(1.5*%dmg) if ($readini(pq.ini,%temp.lo,HP) < 1) { writeini pq.ini %temp.lo HP 0 } msg $chan $pqc1([PQ]) $pqc2($readini(pq.ini,$nick,chr)) $pqc1(hit a) $pqc2(%dmg) $pqc1(with $readini(pq.ini,$nickgen,)) $pqc2($readini(pq.ini,$nick,Melee)) $pqc1(leaving) $pqc2($readini(pq.ini,%temp.lo,chr)) $pqc1(with) $& $pqc2($iif(($readini(pq.ini,%temp.lo,HPMax) == 99),$hpbar($readini(pq.ini,%temp.lo,HP)),$readini(pq.ini,%temp.lo,HP))) $pqc1(hp.) notice $nick $pqc1([PQ] $readini(pq.ini,$nick,chr) $+ 's) $pqc2(HP) $+ $pqc1(:) $pqc2($readini(pq.ini,$nick,HP)) $pqc1(- $readini(pq.ini,%temp.lo,chr) $+ 's) $pqc2(HP) $pqc1(:) $pqc2($readini(pq.ini,%temp.lo,HP)) if ($readini(pq.ini,$nick,AEXP) < $readini(pq.ini,$nick,NextAlvl)) && ($readini(pq.ini,$nick,Defgain) == No) { writeini pq.ini $nick AEXP $calc($readini(pq.ini,$nick,AEXP) + %exp) } if ($readini(pq.ini,$nick,DEXP) < $readini(pq.ini,$nick,NextDlvl)) && ($readini(pq.ini,$nick,Defgain) == Def) { writeini pq.ini $nick DEXP $calc($readini(pq.ini,$nick,DEXP) + %exp) } if ($readini(pqstats.ini,$nick,HEXP) < $readini(pqstats.ini,$nick,NextHlvl)) { writeini pq.ini $nick HEXP $calc($readini(pq.ini,$nick,HEXP) + %hp) } if ($readini(pq.ini,%temp.lo,HP) < 1) { writeini pq.ini %temp.lo HP $readini(pq.ini,%temp.lo,HPMax) msg $chan $pqc1([PQ]) $pqc2($readini(pq.ini,%temp.lo,chr)) $pqc1(has died.) $pqc2($readini(pq.ini,%temp.lo,chr)) $pqc1(came into the safe zone.) mode # -v %temp.lo remini pq.ini %temp.lo lock writeini pq.ini %temp.lo Battle No } if ($readini(pq.ini,$nick,Attack) >= 99) || ($readini(pq.ini,$nick,Defence) >= 99) { halt } else { if ($readini(pq.ini,$nick,AEXP) >= $readini(pq.ini,$nick,NextAlvl)) && ($readini(pq.ini,$nick,Defgain) == No) { msg $chan $pqc1([PQ]) $pqc2($readini(pq.ini,$nick,chr)) $pqc1(has grown to) $pqc2($calc($readini(pq.ini,$nick,Attack) + 1)) $pqc1(Attack.) writeini pq.ini $nick Attack $calc($readini(pq.ini,$nick,Attack) + 1) writeini pq.ini $nick NextAlvl $xpforlvl($calc($readini(pq.ini,$nick,Attack) + 1)) } if ($readini(pq.ini,$nick,DEXP) >= $readini(pq.ini,$nick,NextDlvl)) && ($readini(pq.ini,$nick,Defgain) == Def) { msg $chan $pqc1([PQ]) $pqc2($readini(pq.ini,$nick,chr)) $pqc1(has grown to) $pqc2($calc($readini(pq.ini,$nick,Defence) + 1)) $pqc1(Defence.) writeini pq.ini $nick Defence $calc($readini(pq.ini,$nick,Defence) + 1) writeini pq.ini $nick NextDlvl $xpforlvl($calc($readini(pq.ini,$nick,Defence) + 1)) } if ($readini(pq.ini,$nick,HEXP) >= $readini(pq.ini,$nick,NextHlvl)) { msg $chan $pqc1([PQ]) $pqc2($readini(pq.ini,$nick,chr)) $pqc1(has grown to) $pqc2($calc($readini(pq.ini,$nick,HPMax) + 1)) $pqc1(Hitpoints.) writeini pq.ini $nick HPMax $calc($readini(pq.ini,$nick,HPMax) + 1) writeini pq.ini $nick HP $readini(pq.ini,$nick,HPMax) writeini pq.ini $nick NextHlvl $xpforlvl($calc($readini(pq.ini,$nick,HPMax) + 1)) } } }