Rakugo-Dialogue-System
Rakugo-Dialogue-System copied to clipboard
Using Nim for GDNative stuff.
I propose to use Nim instead of C++ for GDNative parts for Rakugo, as it is more similar to Python. There are nim-godot, but looks to be abandon. But there is another way to use C++ inside nim, example from main page:
{.passL: "-lsfml-graphics -lsfml-system -lsfml-window".}
type
VideoMode* {.importcpp: "sf::VideoMode".} = object
RenderWindowObj {.importcpp: "sf::RenderWindow".} = object
RenderWindow* = ptr RenderWindowObj
Color* {.importcpp: "sf::Color".} = object
Event* {.importcpp: "sf::Event".} = object
{.push cdecl, header: "<SFML/Graphics.hpp>".}
{.push importcpp.}
proc videoMode*(modeWidth, modeHeight: cuint,
modeBitsPerPixel: cuint = 32): VideoMode
proc newRenderWindow*(mode: VideoMode, title: cstring): RenderWindow
proc pollEvent*(window: RenderWindow, event: var Event): bool
proc newColor*(red, green, blue, alpha: uint8): Color
proc clear*(window: RenderWindow, color: Color)
proc display*(window: RenderWindow)
More is here in docs: https://nim-lang.org/docs/manual.html#implementation-specific-pragmas-importcpp-pragma