123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- -- ===================================================================
- -- Minetest commands
- -- ===================================================================
- command_list = {} -- user-facing table of commands
- local chat_table -- MT chat command definitions table
- local regchat -- Chat-command registration function
- regchat = minetest.register_chatcommand
- regchat = function(name, command_table)
- minetest.register_chatcommand(name, command_table)
- table.insert(command_list, name)
- end
- -- ===================================================================
- -- /menu
- -- Presents a menu of options to users
- regchat(
- "menu", {
- privs = {},
- func = function(user)
- local result = modpol.menu(user)
- return true, result
- end,
- })
- -- ===================================================================
- -- /reset
- -- For testing only
- -- Clears the system and recreates instance with all players
- regchat(
- "reset", {
- privs = {},
- func = function(user)
- modpol.reset_orgs();
- return true, "Reset orgs"
- end,
- })
- -- ===================================================================
- -- /addorg /add_org
- -- This code defines a chat command which creates a new
- -- "org". Presently, the command makes the user the sole member of the
- -- "org".
- chat_table = {
- privs = {} ,
- func = function (user, param)
- local success, message = modpol.add_org (param, { user })
- return true, message
- end
- }
- regchat ("addorg" , chat_table)
- regchat ("add_org" , chat_table)
- -- ===================================================================
- -- /listorg /listorgs /list_org /list_orgs
- -- In Minetest mode, this code defines a chat command which lists the
- -- existing "orgs".
- -- The list shows one "org" per line in the following format:
- -- org_name (member, member, ...)
- chat_table = {
- privs = {} ,
- func = function (user, param)
- return true, "Orgs:\n" .. modpol.list_orgs()
- end
- }
- regchat ("listorg" , chat_table)
- regchat ("listorgs" , chat_table)
- regchat ("list_org" , chat_table)
- regchat ("list_orgs" , chat_table)
- -- ===================================================================
- -- /listplayers
- regchat(
- "listplayers", {
- privs = {},
- func = function(user)
- local result = table.concat(modpol.list_users(),", ")
- return true, "All players: " .. result
- end,
- })
- -- ===================================================================
- -- /joinorg
- regchat(
- "joinorg", {
- privs = {},
- func = function(user, param)
- local org_id = modpol.get_org_id_by_name(param)
- local success, result = modpol.add_member(org_id, user)
- return true, result
- end,
- })
- -- ===================================================================
- -- /pollself [question]
- -- asks the user a question specified in param
- regchat(
- "pollself", {
- privs = {},
- func = function(user, param)
- modpol.binary_poll_user(user, param)
- return true, result
- end,
- })
|