2 * WARNING: This file is automatically generated from:
3 * 'src/scripting/wrapper.interface.hpp'
9 #include "scripting/squirrel_error.hpp"
10 #include "scripting/wrapper.interface.hpp"
15 static SQInteger AmbientSound_release_hook(SQUserPointer ptr, SQInteger )
17 scripting::AmbientSound* _this = reinterpret_cast<scripting::AmbientSound*> (ptr);
22 static SQInteger AmbientSound_set_pos_wrapper(HSQUIRRELVM vm)
25 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
26 sq_throwerror(vm, _SC("'set_pos' called without instance"));
29 scripting::AmbientSound* _this = reinterpret_cast<scripting::AmbientSound*> (data);
31 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
32 sq_throwerror(vm, _SC("Argument 1 not a float"));
36 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
37 sq_throwerror(vm, _SC("Argument 2 not a float"));
42 _this->set_pos(static_cast<float> (arg0), static_cast<float> (arg1));
46 } catch(std::exception& e) {
47 sq_throwerror(vm, e.what());
50 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_pos'"));
56 static SQInteger AmbientSound_get_pos_x_wrapper(HSQUIRRELVM vm)
59 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
60 sq_throwerror(vm, _SC("'get_pos_x' called without instance"));
63 scripting::AmbientSound* _this = reinterpret_cast<scripting::AmbientSound*> (data);
66 float return_value = _this->get_pos_x();
68 sq_pushfloat(vm, return_value);
71 } catch(std::exception& e) {
72 sq_throwerror(vm, e.what());
75 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_x'"));
81 static SQInteger AmbientSound_get_pos_y_wrapper(HSQUIRRELVM vm)
84 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
85 sq_throwerror(vm, _SC("'get_pos_y' called without instance"));
88 scripting::AmbientSound* _this = reinterpret_cast<scripting::AmbientSound*> (data);
91 float return_value = _this->get_pos_y();
93 sq_pushfloat(vm, return_value);
96 } catch(std::exception& e) {
97 sq_throwerror(vm, e.what());
100 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_y'"));
106 static SQInteger Camera_release_hook(SQUserPointer ptr, SQInteger )
108 scripting::Camera* _this = reinterpret_cast<scripting::Camera*> (ptr);
113 static SQInteger Camera_reload_config_wrapper(HSQUIRRELVM vm)
116 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
117 sq_throwerror(vm, _SC("'reload_config' called without instance"));
120 scripting::Camera* _this = reinterpret_cast<scripting::Camera*> (data);
123 _this->reload_config();
127 } catch(std::exception& e) {
128 sq_throwerror(vm, e.what());
131 sq_throwerror(vm, _SC("Unexpected exception while executing function 'reload_config'"));
137 static SQInteger Camera_shake_wrapper(HSQUIRRELVM vm)
140 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
141 sq_throwerror(vm, _SC("'shake' called without instance"));
144 scripting::Camera* _this = reinterpret_cast<scripting::Camera*> (data);
146 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
147 sq_throwerror(vm, _SC("Argument 1 not a float"));
151 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
152 sq_throwerror(vm, _SC("Argument 2 not a float"));
156 if(SQ_FAILED(sq_getfloat(vm, 4, &arg2))) {
157 sq_throwerror(vm, _SC("Argument 3 not a float"));
162 _this->shake(static_cast<float> (arg0), static_cast<float> (arg1), static_cast<float> (arg2));
166 } catch(std::exception& e) {
167 sq_throwerror(vm, e.what());
170 sq_throwerror(vm, _SC("Unexpected exception while executing function 'shake'"));
176 static SQInteger Camera_set_pos_wrapper(HSQUIRRELVM vm)
179 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
180 sq_throwerror(vm, _SC("'set_pos' called without instance"));
183 scripting::Camera* _this = reinterpret_cast<scripting::Camera*> (data);
185 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
186 sq_throwerror(vm, _SC("Argument 1 not a float"));
190 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
191 sq_throwerror(vm, _SC("Argument 2 not a float"));
196 _this->set_pos(static_cast<float> (arg0), static_cast<float> (arg1));
200 } catch(std::exception& e) {
201 sq_throwerror(vm, e.what());
204 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_pos'"));
210 static SQInteger Camera_set_mode_wrapper(HSQUIRRELVM vm)
213 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
214 sq_throwerror(vm, _SC("'set_mode' called without instance"));
217 scripting::Camera* _this = reinterpret_cast<scripting::Camera*> (data);
219 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
220 sq_throwerror(vm, _SC("Argument 1 not a string"));
225 _this->set_mode(arg0);
229 } catch(std::exception& e) {
230 sq_throwerror(vm, e.what());
233 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_mode'"));
239 static SQInteger Camera_scroll_to_wrapper(HSQUIRRELVM vm)
242 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
243 sq_throwerror(vm, _SC("'scroll_to' called without instance"));
246 scripting::Camera* _this = reinterpret_cast<scripting::Camera*> (data);
248 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
249 sq_throwerror(vm, _SC("Argument 1 not a float"));
253 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
254 sq_throwerror(vm, _SC("Argument 2 not a float"));
258 if(SQ_FAILED(sq_getfloat(vm, 4, &arg2))) {
259 sq_throwerror(vm, _SC("Argument 3 not a float"));
264 _this->scroll_to(static_cast<float> (arg0), static_cast<float> (arg1), static_cast<float> (arg2));
268 } catch(std::exception& e) {
269 sq_throwerror(vm, e.what());
272 sq_throwerror(vm, _SC("Unexpected exception while executing function 'scroll_to'"));
278 static SQInteger Candle_release_hook(SQUserPointer ptr, SQInteger )
280 scripting::Candle* _this = reinterpret_cast<scripting::Candle*> (ptr);
285 static SQInteger Candle_get_burning_wrapper(HSQUIRRELVM vm)
288 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
289 sq_throwerror(vm, _SC("'get_burning' called without instance"));
292 scripting::Candle* _this = reinterpret_cast<scripting::Candle*> (data);
295 bool return_value = _this->get_burning();
297 sq_pushbool(vm, return_value);
300 } catch(std::exception& e) {
301 sq_throwerror(vm, e.what());
304 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_burning'"));
310 static SQInteger Candle_set_burning_wrapper(HSQUIRRELVM vm)
313 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
314 sq_throwerror(vm, _SC("'set_burning' called without instance"));
317 scripting::Candle* _this = reinterpret_cast<scripting::Candle*> (data);
319 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
320 sq_throwerror(vm, _SC("Argument 1 not a bool"));
325 _this->set_burning(arg0 == SQTrue);
329 } catch(std::exception& e) {
330 sq_throwerror(vm, e.what());
333 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_burning'"));
339 static SQInteger DisplayEffect_release_hook(SQUserPointer ptr, SQInteger )
341 scripting::DisplayEffect* _this = reinterpret_cast<scripting::DisplayEffect*> (ptr);
346 static SQInteger DisplayEffect_fade_out_wrapper(HSQUIRRELVM vm)
349 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
350 sq_throwerror(vm, _SC("'fade_out' called without instance"));
353 scripting::DisplayEffect* _this = reinterpret_cast<scripting::DisplayEffect*> (data);
355 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
356 sq_throwerror(vm, _SC("Argument 1 not a float"));
361 _this->fade_out(static_cast<float> (arg0));
365 } catch(std::exception& e) {
366 sq_throwerror(vm, e.what());
369 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_out'"));
375 static SQInteger DisplayEffect_fade_in_wrapper(HSQUIRRELVM vm)
378 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
379 sq_throwerror(vm, _SC("'fade_in' called without instance"));
382 scripting::DisplayEffect* _this = reinterpret_cast<scripting::DisplayEffect*> (data);
384 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
385 sq_throwerror(vm, _SC("Argument 1 not a float"));
390 _this->fade_in(static_cast<float> (arg0));
394 } catch(std::exception& e) {
395 sq_throwerror(vm, e.what());
398 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_in'"));
404 static SQInteger DisplayEffect_set_black_wrapper(HSQUIRRELVM vm)
407 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
408 sq_throwerror(vm, _SC("'set_black' called without instance"));
411 scripting::DisplayEffect* _this = reinterpret_cast<scripting::DisplayEffect*> (data);
413 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
414 sq_throwerror(vm, _SC("Argument 1 not a bool"));
419 _this->set_black(arg0 == SQTrue);
423 } catch(std::exception& e) {
424 sq_throwerror(vm, e.what());
427 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_black'"));
433 static SQInteger DisplayEffect_is_black_wrapper(HSQUIRRELVM vm)
436 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
437 sq_throwerror(vm, _SC("'is_black' called without instance"));
440 scripting::DisplayEffect* _this = reinterpret_cast<scripting::DisplayEffect*> (data);
443 bool return_value = _this->is_black();
445 sq_pushbool(vm, return_value);
448 } catch(std::exception& e) {
449 sq_throwerror(vm, e.what());
452 sq_throwerror(vm, _SC("Unexpected exception while executing function 'is_black'"));
458 static SQInteger DisplayEffect_sixteen_to_nine_wrapper(HSQUIRRELVM vm)
461 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
462 sq_throwerror(vm, _SC("'sixteen_to_nine' called without instance"));
465 scripting::DisplayEffect* _this = reinterpret_cast<scripting::DisplayEffect*> (data);
467 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
468 sq_throwerror(vm, _SC("Argument 1 not a float"));
473 _this->sixteen_to_nine(static_cast<float> (arg0));
477 } catch(std::exception& e) {
478 sq_throwerror(vm, e.what());
481 sq_throwerror(vm, _SC("Unexpected exception while executing function 'sixteen_to_nine'"));
487 static SQInteger DisplayEffect_four_to_three_wrapper(HSQUIRRELVM vm)
490 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
491 sq_throwerror(vm, _SC("'four_to_three' called without instance"));
494 scripting::DisplayEffect* _this = reinterpret_cast<scripting::DisplayEffect*> (data);
496 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
497 sq_throwerror(vm, _SC("Argument 1 not a float"));
502 _this->four_to_three(static_cast<float> (arg0));
506 } catch(std::exception& e) {
507 sq_throwerror(vm, e.what());
510 sq_throwerror(vm, _SC("Unexpected exception while executing function 'four_to_three'"));
516 static SQInteger FloatingImage_release_hook(SQUserPointer ptr, SQInteger )
518 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (ptr);
523 static SQInteger FloatingImage_constructor_wrapper(HSQUIRRELVM vm)
526 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
527 sq_throwerror(vm, _SC("Argument 1 not a string"));
532 scripting::FloatingImage* _this = new scripting::FloatingImage(arg0);
533 if(SQ_FAILED(sq_setinstanceup(vm, 1, _this))) {
534 sq_throwerror(vm, _SC("Couldn't setup instance of 'FloatingImage' class"));
537 sq_setreleasehook(vm, 1, FloatingImage_release_hook);
541 } catch(std::exception& e) {
542 sq_throwerror(vm, e.what());
545 sq_throwerror(vm, _SC("Unexpected exception while executing function 'constructor'"));
551 static SQInteger FloatingImage_set_layer_wrapper(HSQUIRRELVM vm)
554 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
555 sq_throwerror(vm, _SC("'set_layer' called without instance"));
558 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
560 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
561 sq_throwerror(vm, _SC("Argument 1 not an integer"));
566 _this->set_layer(static_cast<int> (arg0));
570 } catch(std::exception& e) {
571 sq_throwerror(vm, e.what());
574 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_layer'"));
580 static SQInteger FloatingImage_get_layer_wrapper(HSQUIRRELVM vm)
583 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
584 sq_throwerror(vm, _SC("'get_layer' called without instance"));
587 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
590 int return_value = _this->get_layer();
592 sq_pushinteger(vm, return_value);
595 } catch(std::exception& e) {
596 sq_throwerror(vm, e.what());
599 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_layer'"));
605 static SQInteger FloatingImage_set_pos_wrapper(HSQUIRRELVM vm)
608 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
609 sq_throwerror(vm, _SC("'set_pos' called without instance"));
612 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
614 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
615 sq_throwerror(vm, _SC("Argument 1 not a float"));
619 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
620 sq_throwerror(vm, _SC("Argument 2 not a float"));
625 _this->set_pos(static_cast<float> (arg0), static_cast<float> (arg1));
629 } catch(std::exception& e) {
630 sq_throwerror(vm, e.what());
633 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_pos'"));
639 static SQInteger FloatingImage_get_pos_x_wrapper(HSQUIRRELVM vm)
642 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
643 sq_throwerror(vm, _SC("'get_pos_x' called without instance"));
646 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
649 float return_value = _this->get_pos_x();
651 sq_pushfloat(vm, return_value);
654 } catch(std::exception& e) {
655 sq_throwerror(vm, e.what());
658 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_x'"));
664 static SQInteger FloatingImage_get_pos_y_wrapper(HSQUIRRELVM vm)
667 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
668 sq_throwerror(vm, _SC("'get_pos_y' called without instance"));
671 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
674 float return_value = _this->get_pos_y();
676 sq_pushfloat(vm, return_value);
679 } catch(std::exception& e) {
680 sq_throwerror(vm, e.what());
683 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_y'"));
689 static SQInteger FloatingImage_set_anchor_point_wrapper(HSQUIRRELVM vm)
692 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
693 sq_throwerror(vm, _SC("'set_anchor_point' called without instance"));
696 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
698 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
699 sq_throwerror(vm, _SC("Argument 1 not an integer"));
704 _this->set_anchor_point(static_cast<int> (arg0));
708 } catch(std::exception& e) {
709 sq_throwerror(vm, e.what());
712 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_anchor_point'"));
718 static SQInteger FloatingImage_get_anchor_point_wrapper(HSQUIRRELVM vm)
721 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
722 sq_throwerror(vm, _SC("'get_anchor_point' called without instance"));
725 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
728 int return_value = _this->get_anchor_point();
730 sq_pushinteger(vm, return_value);
733 } catch(std::exception& e) {
734 sq_throwerror(vm, e.what());
737 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_anchor_point'"));
743 static SQInteger FloatingImage_set_visible_wrapper(HSQUIRRELVM vm)
746 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
747 sq_throwerror(vm, _SC("'set_visible' called without instance"));
750 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
752 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
753 sq_throwerror(vm, _SC("Argument 1 not a bool"));
758 _this->set_visible(arg0 == SQTrue);
762 } catch(std::exception& e) {
763 sq_throwerror(vm, e.what());
766 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_visible'"));
772 static SQInteger FloatingImage_get_visible_wrapper(HSQUIRRELVM vm)
775 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
776 sq_throwerror(vm, _SC("'get_visible' called without instance"));
779 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
782 bool return_value = _this->get_visible();
784 sq_pushbool(vm, return_value);
787 } catch(std::exception& e) {
788 sq_throwerror(vm, e.what());
791 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_visible'"));
797 static SQInteger FloatingImage_set_action_wrapper(HSQUIRRELVM vm)
800 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
801 sq_throwerror(vm, _SC("'set_action' called without instance"));
804 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
806 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
807 sq_throwerror(vm, _SC("Argument 1 not a string"));
812 _this->set_action(arg0);
816 } catch(std::exception& e) {
817 sq_throwerror(vm, e.what());
820 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_action'"));
826 static SQInteger FloatingImage_get_action_wrapper(HSQUIRRELVM vm)
829 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
830 sq_throwerror(vm, _SC("'get_action' called without instance"));
833 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
836 std::string return_value = _this->get_action();
838 sq_pushstring(vm, return_value.c_str(), return_value.size());
841 } catch(std::exception& e) {
842 sq_throwerror(vm, e.what());
845 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_action'"));
851 static SQInteger FloatingImage_fade_in_wrapper(HSQUIRRELVM vm)
854 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
855 sq_throwerror(vm, _SC("'fade_in' called without instance"));
858 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
860 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
861 sq_throwerror(vm, _SC("Argument 1 not a float"));
866 _this->fade_in(static_cast<float> (arg0));
870 } catch(std::exception& e) {
871 sq_throwerror(vm, e.what());
874 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_in'"));
880 static SQInteger FloatingImage_fade_out_wrapper(HSQUIRRELVM vm)
883 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
884 sq_throwerror(vm, _SC("'fade_out' called without instance"));
887 scripting::FloatingImage* _this = reinterpret_cast<scripting::FloatingImage*> (data);
889 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
890 sq_throwerror(vm, _SC("Argument 1 not a float"));
895 _this->fade_out(static_cast<float> (arg0));
899 } catch(std::exception& e) {
900 sq_throwerror(vm, e.what());
903 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_out'"));
909 static SQInteger LevelTime_release_hook(SQUserPointer ptr, SQInteger )
911 scripting::LevelTime* _this = reinterpret_cast<scripting::LevelTime*> (ptr);
916 static SQInteger LevelTime_start_wrapper(HSQUIRRELVM vm)
919 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
920 sq_throwerror(vm, _SC("'start' called without instance"));
923 scripting::LevelTime* _this = reinterpret_cast<scripting::LevelTime*> (data);
930 } catch(std::exception& e) {
931 sq_throwerror(vm, e.what());
934 sq_throwerror(vm, _SC("Unexpected exception while executing function 'start'"));
940 static SQInteger LevelTime_stop_wrapper(HSQUIRRELVM vm)
943 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
944 sq_throwerror(vm, _SC("'stop' called without instance"));
947 scripting::LevelTime* _this = reinterpret_cast<scripting::LevelTime*> (data);
954 } catch(std::exception& e) {
955 sq_throwerror(vm, e.what());
958 sq_throwerror(vm, _SC("Unexpected exception while executing function 'stop'"));
964 static SQInteger LevelTime_get_time_wrapper(HSQUIRRELVM vm)
967 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
968 sq_throwerror(vm, _SC("'get_time' called without instance"));
971 scripting::LevelTime* _this = reinterpret_cast<scripting::LevelTime*> (data);
974 float return_value = _this->get_time();
976 sq_pushfloat(vm, return_value);
979 } catch(std::exception& e) {
980 sq_throwerror(vm, e.what());
983 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_time'"));
989 static SQInteger LevelTime_set_time_wrapper(HSQUIRRELVM vm)
992 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
993 sq_throwerror(vm, _SC("'set_time' called without instance"));
996 scripting::LevelTime* _this = reinterpret_cast<scripting::LevelTime*> (data);
998 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
999 sq_throwerror(vm, _SC("Argument 1 not a float"));
1004 _this->set_time(static_cast<float> (arg0));
1008 } catch(std::exception& e) {
1009 sq_throwerror(vm, e.what());
1012 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_time'"));
1018 static SQInteger Platform_release_hook(SQUserPointer ptr, SQInteger )
1020 scripting::Platform* _this = reinterpret_cast<scripting::Platform*> (ptr);
1025 static SQInteger Platform_goto_node_wrapper(HSQUIRRELVM vm)
1028 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1029 sq_throwerror(vm, _SC("'goto_node' called without instance"));
1032 scripting::Platform* _this = reinterpret_cast<scripting::Platform*> (data);
1034 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
1035 sq_throwerror(vm, _SC("Argument 1 not an integer"));
1040 _this->goto_node(static_cast<int> (arg0));
1044 } catch(std::exception& e) {
1045 sq_throwerror(vm, e.what());
1048 sq_throwerror(vm, _SC("Unexpected exception while executing function 'goto_node'"));
1054 static SQInteger Platform_start_moving_wrapper(HSQUIRRELVM vm)
1057 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1058 sq_throwerror(vm, _SC("'start_moving' called without instance"));
1061 scripting::Platform* _this = reinterpret_cast<scripting::Platform*> (data);
1064 _this->start_moving();
1068 } catch(std::exception& e) {
1069 sq_throwerror(vm, e.what());
1072 sq_throwerror(vm, _SC("Unexpected exception while executing function 'start_moving'"));
1078 static SQInteger Platform_stop_moving_wrapper(HSQUIRRELVM vm)
1081 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1082 sq_throwerror(vm, _SC("'stop_moving' called without instance"));
1085 scripting::Platform* _this = reinterpret_cast<scripting::Platform*> (data);
1088 _this->stop_moving();
1092 } catch(std::exception& e) {
1093 sq_throwerror(vm, e.what());
1096 sq_throwerror(vm, _SC("Unexpected exception while executing function 'stop_moving'"));
1102 static SQInteger Player_release_hook(SQUserPointer ptr, SQInteger )
1104 scripting::Player* _this = reinterpret_cast<scripting::Player*> (ptr);
1109 static SQInteger Player_add_bonus_wrapper(HSQUIRRELVM vm)
1112 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1113 sq_throwerror(vm, _SC("'add_bonus' called without instance"));
1116 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1118 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
1119 sq_throwerror(vm, _SC("Argument 1 not a string"));
1124 bool return_value = _this->add_bonus(arg0);
1126 sq_pushbool(vm, return_value);
1129 } catch(std::exception& e) {
1130 sq_throwerror(vm, e.what());
1133 sq_throwerror(vm, _SC("Unexpected exception while executing function 'add_bonus'"));
1139 static SQInteger Player_add_coins_wrapper(HSQUIRRELVM vm)
1142 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1143 sq_throwerror(vm, _SC("'add_coins' called without instance"));
1146 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1148 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
1149 sq_throwerror(vm, _SC("Argument 1 not an integer"));
1154 _this->add_coins(static_cast<int> (arg0));
1158 } catch(std::exception& e) {
1159 sq_throwerror(vm, e.what());
1162 sq_throwerror(vm, _SC("Unexpected exception while executing function 'add_coins'"));
1168 static SQInteger Player_make_invincible_wrapper(HSQUIRRELVM vm)
1171 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1172 sq_throwerror(vm, _SC("'make_invincible' called without instance"));
1175 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1178 _this->make_invincible();
1182 } catch(std::exception& e) {
1183 sq_throwerror(vm, e.what());
1186 sq_throwerror(vm, _SC("Unexpected exception while executing function 'make_invincible'"));
1192 static SQInteger Player_deactivate_wrapper(HSQUIRRELVM vm)
1195 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1196 sq_throwerror(vm, _SC("'deactivate' called without instance"));
1199 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1202 _this->deactivate();
1206 } catch(std::exception& e) {
1207 sq_throwerror(vm, e.what());
1210 sq_throwerror(vm, _SC("Unexpected exception while executing function 'deactivate'"));
1216 static SQInteger Player_activate_wrapper(HSQUIRRELVM vm)
1219 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1220 sq_throwerror(vm, _SC("'activate' called without instance"));
1223 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1230 } catch(std::exception& e) {
1231 sq_throwerror(vm, e.what());
1234 sq_throwerror(vm, _SC("Unexpected exception while executing function 'activate'"));
1240 static SQInteger Player_walk_wrapper(HSQUIRRELVM vm)
1243 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1244 sq_throwerror(vm, _SC("'walk' called without instance"));
1247 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1249 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1250 sq_throwerror(vm, _SC("Argument 1 not a float"));
1255 _this->walk(static_cast<float> (arg0));
1259 } catch(std::exception& e) {
1260 sq_throwerror(vm, e.what());
1263 sq_throwerror(vm, _SC("Unexpected exception while executing function 'walk'"));
1269 static SQInteger Player_set_visible_wrapper(HSQUIRRELVM vm)
1272 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1273 sq_throwerror(vm, _SC("'set_visible' called without instance"));
1276 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1278 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1279 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1284 _this->set_visible(arg0 == SQTrue);
1288 } catch(std::exception& e) {
1289 sq_throwerror(vm, e.what());
1292 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_visible'"));
1298 static SQInteger Player_get_visible_wrapper(HSQUIRRELVM vm)
1301 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1302 sq_throwerror(vm, _SC("'get_visible' called without instance"));
1305 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1308 bool return_value = _this->get_visible();
1310 sq_pushbool(vm, return_value);
1313 } catch(std::exception& e) {
1314 sq_throwerror(vm, e.what());
1317 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_visible'"));
1323 static SQInteger Player_kill_wrapper(HSQUIRRELVM vm)
1326 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1327 sq_throwerror(vm, _SC("'kill' called without instance"));
1330 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1332 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1333 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1338 _this->kill(arg0 == SQTrue);
1342 } catch(std::exception& e) {
1343 sq_throwerror(vm, e.what());
1346 sq_throwerror(vm, _SC("Unexpected exception while executing function 'kill'"));
1352 static SQInteger Player_set_ghost_mode_wrapper(HSQUIRRELVM vm)
1355 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1356 sq_throwerror(vm, _SC("'set_ghost_mode' called without instance"));
1359 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1361 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1362 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1367 _this->set_ghost_mode(arg0 == SQTrue);
1371 } catch(std::exception& e) {
1372 sq_throwerror(vm, e.what());
1375 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_ghost_mode'"));
1381 static SQInteger Player_get_ghost_mode_wrapper(HSQUIRRELVM vm)
1384 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1385 sq_throwerror(vm, _SC("'get_ghost_mode' called without instance"));
1388 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1391 bool return_value = _this->get_ghost_mode();
1393 sq_pushbool(vm, return_value);
1396 } catch(std::exception& e) {
1397 sq_throwerror(vm, e.what());
1400 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_ghost_mode'"));
1406 static SQInteger Player_do_cheer_wrapper(HSQUIRRELVM vm)
1409 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1410 sq_throwerror(vm, _SC("'do_cheer' called without instance"));
1413 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1420 } catch(std::exception& e) {
1421 sq_throwerror(vm, e.what());
1424 sq_throwerror(vm, _SC("Unexpected exception while executing function 'do_cheer'"));
1430 static SQInteger Player_do_duck_wrapper(HSQUIRRELVM vm)
1433 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1434 sq_throwerror(vm, _SC("'do_duck' called without instance"));
1437 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1444 } catch(std::exception& e) {
1445 sq_throwerror(vm, e.what());
1448 sq_throwerror(vm, _SC("Unexpected exception while executing function 'do_duck'"));
1454 static SQInteger Player_do_standup_wrapper(HSQUIRRELVM vm)
1457 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1458 sq_throwerror(vm, _SC("'do_standup' called without instance"));
1461 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1464 _this->do_standup();
1468 } catch(std::exception& e) {
1469 sq_throwerror(vm, e.what());
1472 sq_throwerror(vm, _SC("Unexpected exception while executing function 'do_standup'"));
1478 static SQInteger Player_do_backflip_wrapper(HSQUIRRELVM vm)
1481 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1482 sq_throwerror(vm, _SC("'do_backflip' called without instance"));
1485 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1488 _this->do_backflip();
1492 } catch(std::exception& e) {
1493 sq_throwerror(vm, e.what());
1496 sq_throwerror(vm, _SC("Unexpected exception while executing function 'do_backflip'"));
1502 static SQInteger Player_do_jump_wrapper(HSQUIRRELVM vm)
1505 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1506 sq_throwerror(vm, _SC("'do_jump' called without instance"));
1509 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1511 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1512 sq_throwerror(vm, _SC("Argument 1 not a float"));
1517 _this->do_jump(static_cast<float> (arg0));
1521 } catch(std::exception& e) {
1522 sq_throwerror(vm, e.what());
1525 sq_throwerror(vm, _SC("Unexpected exception while executing function 'do_jump'"));
1531 static SQInteger Player_trigger_sequence_wrapper(HSQUIRRELVM vm)
1534 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1535 sq_throwerror(vm, _SC("'trigger_sequence' called without instance"));
1538 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1540 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
1541 sq_throwerror(vm, _SC("Argument 1 not a string"));
1546 _this->trigger_sequence(arg0);
1550 } catch(std::exception& e) {
1551 sq_throwerror(vm, e.what());
1554 sq_throwerror(vm, _SC("Unexpected exception while executing function 'trigger_sequence'"));
1560 static SQInteger Player_use_scripting_controller_wrapper(HSQUIRRELVM vm)
1563 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1564 sq_throwerror(vm, _SC("'use_scripting_controller' called without instance"));
1567 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1569 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1570 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1575 _this->use_scripting_controller(arg0 == SQTrue);
1579 } catch(std::exception& e) {
1580 sq_throwerror(vm, e.what());
1583 sq_throwerror(vm, _SC("Unexpected exception while executing function 'use_scripting_controller'"));
1589 static SQInteger Player_do_scripting_controller_wrapper(HSQUIRRELVM vm)
1592 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1593 sq_throwerror(vm, _SC("'do_scripting_controller' called without instance"));
1596 scripting::Player* _this = reinterpret_cast<scripting::Player*> (data);
1598 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
1599 sq_throwerror(vm, _SC("Argument 1 not a string"));
1603 if(SQ_FAILED(sq_getbool(vm, 3, &arg1))) {
1604 sq_throwerror(vm, _SC("Argument 2 not a bool"));
1609 _this->do_scripting_controller(arg0, arg1 == SQTrue);
1613 } catch(std::exception& e) {
1614 sq_throwerror(vm, e.what());
1617 sq_throwerror(vm, _SC("Unexpected exception while executing function 'do_scripting_controller'"));
1623 static SQInteger ScriptedObject_release_hook(SQUserPointer ptr, SQInteger )
1625 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (ptr);
1630 static SQInteger ScriptedObject_set_action_wrapper(HSQUIRRELVM vm)
1633 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1634 sq_throwerror(vm, _SC("'set_action' called without instance"));
1637 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1639 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
1640 sq_throwerror(vm, _SC("Argument 1 not a string"));
1645 _this->set_action(arg0);
1649 } catch(std::exception& e) {
1650 sq_throwerror(vm, e.what());
1653 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_action'"));
1659 static SQInteger ScriptedObject_get_action_wrapper(HSQUIRRELVM vm)
1662 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1663 sq_throwerror(vm, _SC("'get_action' called without instance"));
1666 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1669 std::string return_value = _this->get_action();
1671 sq_pushstring(vm, return_value.c_str(), return_value.size());
1674 } catch(std::exception& e) {
1675 sq_throwerror(vm, e.what());
1678 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_action'"));
1684 static SQInteger ScriptedObject_move_wrapper(HSQUIRRELVM vm)
1687 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1688 sq_throwerror(vm, _SC("'move' called without instance"));
1691 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1693 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1694 sq_throwerror(vm, _SC("Argument 1 not a float"));
1698 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
1699 sq_throwerror(vm, _SC("Argument 2 not a float"));
1704 _this->move(static_cast<float> (arg0), static_cast<float> (arg1));
1708 } catch(std::exception& e) {
1709 sq_throwerror(vm, e.what());
1712 sq_throwerror(vm, _SC("Unexpected exception while executing function 'move'"));
1718 static SQInteger ScriptedObject_set_pos_wrapper(HSQUIRRELVM vm)
1721 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1722 sq_throwerror(vm, _SC("'set_pos' called without instance"));
1725 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1727 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1728 sq_throwerror(vm, _SC("Argument 1 not a float"));
1732 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
1733 sq_throwerror(vm, _SC("Argument 2 not a float"));
1738 _this->set_pos(static_cast<float> (arg0), static_cast<float> (arg1));
1742 } catch(std::exception& e) {
1743 sq_throwerror(vm, e.what());
1746 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_pos'"));
1752 static SQInteger ScriptedObject_get_pos_x_wrapper(HSQUIRRELVM vm)
1755 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1756 sq_throwerror(vm, _SC("'get_pos_x' called without instance"));
1759 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1762 float return_value = _this->get_pos_x();
1764 sq_pushfloat(vm, return_value);
1767 } catch(std::exception& e) {
1768 sq_throwerror(vm, e.what());
1771 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_x'"));
1777 static SQInteger ScriptedObject_get_pos_y_wrapper(HSQUIRRELVM vm)
1780 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1781 sq_throwerror(vm, _SC("'get_pos_y' called without instance"));
1784 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1787 float return_value = _this->get_pos_y();
1789 sq_pushfloat(vm, return_value);
1792 } catch(std::exception& e) {
1793 sq_throwerror(vm, e.what());
1796 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_y'"));
1802 static SQInteger ScriptedObject_set_velocity_wrapper(HSQUIRRELVM vm)
1805 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1806 sq_throwerror(vm, _SC("'set_velocity' called without instance"));
1809 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1811 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
1812 sq_throwerror(vm, _SC("Argument 1 not a float"));
1816 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
1817 sq_throwerror(vm, _SC("Argument 2 not a float"));
1822 _this->set_velocity(static_cast<float> (arg0), static_cast<float> (arg1));
1826 } catch(std::exception& e) {
1827 sq_throwerror(vm, e.what());
1830 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_velocity'"));
1836 static SQInteger ScriptedObject_get_velocity_x_wrapper(HSQUIRRELVM vm)
1839 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1840 sq_throwerror(vm, _SC("'get_velocity_x' called without instance"));
1843 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1846 float return_value = _this->get_velocity_x();
1848 sq_pushfloat(vm, return_value);
1851 } catch(std::exception& e) {
1852 sq_throwerror(vm, e.what());
1855 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_velocity_x'"));
1861 static SQInteger ScriptedObject_get_velocity_y_wrapper(HSQUIRRELVM vm)
1864 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1865 sq_throwerror(vm, _SC("'get_velocity_y' called without instance"));
1868 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1871 float return_value = _this->get_velocity_y();
1873 sq_pushfloat(vm, return_value);
1876 } catch(std::exception& e) {
1877 sq_throwerror(vm, e.what());
1880 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_velocity_y'"));
1886 static SQInteger ScriptedObject_set_visible_wrapper(HSQUIRRELVM vm)
1889 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1890 sq_throwerror(vm, _SC("'set_visible' called without instance"));
1893 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1895 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1896 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1901 _this->set_visible(arg0 == SQTrue);
1905 } catch(std::exception& e) {
1906 sq_throwerror(vm, e.what());
1909 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_visible'"));
1915 static SQInteger ScriptedObject_is_visible_wrapper(HSQUIRRELVM vm)
1918 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1919 sq_throwerror(vm, _SC("'is_visible' called without instance"));
1922 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1925 bool return_value = _this->is_visible();
1927 sq_pushbool(vm, return_value);
1930 } catch(std::exception& e) {
1931 sq_throwerror(vm, e.what());
1934 sq_throwerror(vm, _SC("Unexpected exception while executing function 'is_visible'"));
1940 static SQInteger ScriptedObject_set_solid_wrapper(HSQUIRRELVM vm)
1943 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1944 sq_throwerror(vm, _SC("'set_solid' called without instance"));
1947 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1949 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
1950 sq_throwerror(vm, _SC("Argument 1 not a bool"));
1955 _this->set_solid(arg0 == SQTrue);
1959 } catch(std::exception& e) {
1960 sq_throwerror(vm, e.what());
1963 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_solid'"));
1969 static SQInteger ScriptedObject_is_solid_wrapper(HSQUIRRELVM vm)
1972 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1973 sq_throwerror(vm, _SC("'is_solid' called without instance"));
1976 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1979 bool return_value = _this->is_solid();
1981 sq_pushbool(vm, return_value);
1984 } catch(std::exception& e) {
1985 sq_throwerror(vm, e.what());
1988 sq_throwerror(vm, _SC("Unexpected exception while executing function 'is_solid'"));
1994 static SQInteger ScriptedObject_get_name_wrapper(HSQUIRRELVM vm)
1997 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1998 sq_throwerror(vm, _SC("'get_name' called without instance"));
2001 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
2004 std::string return_value = _this->get_name();
2006 sq_pushstring(vm, return_value.c_str(), return_value.size());
2009 } catch(std::exception& e) {
2010 sq_throwerror(vm, e.what());
2013 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_name'"));
2019 static SQInteger SSector_release_hook(SQUserPointer ptr, SQInteger )
2021 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (ptr);
2026 static SQInteger SSector_set_ambient_light_wrapper(HSQUIRRELVM vm)
2029 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2030 sq_throwerror(vm, _SC("'set_ambient_light' called without instance"));
2033 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (data);
2035 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2036 sq_throwerror(vm, _SC("Argument 1 not a float"));
2040 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
2041 sq_throwerror(vm, _SC("Argument 2 not a float"));
2045 if(SQ_FAILED(sq_getfloat(vm, 4, &arg2))) {
2046 sq_throwerror(vm, _SC("Argument 3 not a float"));
2051 _this->set_ambient_light(static_cast<float> (arg0), static_cast<float> (arg1), static_cast<float> (arg2));
2055 } catch(std::exception& e) {
2056 sq_throwerror(vm, e.what());
2059 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_ambient_light'"));
2065 static SQInteger SSector_get_ambient_red_wrapper(HSQUIRRELVM vm)
2068 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2069 sq_throwerror(vm, _SC("'get_ambient_red' called without instance"));
2072 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (data);
2075 float return_value = _this->get_ambient_red();
2077 sq_pushfloat(vm, return_value);
2080 } catch(std::exception& e) {
2081 sq_throwerror(vm, e.what());
2084 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_ambient_red'"));
2090 static SQInteger SSector_get_ambient_green_wrapper(HSQUIRRELVM vm)
2093 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2094 sq_throwerror(vm, _SC("'get_ambient_green' called without instance"));
2097 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (data);
2100 float return_value = _this->get_ambient_green();
2102 sq_pushfloat(vm, return_value);
2105 } catch(std::exception& e) {
2106 sq_throwerror(vm, e.what());
2109 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_ambient_green'"));
2115 static SQInteger SSector_get_ambient_blue_wrapper(HSQUIRRELVM vm)
2118 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2119 sq_throwerror(vm, _SC("'get_ambient_blue' called without instance"));
2122 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (data);
2125 float return_value = _this->get_ambient_blue();
2127 sq_pushfloat(vm, return_value);
2130 } catch(std::exception& e) {
2131 sq_throwerror(vm, e.what());
2134 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_ambient_blue'"));
2140 static SQInteger SSector_set_gravity_wrapper(HSQUIRRELVM vm)
2143 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2144 sq_throwerror(vm, _SC("'set_gravity' called without instance"));
2147 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (data);
2149 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2150 sq_throwerror(vm, _SC("Argument 1 not a float"));
2155 _this->set_gravity(static_cast<float> (arg0));
2159 } catch(std::exception& e) {
2160 sq_throwerror(vm, e.what());
2163 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_gravity'"));
2169 static SQInteger Text_release_hook(SQUserPointer ptr, SQInteger )
2171 scripting::Text* _this = reinterpret_cast<scripting::Text*> (ptr);
2176 static SQInteger Text_set_text_wrapper(HSQUIRRELVM vm)
2179 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2180 sq_throwerror(vm, _SC("'set_text' called without instance"));
2183 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2185 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
2186 sq_throwerror(vm, _SC("Argument 1 not a string"));
2191 _this->set_text(arg0);
2195 } catch(std::exception& e) {
2196 sq_throwerror(vm, e.what());
2199 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_text'"));
2205 static SQInteger Text_set_font_wrapper(HSQUIRRELVM vm)
2208 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2209 sq_throwerror(vm, _SC("'set_font' called without instance"));
2212 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2214 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
2215 sq_throwerror(vm, _SC("Argument 1 not a string"));
2220 _this->set_font(arg0);
2224 } catch(std::exception& e) {
2225 sq_throwerror(vm, e.what());
2228 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_font'"));
2234 static SQInteger Text_fade_in_wrapper(HSQUIRRELVM vm)
2237 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2238 sq_throwerror(vm, _SC("'fade_in' called without instance"));
2241 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2243 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2244 sq_throwerror(vm, _SC("Argument 1 not a float"));
2249 _this->fade_in(static_cast<float> (arg0));
2253 } catch(std::exception& e) {
2254 sq_throwerror(vm, e.what());
2257 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_in'"));
2263 static SQInteger Text_fade_out_wrapper(HSQUIRRELVM vm)
2266 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2267 sq_throwerror(vm, _SC("'fade_out' called without instance"));
2270 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2272 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2273 sq_throwerror(vm, _SC("Argument 1 not a float"));
2278 _this->fade_out(static_cast<float> (arg0));
2282 } catch(std::exception& e) {
2283 sq_throwerror(vm, e.what());
2286 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_out'"));
2292 static SQInteger Text_set_visible_wrapper(HSQUIRRELVM vm)
2295 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2296 sq_throwerror(vm, _SC("'set_visible' called without instance"));
2299 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2301 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
2302 sq_throwerror(vm, _SC("Argument 1 not a bool"));
2307 _this->set_visible(arg0 == SQTrue);
2311 } catch(std::exception& e) {
2312 sq_throwerror(vm, e.what());
2315 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_visible'"));
2321 static SQInteger Text_set_centered_wrapper(HSQUIRRELVM vm)
2324 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2325 sq_throwerror(vm, _SC("'set_centered' called without instance"));
2328 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2330 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
2331 sq_throwerror(vm, _SC("Argument 1 not a bool"));
2336 _this->set_centered(arg0 == SQTrue);
2340 } catch(std::exception& e) {
2341 sq_throwerror(vm, e.what());
2344 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_centered'"));
2350 static SQInteger Text_set_pos_wrapper(HSQUIRRELVM vm)
2353 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2354 sq_throwerror(vm, _SC("'set_pos' called without instance"));
2357 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2359 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2360 sq_throwerror(vm, _SC("Argument 1 not a float"));
2364 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
2365 sq_throwerror(vm, _SC("Argument 2 not a float"));
2370 _this->set_pos(static_cast<float> (arg0), static_cast<float> (arg1));
2374 } catch(std::exception& e) {
2375 sq_throwerror(vm, e.what());
2378 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_pos'"));
2384 static SQInteger Text_get_pos_x_wrapper(HSQUIRRELVM vm)
2387 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2388 sq_throwerror(vm, _SC("'get_pos_x' called without instance"));
2391 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2394 float return_value = _this->get_pos_x();
2396 sq_pushfloat(vm, return_value);
2399 } catch(std::exception& e) {
2400 sq_throwerror(vm, e.what());
2403 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_x'"));
2409 static SQInteger Text_get_pos_y_wrapper(HSQUIRRELVM vm)
2412 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2413 sq_throwerror(vm, _SC("'get_pos_y' called without instance"));
2416 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2419 float return_value = _this->get_pos_y();
2421 sq_pushfloat(vm, return_value);
2424 } catch(std::exception& e) {
2425 sq_throwerror(vm, e.what());
2428 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_y'"));
2434 static SQInteger Text_set_anchor_point_wrapper(HSQUIRRELVM vm)
2437 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2438 sq_throwerror(vm, _SC("'set_anchor_point' called without instance"));
2441 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2443 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
2444 sq_throwerror(vm, _SC("Argument 1 not an integer"));
2449 _this->set_anchor_point(static_cast<int> (arg0));
2453 } catch(std::exception& e) {
2454 sq_throwerror(vm, e.what());
2457 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_anchor_point'"));
2463 static SQInteger Text_get_anchor_point_wrapper(HSQUIRRELVM vm)
2466 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2467 sq_throwerror(vm, _SC("'get_anchor_point' called without instance"));
2470 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2473 int return_value = _this->get_anchor_point();
2475 sq_pushinteger(vm, return_value);
2478 } catch(std::exception& e) {
2479 sq_throwerror(vm, e.what());
2482 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_anchor_point'"));
2488 static SQInteger Thunderstorm_release_hook(SQUserPointer ptr, SQInteger )
2490 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (ptr);
2495 static SQInteger Thunderstorm_start_wrapper(HSQUIRRELVM vm)
2498 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2499 sq_throwerror(vm, _SC("'start' called without instance"));
2502 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2509 } catch(std::exception& e) {
2510 sq_throwerror(vm, e.what());
2513 sq_throwerror(vm, _SC("Unexpected exception while executing function 'start'"));
2519 static SQInteger Thunderstorm_stop_wrapper(HSQUIRRELVM vm)
2522 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2523 sq_throwerror(vm, _SC("'stop' called without instance"));
2526 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2533 } catch(std::exception& e) {
2534 sq_throwerror(vm, e.what());
2537 sq_throwerror(vm, _SC("Unexpected exception while executing function 'stop'"));
2543 static SQInteger Thunderstorm_thunder_wrapper(HSQUIRRELVM vm)
2546 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2547 sq_throwerror(vm, _SC("'thunder' called without instance"));
2550 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2557 } catch(std::exception& e) {
2558 sq_throwerror(vm, e.what());
2561 sq_throwerror(vm, _SC("Unexpected exception while executing function 'thunder'"));
2567 static SQInteger Thunderstorm_lightning_wrapper(HSQUIRRELVM vm)
2570 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2571 sq_throwerror(vm, _SC("'lightning' called without instance"));
2574 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2581 } catch(std::exception& e) {
2582 sq_throwerror(vm, e.what());
2585 sq_throwerror(vm, _SC("Unexpected exception while executing function 'lightning'"));
2591 static SQInteger Thunderstorm_flash_wrapper(HSQUIRRELVM vm)
2594 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2595 sq_throwerror(vm, _SC("'flash' called without instance"));
2598 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2605 } catch(std::exception& e) {
2606 sq_throwerror(vm, e.what());
2609 sq_throwerror(vm, _SC("Unexpected exception while executing function 'flash'"));
2615 static SQInteger Thunderstorm_electrify_wrapper(HSQUIRRELVM vm)
2618 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2619 sq_throwerror(vm, _SC("'electrify' called without instance"));
2622 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2629 } catch(std::exception& e) {
2630 sq_throwerror(vm, e.what());
2633 sq_throwerror(vm, _SC("Unexpected exception while executing function 'electrify'"));
2639 static SQInteger TileMap_release_hook(SQUserPointer ptr, SQInteger )
2641 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (ptr);
2646 static SQInteger TileMap_goto_node_wrapper(HSQUIRRELVM vm)
2649 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2650 sq_throwerror(vm, _SC("'goto_node' called without instance"));
2653 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2655 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
2656 sq_throwerror(vm, _SC("Argument 1 not an integer"));
2661 _this->goto_node(static_cast<int> (arg0));
2665 } catch(std::exception& e) {
2666 sq_throwerror(vm, e.what());
2669 sq_throwerror(vm, _SC("Unexpected exception while executing function 'goto_node'"));
2675 static SQInteger TileMap_start_moving_wrapper(HSQUIRRELVM vm)
2678 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2679 sq_throwerror(vm, _SC("'start_moving' called without instance"));
2682 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2685 _this->start_moving();
2689 } catch(std::exception& e) {
2690 sq_throwerror(vm, e.what());
2693 sq_throwerror(vm, _SC("Unexpected exception while executing function 'start_moving'"));
2699 static SQInteger TileMap_stop_moving_wrapper(HSQUIRRELVM vm)
2702 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2703 sq_throwerror(vm, _SC("'stop_moving' called without instance"));
2706 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2709 _this->stop_moving();
2713 } catch(std::exception& e) {
2714 sq_throwerror(vm, e.what());
2717 sq_throwerror(vm, _SC("Unexpected exception while executing function 'stop_moving'"));
2723 static SQInteger TileMap_fade_wrapper(HSQUIRRELVM vm)
2726 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2727 sq_throwerror(vm, _SC("'fade' called without instance"));
2730 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2732 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2733 sq_throwerror(vm, _SC("Argument 1 not a float"));
2737 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
2738 sq_throwerror(vm, _SC("Argument 2 not a float"));
2743 _this->fade(static_cast<float> (arg0), static_cast<float> (arg1));
2747 } catch(std::exception& e) {
2748 sq_throwerror(vm, e.what());
2751 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade'"));
2757 static SQInteger TileMap_set_alpha_wrapper(HSQUIRRELVM vm)
2760 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2761 sq_throwerror(vm, _SC("'set_alpha' called without instance"));
2764 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2766 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2767 sq_throwerror(vm, _SC("Argument 1 not a float"));
2772 _this->set_alpha(static_cast<float> (arg0));
2776 } catch(std::exception& e) {
2777 sq_throwerror(vm, e.what());
2780 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_alpha'"));
2786 static SQInteger TileMap_get_alpha_wrapper(HSQUIRRELVM vm)
2789 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2790 sq_throwerror(vm, _SC("'get_alpha' called without instance"));
2793 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2796 float return_value = _this->get_alpha();
2798 sq_pushfloat(vm, return_value);
2801 } catch(std::exception& e) {
2802 sq_throwerror(vm, e.what());
2805 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_alpha'"));
2811 static SQInteger WillOWisp_release_hook(SQUserPointer ptr, SQInteger )
2813 scripting::WillOWisp* _this = reinterpret_cast<scripting::WillOWisp*> (ptr);
2818 static SQInteger WillOWisp_goto_node_wrapper(HSQUIRRELVM vm)
2821 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2822 sq_throwerror(vm, _SC("'goto_node' called without instance"));
2825 scripting::WillOWisp* _this = reinterpret_cast<scripting::WillOWisp*> (data);
2827 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
2828 sq_throwerror(vm, _SC("Argument 1 not an integer"));
2833 _this->goto_node(static_cast<int> (arg0));
2837 } catch(std::exception& e) {
2838 sq_throwerror(vm, e.what());
2841 sq_throwerror(vm, _SC("Unexpected exception while executing function 'goto_node'"));
2847 static SQInteger WillOWisp_set_state_wrapper(HSQUIRRELVM vm)
2850 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2851 sq_throwerror(vm, _SC("'set_state' called without instance"));
2854 scripting::WillOWisp* _this = reinterpret_cast<scripting::WillOWisp*> (data);
2856 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
2857 sq_throwerror(vm, _SC("Argument 1 not a string"));
2862 _this->set_state(arg0);
2866 } catch(std::exception& e) {
2867 sq_throwerror(vm, e.what());
2870 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_state'"));
2876 static SQInteger WillOWisp_start_moving_wrapper(HSQUIRRELVM vm)
2879 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2880 sq_throwerror(vm, _SC("'start_moving' called without instance"));
2883 scripting::WillOWisp* _this = reinterpret_cast<scripting::WillOWisp*> (data);
2886 _this->start_moving();
2890 } catch(std::exception& e) {
2891 sq_throwerror(vm, e.what());
2894 sq_throwerror(vm, _SC("Unexpected exception while executing function 'start_moving'"));
2900 static SQInteger WillOWisp_stop_moving_wrapper(HSQUIRRELVM vm)
2903 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2904 sq_throwerror(vm, _SC("'stop_moving' called without instance"));
2907 scripting::WillOWisp* _this = reinterpret_cast<scripting::WillOWisp*> (data);
2910 _this->stop_moving();
2914 } catch(std::exception& e) {
2915 sq_throwerror(vm, e.what());
2918 sq_throwerror(vm, _SC("Unexpected exception while executing function 'stop_moving'"));
2924 static SQInteger Wind_release_hook(SQUserPointer ptr, SQInteger )
2926 scripting::Wind* _this = reinterpret_cast<scripting::Wind*> (ptr);
2931 static SQInteger Wind_start_wrapper(HSQUIRRELVM vm)
2934 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2935 sq_throwerror(vm, _SC("'start' called without instance"));
2938 scripting::Wind* _this = reinterpret_cast<scripting::Wind*> (data);
2945 } catch(std::exception& e) {
2946 sq_throwerror(vm, e.what());
2949 sq_throwerror(vm, _SC("Unexpected exception while executing function 'start'"));
2955 static SQInteger Wind_stop_wrapper(HSQUIRRELVM vm)
2958 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2959 sq_throwerror(vm, _SC("'stop' called without instance"));
2962 scripting::Wind* _this = reinterpret_cast<scripting::Wind*> (data);
2969 } catch(std::exception& e) {
2970 sq_throwerror(vm, e.what());
2973 sq_throwerror(vm, _SC("Unexpected exception while executing function 'stop'"));
2979 static SQInteger display_wrapper(HSQUIRRELVM vm)
2981 return scripting::display(vm);
2984 static SQInteger print_stacktrace_wrapper(HSQUIRRELVM vm)
2986 HSQUIRRELVM arg0 = vm;
2989 scripting::print_stacktrace(arg0);
2993 } catch(std::exception& e) {
2994 sq_throwerror(vm, e.what());
2997 sq_throwerror(vm, _SC("Unexpected exception while executing function 'print_stacktrace'"));
3003 static SQInteger get_current_thread_wrapper(HSQUIRRELVM vm)
3005 return scripting::get_current_thread(vm);
3008 static SQInteger display_text_file_wrapper(HSQUIRRELVM vm)
3011 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3012 sq_throwerror(vm, _SC("Argument 1 not a string"));
3017 scripting::display_text_file(arg0);
3021 } catch(std::exception& e) {
3022 sq_throwerror(vm, e.what());
3025 sq_throwerror(vm, _SC("Unexpected exception while executing function 'display_text_file'"));
3031 static SQInteger load_worldmap_wrapper(HSQUIRRELVM vm)
3034 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3035 sq_throwerror(vm, _SC("Argument 1 not a string"));
3040 scripting::load_worldmap(arg0);
3044 } catch(std::exception& e) {
3045 sq_throwerror(vm, e.what());
3048 sq_throwerror(vm, _SC("Unexpected exception while executing function 'load_worldmap'"));
3054 static SQInteger load_level_wrapper(HSQUIRRELVM vm)
3057 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3058 sq_throwerror(vm, _SC("Argument 1 not a string"));
3063 scripting::load_level(arg0);
3067 } catch(std::exception& e) {
3068 sq_throwerror(vm, e.what());
3071 sq_throwerror(vm, _SC("Unexpected exception while executing function 'load_level'"));
3077 static SQInteger wait_wrapper(HSQUIRRELVM vm)
3079 HSQUIRRELVM arg0 = vm;
3081 if(SQ_FAILED(sq_getfloat(vm, 2, &arg1))) {
3082 sq_throwerror(vm, _SC("Argument 1 not a float"));
3087 scripting::wait(arg0, static_cast<float> (arg1));
3089 return sq_suspendvm(vm);
3091 } catch(std::exception& e) {
3092 sq_throwerror(vm, e.what());
3095 sq_throwerror(vm, _SC("Unexpected exception while executing function 'wait'"));
3101 static SQInteger wait_for_screenswitch_wrapper(HSQUIRRELVM vm)
3103 HSQUIRRELVM arg0 = vm;
3106 scripting::wait_for_screenswitch(arg0);
3108 return sq_suspendvm(vm);
3110 } catch(std::exception& e) {
3111 sq_throwerror(vm, e.what());
3114 sq_throwerror(vm, _SC("Unexpected exception while executing function 'wait_for_screenswitch'"));
3120 static SQInteger exit_screen_wrapper(HSQUIRRELVM vm)
3125 scripting::exit_screen();
3129 } catch(std::exception& e) {
3130 sq_throwerror(vm, e.what());
3133 sq_throwerror(vm, _SC("Unexpected exception while executing function 'exit_screen'"));
3139 static SQInteger fadeout_screen_wrapper(HSQUIRRELVM vm)
3142 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
3143 sq_throwerror(vm, _SC("Argument 1 not a float"));
3148 scripting::fadeout_screen(static_cast<float> (arg0));
3152 } catch(std::exception& e) {
3153 sq_throwerror(vm, e.what());
3156 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fadeout_screen'"));
3162 static SQInteger shrink_screen_wrapper(HSQUIRRELVM vm)
3165 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
3166 sq_throwerror(vm, _SC("Argument 1 not a float"));
3170 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
3171 sq_throwerror(vm, _SC("Argument 2 not a float"));
3175 if(SQ_FAILED(sq_getfloat(vm, 4, &arg2))) {
3176 sq_throwerror(vm, _SC("Argument 3 not a float"));
3181 scripting::shrink_screen(static_cast<float> (arg0), static_cast<float> (arg1), static_cast<float> (arg2));
3185 } catch(std::exception& e) {
3186 sq_throwerror(vm, e.what());
3189 sq_throwerror(vm, _SC("Unexpected exception while executing function 'shrink_screen'"));
3195 static SQInteger abort_screenfade_wrapper(HSQUIRRELVM vm)
3200 scripting::abort_screenfade();
3204 } catch(std::exception& e) {
3205 sq_throwerror(vm, e.what());
3208 sq_throwerror(vm, _SC("Unexpected exception while executing function 'abort_screenfade'"));
3214 static SQInteger translate_wrapper(HSQUIRRELVM vm)
3217 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3218 sq_throwerror(vm, _SC("Argument 1 not a string"));
3223 std::string return_value = scripting::translate(arg0);
3225 sq_pushstring(vm, return_value.c_str(), return_value.size());
3228 } catch(std::exception& e) {
3229 sq_throwerror(vm, e.what());
3232 sq_throwerror(vm, _SC("Unexpected exception while executing function 'translate'"));
3238 static SQInteger import_wrapper(HSQUIRRELVM vm)
3240 HSQUIRRELVM arg0 = vm;
3242 if(SQ_FAILED(sq_getstring(vm, 2, &arg1))) {
3243 sq_throwerror(vm, _SC("Argument 1 not a string"));
3248 scripting::import(arg0, arg1);
3252 } catch(std::exception& e) {
3253 sq_throwerror(vm, e.what());
3256 sq_throwerror(vm, _SC("Unexpected exception while executing function 'import'"));
3262 static SQInteger save_state_wrapper(HSQUIRRELVM vm)
3267 scripting::save_state();
3271 } catch(std::exception& e) {
3272 sq_throwerror(vm, e.what());
3275 sq_throwerror(vm, _SC("Unexpected exception while executing function 'save_state'"));
3281 static SQInteger update_worldmap_wrapper(HSQUIRRELVM vm)
3286 scripting::update_worldmap();
3290 } catch(std::exception& e) {
3291 sq_throwerror(vm, e.what());
3294 sq_throwerror(vm, _SC("Unexpected exception while executing function 'update_worldmap'"));
3300 static SQInteger debug_collrects_wrapper(HSQUIRRELVM vm)
3303 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3304 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3309 scripting::debug_collrects(arg0 == SQTrue);
3313 } catch(std::exception& e) {
3314 sq_throwerror(vm, e.what());
3317 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_collrects'"));
3323 static SQInteger debug_show_fps_wrapper(HSQUIRRELVM vm)
3326 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3327 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3332 scripting::debug_show_fps(arg0 == SQTrue);
3336 } catch(std::exception& e) {
3337 sq_throwerror(vm, e.what());
3340 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_show_fps'"));
3346 static SQInteger debug_draw_solids_only_wrapper(HSQUIRRELVM vm)
3349 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3350 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3355 scripting::debug_draw_solids_only(arg0 == SQTrue);
3359 } catch(std::exception& e) {
3360 sq_throwerror(vm, e.what());
3363 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_draw_solids_only'"));
3369 static SQInteger debug_draw_editor_images_wrapper(HSQUIRRELVM vm)
3372 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3373 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3378 scripting::debug_draw_editor_images(arg0 == SQTrue);
3382 } catch(std::exception& e) {
3383 sq_throwerror(vm, e.what());
3386 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_draw_editor_images'"));
3392 static SQInteger debug_worldmap_ghost_wrapper(HSQUIRRELVM vm)
3395 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3396 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3401 scripting::debug_worldmap_ghost(arg0 == SQTrue);
3405 } catch(std::exception& e) {
3406 sq_throwerror(vm, e.what());
3409 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_worldmap_ghost'"));
3415 static SQInteger play_music_wrapper(HSQUIRRELVM vm)
3418 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3419 sq_throwerror(vm, _SC("Argument 1 not a string"));
3424 scripting::play_music(arg0);
3428 } catch(std::exception& e) {
3429 sq_throwerror(vm, e.what());
3432 sq_throwerror(vm, _SC("Unexpected exception while executing function 'play_music'"));
3438 static SQInteger play_sound_wrapper(HSQUIRRELVM vm)
3441 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3442 sq_throwerror(vm, _SC("Argument 1 not a string"));
3447 scripting::play_sound(arg0);
3451 } catch(std::exception& e) {
3452 sq_throwerror(vm, e.what());
3455 sq_throwerror(vm, _SC("Unexpected exception while executing function 'play_sound'"));
3461 static SQInteger set_game_speed_wrapper(HSQUIRRELVM vm)
3464 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
3465 sq_throwerror(vm, _SC("Argument 1 not a float"));
3470 scripting::set_game_speed(static_cast<float> (arg0));
3474 } catch(std::exception& e) {
3475 sq_throwerror(vm, e.what());
3478 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_game_speed'"));
3484 static SQInteger grease_wrapper(HSQUIRRELVM vm)
3489 scripting::grease();
3493 } catch(std::exception& e) {
3494 sq_throwerror(vm, e.what());
3497 sq_throwerror(vm, _SC("Unexpected exception while executing function 'grease'"));
3503 static SQInteger invincible_wrapper(HSQUIRRELVM vm)
3508 scripting::invincible();
3512 } catch(std::exception& e) {
3513 sq_throwerror(vm, e.what());
3516 sq_throwerror(vm, _SC("Unexpected exception while executing function 'invincible'"));
3522 static SQInteger ghost_wrapper(HSQUIRRELVM vm)
3531 } catch(std::exception& e) {
3532 sq_throwerror(vm, e.what());
3535 sq_throwerror(vm, _SC("Unexpected exception while executing function 'ghost'"));
3541 static SQInteger mortal_wrapper(HSQUIRRELVM vm)
3546 scripting::mortal();
3550 } catch(std::exception& e) {
3551 sq_throwerror(vm, e.what());
3554 sq_throwerror(vm, _SC("Unexpected exception while executing function 'mortal'"));
3560 static SQInteger restart_wrapper(HSQUIRRELVM vm)
3565 scripting::restart();
3569 } catch(std::exception& e) {
3570 sq_throwerror(vm, e.what());
3573 sq_throwerror(vm, _SC("Unexpected exception while executing function 'restart'"));
3579 static SQInteger whereami_wrapper(HSQUIRRELVM vm)
3584 scripting::whereami();
3588 } catch(std::exception& e) {
3589 sq_throwerror(vm, e.what());
3592 sq_throwerror(vm, _SC("Unexpected exception while executing function 'whereami'"));
3598 static SQInteger gotoend_wrapper(HSQUIRRELVM vm)
3603 scripting::gotoend();
3607 } catch(std::exception& e) {
3608 sq_throwerror(vm, e.what());
3611 sq_throwerror(vm, _SC("Unexpected exception while executing function 'gotoend'"));
3617 static SQInteger camera_wrapper(HSQUIRRELVM vm)
3622 scripting::camera();
3626 } catch(std::exception& e) {
3627 sq_throwerror(vm, e.what());
3630 sq_throwerror(vm, _SC("Unexpected exception while executing function 'camera'"));
3636 static SQInteger set_gamma_wrapper(HSQUIRRELVM vm)
3639 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
3640 sq_throwerror(vm, _SC("Argument 1 not a float"));
3645 scripting::set_gamma(static_cast<float> (arg0));
3649 } catch(std::exception& e) {
3650 sq_throwerror(vm, e.what());
3653 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_gamma'"));
3659 static SQInteger quit_wrapper(HSQUIRRELVM vm)
3668 } catch(std::exception& e) {
3669 sq_throwerror(vm, e.what());
3672 sq_throwerror(vm, _SC("Unexpected exception while executing function 'quit'"));
3678 static SQInteger rand_wrapper(HSQUIRRELVM vm)
3682 int return_value = scripting::rand();
3684 sq_pushinteger(vm, return_value);
3687 } catch(std::exception& e) {
3688 sq_throwerror(vm, e.what());
3691 sq_throwerror(vm, _SC("Unexpected exception while executing function 'rand'"));
3697 static SQInteger record_demo_wrapper(HSQUIRRELVM vm)
3700 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3701 sq_throwerror(vm, _SC("Argument 1 not a string"));
3706 scripting::record_demo(arg0);
3710 } catch(std::exception& e) {
3711 sq_throwerror(vm, e.what());
3714 sq_throwerror(vm, _SC("Unexpected exception while executing function 'record_demo'"));
3720 static SQInteger play_demo_wrapper(HSQUIRRELVM vm)
3723 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3724 sq_throwerror(vm, _SC("Argument 1 not a string"));
3729 scripting::play_demo(arg0);
3733 } catch(std::exception& e) {
3734 sq_throwerror(vm, e.what());
3737 sq_throwerror(vm, _SC("Unexpected exception while executing function 'play_demo'"));
3743 static SQInteger Level_finish_wrapper(HSQUIRRELVM vm)
3746 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3747 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3752 scripting::Level_finish(arg0 == SQTrue);
3756 } catch(std::exception& e) {
3757 sq_throwerror(vm, e.what());
3760 sq_throwerror(vm, _SC("Unexpected exception while executing function 'Level_finish'"));
3766 static SQInteger Level_spawn_wrapper(HSQUIRRELVM vm)
3769 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3770 sq_throwerror(vm, _SC("Argument 1 not a string"));
3774 if(SQ_FAILED(sq_getstring(vm, 3, &arg1))) {
3775 sq_throwerror(vm, _SC("Argument 2 not a string"));
3780 scripting::Level_spawn(arg0, arg1);
3784 } catch(std::exception& e) {
3785 sq_throwerror(vm, e.what());
3788 sq_throwerror(vm, _SC("Unexpected exception while executing function 'Level_spawn'"));
3794 static SQInteger Level_flip_vertically_wrapper(HSQUIRRELVM vm)
3799 scripting::Level_flip_vertically();
3803 } catch(std::exception& e) {
3804 sq_throwerror(vm, e.what());
3807 sq_throwerror(vm, _SC("Unexpected exception while executing function 'Level_flip_vertically'"));
3813 static SQInteger Level_toggle_pause_wrapper(HSQUIRRELVM vm)
3818 scripting::Level_toggle_pause();
3822 } catch(std::exception& e) {
3823 sq_throwerror(vm, e.what());
3826 sq_throwerror(vm, _SC("Unexpected exception while executing function 'Level_toggle_pause'"));
3832 static SQInteger Level_edit_wrapper(HSQUIRRELVM vm)
3835 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3836 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3841 scripting::Level_edit(arg0 == SQTrue);
3845 } catch(std::exception& e) {
3846 sq_throwerror(vm, e.what());
3849 sq_throwerror(vm, _SC("Unexpected exception while executing function 'Level_edit'"));
3855 } // namespace wrapper
3856 void create_squirrel_instance(HSQUIRRELVM v, scripting::AmbientSound* object, bool setup_releasehook)
3858 using namespace wrapper;
3860 sq_pushroottable(v);
3861 sq_pushstring(v, "AmbientSound", -1);
3862 if(SQ_FAILED(sq_get(v, -2))) {
3863 std::ostringstream msg;
3864 msg << "Couldn't resolved squirrel type 'AmbientSound'";
3865 throw SquirrelError(v, msg.str());
3868 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
3869 std::ostringstream msg;
3870 msg << "Couldn't setup squirrel instance for object of type 'AmbientSound'";
3871 throw SquirrelError(v, msg.str());
3873 sq_remove(v, -2); // remove object name
3875 if(setup_releasehook) {
3876 sq_setreleasehook(v, -1, AmbientSound_release_hook);
3879 sq_remove(v, -2); // remove root table
3882 void create_squirrel_instance(HSQUIRRELVM v, scripting::Camera* object, bool setup_releasehook)
3884 using namespace wrapper;
3886 sq_pushroottable(v);
3887 sq_pushstring(v, "Camera", -1);
3888 if(SQ_FAILED(sq_get(v, -2))) {
3889 std::ostringstream msg;
3890 msg << "Couldn't resolved squirrel type 'Camera'";
3891 throw SquirrelError(v, msg.str());
3894 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
3895 std::ostringstream msg;
3896 msg << "Couldn't setup squirrel instance for object of type 'Camera'";
3897 throw SquirrelError(v, msg.str());
3899 sq_remove(v, -2); // remove object name
3901 if(setup_releasehook) {
3902 sq_setreleasehook(v, -1, Camera_release_hook);
3905 sq_remove(v, -2); // remove root table
3908 void create_squirrel_instance(HSQUIRRELVM v, scripting::Candle* object, bool setup_releasehook)
3910 using namespace wrapper;
3912 sq_pushroottable(v);
3913 sq_pushstring(v, "Candle", -1);
3914 if(SQ_FAILED(sq_get(v, -2))) {
3915 std::ostringstream msg;
3916 msg << "Couldn't resolved squirrel type 'Candle'";
3917 throw SquirrelError(v, msg.str());
3920 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
3921 std::ostringstream msg;
3922 msg << "Couldn't setup squirrel instance for object of type 'Candle'";
3923 throw SquirrelError(v, msg.str());
3925 sq_remove(v, -2); // remove object name
3927 if(setup_releasehook) {
3928 sq_setreleasehook(v, -1, Candle_release_hook);
3931 sq_remove(v, -2); // remove root table
3934 void create_squirrel_instance(HSQUIRRELVM v, scripting::DisplayEffect* object, bool setup_releasehook)
3936 using namespace wrapper;
3938 sq_pushroottable(v);
3939 sq_pushstring(v, "DisplayEffect", -1);
3940 if(SQ_FAILED(sq_get(v, -2))) {
3941 std::ostringstream msg;
3942 msg << "Couldn't resolved squirrel type 'DisplayEffect'";
3943 throw SquirrelError(v, msg.str());
3946 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
3947 std::ostringstream msg;
3948 msg << "Couldn't setup squirrel instance for object of type 'DisplayEffect'";
3949 throw SquirrelError(v, msg.str());
3951 sq_remove(v, -2); // remove object name
3953 if(setup_releasehook) {
3954 sq_setreleasehook(v, -1, DisplayEffect_release_hook);
3957 sq_remove(v, -2); // remove root table
3960 void create_squirrel_instance(HSQUIRRELVM v, scripting::FloatingImage* object, bool setup_releasehook)
3962 using namespace wrapper;
3964 sq_pushroottable(v);
3965 sq_pushstring(v, "FloatingImage", -1);
3966 if(SQ_FAILED(sq_get(v, -2))) {
3967 std::ostringstream msg;
3968 msg << "Couldn't resolved squirrel type 'FloatingImage'";
3969 throw SquirrelError(v, msg.str());
3972 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
3973 std::ostringstream msg;
3974 msg << "Couldn't setup squirrel instance for object of type 'FloatingImage'";
3975 throw SquirrelError(v, msg.str());
3977 sq_remove(v, -2); // remove object name
3979 if(setup_releasehook) {
3980 sq_setreleasehook(v, -1, FloatingImage_release_hook);
3983 sq_remove(v, -2); // remove root table
3986 void create_squirrel_instance(HSQUIRRELVM v, scripting::LevelTime* object, bool setup_releasehook)
3988 using namespace wrapper;
3990 sq_pushroottable(v);
3991 sq_pushstring(v, "LevelTime", -1);
3992 if(SQ_FAILED(sq_get(v, -2))) {
3993 std::ostringstream msg;
3994 msg << "Couldn't resolved squirrel type 'LevelTime'";
3995 throw SquirrelError(v, msg.str());
3998 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
3999 std::ostringstream msg;
4000 msg << "Couldn't setup squirrel instance for object of type 'LevelTime'";
4001 throw SquirrelError(v, msg.str());
4003 sq_remove(v, -2); // remove object name
4005 if(setup_releasehook) {
4006 sq_setreleasehook(v, -1, LevelTime_release_hook);
4009 sq_remove(v, -2); // remove root table
4012 void create_squirrel_instance(HSQUIRRELVM v, scripting::Platform* object, bool setup_releasehook)
4014 using namespace wrapper;
4016 sq_pushroottable(v);
4017 sq_pushstring(v, "Platform", -1);
4018 if(SQ_FAILED(sq_get(v, -2))) {
4019 std::ostringstream msg;
4020 msg << "Couldn't resolved squirrel type 'Platform'";
4021 throw SquirrelError(v, msg.str());
4024 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4025 std::ostringstream msg;
4026 msg << "Couldn't setup squirrel instance for object of type 'Platform'";
4027 throw SquirrelError(v, msg.str());
4029 sq_remove(v, -2); // remove object name
4031 if(setup_releasehook) {
4032 sq_setreleasehook(v, -1, Platform_release_hook);
4035 sq_remove(v, -2); // remove root table
4038 void create_squirrel_instance(HSQUIRRELVM v, scripting::Player* object, bool setup_releasehook)
4040 using namespace wrapper;
4042 sq_pushroottable(v);
4043 sq_pushstring(v, "Player", -1);
4044 if(SQ_FAILED(sq_get(v, -2))) {
4045 std::ostringstream msg;
4046 msg << "Couldn't resolved squirrel type 'Player'";
4047 throw SquirrelError(v, msg.str());
4050 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4051 std::ostringstream msg;
4052 msg << "Couldn't setup squirrel instance for object of type 'Player'";
4053 throw SquirrelError(v, msg.str());
4055 sq_remove(v, -2); // remove object name
4057 if(setup_releasehook) {
4058 sq_setreleasehook(v, -1, Player_release_hook);
4061 sq_remove(v, -2); // remove root table
4064 void create_squirrel_instance(HSQUIRRELVM v, scripting::ScriptedObject* object, bool setup_releasehook)
4066 using namespace wrapper;
4068 sq_pushroottable(v);
4069 sq_pushstring(v, "ScriptedObject", -1);
4070 if(SQ_FAILED(sq_get(v, -2))) {
4071 std::ostringstream msg;
4072 msg << "Couldn't resolved squirrel type 'ScriptedObject'";
4073 throw SquirrelError(v, msg.str());
4076 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4077 std::ostringstream msg;
4078 msg << "Couldn't setup squirrel instance for object of type 'ScriptedObject'";
4079 throw SquirrelError(v, msg.str());
4081 sq_remove(v, -2); // remove object name
4083 if(setup_releasehook) {
4084 sq_setreleasehook(v, -1, ScriptedObject_release_hook);
4087 sq_remove(v, -2); // remove root table
4090 void create_squirrel_instance(HSQUIRRELVM v, scripting::SSector* object, bool setup_releasehook)
4092 using namespace wrapper;
4094 sq_pushroottable(v);
4095 sq_pushstring(v, "SSector", -1);
4096 if(SQ_FAILED(sq_get(v, -2))) {
4097 std::ostringstream msg;
4098 msg << "Couldn't resolved squirrel type 'SSector'";
4099 throw SquirrelError(v, msg.str());
4102 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4103 std::ostringstream msg;
4104 msg << "Couldn't setup squirrel instance for object of type 'SSector'";
4105 throw SquirrelError(v, msg.str());
4107 sq_remove(v, -2); // remove object name
4109 if(setup_releasehook) {
4110 sq_setreleasehook(v, -1, SSector_release_hook);
4113 sq_remove(v, -2); // remove root table
4116 void create_squirrel_instance(HSQUIRRELVM v, scripting::Text* object, bool setup_releasehook)
4118 using namespace wrapper;
4120 sq_pushroottable(v);
4121 sq_pushstring(v, "Text", -1);
4122 if(SQ_FAILED(sq_get(v, -2))) {
4123 std::ostringstream msg;
4124 msg << "Couldn't resolved squirrel type 'Text'";
4125 throw SquirrelError(v, msg.str());
4128 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4129 std::ostringstream msg;
4130 msg << "Couldn't setup squirrel instance for object of type 'Text'";
4131 throw SquirrelError(v, msg.str());
4133 sq_remove(v, -2); // remove object name
4135 if(setup_releasehook) {
4136 sq_setreleasehook(v, -1, Text_release_hook);
4139 sq_remove(v, -2); // remove root table
4142 void create_squirrel_instance(HSQUIRRELVM v, scripting::Thunderstorm* object, bool setup_releasehook)
4144 using namespace wrapper;
4146 sq_pushroottable(v);
4147 sq_pushstring(v, "Thunderstorm", -1);
4148 if(SQ_FAILED(sq_get(v, -2))) {
4149 std::ostringstream msg;
4150 msg << "Couldn't resolved squirrel type 'Thunderstorm'";
4151 throw SquirrelError(v, msg.str());
4154 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4155 std::ostringstream msg;
4156 msg << "Couldn't setup squirrel instance for object of type 'Thunderstorm'";
4157 throw SquirrelError(v, msg.str());
4159 sq_remove(v, -2); // remove object name
4161 if(setup_releasehook) {
4162 sq_setreleasehook(v, -1, Thunderstorm_release_hook);
4165 sq_remove(v, -2); // remove root table
4168 void create_squirrel_instance(HSQUIRRELVM v, scripting::TileMap* object, bool setup_releasehook)
4170 using namespace wrapper;
4172 sq_pushroottable(v);
4173 sq_pushstring(v, "TileMap", -1);
4174 if(SQ_FAILED(sq_get(v, -2))) {
4175 std::ostringstream msg;
4176 msg << "Couldn't resolved squirrel type 'TileMap'";
4177 throw SquirrelError(v, msg.str());
4180 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4181 std::ostringstream msg;
4182 msg << "Couldn't setup squirrel instance for object of type 'TileMap'";
4183 throw SquirrelError(v, msg.str());
4185 sq_remove(v, -2); // remove object name
4187 if(setup_releasehook) {
4188 sq_setreleasehook(v, -1, TileMap_release_hook);
4191 sq_remove(v, -2); // remove root table
4194 void create_squirrel_instance(HSQUIRRELVM v, scripting::WillOWisp* object, bool setup_releasehook)
4196 using namespace wrapper;
4198 sq_pushroottable(v);
4199 sq_pushstring(v, "WillOWisp", -1);
4200 if(SQ_FAILED(sq_get(v, -2))) {
4201 std::ostringstream msg;
4202 msg << "Couldn't resolved squirrel type 'WillOWisp'";
4203 throw SquirrelError(v, msg.str());
4206 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4207 std::ostringstream msg;
4208 msg << "Couldn't setup squirrel instance for object of type 'WillOWisp'";
4209 throw SquirrelError(v, msg.str());
4211 sq_remove(v, -2); // remove object name
4213 if(setup_releasehook) {
4214 sq_setreleasehook(v, -1, WillOWisp_release_hook);
4217 sq_remove(v, -2); // remove root table
4220 void create_squirrel_instance(HSQUIRRELVM v, scripting::Wind* object, bool setup_releasehook)
4222 using namespace wrapper;
4224 sq_pushroottable(v);
4225 sq_pushstring(v, "Wind", -1);
4226 if(SQ_FAILED(sq_get(v, -2))) {
4227 std::ostringstream msg;
4228 msg << "Couldn't resolved squirrel type 'Wind'";
4229 throw SquirrelError(v, msg.str());
4232 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4233 std::ostringstream msg;
4234 msg << "Couldn't setup squirrel instance for object of type 'Wind'";
4235 throw SquirrelError(v, msg.str());
4237 sq_remove(v, -2); // remove object name
4239 if(setup_releasehook) {
4240 sq_setreleasehook(v, -1, Wind_release_hook);
4243 sq_remove(v, -2); // remove root table
4246 void register_supertux_wrapper(HSQUIRRELVM v)
4248 using namespace wrapper;
4250 sq_pushstring(v, "ANCHOR_TOP", -1);
4251 sq_pushinteger(v, 16);
4252 if(SQ_FAILED(sq_createslot(v, -3))) {
4253 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_TOP'");
4256 sq_pushstring(v, "ANCHOR_BOTTOM", -1);
4257 sq_pushinteger(v, 32);
4258 if(SQ_FAILED(sq_createslot(v, -3))) {
4259 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_BOTTOM'");
4262 sq_pushstring(v, "ANCHOR_LEFT", -1);
4263 sq_pushinteger(v, 1);
4264 if(SQ_FAILED(sq_createslot(v, -3))) {
4265 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_LEFT'");
4268 sq_pushstring(v, "ANCHOR_RIGHT", -1);
4269 sq_pushinteger(v, 2);
4270 if(SQ_FAILED(sq_createslot(v, -3))) {
4271 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_RIGHT'");
4274 sq_pushstring(v, "ANCHOR_MIDDLE", -1);
4275 sq_pushinteger(v, 0);
4276 if(SQ_FAILED(sq_createslot(v, -3))) {
4277 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_MIDDLE'");
4280 sq_pushstring(v, "ANCHOR_TOP_LEFT", -1);
4281 sq_pushinteger(v, 17);
4282 if(SQ_FAILED(sq_createslot(v, -3))) {
4283 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_TOP_LEFT'");
4286 sq_pushstring(v, "ANCHOR_TOP_RIGHT", -1);
4287 sq_pushinteger(v, 18);
4288 if(SQ_FAILED(sq_createslot(v, -3))) {
4289 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_TOP_RIGHT'");
4292 sq_pushstring(v, "ANCHOR_BOTTOM_LEFT", -1);
4293 sq_pushinteger(v, 33);
4294 if(SQ_FAILED(sq_createslot(v, -3))) {
4295 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_BOTTOM_LEFT'");
4298 sq_pushstring(v, "ANCHOR_BOTTOM_RIGHT", -1);
4299 sq_pushinteger(v, 34);
4300 if(SQ_FAILED(sq_createslot(v, -3))) {
4301 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_BOTTOM_RIGHT'");
4304 sq_pushstring(v, "display", -1);
4305 sq_newclosure(v, &display_wrapper, 0);
4306 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "t.");
4307 if(SQ_FAILED(sq_createslot(v, -3))) {
4308 throw SquirrelError(v, "Couldn't register function 'display'");
4311 sq_pushstring(v, "print_stacktrace", -1);
4312 sq_newclosure(v, &print_stacktrace_wrapper, 0);
4313 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4314 if(SQ_FAILED(sq_createslot(v, -3))) {
4315 throw SquirrelError(v, "Couldn't register function 'print_stacktrace'");
4318 sq_pushstring(v, "get_current_thread", -1);
4319 sq_newclosure(v, &get_current_thread_wrapper, 0);
4320 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "t");
4321 if(SQ_FAILED(sq_createslot(v, -3))) {
4322 throw SquirrelError(v, "Couldn't register function 'get_current_thread'");
4325 sq_pushstring(v, "display_text_file", -1);
4326 sq_newclosure(v, &display_text_file_wrapper, 0);
4327 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4328 if(SQ_FAILED(sq_createslot(v, -3))) {
4329 throw SquirrelError(v, "Couldn't register function 'display_text_file'");
4332 sq_pushstring(v, "load_worldmap", -1);
4333 sq_newclosure(v, &load_worldmap_wrapper, 0);
4334 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4335 if(SQ_FAILED(sq_createslot(v, -3))) {
4336 throw SquirrelError(v, "Couldn't register function 'load_worldmap'");
4339 sq_pushstring(v, "load_level", -1);
4340 sq_newclosure(v, &load_level_wrapper, 0);
4341 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4342 if(SQ_FAILED(sq_createslot(v, -3))) {
4343 throw SquirrelError(v, "Couldn't register function 'load_level'");
4346 sq_pushstring(v, "wait", -1);
4347 sq_newclosure(v, &wait_wrapper, 0);
4348 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4349 if(SQ_FAILED(sq_createslot(v, -3))) {
4350 throw SquirrelError(v, "Couldn't register function 'wait'");
4353 sq_pushstring(v, "wait_for_screenswitch", -1);
4354 sq_newclosure(v, &wait_for_screenswitch_wrapper, 0);
4355 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4356 if(SQ_FAILED(sq_createslot(v, -3))) {
4357 throw SquirrelError(v, "Couldn't register function 'wait_for_screenswitch'");
4360 sq_pushstring(v, "exit_screen", -1);
4361 sq_newclosure(v, &exit_screen_wrapper, 0);
4362 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4363 if(SQ_FAILED(sq_createslot(v, -3))) {
4364 throw SquirrelError(v, "Couldn't register function 'exit_screen'");
4367 sq_pushstring(v, "fadeout_screen", -1);
4368 sq_newclosure(v, &fadeout_screen_wrapper, 0);
4369 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4370 if(SQ_FAILED(sq_createslot(v, -3))) {
4371 throw SquirrelError(v, "Couldn't register function 'fadeout_screen'");
4374 sq_pushstring(v, "shrink_screen", -1);
4375 sq_newclosure(v, &shrink_screen_wrapper, 0);
4376 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnnn");
4377 if(SQ_FAILED(sq_createslot(v, -3))) {
4378 throw SquirrelError(v, "Couldn't register function 'shrink_screen'");
4381 sq_pushstring(v, "abort_screenfade", -1);
4382 sq_newclosure(v, &abort_screenfade_wrapper, 0);
4383 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4384 if(SQ_FAILED(sq_createslot(v, -3))) {
4385 throw SquirrelError(v, "Couldn't register function 'abort_screenfade'");
4388 sq_pushstring(v, "translate", -1);
4389 sq_newclosure(v, &translate_wrapper, 0);
4390 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4391 if(SQ_FAILED(sq_createslot(v, -3))) {
4392 throw SquirrelError(v, "Couldn't register function 'translate'");
4395 sq_pushstring(v, "import", -1);
4396 sq_newclosure(v, &import_wrapper, 0);
4397 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4398 if(SQ_FAILED(sq_createslot(v, -3))) {
4399 throw SquirrelError(v, "Couldn't register function 'import'");
4402 sq_pushstring(v, "save_state", -1);
4403 sq_newclosure(v, &save_state_wrapper, 0);
4404 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4405 if(SQ_FAILED(sq_createslot(v, -3))) {
4406 throw SquirrelError(v, "Couldn't register function 'save_state'");
4409 sq_pushstring(v, "update_worldmap", -1);
4410 sq_newclosure(v, &update_worldmap_wrapper, 0);
4411 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4412 if(SQ_FAILED(sq_createslot(v, -3))) {
4413 throw SquirrelError(v, "Couldn't register function 'update_worldmap'");
4416 sq_pushstring(v, "debug_collrects", -1);
4417 sq_newclosure(v, &debug_collrects_wrapper, 0);
4418 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4419 if(SQ_FAILED(sq_createslot(v, -3))) {
4420 throw SquirrelError(v, "Couldn't register function 'debug_collrects'");
4423 sq_pushstring(v, "debug_show_fps", -1);
4424 sq_newclosure(v, &debug_show_fps_wrapper, 0);
4425 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4426 if(SQ_FAILED(sq_createslot(v, -3))) {
4427 throw SquirrelError(v, "Couldn't register function 'debug_show_fps'");
4430 sq_pushstring(v, "debug_draw_solids_only", -1);
4431 sq_newclosure(v, &debug_draw_solids_only_wrapper, 0);
4432 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4433 if(SQ_FAILED(sq_createslot(v, -3))) {
4434 throw SquirrelError(v, "Couldn't register function 'debug_draw_solids_only'");
4437 sq_pushstring(v, "debug_draw_editor_images", -1);
4438 sq_newclosure(v, &debug_draw_editor_images_wrapper, 0);
4439 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4440 if(SQ_FAILED(sq_createslot(v, -3))) {
4441 throw SquirrelError(v, "Couldn't register function 'debug_draw_editor_images'");
4444 sq_pushstring(v, "debug_worldmap_ghost", -1);
4445 sq_newclosure(v, &debug_worldmap_ghost_wrapper, 0);
4446 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4447 if(SQ_FAILED(sq_createslot(v, -3))) {
4448 throw SquirrelError(v, "Couldn't register function 'debug_worldmap_ghost'");
4451 sq_pushstring(v, "play_music", -1);
4452 sq_newclosure(v, &play_music_wrapper, 0);
4453 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4454 if(SQ_FAILED(sq_createslot(v, -3))) {
4455 throw SquirrelError(v, "Couldn't register function 'play_music'");
4458 sq_pushstring(v, "play_sound", -1);
4459 sq_newclosure(v, &play_sound_wrapper, 0);
4460 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4461 if(SQ_FAILED(sq_createslot(v, -3))) {
4462 throw SquirrelError(v, "Couldn't register function 'play_sound'");
4465 sq_pushstring(v, "set_game_speed", -1);
4466 sq_newclosure(v, &set_game_speed_wrapper, 0);
4467 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4468 if(SQ_FAILED(sq_createslot(v, -3))) {
4469 throw SquirrelError(v, "Couldn't register function 'set_game_speed'");
4472 sq_pushstring(v, "grease", -1);
4473 sq_newclosure(v, &grease_wrapper, 0);
4474 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4475 if(SQ_FAILED(sq_createslot(v, -3))) {
4476 throw SquirrelError(v, "Couldn't register function 'grease'");
4479 sq_pushstring(v, "invincible", -1);
4480 sq_newclosure(v, &invincible_wrapper, 0);
4481 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4482 if(SQ_FAILED(sq_createslot(v, -3))) {
4483 throw SquirrelError(v, "Couldn't register function 'invincible'");
4486 sq_pushstring(v, "ghost", -1);
4487 sq_newclosure(v, &ghost_wrapper, 0);
4488 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4489 if(SQ_FAILED(sq_createslot(v, -3))) {
4490 throw SquirrelError(v, "Couldn't register function 'ghost'");
4493 sq_pushstring(v, "mortal", -1);
4494 sq_newclosure(v, &mortal_wrapper, 0);
4495 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4496 if(SQ_FAILED(sq_createslot(v, -3))) {
4497 throw SquirrelError(v, "Couldn't register function 'mortal'");
4500 sq_pushstring(v, "restart", -1);
4501 sq_newclosure(v, &restart_wrapper, 0);
4502 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4503 if(SQ_FAILED(sq_createslot(v, -3))) {
4504 throw SquirrelError(v, "Couldn't register function 'restart'");
4507 sq_pushstring(v, "whereami", -1);
4508 sq_newclosure(v, &whereami_wrapper, 0);
4509 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4510 if(SQ_FAILED(sq_createslot(v, -3))) {
4511 throw SquirrelError(v, "Couldn't register function 'whereami'");
4514 sq_pushstring(v, "gotoend", -1);
4515 sq_newclosure(v, &gotoend_wrapper, 0);
4516 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4517 if(SQ_FAILED(sq_createslot(v, -3))) {
4518 throw SquirrelError(v, "Couldn't register function 'gotoend'");
4521 sq_pushstring(v, "camera", -1);
4522 sq_newclosure(v, &camera_wrapper, 0);
4523 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4524 if(SQ_FAILED(sq_createslot(v, -3))) {
4525 throw SquirrelError(v, "Couldn't register function 'camera'");
4528 sq_pushstring(v, "set_gamma", -1);
4529 sq_newclosure(v, &set_gamma_wrapper, 0);
4530 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4531 if(SQ_FAILED(sq_createslot(v, -3))) {
4532 throw SquirrelError(v, "Couldn't register function 'set_gamma'");
4535 sq_pushstring(v, "quit", -1);
4536 sq_newclosure(v, &quit_wrapper, 0);
4537 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4538 if(SQ_FAILED(sq_createslot(v, -3))) {
4539 throw SquirrelError(v, "Couldn't register function 'quit'");
4542 sq_pushstring(v, "rand", -1);
4543 sq_newclosure(v, &rand_wrapper, 0);
4544 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4545 if(SQ_FAILED(sq_createslot(v, -3))) {
4546 throw SquirrelError(v, "Couldn't register function 'rand'");
4549 sq_pushstring(v, "record_demo", -1);
4550 sq_newclosure(v, &record_demo_wrapper, 0);
4551 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4552 if(SQ_FAILED(sq_createslot(v, -3))) {
4553 throw SquirrelError(v, "Couldn't register function 'record_demo'");
4556 sq_pushstring(v, "play_demo", -1);
4557 sq_newclosure(v, &play_demo_wrapper, 0);
4558 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4559 if(SQ_FAILED(sq_createslot(v, -3))) {
4560 throw SquirrelError(v, "Couldn't register function 'play_demo'");
4563 sq_pushstring(v, "Level_finish", -1);
4564 sq_newclosure(v, &Level_finish_wrapper, 0);
4565 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4566 if(SQ_FAILED(sq_createslot(v, -3))) {
4567 throw SquirrelError(v, "Couldn't register function 'Level_finish'");
4570 sq_pushstring(v, "Level_spawn", -1);
4571 sq_newclosure(v, &Level_spawn_wrapper, 0);
4572 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tss");
4573 if(SQ_FAILED(sq_createslot(v, -3))) {
4574 throw SquirrelError(v, "Couldn't register function 'Level_spawn'");
4577 sq_pushstring(v, "Level_flip_vertically", -1);
4578 sq_newclosure(v, &Level_flip_vertically_wrapper, 0);
4579 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4580 if(SQ_FAILED(sq_createslot(v, -3))) {
4581 throw SquirrelError(v, "Couldn't register function 'Level_flip_vertically'");
4584 sq_pushstring(v, "Level_toggle_pause", -1);
4585 sq_newclosure(v, &Level_toggle_pause_wrapper, 0);
4586 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4587 if(SQ_FAILED(sq_createslot(v, -3))) {
4588 throw SquirrelError(v, "Couldn't register function 'Level_toggle_pause'");
4591 sq_pushstring(v, "Level_edit", -1);
4592 sq_newclosure(v, &Level_edit_wrapper, 0);
4593 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4594 if(SQ_FAILED(sq_createslot(v, -3))) {
4595 throw SquirrelError(v, "Couldn't register function 'Level_edit'");
4598 // Register class AmbientSound
4599 sq_pushstring(v, "AmbientSound", -1);
4600 if(sq_newclass(v, SQFalse) < 0) {
4601 std::ostringstream msg;
4602 msg << "Couldn't create new class 'AmbientSound'";
4603 throw SquirrelError(v, msg.str());
4605 sq_pushstring(v, "set_pos", -1);
4606 sq_newclosure(v, &AmbientSound_set_pos_wrapper, 0);
4607 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
4608 if(SQ_FAILED(sq_createslot(v, -3))) {
4609 throw SquirrelError(v, "Couldn't register function 'set_pos'");
4612 sq_pushstring(v, "get_pos_x", -1);
4613 sq_newclosure(v, &AmbientSound_get_pos_x_wrapper, 0);
4614 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4615 if(SQ_FAILED(sq_createslot(v, -3))) {
4616 throw SquirrelError(v, "Couldn't register function 'get_pos_x'");
4619 sq_pushstring(v, "get_pos_y", -1);
4620 sq_newclosure(v, &AmbientSound_get_pos_y_wrapper, 0);
4621 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4622 if(SQ_FAILED(sq_createslot(v, -3))) {
4623 throw SquirrelError(v, "Couldn't register function 'get_pos_y'");
4626 if(SQ_FAILED(sq_createslot(v, -3))) {
4627 throw SquirrelError(v, "Couldn't register class 'AmbientSound'");
4630 // Register class Camera
4631 sq_pushstring(v, "Camera", -1);
4632 if(sq_newclass(v, SQFalse) < 0) {
4633 std::ostringstream msg;
4634 msg << "Couldn't create new class 'Camera'";
4635 throw SquirrelError(v, msg.str());
4637 sq_pushstring(v, "reload_config", -1);
4638 sq_newclosure(v, &Camera_reload_config_wrapper, 0);
4639 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4640 if(SQ_FAILED(sq_createslot(v, -3))) {
4641 throw SquirrelError(v, "Couldn't register function 'reload_config'");
4644 sq_pushstring(v, "shake", -1);
4645 sq_newclosure(v, &Camera_shake_wrapper, 0);
4646 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnnn");
4647 if(SQ_FAILED(sq_createslot(v, -3))) {
4648 throw SquirrelError(v, "Couldn't register function 'shake'");
4651 sq_pushstring(v, "set_pos", -1);
4652 sq_newclosure(v, &Camera_set_pos_wrapper, 0);
4653 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
4654 if(SQ_FAILED(sq_createslot(v, -3))) {
4655 throw SquirrelError(v, "Couldn't register function 'set_pos'");
4658 sq_pushstring(v, "set_mode", -1);
4659 sq_newclosure(v, &Camera_set_mode_wrapper, 0);
4660 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4661 if(SQ_FAILED(sq_createslot(v, -3))) {
4662 throw SquirrelError(v, "Couldn't register function 'set_mode'");
4665 sq_pushstring(v, "scroll_to", -1);
4666 sq_newclosure(v, &Camera_scroll_to_wrapper, 0);
4667 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnnn");
4668 if(SQ_FAILED(sq_createslot(v, -3))) {
4669 throw SquirrelError(v, "Couldn't register function 'scroll_to'");
4672 if(SQ_FAILED(sq_createslot(v, -3))) {
4673 throw SquirrelError(v, "Couldn't register class 'Camera'");
4676 // Register class Candle
4677 sq_pushstring(v, "Candle", -1);
4678 if(sq_newclass(v, SQFalse) < 0) {
4679 std::ostringstream msg;
4680 msg << "Couldn't create new class 'Candle'";
4681 throw SquirrelError(v, msg.str());
4683 sq_pushstring(v, "get_burning", -1);
4684 sq_newclosure(v, &Candle_get_burning_wrapper, 0);
4685 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4686 if(SQ_FAILED(sq_createslot(v, -3))) {
4687 throw SquirrelError(v, "Couldn't register function 'get_burning'");
4690 sq_pushstring(v, "set_burning", -1);
4691 sq_newclosure(v, &Candle_set_burning_wrapper, 0);
4692 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4693 if(SQ_FAILED(sq_createslot(v, -3))) {
4694 throw SquirrelError(v, "Couldn't register function 'set_burning'");
4697 if(SQ_FAILED(sq_createslot(v, -3))) {
4698 throw SquirrelError(v, "Couldn't register class 'Candle'");
4701 // Register class DisplayEffect
4702 sq_pushstring(v, "DisplayEffect", -1);
4703 if(sq_newclass(v, SQFalse) < 0) {
4704 std::ostringstream msg;
4705 msg << "Couldn't create new class 'DisplayEffect'";
4706 throw SquirrelError(v, msg.str());
4708 sq_pushstring(v, "fade_out", -1);
4709 sq_newclosure(v, &DisplayEffect_fade_out_wrapper, 0);
4710 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4711 if(SQ_FAILED(sq_createslot(v, -3))) {
4712 throw SquirrelError(v, "Couldn't register function 'fade_out'");
4715 sq_pushstring(v, "fade_in", -1);
4716 sq_newclosure(v, &DisplayEffect_fade_in_wrapper, 0);
4717 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4718 if(SQ_FAILED(sq_createslot(v, -3))) {
4719 throw SquirrelError(v, "Couldn't register function 'fade_in'");
4722 sq_pushstring(v, "set_black", -1);
4723 sq_newclosure(v, &DisplayEffect_set_black_wrapper, 0);
4724 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4725 if(SQ_FAILED(sq_createslot(v, -3))) {
4726 throw SquirrelError(v, "Couldn't register function 'set_black'");
4729 sq_pushstring(v, "is_black", -1);
4730 sq_newclosure(v, &DisplayEffect_is_black_wrapper, 0);
4731 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4732 if(SQ_FAILED(sq_createslot(v, -3))) {
4733 throw SquirrelError(v, "Couldn't register function 'is_black'");
4736 sq_pushstring(v, "sixteen_to_nine", -1);
4737 sq_newclosure(v, &DisplayEffect_sixteen_to_nine_wrapper, 0);
4738 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4739 if(SQ_FAILED(sq_createslot(v, -3))) {
4740 throw SquirrelError(v, "Couldn't register function 'sixteen_to_nine'");
4743 sq_pushstring(v, "four_to_three", -1);
4744 sq_newclosure(v, &DisplayEffect_four_to_three_wrapper, 0);
4745 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4746 if(SQ_FAILED(sq_createslot(v, -3))) {
4747 throw SquirrelError(v, "Couldn't register function 'four_to_three'");
4750 if(SQ_FAILED(sq_createslot(v, -3))) {
4751 throw SquirrelError(v, "Couldn't register class 'DisplayEffect'");
4754 // Register class FloatingImage
4755 sq_pushstring(v, "FloatingImage", -1);
4756 if(sq_newclass(v, SQFalse) < 0) {
4757 std::ostringstream msg;
4758 msg << "Couldn't create new class 'FloatingImage'";
4759 throw SquirrelError(v, msg.str());
4761 sq_pushstring(v, "constructor", -1);
4762 sq_newclosure(v, &FloatingImage_constructor_wrapper, 0);
4763 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4764 if(SQ_FAILED(sq_createslot(v, -3))) {
4765 throw SquirrelError(v, "Couldn't register function 'constructor'");
4768 sq_pushstring(v, "set_layer", -1);
4769 sq_newclosure(v, &FloatingImage_set_layer_wrapper, 0);
4770 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
4771 if(SQ_FAILED(sq_createslot(v, -3))) {
4772 throw SquirrelError(v, "Couldn't register function 'set_layer'");
4775 sq_pushstring(v, "get_layer", -1);
4776 sq_newclosure(v, &FloatingImage_get_layer_wrapper, 0);
4777 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4778 if(SQ_FAILED(sq_createslot(v, -3))) {
4779 throw SquirrelError(v, "Couldn't register function 'get_layer'");
4782 sq_pushstring(v, "set_pos", -1);
4783 sq_newclosure(v, &FloatingImage_set_pos_wrapper, 0);
4784 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
4785 if(SQ_FAILED(sq_createslot(v, -3))) {
4786 throw SquirrelError(v, "Couldn't register function 'set_pos'");
4789 sq_pushstring(v, "get_pos_x", -1);
4790 sq_newclosure(v, &FloatingImage_get_pos_x_wrapper, 0);
4791 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4792 if(SQ_FAILED(sq_createslot(v, -3))) {
4793 throw SquirrelError(v, "Couldn't register function 'get_pos_x'");
4796 sq_pushstring(v, "get_pos_y", -1);
4797 sq_newclosure(v, &FloatingImage_get_pos_y_wrapper, 0);
4798 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4799 if(SQ_FAILED(sq_createslot(v, -3))) {
4800 throw SquirrelError(v, "Couldn't register function 'get_pos_y'");
4803 sq_pushstring(v, "set_anchor_point", -1);
4804 sq_newclosure(v, &FloatingImage_set_anchor_point_wrapper, 0);
4805 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
4806 if(SQ_FAILED(sq_createslot(v, -3))) {
4807 throw SquirrelError(v, "Couldn't register function 'set_anchor_point'");
4810 sq_pushstring(v, "get_anchor_point", -1);
4811 sq_newclosure(v, &FloatingImage_get_anchor_point_wrapper, 0);
4812 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4813 if(SQ_FAILED(sq_createslot(v, -3))) {
4814 throw SquirrelError(v, "Couldn't register function 'get_anchor_point'");
4817 sq_pushstring(v, "set_visible", -1);
4818 sq_newclosure(v, &FloatingImage_set_visible_wrapper, 0);
4819 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4820 if(SQ_FAILED(sq_createslot(v, -3))) {
4821 throw SquirrelError(v, "Couldn't register function 'set_visible'");
4824 sq_pushstring(v, "get_visible", -1);
4825 sq_newclosure(v, &FloatingImage_get_visible_wrapper, 0);
4826 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4827 if(SQ_FAILED(sq_createslot(v, -3))) {
4828 throw SquirrelError(v, "Couldn't register function 'get_visible'");
4831 sq_pushstring(v, "set_action", -1);
4832 sq_newclosure(v, &FloatingImage_set_action_wrapper, 0);
4833 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4834 if(SQ_FAILED(sq_createslot(v, -3))) {
4835 throw SquirrelError(v, "Couldn't register function 'set_action'");
4838 sq_pushstring(v, "get_action", -1);
4839 sq_newclosure(v, &FloatingImage_get_action_wrapper, 0);
4840 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4841 if(SQ_FAILED(sq_createslot(v, -3))) {
4842 throw SquirrelError(v, "Couldn't register function 'get_action'");
4845 sq_pushstring(v, "fade_in", -1);
4846 sq_newclosure(v, &FloatingImage_fade_in_wrapper, 0);
4847 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4848 if(SQ_FAILED(sq_createslot(v, -3))) {
4849 throw SquirrelError(v, "Couldn't register function 'fade_in'");
4852 sq_pushstring(v, "fade_out", -1);
4853 sq_newclosure(v, &FloatingImage_fade_out_wrapper, 0);
4854 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4855 if(SQ_FAILED(sq_createslot(v, -3))) {
4856 throw SquirrelError(v, "Couldn't register function 'fade_out'");
4859 if(SQ_FAILED(sq_createslot(v, -3))) {
4860 throw SquirrelError(v, "Couldn't register class 'FloatingImage'");
4863 // Register class LevelTime
4864 sq_pushstring(v, "LevelTime", -1);
4865 if(sq_newclass(v, SQFalse) < 0) {
4866 std::ostringstream msg;
4867 msg << "Couldn't create new class 'LevelTime'";
4868 throw SquirrelError(v, msg.str());
4870 sq_pushstring(v, "start", -1);
4871 sq_newclosure(v, &LevelTime_start_wrapper, 0);
4872 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4873 if(SQ_FAILED(sq_createslot(v, -3))) {
4874 throw SquirrelError(v, "Couldn't register function 'start'");
4877 sq_pushstring(v, "stop", -1);
4878 sq_newclosure(v, &LevelTime_stop_wrapper, 0);
4879 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4880 if(SQ_FAILED(sq_createslot(v, -3))) {
4881 throw SquirrelError(v, "Couldn't register function 'stop'");
4884 sq_pushstring(v, "get_time", -1);
4885 sq_newclosure(v, &LevelTime_get_time_wrapper, 0);
4886 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4887 if(SQ_FAILED(sq_createslot(v, -3))) {
4888 throw SquirrelError(v, "Couldn't register function 'get_time'");
4891 sq_pushstring(v, "set_time", -1);
4892 sq_newclosure(v, &LevelTime_set_time_wrapper, 0);
4893 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4894 if(SQ_FAILED(sq_createslot(v, -3))) {
4895 throw SquirrelError(v, "Couldn't register function 'set_time'");
4898 if(SQ_FAILED(sq_createslot(v, -3))) {
4899 throw SquirrelError(v, "Couldn't register class 'LevelTime'");
4902 // Register class Platform
4903 sq_pushstring(v, "Platform", -1);
4904 if(sq_newclass(v, SQFalse) < 0) {
4905 std::ostringstream msg;
4906 msg << "Couldn't create new class 'Platform'";
4907 throw SquirrelError(v, msg.str());
4909 sq_pushstring(v, "goto_node", -1);
4910 sq_newclosure(v, &Platform_goto_node_wrapper, 0);
4911 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
4912 if(SQ_FAILED(sq_createslot(v, -3))) {
4913 throw SquirrelError(v, "Couldn't register function 'goto_node'");
4916 sq_pushstring(v, "start_moving", -1);
4917 sq_newclosure(v, &Platform_start_moving_wrapper, 0);
4918 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4919 if(SQ_FAILED(sq_createslot(v, -3))) {
4920 throw SquirrelError(v, "Couldn't register function 'start_moving'");
4923 sq_pushstring(v, "stop_moving", -1);
4924 sq_newclosure(v, &Platform_stop_moving_wrapper, 0);
4925 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4926 if(SQ_FAILED(sq_createslot(v, -3))) {
4927 throw SquirrelError(v, "Couldn't register function 'stop_moving'");
4930 if(SQ_FAILED(sq_createslot(v, -3))) {
4931 throw SquirrelError(v, "Couldn't register class 'Platform'");
4934 // Register class Player
4935 sq_pushstring(v, "Player", -1);
4936 if(sq_newclass(v, SQFalse) < 0) {
4937 std::ostringstream msg;
4938 msg << "Couldn't create new class 'Player'";
4939 throw SquirrelError(v, msg.str());
4941 sq_pushstring(v, "add_bonus", -1);
4942 sq_newclosure(v, &Player_add_bonus_wrapper, 0);
4943 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4944 if(SQ_FAILED(sq_createslot(v, -3))) {
4945 throw SquirrelError(v, "Couldn't register function 'add_bonus'");
4948 sq_pushstring(v, "add_coins", -1);
4949 sq_newclosure(v, &Player_add_coins_wrapper, 0);
4950 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
4951 if(SQ_FAILED(sq_createslot(v, -3))) {
4952 throw SquirrelError(v, "Couldn't register function 'add_coins'");
4955 sq_pushstring(v, "make_invincible", -1);
4956 sq_newclosure(v, &Player_make_invincible_wrapper, 0);
4957 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4958 if(SQ_FAILED(sq_createslot(v, -3))) {
4959 throw SquirrelError(v, "Couldn't register function 'make_invincible'");
4962 sq_pushstring(v, "deactivate", -1);
4963 sq_newclosure(v, &Player_deactivate_wrapper, 0);
4964 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4965 if(SQ_FAILED(sq_createslot(v, -3))) {
4966 throw SquirrelError(v, "Couldn't register function 'deactivate'");
4969 sq_pushstring(v, "activate", -1);
4970 sq_newclosure(v, &Player_activate_wrapper, 0);
4971 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4972 if(SQ_FAILED(sq_createslot(v, -3))) {
4973 throw SquirrelError(v, "Couldn't register function 'activate'");
4976 sq_pushstring(v, "walk", -1);
4977 sq_newclosure(v, &Player_walk_wrapper, 0);
4978 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4979 if(SQ_FAILED(sq_createslot(v, -3))) {
4980 throw SquirrelError(v, "Couldn't register function 'walk'");
4983 sq_pushstring(v, "set_visible", -1);
4984 sq_newclosure(v, &Player_set_visible_wrapper, 0);
4985 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4986 if(SQ_FAILED(sq_createslot(v, -3))) {
4987 throw SquirrelError(v, "Couldn't register function 'set_visible'");
4990 sq_pushstring(v, "get_visible", -1);
4991 sq_newclosure(v, &Player_get_visible_wrapper, 0);
4992 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4993 if(SQ_FAILED(sq_createslot(v, -3))) {
4994 throw SquirrelError(v, "Couldn't register function 'get_visible'");
4997 sq_pushstring(v, "kill", -1);
4998 sq_newclosure(v, &Player_kill_wrapper, 0);
4999 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5000 if(SQ_FAILED(sq_createslot(v, -3))) {
5001 throw SquirrelError(v, "Couldn't register function 'kill'");
5004 sq_pushstring(v, "set_ghost_mode", -1);
5005 sq_newclosure(v, &Player_set_ghost_mode_wrapper, 0);
5006 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5007 if(SQ_FAILED(sq_createslot(v, -3))) {
5008 throw SquirrelError(v, "Couldn't register function 'set_ghost_mode'");
5011 sq_pushstring(v, "get_ghost_mode", -1);
5012 sq_newclosure(v, &Player_get_ghost_mode_wrapper, 0);
5013 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5014 if(SQ_FAILED(sq_createslot(v, -3))) {
5015 throw SquirrelError(v, "Couldn't register function 'get_ghost_mode'");
5018 sq_pushstring(v, "do_cheer", -1);
5019 sq_newclosure(v, &Player_do_cheer_wrapper, 0);
5020 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5021 if(SQ_FAILED(sq_createslot(v, -3))) {
5022 throw SquirrelError(v, "Couldn't register function 'do_cheer'");
5025 sq_pushstring(v, "do_duck", -1);
5026 sq_newclosure(v, &Player_do_duck_wrapper, 0);
5027 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5028 if(SQ_FAILED(sq_createslot(v, -3))) {
5029 throw SquirrelError(v, "Couldn't register function 'do_duck'");
5032 sq_pushstring(v, "do_standup", -1);
5033 sq_newclosure(v, &Player_do_standup_wrapper, 0);
5034 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5035 if(SQ_FAILED(sq_createslot(v, -3))) {
5036 throw SquirrelError(v, "Couldn't register function 'do_standup'");
5039 sq_pushstring(v, "do_backflip", -1);
5040 sq_newclosure(v, &Player_do_backflip_wrapper, 0);
5041 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5042 if(SQ_FAILED(sq_createslot(v, -3))) {
5043 throw SquirrelError(v, "Couldn't register function 'do_backflip'");
5046 sq_pushstring(v, "do_jump", -1);
5047 sq_newclosure(v, &Player_do_jump_wrapper, 0);
5048 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5049 if(SQ_FAILED(sq_createslot(v, -3))) {
5050 throw SquirrelError(v, "Couldn't register function 'do_jump'");
5053 sq_pushstring(v, "trigger_sequence", -1);
5054 sq_newclosure(v, &Player_trigger_sequence_wrapper, 0);
5055 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
5056 if(SQ_FAILED(sq_createslot(v, -3))) {
5057 throw SquirrelError(v, "Couldn't register function 'trigger_sequence'");
5060 sq_pushstring(v, "use_scripting_controller", -1);
5061 sq_newclosure(v, &Player_use_scripting_controller_wrapper, 0);
5062 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5063 if(SQ_FAILED(sq_createslot(v, -3))) {
5064 throw SquirrelError(v, "Couldn't register function 'use_scripting_controller'");
5067 sq_pushstring(v, "do_scripting_controller", -1);
5068 sq_newclosure(v, &Player_do_scripting_controller_wrapper, 0);
5069 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tsb");
5070 if(SQ_FAILED(sq_createslot(v, -3))) {
5071 throw SquirrelError(v, "Couldn't register function 'do_scripting_controller'");
5074 if(SQ_FAILED(sq_createslot(v, -3))) {
5075 throw SquirrelError(v, "Couldn't register class 'Player'");
5078 // Register class ScriptedObject
5079 sq_pushstring(v, "ScriptedObject", -1);
5080 if(sq_newclass(v, SQFalse) < 0) {
5081 std::ostringstream msg;
5082 msg << "Couldn't create new class 'ScriptedObject'";
5083 throw SquirrelError(v, msg.str());
5085 sq_pushstring(v, "set_action", -1);
5086 sq_newclosure(v, &ScriptedObject_set_action_wrapper, 0);
5087 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
5088 if(SQ_FAILED(sq_createslot(v, -3))) {
5089 throw SquirrelError(v, "Couldn't register function 'set_action'");
5092 sq_pushstring(v, "get_action", -1);
5093 sq_newclosure(v, &ScriptedObject_get_action_wrapper, 0);
5094 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5095 if(SQ_FAILED(sq_createslot(v, -3))) {
5096 throw SquirrelError(v, "Couldn't register function 'get_action'");
5099 sq_pushstring(v, "move", -1);
5100 sq_newclosure(v, &ScriptedObject_move_wrapper, 0);
5101 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
5102 if(SQ_FAILED(sq_createslot(v, -3))) {
5103 throw SquirrelError(v, "Couldn't register function 'move'");
5106 sq_pushstring(v, "set_pos", -1);
5107 sq_newclosure(v, &ScriptedObject_set_pos_wrapper, 0);
5108 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
5109 if(SQ_FAILED(sq_createslot(v, -3))) {
5110 throw SquirrelError(v, "Couldn't register function 'set_pos'");
5113 sq_pushstring(v, "get_pos_x", -1);
5114 sq_newclosure(v, &ScriptedObject_get_pos_x_wrapper, 0);
5115 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5116 if(SQ_FAILED(sq_createslot(v, -3))) {
5117 throw SquirrelError(v, "Couldn't register function 'get_pos_x'");
5120 sq_pushstring(v, "get_pos_y", -1);
5121 sq_newclosure(v, &ScriptedObject_get_pos_y_wrapper, 0);
5122 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5123 if(SQ_FAILED(sq_createslot(v, -3))) {
5124 throw SquirrelError(v, "Couldn't register function 'get_pos_y'");
5127 sq_pushstring(v, "set_velocity", -1);
5128 sq_newclosure(v, &ScriptedObject_set_velocity_wrapper, 0);
5129 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
5130 if(SQ_FAILED(sq_createslot(v, -3))) {
5131 throw SquirrelError(v, "Couldn't register function 'set_velocity'");
5134 sq_pushstring(v, "get_velocity_x", -1);
5135 sq_newclosure(v, &ScriptedObject_get_velocity_x_wrapper, 0);
5136 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5137 if(SQ_FAILED(sq_createslot(v, -3))) {
5138 throw SquirrelError(v, "Couldn't register function 'get_velocity_x'");
5141 sq_pushstring(v, "get_velocity_y", -1);
5142 sq_newclosure(v, &ScriptedObject_get_velocity_y_wrapper, 0);
5143 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5144 if(SQ_FAILED(sq_createslot(v, -3))) {
5145 throw SquirrelError(v, "Couldn't register function 'get_velocity_y'");
5148 sq_pushstring(v, "set_visible", -1);
5149 sq_newclosure(v, &ScriptedObject_set_visible_wrapper, 0);
5150 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5151 if(SQ_FAILED(sq_createslot(v, -3))) {
5152 throw SquirrelError(v, "Couldn't register function 'set_visible'");
5155 sq_pushstring(v, "is_visible", -1);
5156 sq_newclosure(v, &ScriptedObject_is_visible_wrapper, 0);
5157 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5158 if(SQ_FAILED(sq_createslot(v, -3))) {
5159 throw SquirrelError(v, "Couldn't register function 'is_visible'");
5162 sq_pushstring(v, "set_solid", -1);
5163 sq_newclosure(v, &ScriptedObject_set_solid_wrapper, 0);
5164 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5165 if(SQ_FAILED(sq_createslot(v, -3))) {
5166 throw SquirrelError(v, "Couldn't register function 'set_solid'");
5169 sq_pushstring(v, "is_solid", -1);
5170 sq_newclosure(v, &ScriptedObject_is_solid_wrapper, 0);
5171 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5172 if(SQ_FAILED(sq_createslot(v, -3))) {
5173 throw SquirrelError(v, "Couldn't register function 'is_solid'");
5176 sq_pushstring(v, "get_name", -1);
5177 sq_newclosure(v, &ScriptedObject_get_name_wrapper, 0);
5178 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5179 if(SQ_FAILED(sq_createslot(v, -3))) {
5180 throw SquirrelError(v, "Couldn't register function 'get_name'");
5183 if(SQ_FAILED(sq_createslot(v, -3))) {
5184 throw SquirrelError(v, "Couldn't register class 'ScriptedObject'");
5187 // Register class SSector
5188 sq_pushstring(v, "SSector", -1);
5189 if(sq_newclass(v, SQFalse) < 0) {
5190 std::ostringstream msg;
5191 msg << "Couldn't create new class 'SSector'";
5192 throw SquirrelError(v, msg.str());
5194 sq_pushstring(v, "set_ambient_light", -1);
5195 sq_newclosure(v, &SSector_set_ambient_light_wrapper, 0);
5196 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnnn");
5197 if(SQ_FAILED(sq_createslot(v, -3))) {
5198 throw SquirrelError(v, "Couldn't register function 'set_ambient_light'");
5201 sq_pushstring(v, "get_ambient_red", -1);
5202 sq_newclosure(v, &SSector_get_ambient_red_wrapper, 0);
5203 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5204 if(SQ_FAILED(sq_createslot(v, -3))) {
5205 throw SquirrelError(v, "Couldn't register function 'get_ambient_red'");
5208 sq_pushstring(v, "get_ambient_green", -1);
5209 sq_newclosure(v, &SSector_get_ambient_green_wrapper, 0);
5210 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5211 if(SQ_FAILED(sq_createslot(v, -3))) {
5212 throw SquirrelError(v, "Couldn't register function 'get_ambient_green'");
5215 sq_pushstring(v, "get_ambient_blue", -1);
5216 sq_newclosure(v, &SSector_get_ambient_blue_wrapper, 0);
5217 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5218 if(SQ_FAILED(sq_createslot(v, -3))) {
5219 throw SquirrelError(v, "Couldn't register function 'get_ambient_blue'");
5222 sq_pushstring(v, "set_gravity", -1);
5223 sq_newclosure(v, &SSector_set_gravity_wrapper, 0);
5224 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5225 if(SQ_FAILED(sq_createslot(v, -3))) {
5226 throw SquirrelError(v, "Couldn't register function 'set_gravity'");
5229 if(SQ_FAILED(sq_createslot(v, -3))) {
5230 throw SquirrelError(v, "Couldn't register class 'SSector'");
5233 // Register class Text
5234 sq_pushstring(v, "Text", -1);
5235 if(sq_newclass(v, SQFalse) < 0) {
5236 std::ostringstream msg;
5237 msg << "Couldn't create new class 'Text'";
5238 throw SquirrelError(v, msg.str());
5240 sq_pushstring(v, "set_text", -1);
5241 sq_newclosure(v, &Text_set_text_wrapper, 0);
5242 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
5243 if(SQ_FAILED(sq_createslot(v, -3))) {
5244 throw SquirrelError(v, "Couldn't register function 'set_text'");
5247 sq_pushstring(v, "set_font", -1);
5248 sq_newclosure(v, &Text_set_font_wrapper, 0);
5249 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
5250 if(SQ_FAILED(sq_createslot(v, -3))) {
5251 throw SquirrelError(v, "Couldn't register function 'set_font'");
5254 sq_pushstring(v, "fade_in", -1);
5255 sq_newclosure(v, &Text_fade_in_wrapper, 0);
5256 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5257 if(SQ_FAILED(sq_createslot(v, -3))) {
5258 throw SquirrelError(v, "Couldn't register function 'fade_in'");
5261 sq_pushstring(v, "fade_out", -1);
5262 sq_newclosure(v, &Text_fade_out_wrapper, 0);
5263 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5264 if(SQ_FAILED(sq_createslot(v, -3))) {
5265 throw SquirrelError(v, "Couldn't register function 'fade_out'");
5268 sq_pushstring(v, "set_visible", -1);
5269 sq_newclosure(v, &Text_set_visible_wrapper, 0);
5270 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5271 if(SQ_FAILED(sq_createslot(v, -3))) {
5272 throw SquirrelError(v, "Couldn't register function 'set_visible'");
5275 sq_pushstring(v, "set_centered", -1);
5276 sq_newclosure(v, &Text_set_centered_wrapper, 0);
5277 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5278 if(SQ_FAILED(sq_createslot(v, -3))) {
5279 throw SquirrelError(v, "Couldn't register function 'set_centered'");
5282 sq_pushstring(v, "set_pos", -1);
5283 sq_newclosure(v, &Text_set_pos_wrapper, 0);
5284 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
5285 if(SQ_FAILED(sq_createslot(v, -3))) {
5286 throw SquirrelError(v, "Couldn't register function 'set_pos'");
5289 sq_pushstring(v, "get_pos_x", -1);
5290 sq_newclosure(v, &Text_get_pos_x_wrapper, 0);
5291 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5292 if(SQ_FAILED(sq_createslot(v, -3))) {
5293 throw SquirrelError(v, "Couldn't register function 'get_pos_x'");
5296 sq_pushstring(v, "get_pos_y", -1);
5297 sq_newclosure(v, &Text_get_pos_y_wrapper, 0);
5298 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5299 if(SQ_FAILED(sq_createslot(v, -3))) {
5300 throw SquirrelError(v, "Couldn't register function 'get_pos_y'");
5303 sq_pushstring(v, "set_anchor_point", -1);
5304 sq_newclosure(v, &Text_set_anchor_point_wrapper, 0);
5305 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
5306 if(SQ_FAILED(sq_createslot(v, -3))) {
5307 throw SquirrelError(v, "Couldn't register function 'set_anchor_point'");
5310 sq_pushstring(v, "get_anchor_point", -1);
5311 sq_newclosure(v, &Text_get_anchor_point_wrapper, 0);
5312 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5313 if(SQ_FAILED(sq_createslot(v, -3))) {
5314 throw SquirrelError(v, "Couldn't register function 'get_anchor_point'");
5317 if(SQ_FAILED(sq_createslot(v, -3))) {
5318 throw SquirrelError(v, "Couldn't register class 'Text'");
5321 // Register class Thunderstorm
5322 sq_pushstring(v, "Thunderstorm", -1);
5323 if(sq_newclass(v, SQFalse) < 0) {
5324 std::ostringstream msg;
5325 msg << "Couldn't create new class 'Thunderstorm'";
5326 throw SquirrelError(v, msg.str());
5328 sq_pushstring(v, "start", -1);
5329 sq_newclosure(v, &Thunderstorm_start_wrapper, 0);
5330 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5331 if(SQ_FAILED(sq_createslot(v, -3))) {
5332 throw SquirrelError(v, "Couldn't register function 'start'");
5335 sq_pushstring(v, "stop", -1);
5336 sq_newclosure(v, &Thunderstorm_stop_wrapper, 0);
5337 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5338 if(SQ_FAILED(sq_createslot(v, -3))) {
5339 throw SquirrelError(v, "Couldn't register function 'stop'");
5342 sq_pushstring(v, "thunder", -1);
5343 sq_newclosure(v, &Thunderstorm_thunder_wrapper, 0);
5344 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5345 if(SQ_FAILED(sq_createslot(v, -3))) {
5346 throw SquirrelError(v, "Couldn't register function 'thunder'");
5349 sq_pushstring(v, "lightning", -1);
5350 sq_newclosure(v, &Thunderstorm_lightning_wrapper, 0);
5351 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5352 if(SQ_FAILED(sq_createslot(v, -3))) {
5353 throw SquirrelError(v, "Couldn't register function 'lightning'");
5356 sq_pushstring(v, "flash", -1);
5357 sq_newclosure(v, &Thunderstorm_flash_wrapper, 0);
5358 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5359 if(SQ_FAILED(sq_createslot(v, -3))) {
5360 throw SquirrelError(v, "Couldn't register function 'flash'");
5363 sq_pushstring(v, "electrify", -1);
5364 sq_newclosure(v, &Thunderstorm_electrify_wrapper, 0);
5365 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5366 if(SQ_FAILED(sq_createslot(v, -3))) {
5367 throw SquirrelError(v, "Couldn't register function 'electrify'");
5370 if(SQ_FAILED(sq_createslot(v, -3))) {
5371 throw SquirrelError(v, "Couldn't register class 'Thunderstorm'");
5374 // Register class TileMap
5375 sq_pushstring(v, "TileMap", -1);
5376 if(sq_newclass(v, SQFalse) < 0) {
5377 std::ostringstream msg;
5378 msg << "Couldn't create new class 'TileMap'";
5379 throw SquirrelError(v, msg.str());
5381 sq_pushstring(v, "goto_node", -1);
5382 sq_newclosure(v, &TileMap_goto_node_wrapper, 0);
5383 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
5384 if(SQ_FAILED(sq_createslot(v, -3))) {
5385 throw SquirrelError(v, "Couldn't register function 'goto_node'");
5388 sq_pushstring(v, "start_moving", -1);
5389 sq_newclosure(v, &TileMap_start_moving_wrapper, 0);
5390 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5391 if(SQ_FAILED(sq_createslot(v, -3))) {
5392 throw SquirrelError(v, "Couldn't register function 'start_moving'");
5395 sq_pushstring(v, "stop_moving", -1);
5396 sq_newclosure(v, &TileMap_stop_moving_wrapper, 0);
5397 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5398 if(SQ_FAILED(sq_createslot(v, -3))) {
5399 throw SquirrelError(v, "Couldn't register function 'stop_moving'");
5402 sq_pushstring(v, "fade", -1);
5403 sq_newclosure(v, &TileMap_fade_wrapper, 0);
5404 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
5405 if(SQ_FAILED(sq_createslot(v, -3))) {
5406 throw SquirrelError(v, "Couldn't register function 'fade'");
5409 sq_pushstring(v, "set_alpha", -1);
5410 sq_newclosure(v, &TileMap_set_alpha_wrapper, 0);
5411 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5412 if(SQ_FAILED(sq_createslot(v, -3))) {
5413 throw SquirrelError(v, "Couldn't register function 'set_alpha'");
5416 sq_pushstring(v, "get_alpha", -1);
5417 sq_newclosure(v, &TileMap_get_alpha_wrapper, 0);
5418 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5419 if(SQ_FAILED(sq_createslot(v, -3))) {
5420 throw SquirrelError(v, "Couldn't register function 'get_alpha'");
5423 if(SQ_FAILED(sq_createslot(v, -3))) {
5424 throw SquirrelError(v, "Couldn't register class 'TileMap'");
5427 // Register class WillOWisp
5428 sq_pushstring(v, "WillOWisp", -1);
5429 if(sq_newclass(v, SQFalse) < 0) {
5430 std::ostringstream msg;
5431 msg << "Couldn't create new class 'WillOWisp'";
5432 throw SquirrelError(v, msg.str());
5434 sq_pushstring(v, "goto_node", -1);
5435 sq_newclosure(v, &WillOWisp_goto_node_wrapper, 0);
5436 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
5437 if(SQ_FAILED(sq_createslot(v, -3))) {
5438 throw SquirrelError(v, "Couldn't register function 'goto_node'");
5441 sq_pushstring(v, "set_state", -1);
5442 sq_newclosure(v, &WillOWisp_set_state_wrapper, 0);
5443 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
5444 if(SQ_FAILED(sq_createslot(v, -3))) {
5445 throw SquirrelError(v, "Couldn't register function 'set_state'");
5448 sq_pushstring(v, "start_moving", -1);
5449 sq_newclosure(v, &WillOWisp_start_moving_wrapper, 0);
5450 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5451 if(SQ_FAILED(sq_createslot(v, -3))) {
5452 throw SquirrelError(v, "Couldn't register function 'start_moving'");
5455 sq_pushstring(v, "stop_moving", -1);
5456 sq_newclosure(v, &WillOWisp_stop_moving_wrapper, 0);
5457 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5458 if(SQ_FAILED(sq_createslot(v, -3))) {
5459 throw SquirrelError(v, "Couldn't register function 'stop_moving'");
5462 if(SQ_FAILED(sq_createslot(v, -3))) {
5463 throw SquirrelError(v, "Couldn't register class 'WillOWisp'");
5466 // Register class Wind
5467 sq_pushstring(v, "Wind", -1);
5468 if(sq_newclass(v, SQFalse) < 0) {
5469 std::ostringstream msg;
5470 msg << "Couldn't create new class 'Wind'";
5471 throw SquirrelError(v, msg.str());
5473 sq_pushstring(v, "start", -1);
5474 sq_newclosure(v, &Wind_start_wrapper, 0);
5475 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5476 if(SQ_FAILED(sq_createslot(v, -3))) {
5477 throw SquirrelError(v, "Couldn't register function 'start'");
5480 sq_pushstring(v, "stop", -1);
5481 sq_newclosure(v, &Wind_stop_wrapper, 0);
5482 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5483 if(SQ_FAILED(sq_createslot(v, -3))) {
5484 throw SquirrelError(v, "Couldn't register function 'stop'");
5487 if(SQ_FAILED(sq_createslot(v, -3))) {
5488 throw SquirrelError(v, "Couldn't register class 'Wind'");
5493 } // namespace scripting