[script] n0=;Ÿ·Î Ä«µå mIRC ½ºÅ©¸³Æ® n1=;Á¦ÀÛÀÚ ·ÎÅ° (lokasenna.pe.kr/rpg/) n2=;Ÿ·ÎÄ«µå »Ì±â´Â 'Ÿ·ÎÄ«µå', Ÿ·Î Ä«µåÄ¡±â´Â 'Ÿ·Î¼ÅÇÃ' µ¦ ±¸¼º°ú ³²Àº Ä«µå¼ö È®ÀÎÀº 'Ÿ·Îµ¦'À» ÃÄÁÖ½Ã¸é µË´Ï´Ù. n3=;Áñ°Ì°Ô »ç¿ëÇϽñæ~ n4= n5=;Ä«µå ±¸¼º n6=alias getTarotCards { n7= n8= var %num 1 n9= n10= while (%num <= 78) { n11= set $+(%,card.,%num,.,$chan) $null n12= n13= inc %num n14= } n15= n16= unset $+(%,usedcards.,$chan) n17= n18= set $+(%,countcards.,$chan) 0 n19= n20= set %num 1 n21= n22= var %major_arcana ±¤´ë,¸¶¹ý»ç,¿©»çÁ¦,ȲÈÄ,ȲÁ¦,´ë»çÁ¦,¿¬ÀÎ,ÀüÂ÷,Èû,ÀºµÐÀÚ,¼ö·¹¹ÙÄû,Á¤ÀÇ,¸Å´Þ¸° ³²ÀÚ,Á×À½,ÀýÁ¦,¾Ç¸¶,ž,º°,´Þ,ÇØ,½ÉÆÇ,¼¼°è n23= n24= if ($($+(%,major.,$chan),2) != $null) { n25= n26= if ($($+(%,usedcards.,$chan),2) == $null) { n27= set $+(%,usedcards.,$chan) 2¸ÞÀÌÁ® ¾ËÄ«³ª n28= } n29= else { n30= set $+(%,usedcards.,$chan) $($+(%,usedcards.,$chan),2) $+ , 2¸ÞÀÌÁ® ¾ËÄ«³ª n31= } n32= n33= while (%num <= 22) { n34= n35= var %number = $calc(%num - 1) n36= n37= if (. isin $calc(%number / 10)) { n38= set %multi $left($calc(%number / 10), $calc($pos($calc(%number / 10),.) - 1)) n39= } n40= else { n41= set %multi $calc(%number / 10) n42= } n43= n44= var %addex = 1 n45= n46= while (%addex <= %multi) { n47= n48= if (%roman == $null) { n49= set %roman X n50= } n51= else { n52= set %roman X $+ %roman n53= } n54= n55= inc %addex n56= } n57= ;end add X's n58= n59= var %remainder = $calc(%number - 10 * %multi) n60= n61= unset %multi n62= n63= if (%number == 0) { n64= set %roman O n65= goto romannum n66= } n67= n68= if (%remainder == 0) { n69= goto romannum n70= } n71= n72= if (%remainder >= 1) && (%remainder <= 3) { n73= n74= var %addi = 1 n75= n76= while (%addi <= %remainder) { n77= n78= if (%roman != $null) { n79= set %roman %roman $+ I n80= } n81= else { n82= set %roman I n83= } n84= n85= inc %addi n86= } n87= ;end add I's n88= n89= goto romannum n90= n91= } n92= ;if remainder 1~3 n93= n94= elseif (%remainder == 4) { n95= if (%roman != $null) { n96= set %roman %roman $+ IV n97= } n98= else { n99= set %roman IV n100= } n101= goto romannum n102= } n103= ;if remainder 4 n104= n105= elseif (%remainder <= 8) { n106= n107= if (%roman != $null) { n108= set %roman %roman $+ V n109= } n110= else { n111= set %roman V n112= } n113= n114= var %addi = 1 n115= n116= while (%addi <= $calc(%remainder - 5)) { n117= n118= set %roman %roman $+ I n119= n120= inc %addi n121= } n122= ;end add I's n123= } n124= ;end if remainder 5~8 n125= n126= else { n127= n128= if (%roman != $null) { n129= set %roman %roman $+ IX n130= } n131= else { n132= set %roman IX n133= } n134= n135= } n136= ;end if remainder 9 n137= n138= :romannum n139= n140= set $+(%,card.,%num,.,$chan) 2 $+ %roman $+ : $gettok(%major_arcana,%num,44) n141= n142= inc $+(%,countcards.,$chan) n143= n144= unset %roman n145= n146= inc %num n147= n148= } n149= ;end while %num <= 22 n150= } n151= ;end if major arcana n152= n153= else { n154= set %num 23 n155= } n156= ;end if no major arcana n157= n158= if ($($+(%,minor.,$chan),2) != $null) { n159= n160= var %court = ½ÃÁ¾,±â»ç,¿©¿Õ,¿Õ n161= n162= var %color = 3,5,10,7 n163= var %suits = ÁöÆÎÀÌ,°Ë,ÀÜ,µ¿Àü n164= var %suitcodes = wand,sword,cup,pentacle n165= var %suitnumbers = 32,46,60,74 n166= n167= var %order = 1 n168= n169= while (%order <= $numtok(%suits,44)) { n170= n171= if ($($+(%,$gettok(%suitcodes,%order,44),.,$chan),2) != $null) { n172= n173= ;debug n174= ;msg $chan $($+(%,$gettok(%suitcodes,%order,44),.,$chan),1) n175= n176= if ($($+(%,usedcards.,$chan),2) != $null) { n177= set $+(%,usedcards.,$chan) $($+(%,usedcards.,$chan),2) $+ ,  $+ $gettok(%color,%order,44) $+ $gettok(%suits,%order,44) 1-10 n178= } n179= else { n180= set $+(%,usedcards.,$chan)  $+ $gettok(%color,%order,44) $+ $gettok(%suits,%order,44) 1~10 n181= } n182= n183= while (%num <= $gettok(%suitnumbers,%order,44)) { n184= n185= set $+(%,card.,%num,.,$chan)  $+ $gettok(%color,%order,44) $+ $gettok(%suits,%order,44) $+ ÀÇ $calc(%num - 22 - 14 * (%order - 1)) n186= n187= inc %num n188= inc $+(%,countcards.,$chan) n189= } n190= } n191= n192= else { n193= set %num $calc($gettok(%suitnumbers,%order,44) + 1) n194= } n195= n196= if ($($+(%,$gettok(%suitcodes,%order,44),court.,$chan),2) != $null) { n197= n198= if ($($+(%,usedcards.,$chan),2) != $null) { n199= set $+(%,usedcards.,$chan) $($+(%,usedcards.,$chan),2) $+ ,  $+ $gettok(%color,%order,44) $+ $gettok(%suits,%order,44) ±ÃÁ¤ n200= } n201= else { n202= set $+(%,usedcards.,$chan)  $+ $gettok(%color,%order,44) $+ $gettok(%suits,%order,44) ±ÃÁ¤ n203= } n204= n205= while (%num <= $calc($gettok(%suitnumbers,%order,44) + 4)) { n206= set $+(%,card.,%num,.,$chan)  $+ $gettok(%color,%order,44) $+ $gettok(%suits,%order,44) $+ ÀÇ $gettok(%court,$calc(%num - $gettok(%suitnumbers,%order,44)),44) n207= inc %num n208= inc $+(%,countcards.,$chan) n209= } n210= n211= } n212= n213= else { n214= set %num $calc($gettok(%suitnumbers,%order,44) + 5) n215= } n216= n217= inc %order n218= } n219= ;end while n220= n221= ;END SUITS OF MINOR ARCANA n222= } n223= ;end if %minor != $null n224= n225= unset %num n226=} n227=;end /getTarotCard n228= n229=on *:text:*Ÿ·Î*:#: { n230= n231= ;start drawing tarot cards n232= n233= if (Àå isin $1-) { n234= n235= if ($($+(%,countcards.,$chan),2) == 0) || ($($+(%,countcards.,$chan),2) == $null) { n236= n237= msg $chan 14³²Àº Ä«µå°¡ ¾ø½À´Ï´Ù. n238= n239= } n240= ;end if no card n241= n242= else { n243= n244= ;BEGIN STRIPNUMBER n245= n246= set %whole.string $1- n247= set %total.letters $len(%whole.string) n248= n249= while (%whole.string != $null) { n250= n251= if ($left(%whole.string,1) isnum) { n252= n253= ;debug n254= ;msg $chan %whole.string n255= n256= if (%diff == $null) { n257= set %diff $left(%whole.string,1) n258= } n259= else { n260= set %diff %diff $+ $left(%whole.string,1) n261= } n262= n263= } n264= ;if number, build number n265= n266= set %whole.string $right(%whole.string, $calc(%total.letters - 1)) n267= set %total.letters $len(%whole.string) n268= n269= } n270= ;end while n271= n272= ;END STRIPNUMBER n273= n274= ;debug n275= ;msg $chan %diff n276= n277= if (%diff !isnum) { n278= set %drawcards 1 n279= } n280= else { n281= set %drawcards %diff n282= } n283= n284= if (%drawcards > $($+(%,countcards.,$chan),2)) { n285= set %drawcards $($+(%,countcards.,$chan),2) n286= } n287= n288= var %num = 1 n289= n290= while (%num <= %drawcards) { n291= n292= :getrand n293= set %temp $rand(1,78) n294= n295= if ($($+(%,card.,%temp,.,$chan),2) == $null) { n296= goto getrand n297= } n298= n299= else { n300= n301= set $+(%,countcards.,$chan) $calc($($+(%,countcards.,$chan),2) - 1) n302= n303= if (%cardmessage == $null) { n304= set %cardmessage $($+(%,card.,%temp,.,$chan),2) n305= } n306= else { n307= set %cardmessage %cardmessage $+ , $($+(%,card.,%temp,.,$chan),2) n308= } n309= n310= set $+(%,card.,%temp,.,$chan) $null n311= n312= unset %temp n313= n314= } n315= inc %num n316= } n317= ;end while n318= n319= msg $chan %cardmessage n320= unset %cardmessage n321= unset %drawcards n322= unset %diff n323= } n324= ;end if there were cards n325= n326= } n327= ;END DRAW CARD n328= n329= ;start tarot information n330= n331= if (Á¤º¸ isin $1-) { n332= n333= if ($($+(%,usedcards.,$chan),2) != $null) { n334= n335= if ($numtok($($+(%,usedcards.,$chan),2),44) == 9) { n336= msg $chan 14Ÿ·Îµ¦ ±¸¼ºÀº 2¸ðµç14 Ä«µåÀ̸ç, ³²Àº Ä«µå´Â2 $($+(%,countcards.,$chan),2) $+ 14ÀåÀÔ´Ï´Ù. n337= } n338= else { n339= msg $chan 14Ÿ·Îµ¦ ±¸¼ºÀº2 $($+(%,usedcards.,$chan),2) $+ 14À̸ç, ³²Àº Ä«µå´Â2 $($+(%,countcards.,$chan),2) $+ 14ÀåÀÔ´Ï´Ù. n340= } n341= } n342= n343= else { n344= msg $chan 14Ÿ·Îµ¦¿¡ Ä«µå°¡ ¾ø½À´Ï´Ù. 2Ÿ·ÎÄ«µå¸¦ ¼¯À¸¶ó°í14¸¦ Áö½ÃÇØ ÁÖ¼¼¿ä. n345= } n346= n347= } n348= ;end tarot information n349= n350= ;start shuffle tarot deck n351= n352= if (¼¯ isin $1-) { n353= n354= var %suits = ¸ÞÀÌÁ®,¸¶À̳Ê,ÁöÆÎÀÌ,°Ë,ÀÜ,µ¿Àü n355= var %suits1 = ¸ÞÀÌÀú,¸¶À̳Ê,ÁöÆÎÀÌ,°Ë,ÀÜ,µ¿Àü n356= var %suitcodes = major,minor,wand,sword,cup,pentacle n357= var %order = 1 n358= n359= while (%order <= $numtok(%suits,44)) { n360= n361= if ($count($1-,$gettok(%suits,%order,44)) == 0) && ($count($1-,$gettok(%suits1,%order,44)) == 0) && ($count($1-,$gettok(%suitcodes,%order,44)) == 0) { n362= set $+(%,$gettok(%suitcodes,%order,44),.,$chan) 1 n363= set $+(%,$gettok(%suitcodes,%order,44),court,.,$chan) 1 n364= ;debug n365= ;msg $chan $($+(%,$gettok(%suitcodes,%order,44),.,$chan),1) n366= } n367= else { n368= set $+(%,$gettok(%suitcodes,%order,44),.,$chan) $null n369= set $+(%,$gettok(%suitcodes,%order,44),court,.,$chan) $null n370= n371= ;debug n372= ;msg $chan 0 n373= } n374= n375= inc %order n376= } n377= n378= var %order = 1 n379= n380= while (%order <= $numtok(%suits,44)) { n381= n382= if (±ÃÁ¤ isin $1-) || (±ÃÀü isin $1-) || (court isin $1-) { n383= set $+(%,$gettok(%suitcodes,%order,44),court,.,$chan) $null n384= } n385= n386= inc %order n387= } n388= n389= var %order = 3 n390= n391= while (%order <= $numtok(%suits,44)) { n392= n393= if (¹øÈ£ isin $1-) || (number isin $1-) { n394= set $+(%,$gettok(%suitcodes,%order,44),.,$chan) $null n395= } n396= n397= inc %order n398= } n399= n400= n401= ;end while n402= n403= getTarotCards n404= n405= if ($($+(%,countcards.,$chan),2) == 78) { n406= msg $chan 14Ÿ·Îµ¦ ±¸¼ºÀº 2¸ðµç14 Ä«µåÀ̸ç, Ä«µå´Â2 $($+(%,countcards.,$chan),2) $+ 14ÀåÀÔ´Ï´Ù. n407= } n408= n409= elseif ($($+(%,countcards.,$chan),2) == 56) { n410= msg $chan 14Ÿ·Îµ¦ ±¸¼ºÀº 2¸¶ÀÌ³Ê ¾ËÄ«³ª14 Ä«µåÀ̸ç, Ä«µå´Â2 $($+(%,countcards.,$chan),2) $+ 14ÀåÀÔ´Ï´Ù. n411= } n412= n413= else { n414= msg $chan 14Ÿ·Îµ¦ ±¸¼ºÀº $($+(%,usedcards.,$chan),2) 14Ä«µåÀ̸ç, Ä«µå´Â2 $($+(%,countcards.,$chan),2) $+ 14ÀåÀÔ´Ï´Ù. n415= } n416= n417= ;debug n418= ;msg $chan %minor n419= n420= } n421= ;end shuffle tarot deck n422= n423=} n424=;end tarot function n425= n426=on 10:text:Áö¿ì±â:#: { n427= unset $+(%,countcards.,$chan) n428= unset %card.* n429=} n430= n431=on *:text:´ÙÀ̽º:#: { n432= msg $chan 14Ÿ·ÎÄ«µå ½ºÅ©¸³Æ® (Ÿ·ÎÄ«µå »Ì±â, Ÿ·Îµ¦ ¼¯±â, Ÿ·Îµ¦ Á¤º¸) n433=} n434= n435=on *:text:!µµ¿ò¸»:#: { n436= msg $nick Ÿ·ÎÄ«µå ½ºÅ©¸³Æ®¸¦ »ç¿ëÇØÁּż­ °¨»çÇÕ´Ï´Ù. µµ¿ò¸»Àº ÀÌ°÷¿¡... http://lokasenna.egloos.com/1677370 n437=} n438= n439=;Ÿ·Î ½ºÅ©¸³Æ® ³¡