[Addon]
Script=DragonRyder Acro Manager
Version=8.1
Author=DragonRyder Development Team
Desc=Provides PreDefined Acronym's For DragonRyder v13.5 Script
For=DragonRyder v13.5
Date=May 10th 2013
on *:load: {
echo -s 12================================================
echo -s 15-= DragonRyder Acro Manager Loaded. =-
echo -s 12================================================
}
on *:unload: {
echo -s 12================================================
echo -s 15-= DragonRyder Acro Manager Unloaded. =-
echo -s 12================================================
}
on *:input:*:{
;echo -a $active / $target
;--mircs readini for the set command char (Normally '/')
var %cr = $readini($mircini,text,commandchar)
if ( $1 == /ctcp ) {
%trigger = $1-
}
elseif (!$inpaste && (($active != Status Window && ($left($1,1) != %cr || $istok(/me /ame /msg /amsg /say /query /onotice /omsg /notice,$1,32))))) {
;--Acros: check network, and if allowed,
;-- replace all found acros using
;-- '$acro.chknt()'..
tokenize 32 $acro.chknt($network,$1-)
var %drdevacros = $null
var %drdevn = 1
if $istok(/me /ame /msg /amsg /say /query /onotice /omsg /notice,$gettok($1-,%drdevn,32),32) {
%drdevacros = $gettok($1-,%drdevn,32)
inc %drdevn
;-----------------
if ($gettok($1-,%drdevn,32) == $null) {
echo -ag 15* %drdevacros $+ : insufficient parameters
halt
}
if (%drdevacros == /query) {
%drdevacros = %drdevacros $gettok($1-,%drdevn,32)
inc %drdevn
}
;-----------------
elseif (%drdevacros == /onotice && $left($gettok($1-,%drdevn,32),1) == $chr(35)) {
if ($me !ison $gettok($1-,%drdevn,32)) {
echo -ag 15* $gettok(%drdevacros,1,32) $+ : you're not on that channel
halt
}
%drdevacros = %drdevacros $gettok($1-,%drdevn,32) 04
inc %drdevn
}
elseif (%drdevacros == /onotice && $left($gettok($1-,%drdevn,32),1) != $chr(35)) {
if ($me !ison $active) {
echo -ag 15* $gettok(%drdevacros,1,32) $+ : you're not on a channel
halt
}
%drdevacros = %drdevacros 04
}
;-----------------
elseif (%drdevacros == /omsg && $left($gettok($1-,%drdevn,32),1) == $chr(35)) {
if ($me !ison $gettok($1-,%drdevn,32)) {
echo -ag 15* $gettok(%drdevacros,1,32) $+ : you're not on that channel
halt
}
%drdevacros = %drdevacros $gettok($1-,%drdevn,32) 04
inc %drdevn
}
elseif (%drdevacros == /omsg && $left($gettok($1-,%drdevn,32),1) != $chr(35)) {
if ($me !ison $active) {
echo -ag 15* $gettok(%drdevacros,1,32) $+ : you're not on a channel
halt
}
%drdevacros = %drdevacros 04
}
;-----------------
elseif (%drdevacros == /notice) {
%drdevacros = %drdevacros $gettok($1-,%drdevn,32) 04
inc %drdevn
if ($gettok($1-,%drdevn,32) == $null) {
echo -ag 15* $gettok(%drdevacros,1,32) $+ : insufficient parameters...
halt
}
}
;-----------------
elseif (%drdevacros == /msg) {
%drdevacros = %drdevacros $gettok($1-,%drdevn,32)
inc %drdevn
if ($gettok($1-,%drdevn,32) == $null) {
echo -ag 15* $gettok(%drdevacros,1,32) $+ : insufficient parameters....
halt
}
}
}
;-----------------
else {
%drdevacros = /say
}
;-----------------
while ($gettok($1-,%drdevn,32) != $null) {
if ($gettok($1-,%drdevn,32) == $chr(59)) {
%drdevacros = %drdevacros $gettok($1-,%drdevn,32)
}
elseif ($right($gettok($1-,%drdevn,32),1) == $chr(59)) {
var %drdevnicktest = $left($gettok($1-,%drdevn,32),-1)
if (%drdevnicktest ison # || $active == %drdevnicktest) {
%drdevacros = %drdevacros %dev_acro_f $+ « $+ $+ %dev_acro_s $+ %drdevnicktest $+ %dev_acro_f $+ »
}
else {
%drdevacros = %drdevacros $gettok($1-,%drdevn,32)
}
}
else {
%drdevacros = %drdevacros $gettok($1-,%drdevn,32)
}
inc %drdevn
}
;-----------------
if ($1-2 == /me humps) {
if ($readini(settings.ini,n,settings,counthumps)) {
var %humpcount = $calc($readini(settings.ini,n,info,humpcount) + 1)
%drdevacros = %drdevacros $+($chr(40),$chr(35),%humpcount,$chr(41))
writeini -n settings.ini info humpcount %humpcount
}
}
;-----------------
if ($numtok(%drdevacros,32) > 1) {
%drdevacros
}
haltdef
}
}
raw 353:*:{ haltdef }
raw 366:*:{ haltdef }
menu channel {
; DragonAcro Color Blends:dialog -m dr_dev_acro_colors dr_dev_acro_colors
DragonAcro Manager
.Acro Manager:dialog -m dr_dev_acro_man dr_dev_acro_man
.-
.$iif($acro.chknt($network).menua,Allow,Disallow) Global Acros:echo -a $acro.chknt($network,$iif($acro.chknt($network).menua,$true,$false)).updatea
.$iif($acro.chknt($network).menun,Allow,Disallow) Network Acros:echo -a $acro.chknt($network,$iif($acro.chknt($network).menun,$true,$false)).updaten
-
}
dialog dr_dev_acro_colors {
title "DragonAcro Color Blends"
size -1 -1 165 25
option dbu
combo 1, 2 11 60 50, drop
combo 2, 64 11 60 50, drop
text "First Color", 3, 2 2 59 8, center
text "Second Color", 4, 64 2 59 8, center
button "Set Colors", 5, 126 4 37 18
}
on *:dialog:dr_dev_acro_colors:*:*: {
if ($devent == init) {
var %c = White:Black:Blue:Green:Red:Brown:Purple:Orange:Yellow:Neon Green:Cyan:Light Cyan:Light Blue:Pink:Grey:Light Grey
didtok $dname 1,2 58 %c | did -c $dname 1,2 1
}
elseif ($devent == sclick) {
if ($did == 5) {
var %f = $base($calc($did($dname,1).sel - 1),10,10,2), %s = $base($calc($did($dname,2).sel - 1),10,10,2)
set %dev_acro_f $+($chr(3),%f) | set %dev_acro_s $+($chr(3),%s)
}
}
}
;
;EOF
;--------------------------------------------------------------------
alias mdxm { return System\Dlls\mdx\MDX.DLL }
alias dlgdll { return System\Dlls\mdx\dialog.mdx }
alias mdxsetmark { dll $mdxm SetMircVersion $version | dll $mdxm MarkDialog $1 $dialog($1).hwnd }
alias mdxsetcont { dll $mdxm SetControlMDX $1 $2- }
on *:start: { acro.load }
alias acro.load {
var %hg = $acrtbl
if (!$hget(%hg)) {
hmake %hg 100
if ($exists($acrdf)) { hload %hg $acrdf | echo -ast * 03Loaded Acronym Data. }
else { echo -ast 04* Error: Acro Data File Not Found. }
}
}
alias acrtbl { return dr_acro_data }
alias acrdf { return $qt($+($scriptdir,$acrtbl,.hs)) }
alias acro.chknt {
var %f = settings.ini, %t = acro_cknet_dis, %n = $1, %txt = $2-, %ri = $readini(%f,%t,networks)
if ($prop == updatea) { writeini -n %f %t active $iif($2,1,0) | return Acronyms are now $iif($2,03Allowed,04Disallowed) Globaly }
if (!$readini(%f,%t,active)) { if ($prop == menua) { return $true } | return %txt }
if ($prop == menua) { return $false }
if ($prop == updaten) { writeini -n %f %t networks $iif($2,$remtok(%ri,%n,44),$addtok(%ri,%n,44)) | return Acronyms are now $iif($2,03Allowed,04Disallowed) on $+(,%n,.) }
if ($istok(%ri,%n,44)) { if ($prop == menun) { return $true } | return %txt }
if ($prop == menun) { return $false }
return $acro.chk(%txt)
}
alias acro.chk { var %t = $1-, %r = $regsubex($str(.,$numtok(%t,32)),/./g,$acro.rchk($gettok(%t,\n,32)) $+ $chr(32)) | return %r }
alias acro.rchk { if ($hget($acrtbl,$+($crc($1,0),.,$1))) { return $acro.repc($v1) } | else { return $1 } }
alias acro.repc {
var %t = $1-, %rgx = \x80-\xFFa-zA-Z-\?\'\\08
var %t = $regsubex(%t,/\\1([ $+ %rgx $+ ]+)/g,$+(%dev_acro_f,\1))
var %t = $regsubex(%t,/\\2([ $+ %rgx $+ ]+)/g,$+(%dev_acro_s,\1))
var %t = $regsubex(%t,/\\b([ $+ %rgx $+ ]+)/g,$+(,\1,))
var %t = $regsubex(%t,/\\i([ $+ %rgx $+ ]+)/g,$+(,\1,))
var %t = $regsubex(%t,/\\u([ $+ %rgx $+ ]+)/g,$+(,\1,))
if ($count($(%t,2),$chr(3))) { var %t = $+(%t,$chr(3)) } | return %t
}
alias zpdr { return $base($1,10,10,2) }
alias dcrc { return $+($crc($$1,0),.,$$1) }
dialog dr_dev_acro_man {
title "DragonAcro Manager"
size -1 -1 181 186
option dbu
button "Button", 8, 84 55 85 30
box "Colors", 3, 84 103 91 61
box "Acronyms", 9, 6 32 169 132
radio "First (\1)", 2, 88 130 40 10
radio "Second (\2)", 4, 129 130 40 10, left
combo 1, 89 113 79 50, drop
button "Set Color", 5, 95 146 67 11
combo 7, 11 41 67 118, sort edit
edit "", 6, 84 41 85 10, multi autohs
button "Set/Add", 10, 93 89 33 11
button "Delete", 12, 127 89 33 11
box "Disabled Networks", 13, 6 6 169 30
combo 14, 10 17 124 50, edit drop
button "Add", 22, 137 17 15 11
button "Done", 24, 136 168 37 12, ok cancel
combo 20, 214 64 60 50, edit drop
combo 21, 278 64 60 50, drop
button "Set Input", 25, 341 64 33 11
box "Input Command Colors", 26, 210 54 169 28
button "Del", 11, 155 17 15 11
check "Enabled", 15, 101 169 30 10
check "Bold", 16, 268 98 25 10
check "Italic", 17, 294 98 25 10
check "Underline", 18, 320 98 35 10
text "Work In Progress, Please dont remove the following controls.", 19, 214 29 164 13, center
}
on *:dialog:dr_dev_acro_man:*:*: {
var %acw = @Acro_TMP, %acht = $acrtbl, %set = acro_settings
var %sf = settings.ini, %sdt = acro_cknet_dis, %sit = acro_input_cmd
var %tmpc2 = %dev_acro_f, %tmpc4 = %dev_acro_s
if ($devent == init) {
;-----------
window -Bh +fdl %acw
mdxsetmark $dname | mdxsetcont $dname 8 window > $dlgdll
did -a $dname 8 grab $window(%acw).hwnd %acw
;-----------
var %c = White:Black:Blue:Green:Red:Brown:Purple:Orange:Yellow:Neon Green:Cyan:Light Cyan:Light Blue:Pink:Grey:Light Grey
didtok $dname 1,21 58 %c | did -c $dname 1,21 1
var %x = 1 | while (%x <= $hget(%acht,0).item) { did -a $dname 7 $gettok($hget(%acht,%x).item,2-,46) | inc %x }
did -c $dname 7 1 | clear %acw | aline -p %acw $acro.repc($hget(%acht,$dcrc($did($dname,7).text)))
did -ra $dname 6 $hget(%acht,$dcrc($did($dname,7).text))
var %sel = $remove(%tmpc2,$chr(3)), %sel = $regsubex(%sel,/^0/g,)
did -c $dname 1 $calc(%sel + 1) | did -c $dname 2
var %x = 1 | while (%x <= $ini(%sf,%sit,0)) { did -a $dname 20 $ini(%sf,%sit,%x) | inc %x }
did -c $dname 20 1 | var %ci = $readini(%sf,%sit,$did($dname,20).text)
var %sel = $remove(%ci,$chr(3)), %sel = $regsubex(%sel,/^0/g,)
did -c $dname 21 $calc(%sel + 1)
did -r $dname 14 | didtok $dname 14 44 $readini(%sf,%sdt,networks)
did -c $dname 14 1
if ($readini(%sf,%sdt,active)) { did -c $dname 15 }
}
elseif ($devent == edit) {
if ($did == 6) {
clear %acw | aline -p %acw $acro.repc($did($dname,6).text)
}
}
elseif ($devent == sclick) {
;echo -a $devent - $did
var %rt = $did($dname,7).text, %rt = $hget(%acht,$dcrc(%rt))
if ($istok(1 2 4,$did,32)) {
if ($did != 1) {
var %sel = $remove(%tmpc [ $+ [ $did ] ],$chr(3)), %sel = $regsubex(%sel,/^0/g,)
did -c $dname 1 $calc(%sel + 1)
}
var %zpn = $zpdr($calc($did($dname,1).sel - 1))
clear %acw | aline -p %acw $+($chr(3),%zpn,$did($dname,1).seltext)
}
elseif ($istok(5 7,$did,32)) {
var %zpn = $zpdr($calc($did($dname,1).sel - 1))
if ($did == 5) {
if ($did($dname,2).state) { set %dev_acro_f $+($chr(3),%zpn) }
elseif ($did($dname,4).state) { set %dev_acro_s $+($chr(3),%zpn) }
}
clear %acw | aline -p %acw $acro.repc(%rt) | did -ra $dname 6 %rt
}
elseif ($istok(10 12,$did,32)) {
var %t = $did($dname,6).text, %l = $did($dname,7).text, %h = $iif($did == 12,hdel,hadd)
%h -m %acht $dcrc(%l) %t | hsave %acht $acrdf | did -r $dname 7
var %x = 1 | while (%x <= $hget(%acht,0).item) { did -a $dname 7 $gettok($hget(%acht,%x).item,2-,46) | inc %x }
did -c $dname 7 $didwm($dname,7,%l)
}
elseif ($istok(11 22,$did,32)) {
var %ri = $readini(%sf,%sdt,networks), %nt = $did($dname,14).text
var %ri = $iif($did == 22,$addtok(%ri,%nt,44),$remtok(%ri,%nt,1,44))
writeini -n %sf %sdt networks %ri
did -r $dname 14 | didtok $dname 14 44 %ri
}
elseif ($did == 15) { writeini -n %sf %sdt active $did($dname,15).state }
elseif ($istok(16 17 18,$did,32)) {
var %x = 1, %y = 16 17 18, %z = \b \i \u, %cc
while (%x <= 3) { if ($did($dname,$gettok(%y,%x,32)).state) var %cc = $+(%cc,$gettok(%z,%x,32)) | inc %x }
if ($did($dname,2).state) { writeini -n %sf %set c1 %cc }
elseif ($did($dname,4).state) { writeini -n %sf %set c2 %cc }
}
elseif ($did == 20) {
var %ci = $readini(%sf,%sit,$did($dname,20).text)
var %sel = $remove(%ci,$chr(3)), %sel = $regsubex(%sel,/^0/g,$null)
did -c $dname 21 $calc(%sel + 1)
}
elseif ($did == 25) {
var %zpn = $zpdr($calc($did($dname,21).sel - 1))
writeini -n %sf %sit $did($dname,20).text $+($chr(3),%zpn)
}
}
}
;-----------
;EOF
;-----------