SYNOPSIS
        string query_verb()
        string query_verb(int flag)

BESCHREIBUNG
        Liefert das Verb des aktuellen Kommandos oder 0, wenn kein Kommando
        bearbeitet wird. Wenn <flag> nicht angegeben oder 0 ist, wird das Verb
        wie vom User eingegeben geliefert (das ist das erste Wort der
        Inputzeile des Spielers, bis zum (aber ohne) den ersten Leerschlag /
        Zeilenumbruch). Wenn <flag> nicht 0 ist, wird das Verb entsprechend
        der add_action() zurueck gegeben.

BEISPIELE
        void init() {
            ...
            add_action("sing","singe");
            add_action("sing","jodel", 1);
            ...
        }

        int sing(string str) {
            write("Das Kommando war:"+query_verb()+(str ? str : "")+"\n");
            write("Das Verb war:"+query_verb(1)+(str ? str : "")+"\n");
        }

        Das Kommando "sing blafasel" liefert:
            Das Kommando war: sing
            Das Verb war: sing

        Das Kommando "jodel blafasel" liefert:
            Das Kommando war: jodel
            Das Verb war: jodel

        Das Kommando "jodele blafasel" liefert:
            Das Kommando war: jodele
            Das Verb war: jodel

GESCHICHTE
        LDMud 3.2.9. fuehrte das optionale Argument <flag> ein.

SIEHE AUCH
        add_action(E), query_command(E)
