C++ と Lua を使用して MUD に取り組んでおり、エモート用の一連の関数を作成しようとしています。
私は書いた:
add_functions
{
['subject-bind-search say'] = 'none',
['player say string-type'] = function(player, msg)
player_text(player, 'You say "' .. msg.string .. '".')
witness_text(player, M('indefinite', player) .. ' says "' .. msg.string .. '".')
end,
['subject-bind-search say-to'] = 'none',
['player say-to string-type thing'] = function(player, msg, thing)
player_text(player, 'You say "' .. msg.string .. '" to ' .. M('definite',thing) .. '.')
witness_text(player, M('indefinite', player) .. ' says "' .. msg.string .. '" to ' .. M('indefinite', thing) .. '.')
end,
['player dance'] = function(player)
player_text(player, 'You burst into dance.')
witness_text(player, M('indefinite', player)..' bursts into dance.')
add_atoms{dance='verb'}
end
}
私と他の人が telnet でサーバーに接続すると、次のように入力できます。
「こんにちは」と言う --> 誰もが望むように「こんにちは」と表示されます。
私は文字が打てます:
playerBob に「こんにちは」と言う --> playerBob はこんにちはと認識しています
ただし、単純に入力するとdance
、動詞を認識できない場合に送信されるエラー メッセージが表示されます。私はadd_atoms{ dance = 'verb' }
それを修正したと思っていましたが、それでも...
なぜ私がダンスを始められないのか誰か知っていますか?