rendered paste body[script]
n0=on 3:text:!desc*:*:{
n1= var %character = $nick
n2= if ($2) { %character = $2- }
n3= var %recipient = $nick
n4= if ($chan) { %recipient = $chan }
n5= if (%character == luna) { msg %recipient 14luna is wielding a portal creator and wearing a beautiful dress. | halt }
n6= elseif (%character == this clams) { msg %recipient 14this clams is steamy and round | halt }
n7= ;elseif (%character == Azathoth) { msg %recipient 14Azathoth is a city block tall and constantly screams profanity in every language. | halt }
n8= elseif (%character == Ryan) { msg %recipient 14Ryan is wielding a keyboard and mouse and wearing a black t-shirt and faded jeans. | halt }
n9= elseif (%character == Gabe) { msg %recipient 14Gabe is wielding a beard and ponytail and wearing a yellow t-shirt and green cargo pants. | halt }
n10= elseif (%character == michelle) { msg %recipient 14Michelle is wielding a joint and a tablet and wearing cartoons and blue jeans. | halt }
n11= elseif (%character == Kitty) { msg %recipient 14Kitty is wielding a box of pocky and wearing cat ears and a FullMetal Alchemist t-shirt. | halt }
n12= elseif (%character == acreano) { msg %recipient 14gay=beautifull }
n13= elseif (%character == stef) { msg %recipient 14Stef is wielding a butter knife and wearing a ceremonial toga. }
n14= elseif (%character == lexi) { msg %recipient 14Lexi is wielding the moon and wearing 0 shoes. }
n15= else { senddesc %character %recipient }
n16=}
n17=
n18=;send $1's desc to $2
n19=alias senddesc {
n20= var %desc = $readcoe($1,info,desc)
n21= if (%desc) { msg $2 14 $+ $b($1) %desc }
n22= else {
n23= %desc = $null
n24= var %slots = body head shield ring feet other
n25= var %numtok = 6
n26= var %i = 1
n27= var %eq, %eqdesc, %slot, %wielding, %wearing
n28= var %weapon = $readcoe($1,eq,weapon)
n29= if (%weapon) {
n30= %eqdesc = $readlst(item,%weapon,desc)
n31= if (%weapon == GodSymbol) { %wielding = forms %eqdesc }
n32= else { %wielding = %desc is wielding %eqdesc }
n33= %desc = $addtok(%desc,%wielding,124)
n34= }
n35= while (%i <= %numtok) {
n36= %eq = $readcoe($1,eq,$gettok(%slots,%i,32))
n37= if (%eq) {
n38= %eqdesc = $readlst(item,%eq,desc)
n39= %wearing = $addtok(%wearing,%eqdesc,137)
n40= }
n41= inc %i
n42= }
n43= if (%wearing) {
n44= %wearing = is wearing %wearing
n45= %desc = $addtok(%desc,$commas(%wearing).137,124)
n46= }
n47= if (%desc) { msg $2 14 $+ $b($1) $commas(%desc).124 $+ . }
n48= }
n49=}
n50=
n51=on 10:text:!setdesc *:*:{
n52= if $iscoe($2) {
n53= if ($3-) {
n54= writeini $2.coe info desc $3-
n55= msg $nick 10 $+ $b($2) $+ 's desc set to: 14 $+ $b($2) $3-
n56= }
n57= else {
n58= remini $2.coe info desc
n59= msg $nick 10 $+ $b($2) $+ 's custom desc removed.
n60= }
n61= }
n62=}
n63=
n64=on 1:text:!login *:?:{
n65= var %coe = $nick $+ .coe
n66= if ($iscoe($nick)) {
n67= var %pw = $readini $setrep($nick) $+ .coe info pw
n68= if (%pw = $null) { msg $nick 4Error - You have not set your password yet. Set it with !setpassword (password). | halt }
n69= if (%pw != $2) { msg $nick 4Error - Incorrect password. | halt }
n70= if (%pw = $2) {
n71= var %banstamp = $readini $setrep($nick) $+ .coe time ban
n72= if ((%banstamp) && (%banstamp > $ctime)) { msg $nick 4You cannot login because you are banned. Your ban expires in $+ $duration($calc(%banstamp - $ctime)) $+ . }
n73= else {
n74= msg $nick 3Welcome back to luna, $+ $nick $+ !
n75= auser 3 $nick
n76= set %set $setrep($nick)
n77= if ((%set == $setrep(Radiergummi)) || (%set == $setrep(Ryan))) { auser 10 $nick }
n78= elseif ((%set == $setrep(Waise)) || (%set == $setrep(Garode))) { auser 10 $nick }
n79= recoverchan $nick
n80= %puppeteer = $getpuppeteer($nick)
n81= if (%puppeteer != $nick) { puppeteer $nick %puppeteer }
n82= }
n83= }
n84= }
n85= elseif ($exists(%coe)) {
n86= var %pw = $readini $nick $+ .coe info pw
n87= if (%pw = $null) { msg $nick 4Error - You have not set your password yet. Set it with !setpassword (password). | halt }
n88= if (%pw != $2) { msg $nick 4Error - Incorrect password. | halt }
n89= if (%pw = $2) {
n90= var %banstamp = $readini $setrep($nick) $+ .coe time ban
n91= if ((%banstamp) && (%banstamp > $ctime)) { msg $nick 4You cannot login because you are banned. Your ban expires in $+ $duration($calc(%banstamp - $ctime)) $+ . }
n92= else {
n93= msg $nick 3This character is incompatible with this version of luna. Use !stash and then !archive.
n94= auser 2 $nick
n95= set %set $setrep($nick)
n96= if ((%set == $setrep(Radiergummi)) || (%set == $setrep(Ryan)) || (%set == $setrep(Waise))) { auser 10 $nick }
n97= elseif ((%set == $setrep(Garode))) { auser 7 $nick }
n98= recoverchan $nick
n99= %puppeteer = $getpuppeteer($nick)
n100= if (%puppeteer != $nick) { puppeteer $nick %puppeteer }
n101= }
n102= }
n103= }
n104=}
n105=
n106=on 7:text:!tempban *:*:{
n107= if ($exists($2.coe)) {
n108= auser 1 $2
n109= var %input = $3-
n110= if (%input) {
n111= var %link = $setrep($2)
n112= var %duration = 0
n113= var %subdur, %interval
n114= var %numtok = $numtok(%input,32)
n115= var %i = 1
n116= var %i2 = 2
n117= while (%i2 <= %numtok) {
n118= %subdur = $gettok(%input,%i,32)
n119= %interval = $gettok(%input,%i2,32)
n120= if ((%interval == year) || (%interval == years)) { %subdur = %subdur * 31536000 }
n121= elseif ((%interval == month) || (%interval == months)) { %subdur = %subdur * 2628000 }
n122= elseif ((%interval == week) || (%interval == weeks)) { %subdur = %subdur * 604800 }
n123= elseif ((%interval == day) || (%interval == days)) { %subdur = %subdur * 86400 }
n124= elseif ((%interval == hour) || (%interval == hours)) { %subdur = %subdur * 3600 }
n125= elseif ((%interval == minute) || (%interval == minutes)) { %subdur = %subdur * 60 }
n126= elseif ((%interval == second) || (%interval == seconds) || (%interval == $null)) { }
n127= else { msg $nick 4Unrecognised interval: $+ %interval $+ | halt }
n128= inc %duration %subdur
n129= inc %i
n130= inc %i2
n131= }
n132= var %banstamp = $ctime + %duration
n133= writeini %link $+ .coe time ban %banstamp
n134= msg $nick 10 $+ %link $+ is now banned until $asctime(%banstamp) $+ .
n135= }
n136= else { msg $nick 4Format: !tempban (character) (number) (interval) ... - e.g. !tempban DSK 3 days 2 hours }
n137= }
n138= else { msg $nick 4Character does not exist. }
n139=}
n140=
n141=on 10:text:!unban *:*:{
n142= if ($exists($2.coe)) {
n143= var %link = $setrep($2)
n144= writeini %link $+ .coe time ban 0
n145= msg $nick 10 $+ %link $+ is no longer banned.
n146= }
n147=}
n148=
n149=on 1:text:!setpassword *:?:{
n150= if ($nick == desc) { halt }
n151= var %link = $setrep($nick)
n152= set %pw $readini %link $+ .coe info pw
n153= if ((%pw != $null) && ($level($nick) < 3)) { msg $nick 4Error - You already have a password. To change it, login and !changepassword (new password). | halt }
n154= else { writeini %link $+ .coe info pw $2 | msg $nick 12Success! 3Please remember that your password is: $2 | msg $nick 14To log in, try !login (password) . }
n155=}
n156=
n157=on 3:text:!changepassword *:?:{
n158= writeini $setrep($nick) $+ .coe info pw $2
n159= msg $nick 12Success! 3Please remember that your password is: $+ $2 $+
n160=}
n161=
n162=on 3:text:!logout:*:{
n163= auser 1 $nick
n164= msg $nick 14You have successfully logged out. 12Come back soon...
n165=}
n166=
n167=;on 3:PART:#luna:/auser 1 $nick
n168=on 3:PART:#:{
n169= if ($chan == $getplayerchan($nick)) { clearchan $chan }
n170= if ($comchan($nick,0) == 1) { auser 1 $nick }
n171=}
n172=on 3:KICK:#:{ if ($comchan($nick,0) == 1) { auser 1 $nick } }
n173=on 3:QUIT:{
n174= auser 1 $nick
n175= var %pchan = $getplayerchan($nick)
n176= if (%pchan) {
n177= remini %set $+ .coe cur channel
n178= clearchan %pchan
n179= }
n180=}
n181=on 3:NICK:{
n182= var %access = $level($nick)
n183= auser 1 $nick
n184= var %set = $setrep($nick)
n185= if (%set == $setrep($newnick)) {
n186= puppeteer $newnick $nick
n187= auser %access $newnick
n188= }
n189= else {
n190= auser 1 $newnick
n191= var %pchan = $getplayerchan(%set)
n192= remini %set $+ .coe cur channel
n193= if (%pchan) {
n194= if ($iscoe($newnick)) {
n195= var %i = $findtok(%channels,%pchan,1,32)
n196= if (%i) { %chanowners = $reptok(%chanowners,$newnick,%i,32) }
n197= }
n198= else { clearchan %pchan }
n199= }
n200= }
n201= recoverchan $newnick
n202=}
n203=
n204=on 1:text:!id*:*:{
n205= if ($nick = Samael) { auser 10 $nick }
n206= if (($nick = Radiergummi) || ($nick = Ryan) || ($nick = Quadrat)) { auser 100 $nick }
n207= if ($2 = npc) { halt }
n208= if ($2 = $null) { set %nick $nick }
n209= else { set %nick $2 }
n210= %nick = $readcoe(%nick,info,name)
n211=
n212= if (%nick != %lastnick) {
n213= set %lastnick1 %lastnick
n214= set %lastnick %nick
n215= set %special $readini specid.lst identity %nick
n216= if (%special) {
n217= set %color $gettok(%special, 1, 32)
n218= set %id $deltok(%special,1,32)
n219= if (%color > 0) { msg %chan $+ %color $+ $+ %nick $+ %id }
n220= else { msg %chan %id }
n221= halt
n222= }
n223= }
n224=
n225= set %classn $readini %nick $+ .coe info class
n226= if (%classn = $null) { set %lastnick %lastnick1 | halt }
n227= if (%classn = monster) { msg %chan 10 $+ %nick $+ is a monster. | return }
n228= set %race $readini %nick $+ .coe info race
n229= set %sex $readini %nick $+ .coe info sex
n230= set %level $readini %nick $+ .coe cur level
n231= set %race $lower(%race)
n232= set %sex $lower(%sex)
n233= set %classn $lower(%classn)
n234= if ($newbcheck(%nick) > 19) { set %classn adept newbie }
n235= if ($newbcheck(%nick) > 29) { set %classn heroic newbie }
n236= if ($newbcheck(%nick) > 39) { set %classn super newbie }
n237= if ($newbcheck(%nick) > 49) { set %classn legendary newbie }
n238= if ($newbcheck(%nick) > 59) { set %classn master newbie }
n239= if ($readcoe(%nick,info,classbonus)) { %classn = %classn $+ $chr(43) }
n240= if (%nick === ruwin) { msg %chan 10The %nick $+ is a level %level %sex %race %classn $+ . }
n241= elseif ($iscoe(%nick)) { msg %chan 10 $+ %nick $+ is a level %level %sex %race %classn $+ . }
n242= else { msg %chan 14 $+ %nick $+ was a level %level %sex %race %classn $+ . }
n243=}
n244=
n245=on 1:text:!tid*:#luna:{
n246= if ($2 != $null) { set %nick $2 }
n247= else { set %nick $nick }
n248= set %special $readini specid.lst trueidentity %nick
n249= if (%special) {
n250= set %color $gettok(%special, 1, 32)
n251= set %id $deltok(%special,1,32)
n252= if (%color > 0) { msg %chan $+ %color $+ $+ %nick $+ %id }
n253= else { msg %chan %id }
n254= }
n255=}
n256=
n257=on 10:text:!addid *:?:{
n258= writeini specid.lst trueidentity $2 $3-
n259=}
n260=
n261=on 3:TEXT:!stats*:*:{
n262= var %p = $2
n263= if (%p == $null) { %p = $nick }
n264= var %hidden = $readini %p $+ .coe stats hidden
n265= if ((%hidden && ($setrep($nick) != $setrep(%p))) || $data_ai(%p)) { sendstatsmasked %p $nick }
n266= elseif ($false) { msg $nick 10 $+ %p $+ 's stats are hidden. }
n267= else { sendstats %p $nick }
n268=}
n269=
n270=on 10:text:!statsbypass *:*:{
n271= sendstats $2 $nick
n272=}
n273=
n274=on 3:text:!hidestats:*:{
n275= writeini $nick $+ .coe stats hidden $true
n276= msg $nick 10Your stats are now hidden to others.
n277=}
n278=
n279=on 3:text:!showstats:*:{
n280= writeini $nick $+ .coe stats hidden $false
n281= msg $nick 10Your stats are no longer hidden to others.
n282=}
n283=
n284=on 2:TEXT:!items*:*:{
n285= if ($1 == !items) showitems $nick $nick $2-
n286=}
n287=
n288=on 3:TEXT:!amount *:*:{
n289= set %puppets $getpuppets($nick)
n290= set %i $numtok(%puppets,32)
n291= set %msg $null
n292= newbuffer $nick
n293= buffer 10Amount of $+ $2 $+ item:
n294= while (%i > 0) {
n295= set %puppet $gettok(%puppets,%i,32)
n296= set %amt $readini %puppet $+ .coe item $2
n297= if (%amt) { buffer $chr(91) $+ %puppet - $+ %amt $+ $+ $chr(93) }
n298= ;buffer $chr(91) $+ %puppet - $+ %amt $+ $+ $chr(93)
n299= dec %i
n300= }
n301= display $nick
n302=}
n303=
n304=on 3:TEXT:!xp*:*:{
n305= if ($2) {
n306= if ($2 == off) {
n307= writeini $nick $+ .coe info xpblock $true
n308= msg $nick 14You are no longer receiving XP. To undo: !xp on
n309= }
n310= elseif ($2 == on) {
n311= writeini $nick $+ .coe info xpblock $false
n312= msg $nick 14You now receive XP. To undo: !xp off
n313= }
n314= }
n315= else {
n316= set %xp $readini $nick $+ .coe cur xp
n317= msg $nick 14Experience points: %xp $+ /100
n318= }
n319=}
n320=
n321=on 3:TEXT:!gold:*:{
n322= set %gold $readini $nick $+ .coe cur gold
n323= msg $nick 3Gold: $numcomma(%gold)
n324=}
n325=
n326=on 3:TEXT:!equipment:*:{
n327= sendequips $nick $nick
n328=}
n329=
n330=on 3:TEXT:!eq:*:{
n331= sendequips $nick $nick
n332=}
n333=
n334=alias sendequips {
n335= set %head $readini $1.coe eq head
n336= set %body $readini $1.coe eq body
n337= set %weapon $readini $1.coe eq weapon
n338= set %weapon2 $readini $1.coe eq weapon2
n339= set %shield $readini $1.coe eq shield
n340= set %ring $readini $1.coe eq ring
n341= set %feet $readini $1.coe eq feet
n342= set %other $readini $1.coe eq other
n343=
n344= if (%head = $null) { set %head (nothing) }
n345= if (%body = $null) { set %body (nothing) }
n346= if (%weapon = $null) { set %weapon (nothing) }
n347= if (%weapon2 = $null) { set %weapon2 (nothing) }
n348= if (%shield = $null) { set %shield (nothing) }
n349= if (%ring = $null) { set %ring (nothing) }
n350= if (%feet = $null) { set %feet (nothing) }
n351= if (%other = $null) { set %other (nothing) }
n352=
n353= if (%weapon2 = (nothing) ) { msg $2 14[Equipment] $chr(91) $+ Head: $+ %head $+ $+ $chr(93) $chr(91) $+ Body: $+ %body $+ $+ $chr(93) $chr(91) $+ Weapon: $+ %weapon $+ $+ $chr(93) $chr(91) $+ Shield: $+ %shield $+ $+ $chr(93) $chr(91) $+ Ring: $+ %ring $+ $+ $chr(93) $chr(91) $+ Feet: $+ %feet $+ $+ $chr(93) $chr(91) $+ Other: $+ %other $+ $+ $chr(93) }
n354= else { msg $2 14[Equipment] $chr(91) $+ Head: $+ %head $+ $+ $chr(93) $chr(91) $+ Body: $+ %body $+ $+ $chr(93) $chr(91) $+ Weapon: $+ %weapon $+ $+ / $+ $+ %weapon2 $+ $+ $chr(93) $chr(91) $+ Shield: $+ %shield $+ $+ $chr(93) $chr(91) $+ Ring: $+ %ring $+ $+ $chr(93) $chr(91) $+ Feet: $+ %feet $+ $+ $chr(93) $chr(91) $+ Other: $+ %other $+ $+ $chr(93) }
n355=}
n356=
n357=alias itemskills {
n358= var %iskilz
n359= set %head $readini $1.coe eq head
n360= set %body $readini $1.coe eq body
n361= set %weapon $readini $1.coe eq weapon
n362= set %weapon2 $readini $1.coe eq weapon2
n363= set %shield $readini $1.coe eq shield
n364= set %ring $readini $1.coe eq ring
n365= set %feet $readini $1.coe eq feet
n366= set %other $readini $1.coe eq other
n367=
n368= if (%head != $null) { set %iskill $readini item.lst %head upgrade
n369= if (%iskill != $null) { var %iskilz = %iskilz 2 $+ $numtok(%iskill,1,32) $+ ->12 $+ $numtok(%iskill,2,32)
n370= }
n371= }
n372= if (%body != $null) { set %iskill $readini item.lst %body upgrade
n373= if (%iskill != $null) { var %iskilz = %iskilz 2 $+ $numtok(%iskill,1,32) $+ ->12 $+ $numtok(%iskill,2,32)
n374= }
n375= }
n376= if (%weapon != $null) { set %iskill $readini item.lst %weapon upgrade
n377= if (%iskill != $null) { var %iskilz = %iskilz 2 $+ $numtok(%iskill,1,32) $+ ->12 $+ $numtok(%iskill,2,32)
n378= }
n379= }
n380= if (%shield != $null) { set %iskill $readini item.lst %shield upgrade
n381= if (%iskill != $null) { var %iskilz = %iskilz 2 $+ $numtok(%iskill,1,32) $+ ->12 $+ $numtok(%iskill,2,32)
n382= }
n383= }
n384= if (%ring != $null) { set %iskill $readini item.lst %ring upgrade
n385= if (%iskill != $null) { var %iskilz = %iskilz 2 $+ $numtok(%iskill,1,32) $+ ->12 $+ $numtok(%iskill,2,32)
n386= }
n387= }
n388= if (%feet != $null) { set %iskill $readini item.lst %feet upgrade
n389= if (%iskill != $null) { var %iskilz = %iskilz 2 $+ $numtok(%iskill,1,32) $+ ->12 $+ $numtok(%iskill,2,32)
n390= }
n391= }
n392= if (%other != $null) { set %iskill $readini item.lst %other upgrade
n393= if (%iskill != $null) { var %iskilz = %iskilz 2 $+ $numtok(%iskill,1,32) $+ ->12 $+ $numtok(%iskill,2,32)
n394= }
n395= }
n396= if (%iskilz) { msg $nick %iskilz }
n397= else { msg $2 4Error - You have no item skills. }
n398=}
n399=
n400=on 3:TEXT:!itemskills:*:{
n401= itemskills $nick $nick
n402=}
n403=
n404=on 3:TEXT:!jp:*:{
n405= set %jp $readini $nick $+ .coe cur jp
n406= msg $nick 7You have %jp JP.
n407=}
n408=
n409=on 3:text:!HP:*:{
n410= set %puppets $getpuppets($nick)
n411= set %i $numtok(%puppets,32)
n412= set %msg $null
n413= while (%i > 0) {
n414= set %puppet $gettok(%puppets,%i,32)
n415= set %hp $readini %puppet $+ .coe cur hp
n416= set %mhp $readini %puppet $+ .coe max hp
n417= if (%hp == %mhp) {
n418= set %area $readini $nick $+ .coe cur area
n419= set %area2 $readini %puppet $+ .coe cur area
n420= if (%area == %area2) { set %msg %msg 10 $+ $chr(91) $+ %puppet HP: $+ %hp $+ / $+ %mhp $+ $+ $chr(93) }
n421= }
n422= else { set %msg %msg 10 $+ $chr(91) $+ %puppet HP: $+ %hp $+ / $+ %mhp $+ $+ $chr(93) }
n423= dec %i
n424= }
n425= msg $nick %msg
n426=}
n427=
n428=on 3:text:!mp:*:{
n429= set %puppets $getpuppets($nick)
n430= set %i $numtok(%puppets,32)
n431= set %msg $null
n432= while (%i > 0) {
n433= set %puppet $gettok(%puppets,%i,32)
n434= set %mp $readini %puppet $+ .coe cur mp
n435= set %mmp $readini %puppet $+ .coe max mp
n436= if (%mp == %mmp) {
n437= set %area $readini $nick $+ .coe cur area
n438= set %area2 $readini %puppet $+ .coe cur area
n439= if (%area == %area2) { set %msg %msg 10 $+ $chr(91) $+ %puppet MP: $+ %mp $+ / $+ %mmp $+ $+ $chr(93) }
n440= }
n441= else { set %msg %msg 10 $+ $chr(91) $+ %puppet MP: $+ %mp $+ / $+ %mmp $+ $+ $chr(93) }
n442= dec %i
n443= }
n444= msg $nick %msg
n445=}
n446=
n447=
n448=on 3:TEXT:!ui*:*:{
n449= if ($1 == !ui) {
n450= if ($iscoe($2) && ($setrep($nick) == $setrep($2))) { showitems $2 $nick use }
n451= else { showitems $nick $nick use }
n452= }
n453=}