2 * WARNING: This file is automatically generated from:
3 * 'src/scripting/wrapper.interface.hpp'
13 #include "squirrel_error.hpp"
14 #include "wrapper.interface.hpp"
21 static int DisplayEffect_release_hook(SQUserPointer ptr, int )
23 Scripting::DisplayEffect* _this = reinterpret_cast<Scripting::DisplayEffect*> (ptr);
28 static int DisplayEffect_fade_out_wrapper(HSQUIRRELVM vm)
30 Scripting::DisplayEffect* _this;
31 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
32 sq_throwerror(vm, _SC("'fade_out' called without instance"));
36 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
37 sq_throwerror(vm, _SC("Argument 1 not a float"));
42 _this->fade_out(arg0);
46 } catch(std::exception& e) {
47 sq_throwerror(vm, e.what());
50 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_out'"));
56 static int DisplayEffect_fade_in_wrapper(HSQUIRRELVM vm)
58 Scripting::DisplayEffect* _this;
59 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
60 sq_throwerror(vm, _SC("'fade_in' called without instance"));
64 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
65 sq_throwerror(vm, _SC("Argument 1 not a float"));
74 } catch(std::exception& e) {
75 sq_throwerror(vm, e.what());
78 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_in'"));
84 static int DisplayEffect_set_black_wrapper(HSQUIRRELVM vm)
86 Scripting::DisplayEffect* _this;
87 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
88 sq_throwerror(vm, _SC("'set_black' called without instance"));
92 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
93 sq_throwerror(vm, _SC("Argument 1 not a bool"));
98 _this->set_black(arg0);
102 } catch(std::exception& e) {
103 sq_throwerror(vm, e.what());
106 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_black'"));
112 static int DisplayEffect_is_black_wrapper(HSQUIRRELVM vm)
114 Scripting::DisplayEffect* _this;
115 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
116 sq_throwerror(vm, _SC("'is_black' called without instance"));
121 bool return_value = _this->is_black();
123 sq_pushbool(vm, return_value);
126 } catch(std::exception& e) {
127 sq_throwerror(vm, e.what());
130 sq_throwerror(vm, _SC("Unexpected exception while executing function 'is_black'"));
136 static int DisplayEffect_sixteen_to_nine_wrapper(HSQUIRRELVM vm)
138 Scripting::DisplayEffect* _this;
139 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
140 sq_throwerror(vm, _SC("'sixteen_to_nine' called without instance"));
144 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
145 sq_throwerror(vm, _SC("Argument 1 not a float"));
150 _this->sixteen_to_nine(arg0);
154 } catch(std::exception& e) {
155 sq_throwerror(vm, e.what());
158 sq_throwerror(vm, _SC("Unexpected exception while executing function 'sixteen_to_nine'"));
164 static int DisplayEffect_four_to_three_wrapper(HSQUIRRELVM vm)
166 Scripting::DisplayEffect* _this;
167 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
168 sq_throwerror(vm, _SC("'four_to_three' called without instance"));
172 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
173 sq_throwerror(vm, _SC("Argument 1 not a float"));
178 _this->four_to_three(arg0);
182 } catch(std::exception& e) {
183 sq_throwerror(vm, e.what());
186 sq_throwerror(vm, _SC("Unexpected exception while executing function 'four_to_three'"));
192 static int Camera_release_hook(SQUserPointer ptr, int )
194 Scripting::Camera* _this = reinterpret_cast<Scripting::Camera*> (ptr);
199 static int Camera_shake_wrapper(HSQUIRRELVM vm)
201 Scripting::Camera* _this;
202 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
203 sq_throwerror(vm, _SC("'shake' called without instance"));
207 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
208 sq_throwerror(vm, _SC("Argument 1 not a float"));
212 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
213 sq_throwerror(vm, _SC("Argument 2 not a float"));
217 if(SQ_FAILED(sq_getfloat(vm, 4, &arg2))) {
218 sq_throwerror(vm, _SC("Argument 3 not a float"));
223 _this->shake(arg0, arg1, arg2);
227 } catch(std::exception& e) {
228 sq_throwerror(vm, e.what());
231 sq_throwerror(vm, _SC("Unexpected exception while executing function 'shake'"));
237 static int Camera_set_pos_wrapper(HSQUIRRELVM vm)
239 Scripting::Camera* _this;
240 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
241 sq_throwerror(vm, _SC("'set_pos' called without instance"));
245 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
246 sq_throwerror(vm, _SC("Argument 1 not a float"));
250 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
251 sq_throwerror(vm, _SC("Argument 2 not a float"));
256 _this->set_pos(arg0, arg1);
260 } catch(std::exception& e) {
261 sq_throwerror(vm, e.what());
264 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_pos'"));
270 static int Camera_set_mode_wrapper(HSQUIRRELVM vm)
272 Scripting::Camera* _this;
273 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
274 sq_throwerror(vm, _SC("'set_mode' called without instance"));
278 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
279 sq_throwerror(vm, _SC("Argument 1 not a string"));
284 _this->set_mode(arg0);
288 } catch(std::exception& e) {
289 sq_throwerror(vm, e.what());
292 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_mode'"));
298 static int Camera_scroll_to_wrapper(HSQUIRRELVM vm)
300 Scripting::Camera* _this;
301 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
302 sq_throwerror(vm, _SC("'scroll_to' called without instance"));
306 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
307 sq_throwerror(vm, _SC("Argument 1 not a float"));
311 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
312 sq_throwerror(vm, _SC("Argument 2 not a float"));
316 if(SQ_FAILED(sq_getfloat(vm, 4, &arg2))) {
317 sq_throwerror(vm, _SC("Argument 3 not a float"));
322 _this->scroll_to(arg0, arg1, arg2);
326 } catch(std::exception& e) {
327 sq_throwerror(vm, e.what());
330 sq_throwerror(vm, _SC("Unexpected exception while executing function 'scroll_to'"));
336 static int Level_release_hook(SQUserPointer ptr, int )
338 Scripting::Level* _this = reinterpret_cast<Scripting::Level*> (ptr);
343 static int Level_finish_wrapper(HSQUIRRELVM vm)
345 Scripting::Level* _this;
346 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
347 sq_throwerror(vm, _SC("'finish' called without instance"));
351 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
352 sq_throwerror(vm, _SC("Argument 1 not a bool"));
361 } catch(std::exception& e) {
362 sq_throwerror(vm, e.what());
365 sq_throwerror(vm, _SC("Unexpected exception while executing function 'finish'"));
371 static int Level_spawn_wrapper(HSQUIRRELVM vm)
373 Scripting::Level* _this;
374 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
375 sq_throwerror(vm, _SC("'spawn' called without instance"));
379 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
380 sq_throwerror(vm, _SC("Argument 1 not a string"));
384 if(SQ_FAILED(sq_getstring(vm, 3, &arg1))) {
385 sq_throwerror(vm, _SC("Argument 2 not a string"));
390 _this->spawn(arg0, arg1);
394 } catch(std::exception& e) {
395 sq_throwerror(vm, e.what());
398 sq_throwerror(vm, _SC("Unexpected exception while executing function 'spawn'"));
404 static int Level_flip_vertically_wrapper(HSQUIRRELVM vm)
406 Scripting::Level* _this;
407 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
408 sq_throwerror(vm, _SC("'flip_vertically' called without instance"));
413 _this->flip_vertically();
417 } catch(std::exception& e) {
418 sq_throwerror(vm, e.what());
421 sq_throwerror(vm, _SC("Unexpected exception while executing function 'flip_vertically'"));
427 static int ScriptedObject_release_hook(SQUserPointer ptr, int )
429 Scripting::ScriptedObject* _this = reinterpret_cast<Scripting::ScriptedObject*> (ptr);
434 static int ScriptedObject_set_action_wrapper(HSQUIRRELVM vm)
436 Scripting::ScriptedObject* _this;
437 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
438 sq_throwerror(vm, _SC("'set_action' called without instance"));
442 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
443 sq_throwerror(vm, _SC("Argument 1 not a string"));
448 _this->set_action(arg0);
452 } catch(std::exception& e) {
453 sq_throwerror(vm, e.what());
456 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_action'"));
462 static int ScriptedObject_get_action_wrapper(HSQUIRRELVM vm)
464 Scripting::ScriptedObject* _this;
465 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
466 sq_throwerror(vm, _SC("'get_action' called without instance"));
471 std::string return_value = _this->get_action();
473 sq_pushstring(vm, return_value.c_str(), return_value.size());
476 } catch(std::exception& e) {
477 sq_throwerror(vm, e.what());
480 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_action'"));
486 static int ScriptedObject_move_wrapper(HSQUIRRELVM vm)
488 Scripting::ScriptedObject* _this;
489 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
490 sq_throwerror(vm, _SC("'move' called without instance"));
494 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
495 sq_throwerror(vm, _SC("Argument 1 not a float"));
499 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
500 sq_throwerror(vm, _SC("Argument 2 not a float"));
505 _this->move(arg0, arg1);
509 } catch(std::exception& e) {
510 sq_throwerror(vm, e.what());
513 sq_throwerror(vm, _SC("Unexpected exception while executing function 'move'"));
519 static int ScriptedObject_set_pos_wrapper(HSQUIRRELVM vm)
521 Scripting::ScriptedObject* _this;
522 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
523 sq_throwerror(vm, _SC("'set_pos' called without instance"));
527 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
528 sq_throwerror(vm, _SC("Argument 1 not a float"));
532 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
533 sq_throwerror(vm, _SC("Argument 2 not a float"));
538 _this->set_pos(arg0, arg1);
542 } catch(std::exception& e) {
543 sq_throwerror(vm, e.what());
546 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_pos'"));
552 static int ScriptedObject_get_pos_x_wrapper(HSQUIRRELVM vm)
554 Scripting::ScriptedObject* _this;
555 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
556 sq_throwerror(vm, _SC("'get_pos_x' called without instance"));
561 float return_value = _this->get_pos_x();
563 sq_pushfloat(vm, return_value);
566 } catch(std::exception& e) {
567 sq_throwerror(vm, e.what());
570 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_x'"));
576 static int ScriptedObject_get_pos_y_wrapper(HSQUIRRELVM vm)
578 Scripting::ScriptedObject* _this;
579 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
580 sq_throwerror(vm, _SC("'get_pos_y' called without instance"));
585 float return_value = _this->get_pos_y();
587 sq_pushfloat(vm, return_value);
590 } catch(std::exception& e) {
591 sq_throwerror(vm, e.what());
594 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_y'"));
600 static int ScriptedObject_set_velocity_wrapper(HSQUIRRELVM vm)
602 Scripting::ScriptedObject* _this;
603 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
604 sq_throwerror(vm, _SC("'set_velocity' called without instance"));
608 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
609 sq_throwerror(vm, _SC("Argument 1 not a float"));
613 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
614 sq_throwerror(vm, _SC("Argument 2 not a float"));
619 _this->set_velocity(arg0, arg1);
623 } catch(std::exception& e) {
624 sq_throwerror(vm, e.what());
627 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_velocity'"));
633 static int ScriptedObject_get_velocity_x_wrapper(HSQUIRRELVM vm)
635 Scripting::ScriptedObject* _this;
636 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
637 sq_throwerror(vm, _SC("'get_velocity_x' called without instance"));
642 float return_value = _this->get_velocity_x();
644 sq_pushfloat(vm, return_value);
647 } catch(std::exception& e) {
648 sq_throwerror(vm, e.what());
651 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_velocity_x'"));
657 static int ScriptedObject_get_velocity_y_wrapper(HSQUIRRELVM vm)
659 Scripting::ScriptedObject* _this;
660 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
661 sq_throwerror(vm, _SC("'get_velocity_y' called without instance"));
666 float return_value = _this->get_velocity_y();
668 sq_pushfloat(vm, return_value);
671 } catch(std::exception& e) {
672 sq_throwerror(vm, e.what());
675 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_velocity_y'"));
681 static int ScriptedObject_set_visible_wrapper(HSQUIRRELVM vm)
683 Scripting::ScriptedObject* _this;
684 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
685 sq_throwerror(vm, _SC("'set_visible' called without instance"));
689 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
690 sq_throwerror(vm, _SC("Argument 1 not a bool"));
695 _this->set_visible(arg0);
699 } catch(std::exception& e) {
700 sq_throwerror(vm, e.what());
703 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_visible'"));
709 static int ScriptedObject_is_visible_wrapper(HSQUIRRELVM vm)
711 Scripting::ScriptedObject* _this;
712 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
713 sq_throwerror(vm, _SC("'is_visible' called without instance"));
718 bool return_value = _this->is_visible();
720 sq_pushbool(vm, return_value);
723 } catch(std::exception& e) {
724 sq_throwerror(vm, e.what());
727 sq_throwerror(vm, _SC("Unexpected exception while executing function 'is_visible'"));
733 static int ScriptedObject_get_name_wrapper(HSQUIRRELVM vm)
735 Scripting::ScriptedObject* _this;
736 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
737 sq_throwerror(vm, _SC("'get_name' called without instance"));
742 std::string return_value = _this->get_name();
744 sq_pushstring(vm, return_value.c_str(), return_value.size());
747 } catch(std::exception& e) {
748 sq_throwerror(vm, e.what());
751 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_name'"));
757 static int Text_release_hook(SQUserPointer ptr, int )
759 Scripting::Text* _this = reinterpret_cast<Scripting::Text*> (ptr);
764 static int Text_set_text_wrapper(HSQUIRRELVM vm)
766 Scripting::Text* _this;
767 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
768 sq_throwerror(vm, _SC("'set_text' called without instance"));
772 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
773 sq_throwerror(vm, _SC("Argument 1 not a string"));
778 _this->set_text(arg0);
782 } catch(std::exception& e) {
783 sq_throwerror(vm, e.what());
786 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_text'"));
792 static int Text_set_font_wrapper(HSQUIRRELVM vm)
794 Scripting::Text* _this;
795 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
796 sq_throwerror(vm, _SC("'set_font' called without instance"));
800 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
801 sq_throwerror(vm, _SC("Argument 1 not a string"));
806 _this->set_font(arg0);
810 } catch(std::exception& e) {
811 sq_throwerror(vm, e.what());
814 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_font'"));
820 static int Text_fade_in_wrapper(HSQUIRRELVM vm)
822 Scripting::Text* _this;
823 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
824 sq_throwerror(vm, _SC("'fade_in' called without instance"));
828 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
829 sq_throwerror(vm, _SC("Argument 1 not a float"));
834 _this->fade_in(arg0);
838 } catch(std::exception& e) {
839 sq_throwerror(vm, e.what());
842 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_in'"));
848 static int Text_fade_out_wrapper(HSQUIRRELVM vm)
850 Scripting::Text* _this;
851 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
852 sq_throwerror(vm, _SC("'fade_out' called without instance"));
856 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
857 sq_throwerror(vm, _SC("Argument 1 not a float"));
862 _this->fade_out(arg0);
866 } catch(std::exception& e) {
867 sq_throwerror(vm, e.what());
870 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_out'"));
876 static int Text_set_visible_wrapper(HSQUIRRELVM vm)
878 Scripting::Text* _this;
879 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
880 sq_throwerror(vm, _SC("'set_visible' called without instance"));
884 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
885 sq_throwerror(vm, _SC("Argument 1 not a bool"));
890 _this->set_visible(arg0);
894 } catch(std::exception& e) {
895 sq_throwerror(vm, e.what());
898 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_visible'"));
904 static int Text_set_centered_wrapper(HSQUIRRELVM vm)
906 Scripting::Text* _this;
907 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
908 sq_throwerror(vm, _SC("'set_centered' called without instance"));
912 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
913 sq_throwerror(vm, _SC("Argument 1 not a bool"));
918 _this->set_centered(arg0);
922 } catch(std::exception& e) {
923 sq_throwerror(vm, e.what());
926 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_centered'"));
932 static int Player_release_hook(SQUserPointer ptr, int )
934 Scripting::Player* _this = reinterpret_cast<Scripting::Player*> (ptr);
939 static int Player_add_bonus_wrapper(HSQUIRRELVM vm)
941 Scripting::Player* _this;
942 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
943 sq_throwerror(vm, _SC("'add_bonus' called without instance"));
947 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
948 sq_throwerror(vm, _SC("Argument 1 not a string"));
953 _this->add_bonus(arg0);
957 } catch(std::exception& e) {
958 sq_throwerror(vm, e.what());
961 sq_throwerror(vm, _SC("Unexpected exception while executing function 'add_bonus'"));
967 static int Player_add_coins_wrapper(HSQUIRRELVM vm)
969 Scripting::Player* _this;
970 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
971 sq_throwerror(vm, _SC("'add_coins' called without instance"));
975 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
976 sq_throwerror(vm, _SC("Argument 1 not an integer"));
981 _this->add_coins(arg0);
985 } catch(std::exception& e) {
986 sq_throwerror(vm, e.what());
989 sq_throwerror(vm, _SC("Unexpected exception while executing function 'add_coins'"));
995 static int Player_make_invincible_wrapper(HSQUIRRELVM vm)
997 Scripting::Player* _this;
998 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
999 sq_throwerror(vm, _SC("'make_invincible' called without instance"));
1004 _this->make_invincible();
1008 } catch(std::exception& e) {
1009 sq_throwerror(vm, e.what());
1012 sq_throwerror(vm, _SC("Unexpected exception while executing function 'make_invincible'"));
1018 static int Player_deactivate_wrapper(HSQUIRRELVM vm)
1020 Scripting::Player* _this;
1021 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1022 sq_throwerror(vm, _SC("'deactivate' called without instance"));
1027 _this->deactivate();
1031 } catch(std::exception& e) {
1032 sq_throwerror(vm, e.what());
1035 sq_throwerror(vm, _SC("Unexpected exception while executing function 'deactivate'"));
1041 static int Player_activate_wrapper(HSQUIRRELVM vm)
1043 Scripting::Player* _this;
1044 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1045 sq_throwerror(vm, _SC("'activate' called without instance"));
1054 } catch(std::exception& e) {
1055 sq_throwerror(vm, e.what());
1058 sq_throwerror(vm, _SC("Unexpected exception while executing function 'activate'"));
1064 static int Player_walk_wrapper(HSQUIRRELVM vm)
1066 Scripting::Player* _this;
1067 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1068 sq_throwerror(vm, _SC("'walk' called without instance"));
1072 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1073 sq_throwerror(vm, _SC("Argument 1 not a float"));
1082 } catch(std::exception& e) {
1083 sq_throwerror(vm, e.what());
1086 sq_throwerror(vm, _SC("Unexpected exception while executing function 'walk'"));
1092 static int Player_set_visible_wrapper(HSQUIRRELVM vm)
1094 Scripting::Player* _this;
1095 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1096 sq_throwerror(vm, _SC("'set_visible' called without instance"));
1100 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1101 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1106 _this->set_visible(arg0);
1110 } catch(std::exception& e) {
1111 sq_throwerror(vm, e.what());
1114 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_visible'"));
1120 static int Player_get_visible_wrapper(HSQUIRRELVM vm)
1122 Scripting::Player* _this;
1123 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1124 sq_throwerror(vm, _SC("'get_visible' called without instance"));
1129 bool return_value = _this->get_visible();
1131 sq_pushbool(vm, return_value);
1134 } catch(std::exception& e) {
1135 sq_throwerror(vm, e.what());
1138 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_visible'"));
1144 static int FloatingImage_release_hook(SQUserPointer ptr, int )
1146 Scripting::FloatingImage* _this = reinterpret_cast<Scripting::FloatingImage*> (ptr);
1151 static int FloatingImage_constructor_wrapper(HSQUIRRELVM vm)
1154 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
1155 sq_throwerror(vm, _SC("Argument 1 not a string"));
1160 Scripting::FloatingImage* _this = new Scripting::FloatingImage(arg0);
1161 if(SQ_FAILED(sq_setinstanceup(vm, 1, _this))) {
1162 sq_throwerror(vm, _SC("Couldn't setup instance of 'FloatingImage' class"));
1165 sq_setreleasehook(vm, 1, FloatingImage_release_hook);
1169 } catch(std::exception& e) {
1170 sq_throwerror(vm, e.what());
1173 sq_throwerror(vm, _SC("Unexpected exception while executing function 'constructor'"));
1179 static int FloatingImage_set_layer_wrapper(HSQUIRRELVM vm)
1181 Scripting::FloatingImage* _this;
1182 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1183 sq_throwerror(vm, _SC("'set_layer' called without instance"));
1187 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
1188 sq_throwerror(vm, _SC("Argument 1 not an integer"));
1193 _this->set_layer(arg0);
1197 } catch(std::exception& e) {
1198 sq_throwerror(vm, e.what());
1201 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_layer'"));
1207 static int FloatingImage_get_layer_wrapper(HSQUIRRELVM vm)
1209 Scripting::FloatingImage* _this;
1210 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1211 sq_throwerror(vm, _SC("'get_layer' called without instance"));
1216 int return_value = _this->get_layer();
1218 sq_pushinteger(vm, return_value);
1221 } catch(std::exception& e) {
1222 sq_throwerror(vm, e.what());
1225 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_layer'"));
1231 static int FloatingImage_set_pos_wrapper(HSQUIRRELVM vm)
1233 Scripting::FloatingImage* _this;
1234 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1235 sq_throwerror(vm, _SC("'set_pos' called without instance"));
1239 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1240 sq_throwerror(vm, _SC("Argument 1 not a float"));
1244 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
1245 sq_throwerror(vm, _SC("Argument 2 not a float"));
1250 _this->set_pos(arg0, arg1);
1254 } catch(std::exception& e) {
1255 sq_throwerror(vm, e.what());
1258 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_pos'"));
1264 static int FloatingImage_get_pos_x_wrapper(HSQUIRRELVM vm)
1266 Scripting::FloatingImage* _this;
1267 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1268 sq_throwerror(vm, _SC("'get_pos_x' called without instance"));
1273 float return_value = _this->get_pos_x();
1275 sq_pushfloat(vm, return_value);
1278 } catch(std::exception& e) {
1279 sq_throwerror(vm, e.what());
1282 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_x'"));
1288 static int FloatingImage_get_pos_y_wrapper(HSQUIRRELVM vm)
1290 Scripting::FloatingImage* _this;
1291 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1292 sq_throwerror(vm, _SC("'get_pos_y' called without instance"));
1297 float return_value = _this->get_pos_y();
1299 sq_pushfloat(vm, return_value);
1302 } catch(std::exception& e) {
1303 sq_throwerror(vm, e.what());
1306 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_y'"));
1312 static int FloatingImage_set_anchor_point_wrapper(HSQUIRRELVM vm)
1314 Scripting::FloatingImage* _this;
1315 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1316 sq_throwerror(vm, _SC("'set_anchor_point' called without instance"));
1320 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
1321 sq_throwerror(vm, _SC("Argument 1 not an integer"));
1326 _this->set_anchor_point(arg0);
1330 } catch(std::exception& e) {
1331 sq_throwerror(vm, e.what());
1334 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_anchor_point'"));
1340 static int FloatingImage_get_anchor_point_wrapper(HSQUIRRELVM vm)
1342 Scripting::FloatingImage* _this;
1343 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1344 sq_throwerror(vm, _SC("'get_anchor_point' called without instance"));
1349 int return_value = _this->get_anchor_point();
1351 sq_pushinteger(vm, return_value);
1354 } catch(std::exception& e) {
1355 sq_throwerror(vm, e.what());
1358 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_anchor_point'"));
1364 static int FloatingImage_set_visible_wrapper(HSQUIRRELVM vm)
1366 Scripting::FloatingImage* _this;
1367 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1368 sq_throwerror(vm, _SC("'set_visible' called without instance"));
1372 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1373 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1378 _this->set_visible(arg0);
1382 } catch(std::exception& e) {
1383 sq_throwerror(vm, e.what());
1386 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_visible'"));
1392 static int FloatingImage_get_visible_wrapper(HSQUIRRELVM vm)
1394 Scripting::FloatingImage* _this;
1395 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1396 sq_throwerror(vm, _SC("'get_visible' called without instance"));
1401 bool return_value = _this->get_visible();
1403 sq_pushbool(vm, return_value);
1406 } catch(std::exception& e) {
1407 sq_throwerror(vm, e.what());
1410 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_visible'"));
1416 static int FloatingImage_set_action_wrapper(HSQUIRRELVM vm)
1418 Scripting::FloatingImage* _this;
1419 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1420 sq_throwerror(vm, _SC("'set_action' called without instance"));
1424 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
1425 sq_throwerror(vm, _SC("Argument 1 not a string"));
1430 _this->set_action(arg0);
1434 } catch(std::exception& e) {
1435 sq_throwerror(vm, e.what());
1438 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_action'"));
1444 static int FloatingImage_get_action_wrapper(HSQUIRRELVM vm)
1446 Scripting::FloatingImage* _this;
1447 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1448 sq_throwerror(vm, _SC("'get_action' called without instance"));
1453 std::string return_value = _this->get_action();
1455 sq_pushstring(vm, return_value.c_str(), return_value.size());
1458 } catch(std::exception& e) {
1459 sq_throwerror(vm, e.what());
1462 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_action'"));
1468 static int RandomGenerator_release_hook(SQUserPointer ptr, int )
1470 Scripting::RandomGenerator* _this = reinterpret_cast<Scripting::RandomGenerator*> (ptr);
1475 static int RandomGenerator_srand_wrapper(HSQUIRRELVM vm)
1477 Scripting::RandomGenerator* _this;
1478 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1479 sq_throwerror(vm, _SC("'srand' called without instance"));
1483 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
1484 sq_throwerror(vm, _SC("Argument 1 not an integer"));
1489 int return_value = _this->srand(arg0);
1491 sq_pushinteger(vm, return_value);
1494 } catch(std::exception& e) {
1495 sq_throwerror(vm, e.what());
1498 sq_throwerror(vm, _SC("Unexpected exception while executing function 'srand'"));
1504 static int RandomGenerator_rand_wrapper(HSQUIRRELVM vm)
1506 Scripting::RandomGenerator* _this;
1507 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1508 sq_throwerror(vm, _SC("'rand' called without instance"));
1513 int return_value = _this->rand();
1515 sq_pushinteger(vm, return_value);
1518 } catch(std::exception& e) {
1519 sq_throwerror(vm, e.what());
1522 sq_throwerror(vm, _SC("Unexpected exception while executing function 'rand'"));
1528 static int RandomGenerator_rand1i_wrapper(HSQUIRRELVM vm)
1530 Scripting::RandomGenerator* _this;
1531 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1532 sq_throwerror(vm, _SC("'rand1i' called without instance"));
1536 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
1537 sq_throwerror(vm, _SC("Argument 1 not an integer"));
1542 int return_value = _this->rand1i(arg0);
1544 sq_pushinteger(vm, return_value);
1547 } catch(std::exception& e) {
1548 sq_throwerror(vm, e.what());
1551 sq_throwerror(vm, _SC("Unexpected exception while executing function 'rand1i'"));
1557 static int RandomGenerator_rand2i_wrapper(HSQUIRRELVM vm)
1559 Scripting::RandomGenerator* _this;
1560 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1561 sq_throwerror(vm, _SC("'rand2i' called without instance"));
1565 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
1566 sq_throwerror(vm, _SC("Argument 1 not an integer"));
1570 if(SQ_FAILED(sq_getinteger(vm, 3, &arg1))) {
1571 sq_throwerror(vm, _SC("Argument 2 not an integer"));
1576 int return_value = _this->rand2i(arg0, arg1);
1578 sq_pushinteger(vm, return_value);
1581 } catch(std::exception& e) {
1582 sq_throwerror(vm, e.what());
1585 sq_throwerror(vm, _SC("Unexpected exception while executing function 'rand2i'"));
1591 static int RandomGenerator_rand1f_wrapper(HSQUIRRELVM vm)
1593 Scripting::RandomGenerator* _this;
1594 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1595 sq_throwerror(vm, _SC("'rand1f' called without instance"));
1599 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1600 sq_throwerror(vm, _SC("Argument 1 not a float"));
1605 float return_value = _this->rand1f(arg0);
1607 sq_pushfloat(vm, return_value);
1610 } catch(std::exception& e) {
1611 sq_throwerror(vm, e.what());
1614 sq_throwerror(vm, _SC("Unexpected exception while executing function 'rand1f'"));
1620 static int RandomGenerator_rand2f_wrapper(HSQUIRRELVM vm)
1622 Scripting::RandomGenerator* _this;
1623 if(SQ_FAILED(sq_getinstanceup(vm, 1, reinterpret_cast<SQUserPointer*> (&_this), 0))) {
1624 sq_throwerror(vm, _SC("'rand2f' called without instance"));
1628 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1629 sq_throwerror(vm, _SC("Argument 1 not a float"));
1633 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
1634 sq_throwerror(vm, _SC("Argument 2 not a float"));
1639 float return_value = _this->rand2f(arg0, arg1);
1641 sq_pushfloat(vm, return_value);
1644 } catch(std::exception& e) {
1645 sq_throwerror(vm, e.what());
1648 sq_throwerror(vm, _SC("Unexpected exception while executing function 'rand2f'"));
1654 static int display_wrapper(HSQUIRRELVM vm)
1656 return Scripting::display(vm);
1659 static int print_stacktrace_wrapper(HSQUIRRELVM vm)
1661 HSQUIRRELVM arg0 = vm;
1664 Scripting::print_stacktrace(arg0);
1668 } catch(std::exception& e) {
1669 sq_throwerror(vm, e.what());
1672 sq_throwerror(vm, _SC("Unexpected exception while executing function 'print_stacktrace'"));
1678 static int get_current_thread_wrapper(HSQUIRRELVM vm)
1680 return Scripting::get_current_thread(vm);
1683 static int display_text_file_wrapper(HSQUIRRELVM vm)
1686 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
1687 sq_throwerror(vm, _SC("Argument 1 not a string"));
1692 Scripting::display_text_file(arg0);
1696 } catch(std::exception& e) {
1697 sq_throwerror(vm, e.what());
1700 sq_throwerror(vm, _SC("Unexpected exception while executing function 'display_text_file'"));
1706 static int load_worldmap_wrapper(HSQUIRRELVM vm)
1709 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
1710 sq_throwerror(vm, _SC("Argument 1 not a string"));
1715 Scripting::load_worldmap(arg0);
1719 } catch(std::exception& e) {
1720 sq_throwerror(vm, e.what());
1723 sq_throwerror(vm, _SC("Unexpected exception while executing function 'load_worldmap'"));
1729 static int load_level_wrapper(HSQUIRRELVM vm)
1732 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
1733 sq_throwerror(vm, _SC("Argument 1 not a string"));
1738 Scripting::load_level(arg0);
1742 } catch(std::exception& e) {
1743 sq_throwerror(vm, e.what());
1746 sq_throwerror(vm, _SC("Unexpected exception while executing function 'load_level'"));
1752 static int wait_wrapper(HSQUIRRELVM vm)
1754 HSQUIRRELVM arg0 = vm;
1756 if(SQ_FAILED(sq_getfloat(vm, 2, &arg1))) {
1757 sq_throwerror(vm, _SC("Argument 1 not a float"));
1762 Scripting::wait(arg0, arg1);
1764 return sq_suspendvm(vm);
1766 } catch(std::exception& e) {
1767 sq_throwerror(vm, e.what());
1770 sq_throwerror(vm, _SC("Unexpected exception while executing function 'wait'"));
1776 static int wait_for_screenswitch_wrapper(HSQUIRRELVM vm)
1778 HSQUIRRELVM arg0 = vm;
1781 Scripting::wait_for_screenswitch(arg0);
1783 return sq_suspendvm(vm);
1785 } catch(std::exception& e) {
1786 sq_throwerror(vm, e.what());
1789 sq_throwerror(vm, _SC("Unexpected exception while executing function 'wait_for_screenswitch'"));
1795 static int exit_screen_wrapper(HSQUIRRELVM vm)
1800 Scripting::exit_screen();
1804 } catch(std::exception& e) {
1805 sq_throwerror(vm, e.what());
1808 sq_throwerror(vm, _SC("Unexpected exception while executing function 'exit_screen'"));
1814 static int fadeout_screen_wrapper(HSQUIRRELVM vm)
1817 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1818 sq_throwerror(vm, _SC("Argument 1 not a float"));
1823 Scripting::fadeout_screen(arg0);
1827 } catch(std::exception& e) {
1828 sq_throwerror(vm, e.what());
1831 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fadeout_screen'"));
1837 static int shrink_screen_wrapper(HSQUIRRELVM vm)
1840 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1841 sq_throwerror(vm, _SC("Argument 1 not a float"));
1845 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
1846 sq_throwerror(vm, _SC("Argument 2 not a float"));
1850 if(SQ_FAILED(sq_getfloat(vm, 4, &arg2))) {
1851 sq_throwerror(vm, _SC("Argument 3 not a float"));
1856 Scripting::shrink_screen(arg0, arg1, arg2);
1860 } catch(std::exception& e) {
1861 sq_throwerror(vm, e.what());
1864 sq_throwerror(vm, _SC("Unexpected exception while executing function 'shrink_screen'"));
1870 static int translate_wrapper(HSQUIRRELVM vm)
1873 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
1874 sq_throwerror(vm, _SC("Argument 1 not a string"));
1879 std::string return_value = Scripting::translate(arg0);
1881 sq_pushstring(vm, return_value.c_str(), return_value.size());
1884 } catch(std::exception& e) {
1885 sq_throwerror(vm, e.what());
1888 sq_throwerror(vm, _SC("Unexpected exception while executing function 'translate'"));
1894 static int import_wrapper(HSQUIRRELVM vm)
1896 HSQUIRRELVM arg0 = vm;
1898 if(SQ_FAILED(sq_getstring(vm, 2, &arg1))) {
1899 sq_throwerror(vm, _SC("Argument 1 not a string"));
1904 Scripting::import(arg0, arg1);
1908 } catch(std::exception& e) {
1909 sq_throwerror(vm, e.what());
1912 sq_throwerror(vm, _SC("Unexpected exception while executing function 'import'"));
1918 static int save_state_wrapper(HSQUIRRELVM vm)
1923 Scripting::save_state();
1927 } catch(std::exception& e) {
1928 sq_throwerror(vm, e.what());
1931 sq_throwerror(vm, _SC("Unexpected exception while executing function 'save_state'"));
1937 static int debug_collrects_wrapper(HSQUIRRELVM vm)
1940 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1941 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1946 Scripting::debug_collrects(arg0);
1950 } catch(std::exception& e) {
1951 sq_throwerror(vm, e.what());
1954 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_collrects'"));
1960 static int debug_draw_fps_wrapper(HSQUIRRELVM vm)
1963 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1964 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1969 Scripting::debug_draw_fps(arg0);
1973 } catch(std::exception& e) {
1974 sq_throwerror(vm, e.what());
1977 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_draw_fps'"));
1983 static int debug_draw_solids_only_wrapper(HSQUIRRELVM vm)
1986 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1987 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1992 Scripting::debug_draw_solids_only(arg0);
1996 } catch(std::exception& e) {
1997 sq_throwerror(vm, e.what());
2000 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_draw_solids_only'"));
2006 static int play_music_wrapper(HSQUIRRELVM vm)
2009 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
2010 sq_throwerror(vm, _SC("Argument 1 not a string"));
2015 Scripting::play_music(arg0);
2019 } catch(std::exception& e) {
2020 sq_throwerror(vm, e.what());
2023 sq_throwerror(vm, _SC("Unexpected exception while executing function 'play_music'"));
2029 static int play_sound_wrapper(HSQUIRRELVM vm)
2032 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
2033 sq_throwerror(vm, _SC("Argument 1 not a string"));
2038 Scripting::play_sound(arg0);
2042 } catch(std::exception& e) {
2043 sq_throwerror(vm, e.what());
2046 sq_throwerror(vm, _SC("Unexpected exception while executing function 'play_sound'"));
2052 static int grease_wrapper(HSQUIRRELVM vm)
2057 Scripting::grease();
2061 } catch(std::exception& e) {
2062 sq_throwerror(vm, e.what());
2065 sq_throwerror(vm, _SC("Unexpected exception while executing function 'grease'"));
2071 static int invincible_wrapper(HSQUIRRELVM vm)
2076 Scripting::invincible();
2080 } catch(std::exception& e) {
2081 sq_throwerror(vm, e.what());
2084 sq_throwerror(vm, _SC("Unexpected exception while executing function 'invincible'"));
2090 static int mortal_wrapper(HSQUIRRELVM vm)
2095 Scripting::mortal();
2099 } catch(std::exception& e) {
2100 sq_throwerror(vm, e.what());
2103 sq_throwerror(vm, _SC("Unexpected exception while executing function 'mortal'"));
2109 static int shrink_wrapper(HSQUIRRELVM vm)
2114 Scripting::shrink();
2118 } catch(std::exception& e) {
2119 sq_throwerror(vm, e.what());
2122 sq_throwerror(vm, _SC("Unexpected exception while executing function 'shrink'"));
2128 static int kill_wrapper(HSQUIRRELVM vm)
2137 } catch(std::exception& e) {
2138 sq_throwerror(vm, e.what());
2141 sq_throwerror(vm, _SC("Unexpected exception while executing function 'kill'"));
2147 static int restart_wrapper(HSQUIRRELVM vm)
2152 Scripting::restart();
2156 } catch(std::exception& e) {
2157 sq_throwerror(vm, e.what());
2160 sq_throwerror(vm, _SC("Unexpected exception while executing function 'restart'"));
2166 static int whereami_wrapper(HSQUIRRELVM vm)
2171 Scripting::whereami();
2175 } catch(std::exception& e) {
2176 sq_throwerror(vm, e.what());
2179 sq_throwerror(vm, _SC("Unexpected exception while executing function 'whereami'"));
2185 static int gotoend_wrapper(HSQUIRRELVM vm)
2190 Scripting::gotoend();
2194 } catch(std::exception& e) {
2195 sq_throwerror(vm, e.what());
2198 sq_throwerror(vm, _SC("Unexpected exception while executing function 'gotoend'"));
2204 static int camera_wrapper(HSQUIRRELVM vm)
2209 Scripting::camera();
2213 } catch(std::exception& e) {
2214 sq_throwerror(vm, e.what());
2217 sq_throwerror(vm, _SC("Unexpected exception while executing function 'camera'"));
2223 static int quit_wrapper(HSQUIRRELVM vm)
2232 } catch(std::exception& e) {
2233 sq_throwerror(vm, e.what());
2236 sq_throwerror(vm, _SC("Unexpected exception while executing function 'quit'"));
2242 } // end of namespace Wrapper
2244 void create_squirrel_instance(HSQUIRRELVM v, Scripting::DisplayEffect* object, bool setup_releasehook)
2246 using namespace Wrapper;
2248 sq_pushroottable(v);
2249 sq_pushstring(v, "DisplayEffect", -1);
2250 if(SQ_FAILED(sq_get(v, -2))) {
2251 std::ostringstream msg;
2252 msg << "Couldn't resolved squirrel type 'DisplayEffect'";
2253 throw SquirrelError(v, msg.str());
2256 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
2257 std::ostringstream msg;
2258 msg << "Couldn't setup squirrel instance for object of type 'DisplayEffect'";
2259 throw SquirrelError(v, msg.str());
2261 sq_remove(v, -2); // remove object name
2263 if(setup_releasehook) {
2264 sq_setreleasehook(v, -1, DisplayEffect_release_hook);
2267 sq_remove(v, -2); // remove root table
2270 void create_squirrel_instance(HSQUIRRELVM v, Scripting::Camera* object, bool setup_releasehook)
2272 using namespace Wrapper;
2274 sq_pushroottable(v);
2275 sq_pushstring(v, "Camera", -1);
2276 if(SQ_FAILED(sq_get(v, -2))) {
2277 std::ostringstream msg;
2278 msg << "Couldn't resolved squirrel type 'Camera'";
2279 throw SquirrelError(v, msg.str());
2282 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
2283 std::ostringstream msg;
2284 msg << "Couldn't setup squirrel instance for object of type 'Camera'";
2285 throw SquirrelError(v, msg.str());
2287 sq_remove(v, -2); // remove object name
2289 if(setup_releasehook) {
2290 sq_setreleasehook(v, -1, Camera_release_hook);
2293 sq_remove(v, -2); // remove root table
2296 void create_squirrel_instance(HSQUIRRELVM v, Scripting::Level* object, bool setup_releasehook)
2298 using namespace Wrapper;
2300 sq_pushroottable(v);
2301 sq_pushstring(v, "Level", -1);
2302 if(SQ_FAILED(sq_get(v, -2))) {
2303 std::ostringstream msg;
2304 msg << "Couldn't resolved squirrel type 'Level'";
2305 throw SquirrelError(v, msg.str());
2308 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
2309 std::ostringstream msg;
2310 msg << "Couldn't setup squirrel instance for object of type 'Level'";
2311 throw SquirrelError(v, msg.str());
2313 sq_remove(v, -2); // remove object name
2315 if(setup_releasehook) {
2316 sq_setreleasehook(v, -1, Level_release_hook);
2319 sq_remove(v, -2); // remove root table
2322 void create_squirrel_instance(HSQUIRRELVM v, Scripting::ScriptedObject* object, bool setup_releasehook)
2324 using namespace Wrapper;
2326 sq_pushroottable(v);
2327 sq_pushstring(v, "ScriptedObject", -1);
2328 if(SQ_FAILED(sq_get(v, -2))) {
2329 std::ostringstream msg;
2330 msg << "Couldn't resolved squirrel type 'ScriptedObject'";
2331 throw SquirrelError(v, msg.str());
2334 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
2335 std::ostringstream msg;
2336 msg << "Couldn't setup squirrel instance for object of type 'ScriptedObject'";
2337 throw SquirrelError(v, msg.str());
2339 sq_remove(v, -2); // remove object name
2341 if(setup_releasehook) {
2342 sq_setreleasehook(v, -1, ScriptedObject_release_hook);
2345 sq_remove(v, -2); // remove root table
2348 void create_squirrel_instance(HSQUIRRELVM v, Scripting::Text* object, bool setup_releasehook)
2350 using namespace Wrapper;
2352 sq_pushroottable(v);
2353 sq_pushstring(v, "Text", -1);
2354 if(SQ_FAILED(sq_get(v, -2))) {
2355 std::ostringstream msg;
2356 msg << "Couldn't resolved squirrel type 'Text'";
2357 throw SquirrelError(v, msg.str());
2360 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
2361 std::ostringstream msg;
2362 msg << "Couldn't setup squirrel instance for object of type 'Text'";
2363 throw SquirrelError(v, msg.str());
2365 sq_remove(v, -2); // remove object name
2367 if(setup_releasehook) {
2368 sq_setreleasehook(v, -1, Text_release_hook);
2371 sq_remove(v, -2); // remove root table
2374 void create_squirrel_instance(HSQUIRRELVM v, Scripting::Player* object, bool setup_releasehook)
2376 using namespace Wrapper;
2378 sq_pushroottable(v);
2379 sq_pushstring(v, "Player", -1);
2380 if(SQ_FAILED(sq_get(v, -2))) {
2381 std::ostringstream msg;
2382 msg << "Couldn't resolved squirrel type 'Player'";
2383 throw SquirrelError(v, msg.str());
2386 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
2387 std::ostringstream msg;
2388 msg << "Couldn't setup squirrel instance for object of type 'Player'";
2389 throw SquirrelError(v, msg.str());
2391 sq_remove(v, -2); // remove object name
2393 if(setup_releasehook) {
2394 sq_setreleasehook(v, -1, Player_release_hook);
2397 sq_remove(v, -2); // remove root table
2400 void create_squirrel_instance(HSQUIRRELVM v, Scripting::FloatingImage* object, bool setup_releasehook)
2402 using namespace Wrapper;
2404 sq_pushroottable(v);
2405 sq_pushstring(v, "FloatingImage", -1);
2406 if(SQ_FAILED(sq_get(v, -2))) {
2407 std::ostringstream msg;
2408 msg << "Couldn't resolved squirrel type 'FloatingImage'";
2409 throw SquirrelError(v, msg.str());
2412 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
2413 std::ostringstream msg;
2414 msg << "Couldn't setup squirrel instance for object of type 'FloatingImage'";
2415 throw SquirrelError(v, msg.str());
2417 sq_remove(v, -2); // remove object name
2419 if(setup_releasehook) {
2420 sq_setreleasehook(v, -1, FloatingImage_release_hook);
2423 sq_remove(v, -2); // remove root table
2426 void create_squirrel_instance(HSQUIRRELVM v, Scripting::RandomGenerator* object, bool setup_releasehook)
2428 using namespace Wrapper;
2430 sq_pushroottable(v);
2431 sq_pushstring(v, "RandomGenerator", -1);
2432 if(SQ_FAILED(sq_get(v, -2))) {
2433 std::ostringstream msg;
2434 msg << "Couldn't resolved squirrel type 'RandomGenerator'";
2435 throw SquirrelError(v, msg.str());
2438 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
2439 std::ostringstream msg;
2440 msg << "Couldn't setup squirrel instance for object of type 'RandomGenerator'";
2441 throw SquirrelError(v, msg.str());
2443 sq_remove(v, -2); // remove object name
2445 if(setup_releasehook) {
2446 sq_setreleasehook(v, -1, RandomGenerator_release_hook);
2449 sq_remove(v, -2); // remove root table
2452 void register_supertux_wrapper(HSQUIRRELVM v)
2454 using namespace Wrapper;
2456 sq_pushstring(v, "ANCHOR_TOP", -1);
2457 sq_pushinteger(v, 16);
2458 if(SQ_FAILED(sq_createslot(v, -3))) {
2459 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_TOP'");
2462 sq_pushstring(v, "ANCHOR_BOTTOM", -1);
2463 sq_pushinteger(v, 32);
2464 if(SQ_FAILED(sq_createslot(v, -3))) {
2465 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_BOTTOM'");
2468 sq_pushstring(v, "ANCHOR_LEFT", -1);
2469 sq_pushinteger(v, 1);
2470 if(SQ_FAILED(sq_createslot(v, -3))) {
2471 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_LEFT'");
2474 sq_pushstring(v, "ANCHOR_RIGHT", -1);
2475 sq_pushinteger(v, 2);
2476 if(SQ_FAILED(sq_createslot(v, -3))) {
2477 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_RIGHT'");
2480 sq_pushstring(v, "ANCHOR_MIDDLE", -1);
2481 sq_pushinteger(v, 0);
2482 if(SQ_FAILED(sq_createslot(v, -3))) {
2483 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_MIDDLE'");
2486 sq_pushstring(v, "ANCHOR_TOP_LEFT", -1);
2487 sq_pushinteger(v, 17);
2488 if(SQ_FAILED(sq_createslot(v, -3))) {
2489 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_TOP_LEFT'");
2492 sq_pushstring(v, "ANCHOR_TOP_RIGHT", -1);
2493 sq_pushinteger(v, 18);
2494 if(SQ_FAILED(sq_createslot(v, -3))) {
2495 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_TOP_RIGHT'");
2498 sq_pushstring(v, "ANCHOR_BOTTOM_LEFT", -1);
2499 sq_pushinteger(v, 33);
2500 if(SQ_FAILED(sq_createslot(v, -3))) {
2501 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_BOTTOM_LEFT'");
2504 sq_pushstring(v, "ANCHOR_BOTTOM_RIGHT", -1);
2505 sq_pushinteger(v, 34);
2506 if(SQ_FAILED(sq_createslot(v, -3))) {
2507 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_BOTTOM_RIGHT'");
2510 sq_pushstring(v, "display", -1);
2511 sq_newclosure(v, &display_wrapper, 0);
2512 if(SQ_FAILED(sq_createslot(v, -3))) {
2513 throw SquirrelError(v, "Couldn't register function 'display'");
2516 sq_pushstring(v, "print_stacktrace", -1);
2517 sq_newclosure(v, &print_stacktrace_wrapper, 0);
2518 if(SQ_FAILED(sq_createslot(v, -3))) {
2519 throw SquirrelError(v, "Couldn't register function 'print_stacktrace'");
2522 sq_pushstring(v, "get_current_thread", -1);
2523 sq_newclosure(v, &get_current_thread_wrapper, 0);
2524 if(SQ_FAILED(sq_createslot(v, -3))) {
2525 throw SquirrelError(v, "Couldn't register function 'get_current_thread'");
2528 sq_pushstring(v, "display_text_file", -1);
2529 sq_newclosure(v, &display_text_file_wrapper, 0);
2530 if(SQ_FAILED(sq_createslot(v, -3))) {
2531 throw SquirrelError(v, "Couldn't register function 'display_text_file'");
2534 sq_pushstring(v, "load_worldmap", -1);
2535 sq_newclosure(v, &load_worldmap_wrapper, 0);
2536 if(SQ_FAILED(sq_createslot(v, -3))) {
2537 throw SquirrelError(v, "Couldn't register function 'load_worldmap'");
2540 sq_pushstring(v, "load_level", -1);
2541 sq_newclosure(v, &load_level_wrapper, 0);
2542 if(SQ_FAILED(sq_createslot(v, -3))) {
2543 throw SquirrelError(v, "Couldn't register function 'load_level'");
2546 sq_pushstring(v, "wait", -1);
2547 sq_newclosure(v, &wait_wrapper, 0);
2548 if(SQ_FAILED(sq_createslot(v, -3))) {
2549 throw SquirrelError(v, "Couldn't register function 'wait'");
2552 sq_pushstring(v, "wait_for_screenswitch", -1);
2553 sq_newclosure(v, &wait_for_screenswitch_wrapper, 0);
2554 if(SQ_FAILED(sq_createslot(v, -3))) {
2555 throw SquirrelError(v, "Couldn't register function 'wait_for_screenswitch'");
2558 sq_pushstring(v, "exit_screen", -1);
2559 sq_newclosure(v, &exit_screen_wrapper, 0);
2560 if(SQ_FAILED(sq_createslot(v, -3))) {
2561 throw SquirrelError(v, "Couldn't register function 'exit_screen'");
2564 sq_pushstring(v, "fadeout_screen", -1);
2565 sq_newclosure(v, &fadeout_screen_wrapper, 0);
2566 if(SQ_FAILED(sq_createslot(v, -3))) {
2567 throw SquirrelError(v, "Couldn't register function 'fadeout_screen'");
2570 sq_pushstring(v, "shrink_screen", -1);
2571 sq_newclosure(v, &shrink_screen_wrapper, 0);
2572 if(SQ_FAILED(sq_createslot(v, -3))) {
2573 throw SquirrelError(v, "Couldn't register function 'shrink_screen'");
2576 sq_pushstring(v, "translate", -1);
2577 sq_newclosure(v, &translate_wrapper, 0);
2578 if(SQ_FAILED(sq_createslot(v, -3))) {
2579 throw SquirrelError(v, "Couldn't register function 'translate'");
2582 sq_pushstring(v, "import", -1);
2583 sq_newclosure(v, &import_wrapper, 0);
2584 if(SQ_FAILED(sq_createslot(v, -3))) {
2585 throw SquirrelError(v, "Couldn't register function 'import'");
2588 sq_pushstring(v, "save_state", -1);
2589 sq_newclosure(v, &save_state_wrapper, 0);
2590 if(SQ_FAILED(sq_createslot(v, -3))) {
2591 throw SquirrelError(v, "Couldn't register function 'save_state'");
2594 sq_pushstring(v, "debug_collrects", -1);
2595 sq_newclosure(v, &debug_collrects_wrapper, 0);
2596 if(SQ_FAILED(sq_createslot(v, -3))) {
2597 throw SquirrelError(v, "Couldn't register function 'debug_collrects'");
2600 sq_pushstring(v, "debug_draw_fps", -1);
2601 sq_newclosure(v, &debug_draw_fps_wrapper, 0);
2602 if(SQ_FAILED(sq_createslot(v, -3))) {
2603 throw SquirrelError(v, "Couldn't register function 'debug_draw_fps'");
2606 sq_pushstring(v, "debug_draw_solids_only", -1);
2607 sq_newclosure(v, &debug_draw_solids_only_wrapper, 0);
2608 if(SQ_FAILED(sq_createslot(v, -3))) {
2609 throw SquirrelError(v, "Couldn't register function 'debug_draw_solids_only'");
2612 sq_pushstring(v, "play_music", -1);
2613 sq_newclosure(v, &play_music_wrapper, 0);
2614 if(SQ_FAILED(sq_createslot(v, -3))) {
2615 throw SquirrelError(v, "Couldn't register function 'play_music'");
2618 sq_pushstring(v, "play_sound", -1);
2619 sq_newclosure(v, &play_sound_wrapper, 0);
2620 if(SQ_FAILED(sq_createslot(v, -3))) {
2621 throw SquirrelError(v, "Couldn't register function 'play_sound'");
2624 sq_pushstring(v, "grease", -1);
2625 sq_newclosure(v, &grease_wrapper, 0);
2626 if(SQ_FAILED(sq_createslot(v, -3))) {
2627 throw SquirrelError(v, "Couldn't register function 'grease'");
2630 sq_pushstring(v, "invincible", -1);
2631 sq_newclosure(v, &invincible_wrapper, 0);
2632 if(SQ_FAILED(sq_createslot(v, -3))) {
2633 throw SquirrelError(v, "Couldn't register function 'invincible'");
2636 sq_pushstring(v, "mortal", -1);
2637 sq_newclosure(v, &mortal_wrapper, 0);
2638 if(SQ_FAILED(sq_createslot(v, -3))) {
2639 throw SquirrelError(v, "Couldn't register function 'mortal'");
2642 sq_pushstring(v, "shrink", -1);
2643 sq_newclosure(v, &shrink_wrapper, 0);
2644 if(SQ_FAILED(sq_createslot(v, -3))) {
2645 throw SquirrelError(v, "Couldn't register function 'shrink'");
2648 sq_pushstring(v, "kill", -1);
2649 sq_newclosure(v, &kill_wrapper, 0);
2650 if(SQ_FAILED(sq_createslot(v, -3))) {
2651 throw SquirrelError(v, "Couldn't register function 'kill'");
2654 sq_pushstring(v, "restart", -1);
2655 sq_newclosure(v, &restart_wrapper, 0);
2656 if(SQ_FAILED(sq_createslot(v, -3))) {
2657 throw SquirrelError(v, "Couldn't register function 'restart'");
2660 sq_pushstring(v, "whereami", -1);
2661 sq_newclosure(v, &whereami_wrapper, 0);
2662 if(SQ_FAILED(sq_createslot(v, -3))) {
2663 throw SquirrelError(v, "Couldn't register function 'whereami'");
2666 sq_pushstring(v, "gotoend", -1);
2667 sq_newclosure(v, &gotoend_wrapper, 0);
2668 if(SQ_FAILED(sq_createslot(v, -3))) {
2669 throw SquirrelError(v, "Couldn't register function 'gotoend'");
2672 sq_pushstring(v, "camera", -1);
2673 sq_newclosure(v, &camera_wrapper, 0);
2674 if(SQ_FAILED(sq_createslot(v, -3))) {
2675 throw SquirrelError(v, "Couldn't register function 'camera'");
2678 sq_pushstring(v, "quit", -1);
2679 sq_newclosure(v, &quit_wrapper, 0);
2680 if(SQ_FAILED(sq_createslot(v, -3))) {
2681 throw SquirrelError(v, "Couldn't register function 'quit'");
2684 // Register class DisplayEffect
2685 sq_pushstring(v, "DisplayEffect", -1);
2686 if(sq_newclass(v, SQFalse) < 0) {
2687 std::ostringstream msg;
2688 msg << "Couldn't create new class 'DisplayEffect'";
2689 throw SquirrelError(v, msg.str());
2691 sq_pushstring(v, "fade_out", -1);
2692 sq_newclosure(v, &DisplayEffect_fade_out_wrapper, 0);
2693 if(SQ_FAILED(sq_createslot(v, -3))) {
2694 throw SquirrelError(v, "Couldn't register function 'fade_out'");
2697 sq_pushstring(v, "fade_in", -1);
2698 sq_newclosure(v, &DisplayEffect_fade_in_wrapper, 0);
2699 if(SQ_FAILED(sq_createslot(v, -3))) {
2700 throw SquirrelError(v, "Couldn't register function 'fade_in'");
2703 sq_pushstring(v, "set_black", -1);
2704 sq_newclosure(v, &DisplayEffect_set_black_wrapper, 0);
2705 if(SQ_FAILED(sq_createslot(v, -3))) {
2706 throw SquirrelError(v, "Couldn't register function 'set_black'");
2709 sq_pushstring(v, "is_black", -1);
2710 sq_newclosure(v, &DisplayEffect_is_black_wrapper, 0);
2711 if(SQ_FAILED(sq_createslot(v, -3))) {
2712 throw SquirrelError(v, "Couldn't register function 'is_black'");
2715 sq_pushstring(v, "sixteen_to_nine", -1);
2716 sq_newclosure(v, &DisplayEffect_sixteen_to_nine_wrapper, 0);
2717 if(SQ_FAILED(sq_createslot(v, -3))) {
2718 throw SquirrelError(v, "Couldn't register function 'sixteen_to_nine'");
2721 sq_pushstring(v, "four_to_three", -1);
2722 sq_newclosure(v, &DisplayEffect_four_to_three_wrapper, 0);
2723 if(SQ_FAILED(sq_createslot(v, -3))) {
2724 throw SquirrelError(v, "Couldn't register function 'four_to_three'");
2727 if(SQ_FAILED(sq_createslot(v, -3))) {
2728 throw SquirrelError(v, "Couldn't register class 'DisplayEffect'");
2731 // Register class Camera
2732 sq_pushstring(v, "Camera", -1);
2733 if(sq_newclass(v, SQFalse) < 0) {
2734 std::ostringstream msg;
2735 msg << "Couldn't create new class 'Camera'";
2736 throw SquirrelError(v, msg.str());
2738 sq_pushstring(v, "shake", -1);
2739 sq_newclosure(v, &Camera_shake_wrapper, 0);
2740 if(SQ_FAILED(sq_createslot(v, -3))) {
2741 throw SquirrelError(v, "Couldn't register function 'shake'");
2744 sq_pushstring(v, "set_pos", -1);
2745 sq_newclosure(v, &Camera_set_pos_wrapper, 0);
2746 if(SQ_FAILED(sq_createslot(v, -3))) {
2747 throw SquirrelError(v, "Couldn't register function 'set_pos'");
2750 sq_pushstring(v, "set_mode", -1);
2751 sq_newclosure(v, &Camera_set_mode_wrapper, 0);
2752 if(SQ_FAILED(sq_createslot(v, -3))) {
2753 throw SquirrelError(v, "Couldn't register function 'set_mode'");
2756 sq_pushstring(v, "scroll_to", -1);
2757 sq_newclosure(v, &Camera_scroll_to_wrapper, 0);
2758 if(SQ_FAILED(sq_createslot(v, -3))) {
2759 throw SquirrelError(v, "Couldn't register function 'scroll_to'");
2762 if(SQ_FAILED(sq_createslot(v, -3))) {
2763 throw SquirrelError(v, "Couldn't register class 'Camera'");
2766 // Register class Level
2767 sq_pushstring(v, "Level", -1);
2768 if(sq_newclass(v, SQFalse) < 0) {
2769 std::ostringstream msg;
2770 msg << "Couldn't create new class 'Level'";
2771 throw SquirrelError(v, msg.str());
2773 sq_pushstring(v, "finish", -1);
2774 sq_newclosure(v, &Level_finish_wrapper, 0);
2775 if(SQ_FAILED(sq_createslot(v, -3))) {
2776 throw SquirrelError(v, "Couldn't register function 'finish'");
2779 sq_pushstring(v, "spawn", -1);
2780 sq_newclosure(v, &Level_spawn_wrapper, 0);
2781 if(SQ_FAILED(sq_createslot(v, -3))) {
2782 throw SquirrelError(v, "Couldn't register function 'spawn'");
2785 sq_pushstring(v, "flip_vertically", -1);
2786 sq_newclosure(v, &Level_flip_vertically_wrapper, 0);
2787 if(SQ_FAILED(sq_createslot(v, -3))) {
2788 throw SquirrelError(v, "Couldn't register function 'flip_vertically'");
2791 if(SQ_FAILED(sq_createslot(v, -3))) {
2792 throw SquirrelError(v, "Couldn't register class 'Level'");
2795 // Register class ScriptedObject
2796 sq_pushstring(v, "ScriptedObject", -1);
2797 if(sq_newclass(v, SQFalse) < 0) {
2798 std::ostringstream msg;
2799 msg << "Couldn't create new class 'ScriptedObject'";
2800 throw SquirrelError(v, msg.str());
2802 sq_pushstring(v, "set_action", -1);
2803 sq_newclosure(v, &ScriptedObject_set_action_wrapper, 0);
2804 if(SQ_FAILED(sq_createslot(v, -3))) {
2805 throw SquirrelError(v, "Couldn't register function 'set_action'");
2808 sq_pushstring(v, "get_action", -1);
2809 sq_newclosure(v, &ScriptedObject_get_action_wrapper, 0);
2810 if(SQ_FAILED(sq_createslot(v, -3))) {
2811 throw SquirrelError(v, "Couldn't register function 'get_action'");
2814 sq_pushstring(v, "move", -1);
2815 sq_newclosure(v, &ScriptedObject_move_wrapper, 0);
2816 if(SQ_FAILED(sq_createslot(v, -3))) {
2817 throw SquirrelError(v, "Couldn't register function 'move'");
2820 sq_pushstring(v, "set_pos", -1);
2821 sq_newclosure(v, &ScriptedObject_set_pos_wrapper, 0);
2822 if(SQ_FAILED(sq_createslot(v, -3))) {
2823 throw SquirrelError(v, "Couldn't register function 'set_pos'");
2826 sq_pushstring(v, "get_pos_x", -1);
2827 sq_newclosure(v, &ScriptedObject_get_pos_x_wrapper, 0);
2828 if(SQ_FAILED(sq_createslot(v, -3))) {
2829 throw SquirrelError(v, "Couldn't register function 'get_pos_x'");
2832 sq_pushstring(v, "get_pos_y", -1);
2833 sq_newclosure(v, &ScriptedObject_get_pos_y_wrapper, 0);
2834 if(SQ_FAILED(sq_createslot(v, -3))) {
2835 throw SquirrelError(v, "Couldn't register function 'get_pos_y'");
2838 sq_pushstring(v, "set_velocity", -1);
2839 sq_newclosure(v, &ScriptedObject_set_velocity_wrapper, 0);
2840 if(SQ_FAILED(sq_createslot(v, -3))) {
2841 throw SquirrelError(v, "Couldn't register function 'set_velocity'");
2844 sq_pushstring(v, "get_velocity_x", -1);
2845 sq_newclosure(v, &ScriptedObject_get_velocity_x_wrapper, 0);
2846 if(SQ_FAILED(sq_createslot(v, -3))) {
2847 throw SquirrelError(v, "Couldn't register function 'get_velocity_x'");
2850 sq_pushstring(v, "get_velocity_y", -1);
2851 sq_newclosure(v, &ScriptedObject_get_velocity_y_wrapper, 0);
2852 if(SQ_FAILED(sq_createslot(v, -3))) {
2853 throw SquirrelError(v, "Couldn't register function 'get_velocity_y'");
2856 sq_pushstring(v, "set_visible", -1);
2857 sq_newclosure(v, &ScriptedObject_set_visible_wrapper, 0);
2858 if(SQ_FAILED(sq_createslot(v, -3))) {
2859 throw SquirrelError(v, "Couldn't register function 'set_visible'");
2862 sq_pushstring(v, "is_visible", -1);
2863 sq_newclosure(v, &ScriptedObject_is_visible_wrapper, 0);
2864 if(SQ_FAILED(sq_createslot(v, -3))) {
2865 throw SquirrelError(v, "Couldn't register function 'is_visible'");
2868 sq_pushstring(v, "get_name", -1);
2869 sq_newclosure(v, &ScriptedObject_get_name_wrapper, 0);
2870 if(SQ_FAILED(sq_createslot(v, -3))) {
2871 throw SquirrelError(v, "Couldn't register function 'get_name'");
2874 if(SQ_FAILED(sq_createslot(v, -3))) {
2875 throw SquirrelError(v, "Couldn't register class 'ScriptedObject'");
2878 // Register class Text
2879 sq_pushstring(v, "Text", -1);
2880 if(sq_newclass(v, SQFalse) < 0) {
2881 std::ostringstream msg;
2882 msg << "Couldn't create new class 'Text'";
2883 throw SquirrelError(v, msg.str());
2885 sq_pushstring(v, "set_text", -1);
2886 sq_newclosure(v, &Text_set_text_wrapper, 0);
2887 if(SQ_FAILED(sq_createslot(v, -3))) {
2888 throw SquirrelError(v, "Couldn't register function 'set_text'");
2891 sq_pushstring(v, "set_font", -1);
2892 sq_newclosure(v, &Text_set_font_wrapper, 0);
2893 if(SQ_FAILED(sq_createslot(v, -3))) {
2894 throw SquirrelError(v, "Couldn't register function 'set_font'");
2897 sq_pushstring(v, "fade_in", -1);
2898 sq_newclosure(v, &Text_fade_in_wrapper, 0);
2899 if(SQ_FAILED(sq_createslot(v, -3))) {
2900 throw SquirrelError(v, "Couldn't register function 'fade_in'");
2903 sq_pushstring(v, "fade_out", -1);
2904 sq_newclosure(v, &Text_fade_out_wrapper, 0);
2905 if(SQ_FAILED(sq_createslot(v, -3))) {
2906 throw SquirrelError(v, "Couldn't register function 'fade_out'");
2909 sq_pushstring(v, "set_visible", -1);
2910 sq_newclosure(v, &Text_set_visible_wrapper, 0);
2911 if(SQ_FAILED(sq_createslot(v, -3))) {
2912 throw SquirrelError(v, "Couldn't register function 'set_visible'");
2915 sq_pushstring(v, "set_centered", -1);
2916 sq_newclosure(v, &Text_set_centered_wrapper, 0);
2917 if(SQ_FAILED(sq_createslot(v, -3))) {
2918 throw SquirrelError(v, "Couldn't register function 'set_centered'");
2921 if(SQ_FAILED(sq_createslot(v, -3))) {
2922 throw SquirrelError(v, "Couldn't register class 'Text'");
2925 // Register class Player
2926 sq_pushstring(v, "Player", -1);
2927 if(sq_newclass(v, SQFalse) < 0) {
2928 std::ostringstream msg;
2929 msg << "Couldn't create new class 'Player'";
2930 throw SquirrelError(v, msg.str());
2932 sq_pushstring(v, "add_bonus", -1);
2933 sq_newclosure(v, &Player_add_bonus_wrapper, 0);
2934 if(SQ_FAILED(sq_createslot(v, -3))) {
2935 throw SquirrelError(v, "Couldn't register function 'add_bonus'");
2938 sq_pushstring(v, "add_coins", -1);
2939 sq_newclosure(v, &Player_add_coins_wrapper, 0);
2940 if(SQ_FAILED(sq_createslot(v, -3))) {
2941 throw SquirrelError(v, "Couldn't register function 'add_coins'");
2944 sq_pushstring(v, "make_invincible", -1);
2945 sq_newclosure(v, &Player_make_invincible_wrapper, 0);
2946 if(SQ_FAILED(sq_createslot(v, -3))) {
2947 throw SquirrelError(v, "Couldn't register function 'make_invincible'");
2950 sq_pushstring(v, "deactivate", -1);
2951 sq_newclosure(v, &Player_deactivate_wrapper, 0);
2952 if(SQ_FAILED(sq_createslot(v, -3))) {
2953 throw SquirrelError(v, "Couldn't register function 'deactivate'");
2956 sq_pushstring(v, "activate", -1);
2957 sq_newclosure(v, &Player_activate_wrapper, 0);
2958 if(SQ_FAILED(sq_createslot(v, -3))) {
2959 throw SquirrelError(v, "Couldn't register function 'activate'");
2962 sq_pushstring(v, "walk", -1);
2963 sq_newclosure(v, &Player_walk_wrapper, 0);
2964 if(SQ_FAILED(sq_createslot(v, -3))) {
2965 throw SquirrelError(v, "Couldn't register function 'walk'");
2968 sq_pushstring(v, "set_visible", -1);
2969 sq_newclosure(v, &Player_set_visible_wrapper, 0);
2970 if(SQ_FAILED(sq_createslot(v, -3))) {
2971 throw SquirrelError(v, "Couldn't register function 'set_visible'");
2974 sq_pushstring(v, "get_visible", -1);
2975 sq_newclosure(v, &Player_get_visible_wrapper, 0);
2976 if(SQ_FAILED(sq_createslot(v, -3))) {
2977 throw SquirrelError(v, "Couldn't register function 'get_visible'");
2980 if(SQ_FAILED(sq_createslot(v, -3))) {
2981 throw SquirrelError(v, "Couldn't register class 'Player'");
2984 // Register class FloatingImage
2985 sq_pushstring(v, "FloatingImage", -1);
2986 if(sq_newclass(v, SQFalse) < 0) {
2987 std::ostringstream msg;
2988 msg << "Couldn't create new class 'FloatingImage'";
2989 throw SquirrelError(v, msg.str());
2991 sq_pushstring(v, "constructor", -1);
2992 sq_newclosure(v, &FloatingImage_constructor_wrapper, 0);
2993 if(SQ_FAILED(sq_createslot(v, -3))) {
2994 throw SquirrelError(v, "Couldn't register function 'constructor'");
2997 sq_pushstring(v, "set_layer", -1);
2998 sq_newclosure(v, &FloatingImage_set_layer_wrapper, 0);
2999 if(SQ_FAILED(sq_createslot(v, -3))) {
3000 throw SquirrelError(v, "Couldn't register function 'set_layer'");
3003 sq_pushstring(v, "get_layer", -1);
3004 sq_newclosure(v, &FloatingImage_get_layer_wrapper, 0);
3005 if(SQ_FAILED(sq_createslot(v, -3))) {
3006 throw SquirrelError(v, "Couldn't register function 'get_layer'");
3009 sq_pushstring(v, "set_pos", -1);
3010 sq_newclosure(v, &FloatingImage_set_pos_wrapper, 0);
3011 if(SQ_FAILED(sq_createslot(v, -3))) {
3012 throw SquirrelError(v, "Couldn't register function 'set_pos'");
3015 sq_pushstring(v, "get_pos_x", -1);
3016 sq_newclosure(v, &FloatingImage_get_pos_x_wrapper, 0);
3017 if(SQ_FAILED(sq_createslot(v, -3))) {
3018 throw SquirrelError(v, "Couldn't register function 'get_pos_x'");
3021 sq_pushstring(v, "get_pos_y", -1);
3022 sq_newclosure(v, &FloatingImage_get_pos_y_wrapper, 0);
3023 if(SQ_FAILED(sq_createslot(v, -3))) {
3024 throw SquirrelError(v, "Couldn't register function 'get_pos_y'");
3027 sq_pushstring(v, "set_anchor_point", -1);
3028 sq_newclosure(v, &FloatingImage_set_anchor_point_wrapper, 0);
3029 if(SQ_FAILED(sq_createslot(v, -3))) {
3030 throw SquirrelError(v, "Couldn't register function 'set_anchor_point'");
3033 sq_pushstring(v, "get_anchor_point", -1);
3034 sq_newclosure(v, &FloatingImage_get_anchor_point_wrapper, 0);
3035 if(SQ_FAILED(sq_createslot(v, -3))) {
3036 throw SquirrelError(v, "Couldn't register function 'get_anchor_point'");
3039 sq_pushstring(v, "set_visible", -1);
3040 sq_newclosure(v, &FloatingImage_set_visible_wrapper, 0);
3041 if(SQ_FAILED(sq_createslot(v, -3))) {
3042 throw SquirrelError(v, "Couldn't register function 'set_visible'");
3045 sq_pushstring(v, "get_visible", -1);
3046 sq_newclosure(v, &FloatingImage_get_visible_wrapper, 0);
3047 if(SQ_FAILED(sq_createslot(v, -3))) {
3048 throw SquirrelError(v, "Couldn't register function 'get_visible'");
3051 sq_pushstring(v, "set_action", -1);
3052 sq_newclosure(v, &FloatingImage_set_action_wrapper, 0);
3053 if(SQ_FAILED(sq_createslot(v, -3))) {
3054 throw SquirrelError(v, "Couldn't register function 'set_action'");
3057 sq_pushstring(v, "get_action", -1);
3058 sq_newclosure(v, &FloatingImage_get_action_wrapper, 0);
3059 if(SQ_FAILED(sq_createslot(v, -3))) {
3060 throw SquirrelError(v, "Couldn't register function 'get_action'");
3063 if(SQ_FAILED(sq_createslot(v, -3))) {
3064 throw SquirrelError(v, "Couldn't register class 'FloatingImage'");
3067 // Register class RandomGenerator
3068 sq_pushstring(v, "RandomGenerator", -1);
3069 if(sq_newclass(v, SQFalse) < 0) {
3070 std::ostringstream msg;
3071 msg << "Couldn't create new class 'RandomGenerator'";
3072 throw SquirrelError(v, msg.str());
3074 sq_pushstring(v, "srand", -1);
3075 sq_newclosure(v, &RandomGenerator_srand_wrapper, 0);
3076 if(SQ_FAILED(sq_createslot(v, -3))) {
3077 throw SquirrelError(v, "Couldn't register function 'srand'");
3080 sq_pushstring(v, "rand", -1);
3081 sq_newclosure(v, &RandomGenerator_rand_wrapper, 0);
3082 if(SQ_FAILED(sq_createslot(v, -3))) {
3083 throw SquirrelError(v, "Couldn't register function 'rand'");
3086 sq_pushstring(v, "rand1i", -1);
3087 sq_newclosure(v, &RandomGenerator_rand1i_wrapper, 0);
3088 if(SQ_FAILED(sq_createslot(v, -3))) {
3089 throw SquirrelError(v, "Couldn't register function 'rand1i'");
3092 sq_pushstring(v, "rand2i", -1);
3093 sq_newclosure(v, &RandomGenerator_rand2i_wrapper, 0);
3094 if(SQ_FAILED(sq_createslot(v, -3))) {
3095 throw SquirrelError(v, "Couldn't register function 'rand2i'");
3098 sq_pushstring(v, "rand1f", -1);
3099 sq_newclosure(v, &RandomGenerator_rand1f_wrapper, 0);
3100 if(SQ_FAILED(sq_createslot(v, -3))) {
3101 throw SquirrelError(v, "Couldn't register function 'rand1f'");
3104 sq_pushstring(v, "rand2f", -1);
3105 sq_newclosure(v, &RandomGenerator_rand2f_wrapper, 0);
3106 if(SQ_FAILED(sq_createslot(v, -3))) {
3107 throw SquirrelError(v, "Couldn't register function 'rand2f'");
3110 if(SQ_FAILED(sq_createslot(v, -3))) {
3111 throw SquirrelError(v, "Couldn't register class 'RandomGenerator'");
3116 } // end of namespace Scripting