현재 irc를 볼 수 없는 상황인 고로 정확한 용어가 기억나지 않아서 알고리즘만 적겠습니다. 용어로 바꾸시는 건 직접.
기존의 a 코드가
!A를 입력했을 때
{
이거한다
저거한다
}
였을 때, 여기에 b 상황에서만 발동할 수 있게 발동조건을 만드는 경우의 예시입니다.
편의상 발동조건이 설정되지 않았으면 발동이 불가능한 쪽을 디폴트로 설명하겠습니다만, 조금만 개조하면 반대쪽을 디폴트로 할 수도 있습니다.
!B를 입력했을 때
{
if (( %발동조건 == $null ) || ( %발동조건 != on )) {
/set %발동조건 on
/echo 발동조건 on
}
else {
/unset %발동조건
/echo 발동조건 off
}
}
(다시 한 번 말하지만 지금 irc 앞에 있는 상황이 아니라서 echo 명령어는 정확한 용법과는 좀 다를 겁니다. 적당히 찾아보고 바꾸셔도 되고, echo를 쓰지 마시거나 echo 대신 msg 등으로 하시거나 하셔도 됩니다.)
!A를 입력했을 때
{
if ( %발동조건 != on ) { halt }
이거한다
저거한다
}
이렇게 하면 됩니다.
halt는 대충 스크립트의 처리를 끝내버리는 코드라고 보시면 됩니다. exit sub보다는 강하고... 여기에 정확히 해당하는 비베 코드가 뭐더라? 아무튼 좀 셉니다.