AtomicPlayerJS.cpp 671 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #include <AtomicJS/Javascript/JSVM.h>
  2. #include <AtomicPlayer/Player.h>
  3. using namespace Atomic;
  4. using namespace AtomicPlayer;
  5. namespace Atomic
  6. {
  7. extern void jsb_package_atomicplayer_init(JSVM* vm);
  8. }
  9. namespace AtomicPlayer
  10. {
  11. void jsapi_init_atomicplayer(JSVM* vm)
  12. {
  13. duk_context* ctx = vm->GetJSContext();
  14. // setup the global AtomicPlayer object
  15. duk_push_object(ctx);
  16. duk_put_global_string(ctx, "AtomicPlayer");
  17. jsb_package_atomicplayer_init(vm);
  18. duk_get_global_string(ctx, "Atomic");
  19. js_push_class_object_instance(ctx, vm->GetSubsystem<Player>(), "Player");
  20. duk_put_prop_string(ctx, -2, "player");
  21. duk_pop(ctx);
  22. }
  23. }