下面是我爲我不斷增長的與鳥有關的聊天機器人寫的一些代碼。mIRC聊天機器人不承認命令
如果我使用mIRC CONSOLSE,我可以執行別名塊(例如// fchirp [user]),但由於某些原因,bot不承認有人從主聊天窗口鍵入「!chirp」 。它甚至不執行on-text-event中的第一個// echo語句。
最奇怪的部分是:此代碼之前工作過,我一直在使用它。除了用於調試的echo聲明之外,我沒有改變這裏顯示的任何部分。
addWorms和GiveWorms都是我自己編寫和正確運行的別名。我遇到的主要問題是當某人輸入「!chirp」時,讓bot做任何事情。 (應當指出的是,其他無關的文本事件之前在代碼的工作只是有相同的語法罰款。)
alias fchirp {
/writeini chirp.ini $1 First $adate
/writeini chirp.ini $1 Last $adate
/writeini chirp.ini $1 Count 1
msg $chan /w $1 Welcome to the Nest! Thanks for checking in! :D
addWorms $1
msg $chan /w $1 Type !worms to see how many you have!
//echo -a first chirp
}
alias chirp {
var %a $readini(chirp.ini, $1, Count)
var %count $calc(%a + 1)
if ($readini(worms.ini, $1, Breed) == $null) {
addWorms $1
//echo -a addWorms done
}
if ($readini(chirp.ini, $1, Last) === $adate) { msg $chan /w $nick You've already checked in today! BabyRage | halt }
/writeini chirp.ini $1 Last $adate
/writeini chirp.ini $1 Count %count
//echo -a last/count updated
if ($calc($readini(chirp.ini, $1, Count) % 5) == 0) {
giveWorms $1 10
msg $chan /w $1 Welcome back! Lucky day!
}
else {
giveWorms $1 5
msg $chan /w $1 Welcome back! Here's your worms! Don't forget to !hunt ! ^_^
}
//echo -a giveWorms
}
on *:TEXT:!chirp:#: {
//echo -a acknowledged
if ($readini(chirp.ini, $nick, First) != $null) {
//echo -a true
chirp $nick
}
else {
//echo -a false
fchirp $nick
}
msg $chan /w $nick Don't forget to !hunt for worms! :D
}
你有什麼'TEXT:!*:#:'?這可能是由於包含匹配的其他TEXT事件引起的。嘗試將新發布的代碼添加到新的mIRC遠程文件中,如果這能解決此問題,那意味着上面的代碼會干擾捕獲TEXT事件(錯誤或其他TEXT事件包含匹配模式)。另外,'/'在遠程代碼中沒有用處,它只是用於識別控制檯mIRC窗口的文本與命令。 –
完美!謝謝。我有一個命令: – MrJerkBird
(續) ...有一個命令,當任何人輸入任何東西時計數: on *:TEXT:*:#:{/ * do stuff * /} 有沒有辦法有兩個? – MrJerkBird