mIRC Home    About    Download    Register    News    Help

Print Thread
#180717 13/07/07 05:40 AM
Joined: Jul 2007
Posts: 1
U
umoms Offline OP
Mostly harmless
OP Offline
Mostly harmless
U
Joined: Jul 2007
Posts: 1
I think you should add either a Nudge or Buzz feature to Mirc so when people say your nick your screen shakes or nudges. You add we wait.

Joined: Aug 2004
Posts: 7,252
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,252
RusselB thinks he hears the letters MSN

Joined: Feb 2003
Posts: 3,432
S
Hoopy frood
Offline
Hoopy frood
S
Joined: Feb 2003
Posts: 3,432
I smell abuse here wink And if you are on many channels, then your screen would "Buzz" all the time, you have the feture highlight, you can add a sound to that too, and atlest i think thats enough smile


if ($me != tired) { return } | else { echo -a Get a pot of coffee now $+($me,.) }
Joined: Oct 2004
Posts: 8,330
Hoopy frood
Offline
Hoopy frood
Joined: Oct 2004
Posts: 8,330
Agreed. Such a feature wouldn't be good for any IRC client, imo. On an IM client, you have a LOT fewer people chatting, so it works okay for those who care about such a thing. On IRC, there are a LOT of people chatting, so it just doesn't make sense.


Invision Support
#Invision on irc.irchighway.net
Joined: Mar 2007
Posts: 218
V
Fjord artisan
Offline
Fjord artisan
V
Joined: Mar 2007
Posts: 218
I would of thought something scriptable could be done, not sure about the shaking of mIRC though.
Already you can make your mIRC produce a sound when your nickname is mentioned, that's good enough in my book. I personally don't want to see mIRC going down the IM route.

Last edited by vexed2; 13/07/07 08:15 PM.
Joined: Dec 2002
Posts: 2,031
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Dec 2002
Posts: 2,031
Originally Posted By: vexed2
don't want to see mIRC going down the IM route.


Amen.

Joined: Oct 2005
Posts: 1,741
G
Hoopy frood
Offline
Hoopy frood
G
Joined: Oct 2005
Posts: 1,741
Code:
on *:TEXT:$($me):*:nudge $target -1
alias nudge {
  ;1=target, 2=count, 3=x, 4=y, 5=ticks, 6=msec

  if ($2 < 0) {
    var %x = $iif($window($1).x < 0,0,$v1)
    var %y = $iif($window($1).y < 0,0,$v1)
    .timer -m 1 1 nudge $1 0 %x %y $ticks 750 
    return 
  }
  if ((!$window($1)) || ($3 == $null)) return
  var %x = $3, %y = $4, %o = 4
  if ($calc($ticks - $5) > $6) { window $1 %x %y | return }
  elseif ($2 == 0) { inc %x %o | inc %y %o }
  elseif ($2 == 1) { dec %x %o | inc %y %o }
  elseif ($2 == 2) { inc %x %o | dec %y %o }
  elseif ($2 == 3) { dec %x %o | dec %y %o }
  elseif ($2 == 4) { dec %x %o | inc %y %o }
  elseif ($2 == 5) { inc %x %o | dec %y %o }
  $+(.timer.nudge.,$1) -m 1 30 nudge $1 $calc(($2 + 1) % 6) $3 $4 $5 $6
  window -ar $1
  window $1 %x %y
}


Simply call the /nudge alias from a command/event as shown in the sample onTEXT event above, and as explained below.

/nudge <target> -1
* <target> is an existing window
* The '-1' forces the nudge 'vibration' to start. Don't substitute other values for this parameter.

-genius_at_work

Joined: Dec 2002
Posts: 3,547
S
Hoopy frood
Offline
Hoopy frood
S
Joined: Dec 2002
Posts: 3,547
Nice, I like that alot. Just a couple of suggestions though.

1. My window was maximized, the window shook but didn't return to maximized again. It's not a problem as I never use maximized but some might.

2. if $isfile(C:\Program Files\MSN Messenger\nudge.wma) splay ...

Nicely done though, it's pretty neat. smile

Joined: Sep 2005
Posts: 2,881
H
Hoopy frood
Offline
Hoopy frood
H
Joined: Sep 2005
Posts: 2,881
As long as it's off by default I'm all for it. It's a good way of getting your attention when your nick is spoken so if some people want that, then I don't see any reason not to include it.

Joined: Dec 2004
Posts: 87
I
Babel fish
Offline
Babel fish
I
Joined: Dec 2004
Posts: 87
we inplemented that in our webchat ,
but they can only be buzz'd when they are set away smile ( can be disabled ) ( it works with /notice $nick buzz )

maybe mirc could have it like that aswell

Last edited by ik000ike; 14/07/07 04:33 PM.
Joined: Dec 2002
Posts: 2,031
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Dec 2002
Posts: 2,031
Only if away (can be disabled) would be good, and /ctcp $nick nudge or /notice $nick nudge would be good, CTCP being the better IMO. Kinda like /ctcp $nick page

Buzz, Nudge .. whatever, it's all the same bs.

Still though, totally scriptable (as proven above) and shouldn't be added as a built-in feature IMO.

A Script to shake the window like genius_at_work made above, but the window(s) should be returned to its previous state and position.

Joined: Dec 2002
Posts: 3,547
S
Hoopy frood
Offline
Hoopy frood
S
Joined: Dec 2002
Posts: 3,547
Yeah I was just thinking of CTCP actually. I don't think I can see this being implemented, but I guess I wouldn't mind seeing it. It seems quite a few feature suggestions make mIRC act like an IM client. A few years ago smilies & webcam/audio support now nudges.

Joined: Dec 2002
Posts: 2,031
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Dec 2002
Posts: 2,031
Really, this would be a good feature for a pager script, options being to log message, play sound, echo to active window, shake active window etc.

Joined: Oct 2005
Posts: 1,741
G
Hoopy frood
Offline
Hoopy frood
G
Joined: Oct 2005
Posts: 1,741
Here is are two versions of updated scripts.

Note that in both versions, the command to initiate a nudge has been changed to:

/nudge <target>

The -1 was unnecessary, so I removed it.

Code:
on *:TEXT:$($me):*:nudge $target

;/nudge 'shakes' the target window when target is minimized, maximized or normal
alias nudge {
  var %nsound = sounds/nudge.wav
  ;-----------------------------------------------------
  ;1=target, 2=count, 3=x, 4=y, 5=ticks, 6=msec, 7=state, 8=astate, 9-=active
  if ($2 == $null) {
    var %x = $iif($window($1).x < 0,0,$v1)
    var %y = $iif($window($1).y < 0,0,$v1)
    var %s = $window($1).state
    if (max isin %s) %s = -x
    elseif (nor isin %s) %s = -r
    else %s = -
    var %a = $window($active).state
    if (max isin %a) %a = -ax
    elseif (min isin %a) %a = -an
    elseif (nor isin %a) %a = -ar
    else %a = -
    .timer -m 1 1 nudge $1 0 %x %y $ticks 750 %s %a $active
    if ($exists(%nsound)) splay $qt(%nsound)
    return 
  }
  if ((!$window($1)) || ($7 == $null)) return
  var %x = $3, %y = $4, %o = 4
  if ($calc($ticks - $5) > $6) { 
    window $1 %x %y 
    if (($9- != $1) && ($9- != $null)) window $8 $qt($9-)
    if ($7) window $7 $1
    return
  }
  elseif ($2 == 0) { inc %x %o | inc %y %o }
  elseif ($2 == 1) { dec %x %o | inc %y %o }
  elseif ($2 == 2) { inc %x %o | dec %y %o }
  elseif ($2 == 3) { dec %x %o | dec %y %o }
  elseif ($2 == 4) { dec %x %o | inc %y %o }
  elseif ($2 == 5) { inc %x %o | dec %y %o }
  $+(.timer.nudge.,$1) -m 1 30 nudge $1 $calc(($2 + 1) % 6) $3-
  window -ar $1
  window $1 %x %y
}


This version will shake the target window regardless of the target or active windows' states. The active window is restored to its previous state after shaking is complete.

--------------------------------------------

Code:
on *:TEXT:$($me):*:nudge $target

;/nudge 'shakes' the target window when target is minimized or normal only
alias nudge {
  var %nsound = sounds/nudge.wav
  ;-----------------------------------------------------
  ;1=target, 2=count, 3=x, 4=y, 5=ticks, 6=msec, 7=state, 8=astate, 9-=active
  if ($2 == $null) {
    var %x = $iif($window($1).x < 0,0,$v1)
    var %y = $iif($window($1).y < 0,0,$v1)
    var %a = $window($active).state
    if (max isin %a) return
    elseif (min isin %a) %a = -an
    elseif (nor isin %a) %a = -ar
    else %a = -
    var %s = $window($1).state
    if (max isin %s) return
    if (nor isin %s) %s = -r
    else %s = -
    .timer -m 1 1 nudge $1 0 %x %y $ticks 750 %s %a $active
    if ($exists(%nsound)) splay $qt(%nsound)
    return 
  }
  if ((!$window($1)) || ($7 == $null)) return
  var %x = $3, %y = $4, %o = 4
  if ($calc($ticks - $5) > $6) { 
    window $1 %x %y 
    if (($9- != $1) && ($9- != $null)) window $8 $qt($9-)
    if ($7) window $7 $1
    return
  }
  elseif ($2 == 0) { inc %x %o | inc %y %o }
  elseif ($2 == 1) { dec %x %o | inc %y %o }
  elseif ($2 == 2) { inc %x %o | dec %y %o }
  elseif ($2 == 3) { dec %x %o | dec %y %o }
  elseif ($2 == 4) { dec %x %o | inc %y %o }
  elseif ($2 == 5) { inc %x %o | dec %y %o }
  $+(.timer.nudge.,$1) -m 1 30 nudge $1 $calc(($2 + 1) % 6) $3-
  window -ar $1
  window $1 %x %y
}


This version shakes the target window only when neither the target nor active windows are maximized. This version is meant to shake when the user has their windows tiled/cascaded/unmaximized. If the active or target window (all windows) are maximized, the /nudge alias exits without shaking. Personally, this is the version I would use if I were to use this script myself.

--------------------------------------

-genius_at_work

Joined: Jul 2006
Posts: 4,145
W
Hoopy frood
Offline
Hoopy frood
W
Joined: Jul 2006
Posts: 4,145
"If the active or target window (all windows) are maximized, the /nudge alias exits without shaking. Personally, this is the version I would use if I were to use this script myself."

You're right because when the window is maximized, it's more annoying than useful


#mircscripting @ irc.swiftirc.net == the best mIRC help channel
Joined: Mar 2007
Posts: 218
V
Fjord artisan
Offline
Fjord artisan
V
Joined: Mar 2007
Posts: 218
If you go to mircscripts.org you will need to sign up until it's been reviewed as it's in the filequeue, but a friend of mine has created a small dll that shakes the whole of mIRC exactly how it does it on windows messenger.
It's pretty good actually, worth checking out smile

Last edited by vexed2; 28/08/07 12:51 PM.
Joined: Jul 2006
Posts: 4,145
W
Hoopy frood
Offline
Hoopy frood
W
Joined: Jul 2006
Posts: 4,145
Lol, I don't use this anymore and i don't use/like highlight option, i just tried the code because i think it was a nice scripted alias smile


#mircscripting @ irc.swiftirc.net == the best mIRC help channel

Link Copied to Clipboard