This is the Turn Base Post Cut script for mIRC that Shinobi and Zericho, as well as others use for longer and more detailed posts.
To use, load into mIRC(Alt+R then File -> New in mIRC at the popup and paste the script from "Menu * {" down to the last "}" and click Ok), then right-click in either the channel, nicklist, or simply type /essay to bring the script up. At the new popup, just type your post in the large white box, minus the /me as it's already present, then have the channel you're fighting in up so you can read what's going on in there and press "Send to Active". After you send the post, you can either highlight and delete what you typed or press the Exit button. Currently, the Customize button does nothing. The script itself is below.
-
Menu * {
TB Post Cutter:/dialog -md essay essay
}
dialog essay {
size -1 -1 440 405
title "Advanced Cut-Script"
edit "Just for you essayists and long-winded roleplayers out there. All you've got to do is type in your big ol' post with /me and then hit 'Send to Active'. Enjoy ^^", 1, 10 5 420 40, read, return, multi
edit "/me", 2, 10 50 420 320, vsbar, multi, return
button "&Send to Active", 3, 40 372 100 23
button "Exit", 4, 290 372 100 23, cancel
button "Customize", 5, 165 372 100 23
}
alias essay {
if ($dialog(essay) != $null) { dialog -v essay | halt }
else { dialog -md essay essay }
}
on *:dialog:essay:init:*:{
}
on *:DIALOG:essay:sclick:*:{
if ($did == 3) {
set %linesessay.test $did(essay,2).lines
var %e = 1
set %essaylen.test 0
while (%e <= %linesessay.test) {
set %essaylen.test $calc(%essaylen.test + $len($did(essay,2,%e).text)))
inc %e
}
%len = 424 - $len($me)
if (%essaylen.test > %len) {
set %cuts $calc($int($calc(%essaylen.test / 424)) + 1)
goto next
}
else {
var %e = 1
set %nocut $remove($did(essay,2,1).text,/me)
inc %e
while (%e <= %linesessay.test) {
set %nocut [ %nocut ] $did(essay,2,%e)
inc %e
}
printnocut
goto end
}
:next
var %c = 1
var %l = 1
unset %cut.*
set %cut. [ $+ [ %c ] ] $did(essay,2,%l) $did(essay,2,$calc(%l + 1)) $&
$did(essay,2,$calc(%l + 2)) $did(essay,2,$calc(%l + 3)) $did(essay,2,$calc(%l + 4))
/describe $active $remove(%cut. [ $+ [ %c ] ],/me) ...
inc %c
inc %l 5
while (%c <= $calc(%cuts -1)) {
set %cut. [ $+ [ %c ] ] $did(essay,2,%l) $did(essay,2,$calc(%l + 1)) $+ $&
$did(essay,2,$calc(%l + 2)) $did(essay,2,$calc(%l + 3)) $did(essay,2,$calc(%l + 4))
/describe $active -- %cut. [ $+ [ %c ] ] ...
inc %c 1
inc %l 5
}
set %cut. [ $+ [ %c ] ] $did(essay,2,%l) $did(essay,2,$calc(%l + 1)) $+ $&
$did(essay,2,$calc(%l + 2)) $did(essay,2,$calc(%l + 3)) $did(essay,2,$calc(%l + 4))
/describe $active -- %cut. [ $+ [ %c ] ] ...
inc %l 5
inc %c 1
set %cut. [ $+ [ %c ] ] $did(essay,2,%l) $did(essay,2,$calc(%l + 1)) $+ $&
$did(essay,2,$calc(%l + 2)) $did(essay,2,$calc(%l + 3)) $did(essay,2,$calc(%l + 4))
/describe $active -- %cut. [ $+ [ %c ] ] <end>
}
:end
halt
}
alias QuoteEncode {
%CSQtext = $1-
%whisperTone = 2'
;normal speech color set
%normalTone = 1"
;OOC color setting
%loudTone = 10((
;sets colors off at end *DO NOT CHANGE*
%endTone = "10
%endTone3 = ]10
%endTone4 = ))10
%whisperQuote = '
%normalQuote = "
%loudQuote = ((
%endquote = "
%endquote3 = ]
%endquote4 = ))
%CSQtext = $replace(%CSQtext,$chr(32) $+ %whisperQuote,$chr(32) $+ %whisperTone)
%CSQtext = $replace(%CSQtext,$chr(32) $+ %normalQuote,$chr(32) $+ %normalTone)
%CSQtext = $replace(%CSQtext,$chr(32) $+ %loudQuote,$chr(32) $+ %loudTone)
%CSQtext = $replace(%CSQtext,%endQuote $+ $chr(32),%endTone $+ $chr(32))
%CSQtext = $replace(%CSQtext,%endQuote3 $+ $chr(32),%endTone3 $+ $chr(32))
%CSQtext = $replace(%CSQtext,%endQuote4 $+ $chr(32),%endTone4 $+ $chr(32))
/return %CSQtext
}
alias printnocut {
/describe $active $QuoteEncode(%nocut)
}