2012-01-26 1 views
1

약간의 mirc 스크립트를 작성했습니다. 정규 채팅 프로그램이 .x 명령을 실행하면 별칭/y 명령이 실행됩니다.원격 명령이 포함 된 MIRC 스크립트 - 분당 한 번만 사용합니다.

이제 사용량이 많아 사용자가 분당 한 번만 사용할 수 있도록 제한하고 싶습니다. 사람이 좀 도와 수 있다면 내가 MIRC 스크립팅 아주 새로운 오전, 감사하겠습니다

on *:TEXT:.xcommand:#: { 
if $user timer==0 /ycommand else goto *nothinghere* 
} 

: 그리고 그것을 할 방법 확실하지 않다, 나는 뭔가처럼 될 것입니다 내기! 건배

답변

4

/ycommand을 사용할 때마다 변수를 설정할 수 있으며이 값은 60 초 후에 자동으로 설정 해제됩니다. 그런 다음 /ycommand 주위의 if 문을 사용하여 변수가 설정되어 있는지 확인하고, 변수가 설정되어 있는지 여부를 확인하려면 명령이 지난 60 초 내에 사용 되었기 때문에 아무 것도하지 않습니다.

어려운 부분은 각 사용자마다 다른 변수를 사용하고 있습니다. 변수를 설정할 때 %xcommandused. $+ $nick을 사용하면 사용자의 별명이 변수 이름의 일부가됩니다. 예를 들어 내 별명은 Kylar이므로 .xcommand를 입력하면 %xcommandused.Kylar$true으로 설정합니다.

변수의 값을 읽고 싶지는 않습니다. %xcommandused. [ $+ [ $nick ] ] 또는 $eval과 같은 평가 괄호를 $eval(% $+ xcommandused. $+ $nick, 2)과 같이 사용할 수 있습니다.

질문이 있으시면 SwiftIRC 네트워크에 좋은 스크립트 커뮤니티가 있습니다. irc.swiftirc.net에 연결하고, #mSL에 가입하고, 문제를 설명하고, 누군가가 대답하기를 바랍니다.

on *:TEXT:.xcommand:#: { 
    if (!%xcommandused. [ $+ [ $nick ] ]) { 
    set -u60 %xcommandused. $+ $nick $true 
    ycommand 
    } 
}