私はこれらの(やや法外な)数を持っています:
extern TCODLIB_API const TCOD_color_t TCOD_red;
extern TCODLIB_API const TCOD_color_t TCOD_flame;
extern TCODLIB_API const TCOD_color_t TCOD_orange;
extern TCODLIB_API const TCOD_color_t TCOD_amber;
extern TCODLIB_API const TCOD_color_t TCOD_yellow;
extern TCODLIB_API const TCOD_color_t TCOD_lime;
Ruby側の値をうまく取得するにはどうすればよいですか? 以下で使用されているように、attach_function に相当する attach_const が必要なように感じます。
module TCOD
extend FFI::Library
ffi_lib File.join(APP_ROOT, "libtcod-1.5.1/libtcod.so")
attach_function :color_RGB, 'TCOD_color_RGB', [:uchar, :uchar, :uchar], Color.val
end
可能であれば、lightest_sepia から desaturated_chartreuse まですべてを再定義する必要はありません...