lib/libtcod/console.rb in libtcod-0.0.2 vs lib/libtcod/console.rb in libtcod-0.0.3

- old
+ new

@@ -1,46 +1,80 @@ -module TCOD - class Console - attr_accessor :width, :height - - def self.root - @root ||= TCOD.nsole.new(0, 0, true) - end - - def initialize(w, h, root=False) - if root - @ptr = nil - else - @width = w - @height = w - @ptr = TCOD.console_new(w, h) - end - end - - def self.init_root(width, height, title, fullscreen=false, renderer=RENDERER_SDL) - TCOD.console_init_root(width, height, title, fullscreen, renderer) - root.width = width - root.height = height - root - end - - def window_closed? - TCOD.console_is_window_closed - end - - def set_default_foreground(color) - TCOD.console_set_default_foreground(@ptr, color) - end - - def put_char(x, y, c, flag=BKGND_DEFAULT) - TCOD.console_put_char(@ptr, x, y, c.ord, flag) - end - - def flush - TCOD.console_flush - end - - def wait_for_keypress(flush=false) - TCOD.console_wait_for_keypress(flush) - end - end -end +module TCOD + class Console + attr_accessor :width, :height, :ptr + + def self.root + @root ||= TCOD::Console.new(0, 0, true) + end + + def initialize(w, h, root=false) + if root + @ptr = nil + else + @width = w + @height = w + @ptr = TCOD.console_new(w, h) + end + end + + def init_root(width, height, title, fullscreen=false, renderer=RENDERER_SDL) + TCOD.console_init_root(width, height, title, fullscreen, renderer) + Console.root.width = width + Console.root.height = height + end + + def set_window_title(title); TCOD.console_set_window_title(title); end + def set_fullscreen(bool); TCOD.console_set_fullscreen(bool); end + def is_fullscreen?; TCOD.console_is_fullscreen; end + def window_closed?; TCOD.console_is_window_closed; end + def set_custom_font(fontFile, flags, nb_char_horiz=0, nb_char_vertic=0) + TCOD.console_set_custom_font(fontFile, flags, nb_char_horiz, nb_char_vertic) + end + def map_ascii_code_to_font(asciiCode, fontCharX, fontCharY) + TCOD.console_map_ascii_code_to_font(asciiCode.ord, fontCharX, fontCharY) + end + def map_ascii_codes_to_font(asciiCode, nbCodes, fontCharX, fontCharY) + TCOD.console_map_ascii_code_to_font(asciiCode.ord, nbCodes, fontCharX, fontCharY) + end + + + def set_default_background(color); TCOD.console_set_default_background(@ptr, color); end + def set_default_foreground(color); TCOD.console_set_default_foreground(@ptr, color); end + def clear; TCOD.console_clear(@ptr); end + + def put_char(x, y, c, flag=BKGND_DEFAULT) + TCOD.console_put_char(@ptr, x, y, c.ord, flag) + end + def put_char_ex(x, y, c, foreground, background) + TCOD.console_put_char_ex(@ptr, x, y, c.ord, foreground, background) + end + def set_background_flag(bkgnd_flag) + TCOD.console_set_background_flag(@ptr, bkgnd_flag) + end + def set_alignment(alignment) + TCOD.console_set_alignment(@ptr, alignment) + end + def print(x, y, fmt, *args) + TCOD.console_print(@ptr, x, y, fmt, *args) + end + def print_ex(x, y, bkgnd_flag, alignment, fmt, *args) + TCOD.console_print_ex(@ptr, x, y, bkgnd_flag, alignment, fmt, *args) + end + def print_rect(x, y, w, h, fmt, *args) + TCOD.console_print_rect(@ptr, x, y, w, h, fmt, *args) + end + def print_rect_ex(x, y, w, h, bkgnd_flag, alignment, fmt, *args) + TCOD.console_print_rect_ex(@ptr, x, y, w, h, bkgnf_flag, alignment, fmt, *args) + end + + def flush; TCOD.console_flush; end + + def check_for_keypress(flags=TCOD::KEY_PRESSED); TCOD.console_check_for_keypress(flags); end + def wait_for_keypress(flush=false); TCOD.console_wait_for_keypress(flush); end + def key_pressed?(keycode); TCOD.console_is_key_pressed(keycode); end + + def blit(src, xSrc, ySrc, wSrc, hSrc, xDst, yDst, foregroundAlpha=1.0, backgroundAlpha=1.0) + TCOD.console_blit(src.ptr, xSrc, ySrc, wSrc, hSrc, @ptr, xDst, yDst, foregroundAlpha, backgroundAlpha) + end + + end +end