All pastes #745356 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-10-22 10:32 UTC
rendered paste body
alias NickSystem { 
  dialog -m NickSystem NickSystem
} 
menu * {
  Nickname System:/dialog -m NickSystem NickSystem
}
dialog NickSystem {
  title "Cracky`'s Nickname System"
  size -1 -1 160 160
  option dbu
  tab "Names/Chans", 1, 1 1 158 158
  tab "Away", 2,
  tab "PM Manager", 103
  tab "Credits", 3,
  box "Nickname", 5, 5 20 150 42, tab 1, 
  edit "New Nickname", 4, 10 30 70 12, tab 1, center
  button "Change Nickname", 6, 85 30 65 12, tab 1
  edit "Password", 7, 10 45 70 12, tab 1, pass, center
  button "Identify", 8, 85 45 65 12, tab 1
  box "Channels", 9, 5 65 150 42, tab 1
  edit "#Channel", 10, 10 75 70 12, tab 1, center
  button "Join Channel", 11, 85 75 65 12, tab 1
  edit "#Channel", 12, 10 90 70 12, tab 1, center
  button "/cs invite", 13, 85 90 65 12, tab 1
  box "Messaging Other People", 14, 5 110 150 42, tab 1
  edit "Name", 15, 10 120 40 12, tab 1, center, autohs
  edit "Message", 16, 55 120 95 12, tab 1, center, autohs
  button "Notice", 17, 10 135 46 12, tab 1
  button "Message", 18, 57 135 46 12, tab 1
  button "Query", 19, 104 135 46 12, tab 1
  box "Away/Back", 20, 5 20 150 130, tab 2
  button "Away", 21, 10 30 45 12, tab 2
  button "Back", 22, 55 30 45 12, tab 2
  edit "Status", 23, 105 30 45 12, tab 2, center, read
  edit "N/A", 24, 35 45 115 12, tab 2, center, autohs
  text "Reason:", 25, 12 47 20 12, tab 2
  check "Amsg:", 26, 10 60 25 12, tab 2
  edit "Amsg", 28, 35 60 115 12, tab 2, center, autohs
  button "Apply Message", 29, 100 75 50 12, tab 2
  check "Amsg:", 30, 10 90 25 12, tab 2
  edit "Amsg", 31, 35 90 115 12, tab 2, center, autohs
  button "Apply Message", 32, 100 105 50 12, tab 2
  text "Custom identifiers for Amsg's: *reason* for the reason, *time* for the time left and *duration* for the time in which you were away.", 33, 10 125 140 20, tab 2, center   
  box "NickName System Dialog v1.0", 46, 5 20 150 135, tab 3
  text "Dialog Created by Cracky`", 47, 10 40 100 10, tab 3
  box "Features", 48, 10 55 140 65, tab 3
  text "With this dialog you can Change and Identify for NickNames. You can join channels and '/cs invite' yourself if the channel is +i. It also has a user-friendly messaging system. Another feature is the fully functional AWAY/BACK system, with Amsg etc. and Custom messages.", 49, 15 70 130 60, center, tab 3
  icon 50, 122 122 40 40, E:\Robbie\icon-mirc.bmp, tab 3
  button "On", 51, 10 30 45 12, tab 103
  button "Off", 52, 55 30 45 12, tab 103
  edit "Status", 53, 105 30 45 12, tab 103, center, read
  box "PM Management", 54, 5 20 150 28, tab 103
  box "Accept/Decline", 55, 5 50 150 95, tab 103
  button "Accept", 56, 10 60 50 12, tab 103
  button "Decline", 57, 10 75 50 12, tab 103
  edit "Accept Message", 58, 62 60 88 12, tab 103, autohs
  edit "Decline Message", 59, 62 75 88 12, tab 103, autohs
  edit "Currently: _ Messages", 60, 62 105 88 12, tab 103, read, center
  button "Update Messages", 61, 10 105 50 12, tab 103
  check "Auto-Decline if Away", 62, 10 120 70 10, tab 103
  check "Ignore after Decline", 63, 10 130 70 10, tab 103
  edit "Away Message", 64, 10 90 50 12, tab 103, center, read
  edit "Away Message", 65, 62 90 88 12, tab 103, autohs
  edit "60", 66, 80 130 20 10, tab 103, center
  text "seconds", 67, 102 131 20 10, tab 103
}

on *:dialog:NickSystem:sclick:13:{ if ($did(12) == #Channel) { /halt }
  else { /cs invite $did(12)
    /join $did(12)
  }
}

on *:dialog:NickSystem:sclick:62: {
  $iif($did(26).state == 1, set %autodecline on, set %autodecline off)
}

on *:dialog:NickSystem:sclick:63: {
  $iif($did(26).state == 1, set %ignore on, set %ignore off)
}

on *:dialog:NickSystem:sclick:26: {
  $iif($did(26).state == 1, set %awayamsg yes, set %awayamsg no)
}

on *:dialog:NickSystem:sclick:30: {
  $iif($did(30).state == 1, set %backamsg yes, set %backamsg no)
}

on *:dialog:NickSystem:sclick:*:{ 
  if ($did == 6) { $iif($did(4) == New Nickname, /halt, /nick $did(4)) }
  if ($did == 8) { $iif($did(4) == Password, /halt, /ns id $did(7)) }
  if ($did == 11) { $iif($did(10) == #Channel, /halt, /join $did(10)) }
  if ($did == 17) { /notice $did(15) $did(16) }
  if ($did == 18) { /msg $did(15) $did(16) }
  if ($did == 19) { /query $did(15) $did(16) }
  if ($did == 21) { set %status AWAY
    /nick %awayname
    /titlebar Cracky's Chat - Status: AWAY
    /did -o $dname 23 1 Status: %status 
    /away $did(24)
    set %awayreason $did(24)
    set %awayduration $ctime
    set %awaytime $asctime(hh:nn:ss)
    if (%awayamsg == yes) /amsg $($replace(%customawayamsg,*reason*,%awayreason,*time*,%awaytime),2)
    if (%autodecline == on) set %pm DECLINING
  }
  if ($did == 22) { if (%status == BACK) { /halt }
    set %status BACK
    /titlebar Cracky's Chat - Status: BACK
    /nick %defname
    /away
    /did -o $dname 23 1 Status: %status 
    set %duration $calc($ctime - %awayduration)
    if (%backamsg == yes) /amsg $($replace(%custombackamsg,*reason*,%awayreason,*time*,%awaytime,*duration*,$duration(%duration)),2)
    unset %awayreason
    unset %awaytime
    unset %awayduration
    unset %duration
    if (%autodecline == on) set %pm ACCEPTING
  }
  if ($did == 29) { set %customawayamsg $did(28) }
  if ($did == 32) { set %custombackamsg $did(31) }
  if ($did == 51) { set %pm.man ON | /did -o $dname 53 1 Status: ON }
  if ($did == 52) { set %pm.man OFF | /did -o $dname 53 1 Status: OFF }
  if ($did == 56) { set %pm ACCEPTING | /did -o $dname 60 1 Currently: %pm Messages }
  if ($did == 57) { set %pm DECLINING | /did -o $dname 60 1 Currently: %pm Messages }
  if ($did == 61) { set %accmsg $did(58) | set %decmsg $did(59) | set %awaymsg $did(65) }
}

on *:DIALOG:NickSystem:init:0: { 
  if (!%status) /set %status BACK
  if (!%amsg) /set %awayamsg no
  if (!%customawayamsg) /set %customawayamsg Custom Amsg (Away)
  if (!%custombackamsg) /set %custombackamsg Custom Amsg (back)
  if (!%pm.man) /set %pm.man OFF
  if (!%pm) /set %pm ACCEPTING
  if (!%defname) /set %defname $$?="Enter Default Nickname:"
  if (!%awayname) /set %awayname $$?="Enter Away Nickname:"
  if (!%accmsg) /set %accmsg Message Accepted
  if (!%decmsg) /set %decmsg Message Declined
  if (!%autodecline) /set %autodecline off
  if (%autodecline == on) /did -c $dname 62
  if (!%ignore) /set %ignore off
  if (%ignore == on) /did -c $dname 63
  if (!%awaymsg) /set %awaymsg Message Decline (AWAY)
  /did -o $dname 65 1 %awaymsg
  /did -o $dname 58 1 %accmsg
  /did -o $dname 59 1 %decmsg
  /did -o $dname 60 1 Currently: %pm Messages
  /did -o $dname 23 1 Status: %status
  /did -o $dname 53 1 Status: %pm.man
  /did -o $dname 28 1 %customawayamsg
  /did -o $dname 31 1 %custombackamsg
  if (%awayamsg == yes) /did -c $dname 26
  if (%backamsg == yes) /did -c $dname 30
}