Evaluation bracket(biçimlendirme için ayrı bir alias oluşturmanıza gerek kalmaz) ve zaten halihazırda kullanılan
regsubex sayesinde
/while vb. external(internal döngüye göre daha yavaştır) döngü olmadan, kısaca/basitce şu şekilde de yazılabilir.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
on *:input:*: {
if ($left($1,1) != $readini($mircini,text,commandchar)) {
haltdef
var %s = $+($chr(2),$chr(3),$r(1,15),\1,$chr(15)), $&
%t = $regsubex($1-,$regsubex($1-,/([[:punct:]])/g,$+($chr(3),$r(1,15),\1,$chr(15))),/(?<=^|\s)(.)/g,$upper(\1))
%t = $regsubex(%t,/(\w+|\x3\d+\x23.\w+)/g,$iif($strip(\1) = $active || \1 ison #,$iif($v1 = $active,< $+($chr(2),$chr(3),$r(1,15),$strip(\1),$chr(15)) >,( [ %s ] )),\1))
say $replacecs(%t,ı,I,b,ß,l,L)
}
}
Bu şekildeki haliyle en son istenilen içeriği kapsayacak şekilde farklı bir biçimde yazılmıştır.
Yani bulunduğunuz kanalda
#kanal ismini yazarsanız
< #kanal > içerisine alır(random renkli olarak). Veya kanalda bulunan herhangi bir nick-i yazarsanız
( nick ) şeklinde çıkacaktır. Ve ek olarak tüm pucnt karakterleri vs. yazıdan ayrı biçimde 1-15 arasındaki random renklerle dönecektir. Son olarak bir kullanıcının istediği replace işlemide gerçekleşecektir.
Renkleri sabit yapmak veya farklı bir aralık belirlemek istiyorsanız koddaki
$r(1,15) kısımlarına renk kodu girebilirsiniz. Veya aynı şekilde $(a-noktası,b-noktası) randomunu belirleyebilirsiniz vs.