עמוד ראשי מירק סקריפטינג ארכיון [פרסום] שליטה בקיו - Q Commands

[פרסום] שליטה בקיו - Q Commands

ארכיון האתר הוא לנושאים שלא נמצאו לנכון לפרסום אך בכל זאת יכולים להוות שימוש.

הצטרף: 14 יולי 2010, 10:34
הודעות: 3
פורסם: 18 יולי 2011, 19:10
אהלן חברה,
כאן אני יפרסם את הדיאלוג Q Commands שבניתי..
הדיאלוג מכיל אפשרויות כגון:
שינוי מודים (Modes) , שינוי פלאגס (Flags) , הוספה / הסרה של גישות בערוץ ועוד כמה פקודות לקיו ...

הנה תמונה

תמונה

dialog QCommands {
  title "Q Commands By syconn"
  size -1 -1 176 236
  option dbu
  button "Set Channel", 1, 12 15 37 12
  edit "", 2, 60 16 107 10, center
  box "Set Channel", 3, 3 3 170 33
  text "Chanlev", 4, 12 52 36 8, center
  edit "Type Nick", 5, 60 52 107 10, center
  button "+Gv", 6, 10 68 37 12
  button "-Gv", 7, 10 84 37 12
  button "+Ao", 8, 50 68 37 12
  button "-Ao", 9, 50 84 37 12
  button "+Amo", 10, 89 68 37 12
  button "-Amo", 11, 90 84 37 12
  button "+Amno", 12, 130 68 37 12
  button "-Amno", 13, 130 84 37 12
  box "Chanlev", 14, 3 41 171 64
  button "QBan", 16, 10 120 37 12
  button "Q UnBan", 17, 50 120 37 12
  button "UnBan Me", 18, 90 120 37 12
  button "UnBan All", 19, 130 120 37 12
  button "Welcome", 20, 10 136 37 12
  button "Topic", 21, 50 136 37 12
  button "Recover", 22, 90 136 37 12
  box "Q Commands", 15, 3 110 171 107
  button "Ban Clear", 23, 130 136 37 12
  button "Set", 24, 10 155 37 12
  edit "Auto Limit", 25, 53 155 116 10, center
  button "Set", 26, 10 171 37 12
  edit "Chan Modes", 27, 53 171 116 10, center
  button "Set", 28, 10 187 37 12
  edit "Chan Flags", 29, 53 187 116 10, center
  edit "Status Line", 30, 10 203 159 10, read return center
  button "OK", 31, 63 219 52 12, ok
}
on *:Dialog:QCommands:*:*: {
  if ($devent == sclick) {
    if ($did == 1) {
      did -ra $dname 30 Chan Set To $did(2)
    }
    elseif ($did == 6) {
      msg Q@CServe.quakenet.org chanlev $did(2) $did(5) +gv
      did -ra $dname 30 Done! $did(5) Now Have +Gv On $did(2)
    }
    elseif ($did == 7) {
      msg Q@CServe.quakenet.org chanlev $did(2) $did(5) -gv
      did -ra $dname 30 Done! $did(5) Now Has -Gv On $did(2)
    }
    elseif ($did == 8) {
      msg Q@CServe.quakenet.org chanlev $did(2) $did(5) +ao
      did -ra $dname 30 Done! $did(5) Now Have +Ao On $did(2)
    }
    elseif ($did == 9) {
      msg Q@CServe.quakenet.org chanlev $did(2) $did(5) -ao
      did -ra $dname 30 Done! Now Has -Ao On $did(2)
    }
    elseif ($did == 10) {
      msg Q@CServe.quakenet.org chanlev $did(2) $did(5) +amo
      did -ra $dname 30 Done! Now Have +Amo On $did(2)
    }
    elseif ($did == 11) {
      msg Q@CServe.quakenet.org chanlev $did(2) $did(5) -amo
      did -ra $dname 30 Done! Now Has -Amo On $did(2)
    }
    elseif ($did == 12) {
      msg Q@CServe.quakenet.org chanlev $did(2) $did(5) +amo
      msg Q@CServe.quakenet.org giveowner $did(2) $did(5)
      did -ra $dname 30 Done! Now Have +Amno On $did(2)
    }
    elseif ($did == 13) {
      msg Q@CServe.quakenet.org chanlev $did(2) $did(5) -amno
      did -ra $dname 30 Done! Now Has -Amno On $did(2)
    }
    elseif ($did == 16) {
      var %x $input(Type Host/Nick,e,QBan)
      var %y $input(Type Reason Or Leave Empty,e,Ban Reason)
      msg Q permban $did(2) %x %y
      did -ra $dname 30 Done! Now %x Has QBAN On $did(2)
    }
    elseif ($did == 17) {
      var %x $input(Type Host/Nick,e,Q UnBan)
      msg Q unban $did(2) %x
      did -ra $dname 30 Done! Now %x Has Un Banned From $did(2)
    }
    elseif ($did == 18) {
      msg Q unbanme $did(2)
      did -ra $dname 30 Done! Now You Have UnBanned YourSelf From $did(2)
    }
    elseif ($did == 19) {
      msg Q banclear $did(2)
      did -ra $dname 30 Done! Now You Q UnBanned All From $did(2)
    }
    elseif ($did == 20) {
      var %x $input(Type Welcome,e,Channel Welcome)
      msg Q chanflags $did(2) +w
      msg Q welcome $did(2) %x
      did -ra $dname 30 Done! Now You Have Set Welcome On $did(2)
    }
    elseif ($did == 21) {
      var %x $input(Type Topic,e,Channel Topic)
      msg Q settopic $did(2) %x
      did -ra $dname 30 Done! Now You Have Set Topic On $did(2)
    }
    elseif ($did == 22) {
      msg Q recover $did(2)
      msg Q chanmode $did(2) none
      did -ra $dname 30 Done! Now You Have Recoverd $did(2)
    }
    elseif ($did = 23) {
      mode $did(2) -b *
      did -ra $dname 30 Done! Now You UnBanned All From $did(2)
    }
    elseif ($did == 24) {
      msg q chanflags $did(2) +c
      msg q autolimit $did(2) $did(25)
      did -ra $dname 30 Done! Now You Set Auto Limit $did(25) To Chan $did(2)
    }
    elseif ($did == 26) {
      msg q chanmode $did(2) $did(27)
      did -ra $dname 30 Done! Now You Set Mode $did(27) To Chan $did(2)
    }
    elseif ($did == 28) {
      msg q chanflags $did(2) $did(29)
      did -ra $dname 30 Done! Now You Set Flag $did(29) To Chan $did(2)
    }
  }
}
menu * { 
  Q Commands { dialog -m QCommands QCommands }
}


אשמח לקבל תגובות / בעיות / הצעות לשיפור וביקורות
מקווה שאהבתם בתודה syconn.

עריכה: הוספתי menu וסידרתי כמה דברים והוספת תמונה

ZxoR
מנהל גלובאלי
Re: פרסום | Q Commands
הצטרף: 01 יולי 2010, 07:43
הודעות: 370
פורסם: 18 יולי 2011, 21:22
אני רואה את הדיאלוג הזה כמיותר לחלוטין, וזאת למרות שעיצבת אותו בצורה שאפשר להגיד שהיא נוחה.
עכשיו שאלה, למה עשית כפתור של "Set channel", אם אין אפילו init בקוד? או בקיצור, לא שימושי וחבל על ההשקעה.
שימו לב: בוטי המשחק שאני בונה לא מתאימים לQuakenet אלא אם כן צויין אחרת.
<+vendetta-> סיאג לחוכמה שתיקה
<+vendetta--> בא לי מוח
<Ninja`> דפקתי נקנקיה

Zen-
מנהל גלובאלי
Re: פרסום | Q Commands
הצטרף: 20 יוני 2011, 21:35
הודעות: 100
פורסם: 18 יולי 2011, 21:58
אני גם חושב שקצת מיותר. למשל את רוב הדברים אם לא כולם ניתן לקצר עוד יותר בעזרת שימוש ב on input, לפי דעתי הייתי מעדיף את זה מאשר את הדיאלוג.
דבר שני שראיתי שחוזר בקוד אצלך זה הדבר הזה:
var %x $input(Type Host/Nick,e,QBan)
      var %y $input(Type Reason Or Leave Empty,e,Ban Reason)
      msg Q permban $did(2) %x %y


אין פה בכלל צורך במשתנים
msg Q permban $did(2) $input(Type Host/Nick,e,QBan) $input(Type Reason Or Leave Empty,e,Ban Reason)

ZxoR
מנהל גלובאלי
Re: פרסום | Q Commands
הצטרף: 01 יולי 2010, 07:43
הודעות: 370
פורסם: 19 יולי 2011, 11:46
Zen- כתב:
אין פה בכלל צורך במשתנים
msg Q permban $did(2) $input(Type Host/Nick,e,QBan) $input(Type Reason Or Leave Empty,e,Ban Reason)

וגם אם היה, אז משלבים בין ה /varים:
/var %x = 1,%y = 2,%z = 3

אלה דברים שצריך ללמוד סייקון..
שימו לב: בוטי המשחק שאני בונה לא מתאימים לQuakenet אלא אם כן צויין אחרת.
<+vendetta-> סיאג לחוכמה שתיקה
<+vendetta--> בא לי מוח
<Ninja`> דפקתי נקנקיה


חזור אל ארכיון

cron