summaryrefslogtreecommitdiff
path: root/lib/core/util.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lib/core/util.lua')
-rw-r--r--lib/core/util.lua158
1 files changed, 0 insertions, 158 deletions
diff --git a/lib/core/util.lua b/lib/core/util.lua
deleted file mode 100644
index eea13014..00000000
--- a/lib/core/util.lua
+++ /dev/null
@@ -1,158 +0,0 @@
--- various stuff to make scripters life easier
-
--- Beware of the scary undefined globals
-function safe_getglobal(x)
- local v = rawget(globals(), x)
-
- if v then
- return v
- else
- error("undefined global variable '"..x.."'")
- end
-end
-
-function set_safe_globals()
- settagmethod(tag(nil), "getglobal", safe_getglobal)
-end
-function unset_safe_globals()
- settagmethod(tag(nil), "getglobal", nil)
-end
-
-set_safe_globals()
-
--- Patch modules
-__patch_modules = {}
-
-function patch_version(name, version)
- assert(not __patch_modules[name], "Patch " .. name .. " already loaded!!!")
- __patch_modules[name] = version
-end
-
-function patchs_list()
- local k, e, first
- first = FALSE
- for k, e in __patch_modules do
- if first == FALSE then print_hook("\n\n [Patch modules]\n") first = TRUE end
- print_hook("\n "..k.." version "..e)
- end
- if first == TRUE then print_hook("\n") end
-end
-
-function patchs_display()
- local k, e
- for k, e in __patch_modules do
- msg_print("Patch: "..k.." version "..e)
- end
-end
-
-
--- Better hook interface
-__hooks_list_callback = {}
-__hooks_list_callback_max = 0
-
-function add_hooks(h_table, name_prefix)
- local k, e
-
- if not name_prefix then name_prefix = "" end
- for k, e in h_table do
- add_hook_script(k, "__"..name_prefix.."__hooks_list_callback"..__hooks_list_callback_max, "__"..name_prefix.."__hooks_list_callback"..__hooks_list_callback_max)
- setglobal("__"..name_prefix.."__hooks_list_callback"..__hooks_list_callback_max, e)
- __hooks_list_callback_max = __hooks_list_callback_max + 1
- end
-end
-
--- Wrapper for the real msg_print and cmsg_print
--- it understands if we want color or not
-function msg_print(c, m)
- if type(c) == "number" then
- cmsg_print(c, m)
- else
- call(%msg_print, { c })
- end
-end
-
--- better timer add function
-__timers_callback_max = 0
-
-function new_timer(t)
- assert(t.delay > 0, "no timer delay")
- assert(t.enabled, "no timer enabled state")
- assert(t.callback, "no timer callback")
-
- local timer
- if type(t.callback) == "function" then
- setglobal("__timers_callback_"..__timers_callback_max, t.callback)
- timer = %new_timer("__timers_callback_"..__timers_callback_max, t.delay)
- __timers_callback_max = __timers_callback_max + 1
- else
- timer = %new_timer(t.callback, t.delay)
- end
-
- timer.enabled = t.enabled
-
- return timer
-end
-
--- saves all timer values
-function save_timer(name)
- add_loadsave(name..".enabled", FALSE)
- add_loadsave(name..".delay", 1)
- add_loadsave(name..".countdown", 1)
-end
-
-
--- displays a scrolling list
-function display_list(y, x, h, w, title, list, begin, sel, sel_color)
- local l = create_list(getn(list))
-
- for i = 1, getn(list) do
- add_to_list(l, i - 1, list[i])
- end
-
- %display_list(y, x, h, w, title, l, getn(list), begin - 1, sel - 1, sel_color)
-
- delete_list(l, getn(list))
-end
-
--- Easier access to special gene stuff
-function set_monster_generation(monster, state)
- if type(monster) == "string" then
- m_allow_special[test_monster_name(monster) + 1] = state
- else
- m_allow_special[monster + 1] = state
- end
-end
-function set_object_generation(obj, state)
- if type(obj) == "string" then
- m_allow_special[test_item_name(obj) + 1] = state
- else
- m_allow_special[obj + 1] = state
- end
-end
-function set_artifact_generation(obj, state)
- m_allow_special[obj + 1] = state
-end
-
--- Strings
-function strcap(str)
- if strlen(str) > 1 then
- return strupper(strsub(str, 1, 1))..strsub(str, 2)
- elseif strlen(str) == 1 then
- return strupper(str)
- else
- return str
- end
-end
-
-function msg_format(...)
- msg_print(call(format, arg))
-end
-
--- A way to check if the game is now running(as opposed to initialization/character gen)
-game = {}
-add_hooks
-{
- [HOOK_GAME_START] = function ()
- game.started = TRUE
- end
-}