البرق
23-09-2003, 07:15 PM
بسم الله الرحمن الرحيم وبعد
[code:1]alias Remove% { return $iif($1- != $null,$iif($left($1,1) == %,$mid($1,3,$len($1)),$1-)) }
alias Add% { return $iif($1- != $null,$iif( ($left($1,1) != $chr(35)) && ($left($1,1) != $chr(38)) && ($left($1,1) != %),% $+ $chr(35) $+ $1-,$1-)) }
alias accessout { access $add%($1) add owner $ip }[/code:1]
المشكلة :
لا نستطيع أن نضع اي غرفة تبدأ بالعلامة المئوية داخل امر التايمر
مثال :
نريد وضع اكسس اونر للغرفة التي انا فيها وهي مخبأالذئب مره بعد عشر ثواني
الطريقة :
/.timer 1 10 access # add owner $ip
للأسف لن يقرأ الاسكريبت اسم القناة
لذلك
سوف اقوم بالتالي وما عليك الا تقليد ما فعلته مع تغيير ما يلزم
/.timer 1 10 accessout $Remove%(#)
alias accessout { access $Add%($1) add owner $ip }
شرح ما قمت فعله
# للدلالة على اسم الغرفة التي انا فيها ولتكن %#مخبأالذئب
سوف يدخل الامر بالطريقة التالي
/.timer 1 10 accessout مخبأالذئب
حيث وظيفة الدالة حذف أول رمزين من اسم القناة إن ابتدئت بالعلامة %
وسينفذ داخل امر AccessOut (حيث صنعت امرا بهذا الاسم) بالطريقة التالي
/access %#مخبأالذئب add owner وهنا سيوضع الاي بي الخاص بالشخص
حيث وظيفة الدالة تحويلها إلى وضع قناة
#
حيث أن
$Add% إضافة الرمزين %# إذا لم تكن تحتوي عليها اسم الغرفة و لم تكن أولها علامة الهاش # أو علامة الربط &
$Remove% لحذف الرمز % والذي يليه ان ابتدأ به الغرفة
------------------------------
$Add%(#السعودية) --------------->
#السعودية
$Add%(مخبأالذئب) ------>
%#مخبأالذئب
$Add%(%#مخبأالذئب) ----->
%#مخبأالذئب
--------------------------------------
$Remove%(#السعودية) ----------->
#السعودية
$Remove%(%#مخبأالذئب) --------->
مخبأالذئب
ملاحظة / هذا الأمر ليس مثالياً، بالصورة المطلوبة و يمكن تصنيع ما هو مثالي أكثر وهو متروك إلى فكرة المستخدم ، الذي يحتاجه .
البرق
[code:1]alias Remove% { return $iif($1- != $null,$iif($left($1,1) == %,$mid($1,3,$len($1)),$1-)) }
alias Add% { return $iif($1- != $null,$iif( ($left($1,1) != $chr(35)) && ($left($1,1) != $chr(38)) && ($left($1,1) != %),% $+ $chr(35) $+ $1-,$1-)) }
alias accessout { access $add%($1) add owner $ip }[/code:1]
المشكلة :
لا نستطيع أن نضع اي غرفة تبدأ بالعلامة المئوية داخل امر التايمر
مثال :
نريد وضع اكسس اونر للغرفة التي انا فيها وهي مخبأالذئب مره بعد عشر ثواني
الطريقة :
/.timer 1 10 access # add owner $ip
للأسف لن يقرأ الاسكريبت اسم القناة
لذلك
سوف اقوم بالتالي وما عليك الا تقليد ما فعلته مع تغيير ما يلزم
/.timer 1 10 accessout $Remove%(#)
alias accessout { access $Add%($1) add owner $ip }
شرح ما قمت فعله
# للدلالة على اسم الغرفة التي انا فيها ولتكن %#مخبأالذئب
سوف يدخل الامر بالطريقة التالي
/.timer 1 10 accessout مخبأالذئب
حيث وظيفة الدالة حذف أول رمزين من اسم القناة إن ابتدئت بالعلامة %
وسينفذ داخل امر AccessOut (حيث صنعت امرا بهذا الاسم) بالطريقة التالي
/access %#مخبأالذئب add owner وهنا سيوضع الاي بي الخاص بالشخص
حيث وظيفة الدالة تحويلها إلى وضع قناة
#
حيث أن
$Add% إضافة الرمزين %# إذا لم تكن تحتوي عليها اسم الغرفة و لم تكن أولها علامة الهاش # أو علامة الربط &
$Remove% لحذف الرمز % والذي يليه ان ابتدأ به الغرفة
------------------------------
$Add%(#السعودية) --------------->
#السعودية
$Add%(مخبأالذئب) ------>
%#مخبأالذئب
$Add%(%#مخبأالذئب) ----->
%#مخبأالذئب
--------------------------------------
$Remove%(#السعودية) ----------->
#السعودية
$Remove%(%#مخبأالذئب) --------->
مخبأالذئب
ملاحظة / هذا الأمر ليس مثالياً، بالصورة المطلوبة و يمكن تصنيع ما هو مثالي أكثر وهو متروك إلى فكرة المستخدم ، الذي يحتاجه .
البرق