3

私はこれらの(やや法外な)数を持っています:

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 まですべてを再定義する必要はありません...

4

1 に答える 1