summaryrefslogtreecommitdiffhomepage
path: root/mrblib/raylib.c
diff options
context:
space:
mode:
Diffstat (limited to 'mrblib/raylib.c')
-rw-r--r--mrblib/raylib.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/mrblib/raylib.c b/mrblib/raylib.c
new file mode 100644
index 0000000..8acc89e
--- /dev/null
+++ b/mrblib/raylib.c
@@ -0,0 +1,29 @@
+#include <raylib.h>
+#include <mruby.h>
+#if defined(PLATFORM_WEB)
+#include <emscripten/emscripten.h>
+#endif
+
+ static mrb_value
+mrb_init_window(mrb_state, *mrb, mrb_value self)
+{
+ mrb_int screenWidth = 800;
+ mrb_int screenHeight = 600;
+ char* title = "Hello World from FelFlame!";
+ mrb_get_args(mrb, "|iiz", &screenWidth, &screenHeight, &title);
+
+ InitWindow(screenWidth, screenHeight, title);
+
+ return mrb_nil_value();
+}
+
+void
+mrb_mruby_raylib_gem_init(mrb_state* mrb) {
+ struct RClass *class_cextension = mrb_define_module(mrb, "Raylib");
+ mrb_define_class_method(mrb, class_cextension, "init_window", mrb_init_window, MRB_ARGS_REQ(2));
+}
+
+void
+mrb_mruby_raylib_gem_final(mrb_state* mrb) {
+ /* finalizer */
+}