עמוד ראשי מירק סקריפטינג מירק סקריפטינג [בקשה] אני צריך סקריפט !vt

[בקשה] אני צריך סקריפט !vt

mIRC Scripting - בפורום זה תינתן תמיכה בסקריפטים וכן גם אפשרות לבקשת סניפטים או תוספים, ניתן גם להציג בפורום זה קודים לפני פירסומם.

הצטרף: 05 אוקטובר 2011, 15:13
הודעות: 3
פורסם: 03 מרץ 2013, 15:17
לא משנה עזרו לי.
תימחקו בבקשה תאשכול !
נערך לאחרונה על ידי renex1 בתאריך 09 מרץ 2013, 11:18, נערך פעם אחת בסך הכל.

הצטרף: 20 יוני 2011, 21:35
הודעות: 100
פורסם: 04 מרץ 2013, 14:53
שלום לך.

נסה את הסקריפט הבא, יש לרשום אותו ברימוט alt + r בדף חדש!

on *:input:*:{
  if ($1 == !vt) && ($2) {
    VTvoice $2
  }
return
}


alias -l VTvoice {
  var %x = 1, %tag = $1
  while ($nick($active,%x)) {
    if ($nick($active,%x) !isvoice $active) && (%tag isin $nick($active,%x)) {
      set %voice.nicks $addtok(%voice.nicks,$nick($active,%x),32)
      if ($numtok(%voice.nicks,32) == 5) {
        .timer 1 $calc(%x / 5) mode $active +vvvvv %voice.nicks
        unset %voice.nicks
      }
    }
    inc %x
  }
  if (%voice.nicks) {
    .timer 1 $calc(%x / 5) mode $active +vvvvv %voice.nicks
    unset %voice.nicks
  }
}

הצטרף: 05 אוקטובר 2011, 15:13
הודעות: 3
פורסם: 08 מרץ 2013, 17:10
עובד
תודה Zen.

הצטרף: 27 יולי 2010, 20:22
הודעות: 24
פורסם: 09 מרץ 2013, 10:06
Zen- כתב:
שלום לך.

נסה את הסקריפט הבא, יש לרשום אותו ברימוט alt + r בדף חדש!

on *:input:*:{
  if ($1 == !vt) && ($2) {
    VTvoice $2
  }
return
}


alias -l VTvoice {
  var %x = 1, %tag = $1
  while ($nick($active,%x)) {
    if ($nick($active,%x) !isvoice $active) && (%tag isin $nick($active,%x)) {
      set %voice.nicks $addtok(%voice.nicks,$nick($active,%x),32)
      if ($numtok(%voice.nicks,32) == 5) {
        .timer 1 $calc(%x / 5) mode $active +vvvvv %voice.nicks
        unset %voice.nicks
      }
    }
    inc %x
  }
  if (%voice.nicks) {
    .timer 1 $calc(%x / 5) mode $active +vvvvv %voice.nicks
    unset %voice.nicks
  }
}


עדיף להשתמש ב modespl.

אני חלוד מאוד, אז תסלחו לי.
הפעלה ע"י:
/vt [Tag]

לדוגמא:
/vt eSr^*
כל מי שמתחיל עם הטאג יקבל +v

הקוד שלי: http://script.quakenet.org/paste/582264

הצטרף: 20 יוני 2011, 21:35
הודעות: 100
פורסם: 09 מרץ 2013, 17:47
אתה צודק, שכחתי מזה, אבל עדיין הסקריפט שלך לא תקין ולא עובד :)

הצטרף: 27 יולי 2010, 20:22
הודעות: 24
פורסם: 10 מרץ 2013, 18:01
Zen- כתב:
אתה צודק, שכחתי מזה, אבל עדיין הסקריפט שלך לא תקין ולא עובד :)


עובד אצלי כמו קסם, נ.ב לא בדקתי את האירוע רק את האליאס.

הצטרף: 20 יוני 2011, 21:35
הודעות: 100
פורסם: 10 מרץ 2013, 18:56
אממ לא עובד לי ורק אחרי שעשיתי את השינויים הבאים זה עבד כמו שצריך...
(הכנסתי גם כוכבים לפני הטאג בבדיקה, לפעמים שמים טאג בסוף הכינוי ולא בהתחלה)

alias vt {
  if ($1) {
    modebytag $active +v $1
  }
}
alias ModeByTag {
  ; #channel mode tag
  if (!$3 || $1 !ischan) {
    echo -ag ModeByTag #channel Mode Tag [eg. /modebytag #channel +v support*]
    return
  }
  elseif ($me !isop $1) {
    echo -ag Error: You're not channel operator.
    return
  }
 
  var %i = 1, %j = 0, %n = $fline($1,* $+ $3 $+ *, 0, 1)
  var %nickStr
  while (%i <= %n) {
    %nickStr = $addtok(%nickStr, $nick($1, $fline($1,* $+ $3 $+ *, %i, 1)), 32)
    if ($modespl // %i) {
      .timer 1 %j mode $1 $str($2, $modespl) %nickStr
      %nickStr =
      inc %j
    }
    inc %i
  }
  if (%nickStr) {
    .timer 1 %j mode $1 $str($2, $modespl) %nickStr
  }
}

הצטרף: 27 יולי 2010, 20:22
הודעות: 24
פורסם: 10 מרץ 2013, 21:30
Zen- כתב:
אממ לא עובד לי ורק אחרי שעשיתי את השינויים הבאים זה עבד כמו שצריך...
(הכנסתי גם כוכבים לפני הטאג בבדיקה, לפעמים שמים טאג בסוף הכינוי ולא בהתחלה)

alias vt {
  if ($1) {
    modebytag $active +v $1
  }
}
alias ModeByTag {
  ; #channel mode tag
  if (!$3 || $1 !ischan) {
    echo -ag ModeByTag #channel Mode Tag [eg. /modebytag #channel +v support*]
    return
  }
  elseif ($me !isop $1) {
    echo -ag Error: You're not channel operator.
    return
  }
 
  var %i = 1, %j = 0, %n = $fline($1,* $+ $3 $+ *, 0, 1)
  var %nickStr
  while (%i <= %n) {
    %nickStr = $addtok(%nickStr, $nick($1, $fline($1,* $+ $3 $+ *, %i, 1)), 32)
    if ($modespl // %i) {
      .timer 1 %j mode $1 $str($2, $modespl) %nickStr
      %nickStr =
      inc %j
    }
    inc %i
  }
  if (%nickStr) {
    .timer 1 %j mode $1 $str($2, $modespl) %nickStr
  }
}


חלילה, מראש לא רציתי את השינויים הללו.
תמיד עדיף שהמשתמש יוכל לשלוט באיזה צורה הוא רוצה שהמשתמשים יסוננו ויקבלו את הדרגה.
לכן משאירים לו להוסיף את הכוכבית היכן שהוא חפץ בהן.
לדוגמא ישנו שבט שמשתמשים בתגיות סופיות
nick1`tag
או שישנו שבט שמשתמש בניק באמצע הטאג,
[tag`nick1]

לכן עדיף שהם ישלטו על כך.

הצטרף: 20 יוני 2011, 21:35
הודעות: 100
פורסם: 10 מרץ 2013, 21:56
זה הפרט השולי...
השינוי שעשיתי היה בין $3 ל- $2, אחרת הסקריפט לא עבד אצלי כלל.
וכמובן
 if ($1) {

ולא
 if (!$1) {


מוזר לי שהוא עבד אצלך בצורה שהצגת אותו פה, רק אחרי השינויים האלו הוא הצליח לעבוד תקין.

יכול להיות שאני טועה ותתקן אותי אבל העובדות מדברות בעד עצמן :rolleyes:

הצטרף: 27 יולי 2010, 20:22
הודעות: 24
פורסם: 11 מרץ 2013, 20:15
Zen- כתב:
זה הפרט השולי...
השינוי שעשיתי היה בין $3 ל- $2, אחרת הסקריפט לא עבד אצלי כלל.
וכמובן
 if ($1) {

ולא
 if (!$1) {


מוזר לי שהוא עבד אצלך בצורה שהצגת אותו פה, רק אחרי השינויים האלו הוא הצליח לעבוד תקין.

יכול להיות שאני טועה ותתקן אותי אבל העובדות מדברות בעד עצמן :rolleyes:


כן, ככה זה שאחרי שמסיים לבנות קוד, ובודקים אותה, מוסיפים עוד חלק ולא בודקים את הסקריפט בשלמותו.

תיקון: http://script.quakenet.org/paste/582274

תודה.

הצטרף: 20 יוני 2011, 21:35
הודעות: 100
פורסם: 29 מרץ 2013, 10:58
עדיין לא תיקנת הכל, הנה זה המתוקן:

alias vt {
  if ($1) {
    modebytag $active +v $1
  }
}
alias ModeByTag {
  ; #channel mode tag
  if (!$3 || $1 !ischan) {
    echo -ag ModeByTag #channel Mode Tag [eg. /modebytag #channel +v support*]
    return
  }
  elseif ($me !isop $1) {
    echo -ag Error: You're not channel operator.
    return
  }

  var %i = 1, %j = 0, %n = $fline($1, $3, 0, 1)
  var %nickStr
  while (%i <= %n) {
    %nickStr = $addtok(%nickStr, $nick($1, $fline($1, $3, %i, 1)), 32)
    if ($modespl // %i) {
      .timer 1 %j mode $1 $str($2, $modespl) %nickStr
      %nickStr =
      inc %j
    }
    inc %i
  }
  if (%nickStr) {
    .timer 1 %j mode $1 $str($2, $modespl) %nickStr
  }
}


חזור אל מירק סקריפטינג

cron