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_enable_gravity_wrapper(HSQUIRRELVM vm)
1889 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1890 sq_throwerror(vm, _SC("'enable_gravity' 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->enable_gravity(arg0 == SQTrue);
1905 } catch(std::exception& e) {
1906 sq_throwerror(vm, e.what());
1909 sq_throwerror(vm, _SC("Unexpected exception while executing function 'enable_gravity'"));
1915 static SQInteger ScriptedObject_gravity_enabled_wrapper(HSQUIRRELVM vm)
1918 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1919 sq_throwerror(vm, _SC("'gravity_enabled' called without instance"));
1922 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1925 bool return_value = _this->gravity_enabled();
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 'gravity_enabled'"));
1940 static SQInteger ScriptedObject_set_visible_wrapper(HSQUIRRELVM vm)
1943 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1944 sq_throwerror(vm, _SC("'set_visible' 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_visible(arg0 == SQTrue);
1959 } catch(std::exception& e) {
1960 sq_throwerror(vm, e.what());
1963 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_visible'"));
1969 static SQInteger ScriptedObject_is_visible_wrapper(HSQUIRRELVM vm)
1972 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1973 sq_throwerror(vm, _SC("'is_visible' called without instance"));
1976 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
1979 bool return_value = _this->is_visible();
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_visible'"));
1994 static SQInteger ScriptedObject_set_solid_wrapper(HSQUIRRELVM vm)
1997 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
1998 sq_throwerror(vm, _SC("'set_solid' called without instance"));
2001 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
2003 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
2004 sq_throwerror(vm, _SC("Argument 1 not a bool"));
2009 _this->set_solid(arg0 == SQTrue);
2013 } catch(std::exception& e) {
2014 sq_throwerror(vm, e.what());
2017 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_solid'"));
2023 static SQInteger ScriptedObject_is_solid_wrapper(HSQUIRRELVM vm)
2026 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2027 sq_throwerror(vm, _SC("'is_solid' called without instance"));
2030 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
2033 bool return_value = _this->is_solid();
2035 sq_pushbool(vm, return_value);
2038 } catch(std::exception& e) {
2039 sq_throwerror(vm, e.what());
2042 sq_throwerror(vm, _SC("Unexpected exception while executing function 'is_solid'"));
2048 static SQInteger ScriptedObject_get_name_wrapper(HSQUIRRELVM vm)
2051 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2052 sq_throwerror(vm, _SC("'get_name' called without instance"));
2055 scripting::ScriptedObject* _this = reinterpret_cast<scripting::ScriptedObject*> (data);
2058 std::string return_value = _this->get_name();
2060 sq_pushstring(vm, return_value.c_str(), return_value.size());
2063 } catch(std::exception& e) {
2064 sq_throwerror(vm, e.what());
2067 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_name'"));
2073 static SQInteger SSector_release_hook(SQUserPointer ptr, SQInteger )
2075 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (ptr);
2080 static SQInteger SSector_set_ambient_light_wrapper(HSQUIRRELVM vm)
2083 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2084 sq_throwerror(vm, _SC("'set_ambient_light' called without instance"));
2087 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (data);
2089 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2090 sq_throwerror(vm, _SC("Argument 1 not a float"));
2094 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
2095 sq_throwerror(vm, _SC("Argument 2 not a float"));
2099 if(SQ_FAILED(sq_getfloat(vm, 4, &arg2))) {
2100 sq_throwerror(vm, _SC("Argument 3 not a float"));
2105 _this->set_ambient_light(static_cast<float> (arg0), static_cast<float> (arg1), static_cast<float> (arg2));
2109 } catch(std::exception& e) {
2110 sq_throwerror(vm, e.what());
2113 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_ambient_light'"));
2119 static SQInteger SSector_get_ambient_red_wrapper(HSQUIRRELVM vm)
2122 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2123 sq_throwerror(vm, _SC("'get_ambient_red' called without instance"));
2126 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (data);
2129 float return_value = _this->get_ambient_red();
2131 sq_pushfloat(vm, return_value);
2134 } catch(std::exception& e) {
2135 sq_throwerror(vm, e.what());
2138 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_ambient_red'"));
2144 static SQInteger SSector_get_ambient_green_wrapper(HSQUIRRELVM vm)
2147 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2148 sq_throwerror(vm, _SC("'get_ambient_green' called without instance"));
2151 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (data);
2154 float return_value = _this->get_ambient_green();
2156 sq_pushfloat(vm, return_value);
2159 } catch(std::exception& e) {
2160 sq_throwerror(vm, e.what());
2163 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_ambient_green'"));
2169 static SQInteger SSector_get_ambient_blue_wrapper(HSQUIRRELVM vm)
2172 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2173 sq_throwerror(vm, _SC("'get_ambient_blue' called without instance"));
2176 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (data);
2179 float return_value = _this->get_ambient_blue();
2181 sq_pushfloat(vm, return_value);
2184 } catch(std::exception& e) {
2185 sq_throwerror(vm, e.what());
2188 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_ambient_blue'"));
2194 static SQInteger SSector_set_gravity_wrapper(HSQUIRRELVM vm)
2197 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2198 sq_throwerror(vm, _SC("'set_gravity' called without instance"));
2201 scripting::SSector* _this = reinterpret_cast<scripting::SSector*> (data);
2203 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2204 sq_throwerror(vm, _SC("Argument 1 not a float"));
2209 _this->set_gravity(static_cast<float> (arg0));
2213 } catch(std::exception& e) {
2214 sq_throwerror(vm, e.what());
2217 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_gravity'"));
2223 static SQInteger Text_release_hook(SQUserPointer ptr, SQInteger )
2225 scripting::Text* _this = reinterpret_cast<scripting::Text*> (ptr);
2230 static SQInteger Text_set_text_wrapper(HSQUIRRELVM vm)
2233 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2234 sq_throwerror(vm, _SC("'set_text' called without instance"));
2237 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2239 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
2240 sq_throwerror(vm, _SC("Argument 1 not a string"));
2245 _this->set_text(arg0);
2249 } catch(std::exception& e) {
2250 sq_throwerror(vm, e.what());
2253 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_text'"));
2259 static SQInteger Text_set_font_wrapper(HSQUIRRELVM vm)
2262 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2263 sq_throwerror(vm, _SC("'set_font' called without instance"));
2266 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2268 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
2269 sq_throwerror(vm, _SC("Argument 1 not a string"));
2274 _this->set_font(arg0);
2278 } catch(std::exception& e) {
2279 sq_throwerror(vm, e.what());
2282 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_font'"));
2288 static SQInteger Text_fade_in_wrapper(HSQUIRRELVM vm)
2291 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2292 sq_throwerror(vm, _SC("'fade_in' called without instance"));
2295 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2297 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2298 sq_throwerror(vm, _SC("Argument 1 not a float"));
2303 _this->fade_in(static_cast<float> (arg0));
2307 } catch(std::exception& e) {
2308 sq_throwerror(vm, e.what());
2311 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_in'"));
2317 static SQInteger Text_fade_out_wrapper(HSQUIRRELVM vm)
2320 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2321 sq_throwerror(vm, _SC("'fade_out' called without instance"));
2324 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2326 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2327 sq_throwerror(vm, _SC("Argument 1 not a float"));
2332 _this->fade_out(static_cast<float> (arg0));
2336 } catch(std::exception& e) {
2337 sq_throwerror(vm, e.what());
2340 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade_out'"));
2346 static SQInteger Text_set_visible_wrapper(HSQUIRRELVM vm)
2349 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2350 sq_throwerror(vm, _SC("'set_visible' called without instance"));
2353 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2355 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
2356 sq_throwerror(vm, _SC("Argument 1 not a bool"));
2361 _this->set_visible(arg0 == SQTrue);
2365 } catch(std::exception& e) {
2366 sq_throwerror(vm, e.what());
2369 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_visible'"));
2375 static SQInteger Text_set_centered_wrapper(HSQUIRRELVM vm)
2378 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2379 sq_throwerror(vm, _SC("'set_centered' called without instance"));
2382 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2384 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
2385 sq_throwerror(vm, _SC("Argument 1 not a bool"));
2390 _this->set_centered(arg0 == SQTrue);
2394 } catch(std::exception& e) {
2395 sq_throwerror(vm, e.what());
2398 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_centered'"));
2404 static SQInteger Text_set_pos_wrapper(HSQUIRRELVM vm)
2407 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2408 sq_throwerror(vm, _SC("'set_pos' called without instance"));
2411 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2413 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2414 sq_throwerror(vm, _SC("Argument 1 not a float"));
2418 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
2419 sq_throwerror(vm, _SC("Argument 2 not a float"));
2424 _this->set_pos(static_cast<float> (arg0), static_cast<float> (arg1));
2428 } catch(std::exception& e) {
2429 sq_throwerror(vm, e.what());
2432 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_pos'"));
2438 static SQInteger Text_get_pos_x_wrapper(HSQUIRRELVM vm)
2441 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2442 sq_throwerror(vm, _SC("'get_pos_x' called without instance"));
2445 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2448 float return_value = _this->get_pos_x();
2450 sq_pushfloat(vm, return_value);
2453 } catch(std::exception& e) {
2454 sq_throwerror(vm, e.what());
2457 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_pos_x'"));
2463 static SQInteger Text_get_pos_y_wrapper(HSQUIRRELVM vm)
2466 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2467 sq_throwerror(vm, _SC("'get_pos_y' called without instance"));
2470 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2473 float return_value = _this->get_pos_y();
2475 sq_pushfloat(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_pos_y'"));
2488 static SQInteger Text_set_anchor_point_wrapper(HSQUIRRELVM vm)
2491 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2492 sq_throwerror(vm, _SC("'set_anchor_point' called without instance"));
2495 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2497 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
2498 sq_throwerror(vm, _SC("Argument 1 not an integer"));
2503 _this->set_anchor_point(static_cast<int> (arg0));
2507 } catch(std::exception& e) {
2508 sq_throwerror(vm, e.what());
2511 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_anchor_point'"));
2517 static SQInteger Text_get_anchor_point_wrapper(HSQUIRRELVM vm)
2520 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2521 sq_throwerror(vm, _SC("'get_anchor_point' called without instance"));
2524 scripting::Text* _this = reinterpret_cast<scripting::Text*> (data);
2527 int return_value = _this->get_anchor_point();
2529 sq_pushinteger(vm, return_value);
2532 } catch(std::exception& e) {
2533 sq_throwerror(vm, e.what());
2536 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_anchor_point'"));
2542 static SQInteger Thunderstorm_release_hook(SQUserPointer ptr, SQInteger )
2544 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (ptr);
2549 static SQInteger Thunderstorm_start_wrapper(HSQUIRRELVM vm)
2552 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2553 sq_throwerror(vm, _SC("'start' called without instance"));
2556 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2563 } catch(std::exception& e) {
2564 sq_throwerror(vm, e.what());
2567 sq_throwerror(vm, _SC("Unexpected exception while executing function 'start'"));
2573 static SQInteger Thunderstorm_stop_wrapper(HSQUIRRELVM vm)
2576 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2577 sq_throwerror(vm, _SC("'stop' called without instance"));
2580 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2587 } catch(std::exception& e) {
2588 sq_throwerror(vm, e.what());
2591 sq_throwerror(vm, _SC("Unexpected exception while executing function 'stop'"));
2597 static SQInteger Thunderstorm_thunder_wrapper(HSQUIRRELVM vm)
2600 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2601 sq_throwerror(vm, _SC("'thunder' called without instance"));
2604 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2611 } catch(std::exception& e) {
2612 sq_throwerror(vm, e.what());
2615 sq_throwerror(vm, _SC("Unexpected exception while executing function 'thunder'"));
2621 static SQInteger Thunderstorm_lightning_wrapper(HSQUIRRELVM vm)
2624 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2625 sq_throwerror(vm, _SC("'lightning' called without instance"));
2628 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2635 } catch(std::exception& e) {
2636 sq_throwerror(vm, e.what());
2639 sq_throwerror(vm, _SC("Unexpected exception while executing function 'lightning'"));
2645 static SQInteger Thunderstorm_flash_wrapper(HSQUIRRELVM vm)
2648 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2649 sq_throwerror(vm, _SC("'flash' called without instance"));
2652 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2659 } catch(std::exception& e) {
2660 sq_throwerror(vm, e.what());
2663 sq_throwerror(vm, _SC("Unexpected exception while executing function 'flash'"));
2669 static SQInteger Thunderstorm_electrify_wrapper(HSQUIRRELVM vm)
2672 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2673 sq_throwerror(vm, _SC("'electrify' called without instance"));
2676 scripting::Thunderstorm* _this = reinterpret_cast<scripting::Thunderstorm*> (data);
2683 } catch(std::exception& e) {
2684 sq_throwerror(vm, e.what());
2687 sq_throwerror(vm, _SC("Unexpected exception while executing function 'electrify'"));
2693 static SQInteger TileMap_release_hook(SQUserPointer ptr, SQInteger )
2695 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (ptr);
2700 static SQInteger TileMap_goto_node_wrapper(HSQUIRRELVM vm)
2703 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2704 sq_throwerror(vm, _SC("'goto_node' called without instance"));
2707 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2709 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
2710 sq_throwerror(vm, _SC("Argument 1 not an integer"));
2715 _this->goto_node(static_cast<int> (arg0));
2719 } catch(std::exception& e) {
2720 sq_throwerror(vm, e.what());
2723 sq_throwerror(vm, _SC("Unexpected exception while executing function 'goto_node'"));
2729 static SQInteger TileMap_start_moving_wrapper(HSQUIRRELVM vm)
2732 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2733 sq_throwerror(vm, _SC("'start_moving' called without instance"));
2736 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2739 _this->start_moving();
2743 } catch(std::exception& e) {
2744 sq_throwerror(vm, e.what());
2747 sq_throwerror(vm, _SC("Unexpected exception while executing function 'start_moving'"));
2753 static SQInteger TileMap_stop_moving_wrapper(HSQUIRRELVM vm)
2756 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2757 sq_throwerror(vm, _SC("'stop_moving' called without instance"));
2760 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2763 _this->stop_moving();
2767 } catch(std::exception& e) {
2768 sq_throwerror(vm, e.what());
2771 sq_throwerror(vm, _SC("Unexpected exception while executing function 'stop_moving'"));
2777 static SQInteger TileMap_fade_wrapper(HSQUIRRELVM vm)
2780 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2781 sq_throwerror(vm, _SC("'fade' called without instance"));
2784 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2786 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2787 sq_throwerror(vm, _SC("Argument 1 not a float"));
2791 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
2792 sq_throwerror(vm, _SC("Argument 2 not a float"));
2797 _this->fade(static_cast<float> (arg0), static_cast<float> (arg1));
2801 } catch(std::exception& e) {
2802 sq_throwerror(vm, e.what());
2805 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fade'"));
2811 static SQInteger TileMap_set_alpha_wrapper(HSQUIRRELVM vm)
2814 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2815 sq_throwerror(vm, _SC("'set_alpha' called without instance"));
2818 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2820 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
2821 sq_throwerror(vm, _SC("Argument 1 not a float"));
2826 _this->set_alpha(static_cast<float> (arg0));
2830 } catch(std::exception& e) {
2831 sq_throwerror(vm, e.what());
2834 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_alpha'"));
2840 static SQInteger TileMap_get_alpha_wrapper(HSQUIRRELVM vm)
2843 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2844 sq_throwerror(vm, _SC("'get_alpha' called without instance"));
2847 scripting::TileMap* _this = reinterpret_cast<scripting::TileMap*> (data);
2850 float return_value = _this->get_alpha();
2852 sq_pushfloat(vm, return_value);
2855 } catch(std::exception& e) {
2856 sq_throwerror(vm, e.what());
2859 sq_throwerror(vm, _SC("Unexpected exception while executing function 'get_alpha'"));
2865 static SQInteger WillOWisp_release_hook(SQUserPointer ptr, SQInteger )
2867 scripting::WillOWisp* _this = reinterpret_cast<scripting::WillOWisp*> (ptr);
2872 static SQInteger WillOWisp_goto_node_wrapper(HSQUIRRELVM vm)
2875 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2876 sq_throwerror(vm, _SC("'goto_node' called without instance"));
2879 scripting::WillOWisp* _this = reinterpret_cast<scripting::WillOWisp*> (data);
2881 if(SQ_FAILED(sq_getinteger(vm, 2, &arg0))) {
2882 sq_throwerror(vm, _SC("Argument 1 not an integer"));
2887 _this->goto_node(static_cast<int> (arg0));
2891 } catch(std::exception& e) {
2892 sq_throwerror(vm, e.what());
2895 sq_throwerror(vm, _SC("Unexpected exception while executing function 'goto_node'"));
2901 static SQInteger WillOWisp_set_state_wrapper(HSQUIRRELVM vm)
2904 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2905 sq_throwerror(vm, _SC("'set_state' called without instance"));
2908 scripting::WillOWisp* _this = reinterpret_cast<scripting::WillOWisp*> (data);
2910 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
2911 sq_throwerror(vm, _SC("Argument 1 not a string"));
2916 _this->set_state(arg0);
2920 } catch(std::exception& e) {
2921 sq_throwerror(vm, e.what());
2924 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_state'"));
2930 static SQInteger WillOWisp_start_moving_wrapper(HSQUIRRELVM vm)
2933 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2934 sq_throwerror(vm, _SC("'start_moving' called without instance"));
2937 scripting::WillOWisp* _this = reinterpret_cast<scripting::WillOWisp*> (data);
2940 _this->start_moving();
2944 } catch(std::exception& e) {
2945 sq_throwerror(vm, e.what());
2948 sq_throwerror(vm, _SC("Unexpected exception while executing function 'start_moving'"));
2954 static SQInteger WillOWisp_stop_moving_wrapper(HSQUIRRELVM vm)
2957 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2958 sq_throwerror(vm, _SC("'stop_moving' called without instance"));
2961 scripting::WillOWisp* _this = reinterpret_cast<scripting::WillOWisp*> (data);
2964 _this->stop_moving();
2968 } catch(std::exception& e) {
2969 sq_throwerror(vm, e.what());
2972 sq_throwerror(vm, _SC("Unexpected exception while executing function 'stop_moving'"));
2978 static SQInteger Wind_release_hook(SQUserPointer ptr, SQInteger )
2980 scripting::Wind* _this = reinterpret_cast<scripting::Wind*> (ptr);
2985 static SQInteger Wind_start_wrapper(HSQUIRRELVM vm)
2988 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
2989 sq_throwerror(vm, _SC("'start' called without instance"));
2992 scripting::Wind* _this = reinterpret_cast<scripting::Wind*> (data);
2999 } catch(std::exception& e) {
3000 sq_throwerror(vm, e.what());
3003 sq_throwerror(vm, _SC("Unexpected exception while executing function 'start'"));
3009 static SQInteger Wind_stop_wrapper(HSQUIRRELVM vm)
3012 if(SQ_FAILED(sq_getinstanceup(vm, 1, &data, 0)) || !data) {
3013 sq_throwerror(vm, _SC("'stop' called without instance"));
3016 scripting::Wind* _this = reinterpret_cast<scripting::Wind*> (data);
3023 } catch(std::exception& e) {
3024 sq_throwerror(vm, e.what());
3027 sq_throwerror(vm, _SC("Unexpected exception while executing function 'stop'"));
3033 static SQInteger display_wrapper(HSQUIRRELVM vm)
3035 return scripting::display(vm);
3038 static SQInteger print_stacktrace_wrapper(HSQUIRRELVM vm)
3040 HSQUIRRELVM arg0 = vm;
3043 scripting::print_stacktrace(arg0);
3047 } catch(std::exception& e) {
3048 sq_throwerror(vm, e.what());
3051 sq_throwerror(vm, _SC("Unexpected exception while executing function 'print_stacktrace'"));
3057 static SQInteger get_current_thread_wrapper(HSQUIRRELVM vm)
3059 return scripting::get_current_thread(vm);
3062 static SQInteger display_text_file_wrapper(HSQUIRRELVM vm)
3065 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3066 sq_throwerror(vm, _SC("Argument 1 not a string"));
3071 scripting::display_text_file(arg0);
3075 } catch(std::exception& e) {
3076 sq_throwerror(vm, e.what());
3079 sq_throwerror(vm, _SC("Unexpected exception while executing function 'display_text_file'"));
3085 static SQInteger load_worldmap_wrapper(HSQUIRRELVM vm)
3088 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3089 sq_throwerror(vm, _SC("Argument 1 not a string"));
3094 scripting::load_worldmap(arg0);
3098 } catch(std::exception& e) {
3099 sq_throwerror(vm, e.what());
3102 sq_throwerror(vm, _SC("Unexpected exception while executing function 'load_worldmap'"));
3108 static SQInteger load_level_wrapper(HSQUIRRELVM vm)
3111 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3112 sq_throwerror(vm, _SC("Argument 1 not a string"));
3117 scripting::load_level(arg0);
3121 } catch(std::exception& e) {
3122 sq_throwerror(vm, e.what());
3125 sq_throwerror(vm, _SC("Unexpected exception while executing function 'load_level'"));
3131 static SQInteger wait_wrapper(HSQUIRRELVM vm)
3133 HSQUIRRELVM arg0 = vm;
3135 if(SQ_FAILED(sq_getfloat(vm, 2, &arg1))) {
3136 sq_throwerror(vm, _SC("Argument 1 not a float"));
3141 scripting::wait(arg0, static_cast<float> (arg1));
3143 return sq_suspendvm(vm);
3145 } catch(std::exception& e) {
3146 sq_throwerror(vm, e.what());
3149 sq_throwerror(vm, _SC("Unexpected exception while executing function 'wait'"));
3155 static SQInteger wait_for_screenswitch_wrapper(HSQUIRRELVM vm)
3157 HSQUIRRELVM arg0 = vm;
3160 scripting::wait_for_screenswitch(arg0);
3162 return sq_suspendvm(vm);
3164 } catch(std::exception& e) {
3165 sq_throwerror(vm, e.what());
3168 sq_throwerror(vm, _SC("Unexpected exception while executing function 'wait_for_screenswitch'"));
3174 static SQInteger exit_screen_wrapper(HSQUIRRELVM vm)
3179 scripting::exit_screen();
3183 } catch(std::exception& e) {
3184 sq_throwerror(vm, e.what());
3187 sq_throwerror(vm, _SC("Unexpected exception while executing function 'exit_screen'"));
3193 static SQInteger fadeout_screen_wrapper(HSQUIRRELVM vm)
3196 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
3197 sq_throwerror(vm, _SC("Argument 1 not a float"));
3202 scripting::fadeout_screen(static_cast<float> (arg0));
3206 } catch(std::exception& e) {
3207 sq_throwerror(vm, e.what());
3210 sq_throwerror(vm, _SC("Unexpected exception while executing function 'fadeout_screen'"));
3216 static SQInteger shrink_screen_wrapper(HSQUIRRELVM vm)
3219 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
3220 sq_throwerror(vm, _SC("Argument 1 not a float"));
3224 if(SQ_FAILED(sq_getfloat(vm, 3, &arg1))) {
3225 sq_throwerror(vm, _SC("Argument 2 not a float"));
3229 if(SQ_FAILED(sq_getfloat(vm, 4, &arg2))) {
3230 sq_throwerror(vm, _SC("Argument 3 not a float"));
3235 scripting::shrink_screen(static_cast<float> (arg0), static_cast<float> (arg1), static_cast<float> (arg2));
3239 } catch(std::exception& e) {
3240 sq_throwerror(vm, e.what());
3243 sq_throwerror(vm, _SC("Unexpected exception while executing function 'shrink_screen'"));
3249 static SQInteger abort_screenfade_wrapper(HSQUIRRELVM vm)
3254 scripting::abort_screenfade();
3258 } catch(std::exception& e) {
3259 sq_throwerror(vm, e.what());
3262 sq_throwerror(vm, _SC("Unexpected exception while executing function 'abort_screenfade'"));
3268 static SQInteger translate_wrapper(HSQUIRRELVM vm)
3271 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3272 sq_throwerror(vm, _SC("Argument 1 not a string"));
3277 std::string return_value = scripting::translate(arg0);
3279 sq_pushstring(vm, return_value.c_str(), return_value.size());
3282 } catch(std::exception& e) {
3283 sq_throwerror(vm, e.what());
3286 sq_throwerror(vm, _SC("Unexpected exception while executing function 'translate'"));
3292 static SQInteger import_wrapper(HSQUIRRELVM vm)
3294 HSQUIRRELVM arg0 = vm;
3296 if(SQ_FAILED(sq_getstring(vm, 2, &arg1))) {
3297 sq_throwerror(vm, _SC("Argument 1 not a string"));
3302 scripting::import(arg0, arg1);
3306 } catch(std::exception& e) {
3307 sq_throwerror(vm, e.what());
3310 sq_throwerror(vm, _SC("Unexpected exception while executing function 'import'"));
3316 static SQInteger save_state_wrapper(HSQUIRRELVM vm)
3321 scripting::save_state();
3325 } catch(std::exception& e) {
3326 sq_throwerror(vm, e.what());
3329 sq_throwerror(vm, _SC("Unexpected exception while executing function 'save_state'"));
3335 static SQInteger update_worldmap_wrapper(HSQUIRRELVM vm)
3340 scripting::update_worldmap();
3344 } catch(std::exception& e) {
3345 sq_throwerror(vm, e.what());
3348 sq_throwerror(vm, _SC("Unexpected exception while executing function 'update_worldmap'"));
3354 static SQInteger debug_collrects_wrapper(HSQUIRRELVM vm)
3357 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3358 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3363 scripting::debug_collrects(arg0 == SQTrue);
3367 } catch(std::exception& e) {
3368 sq_throwerror(vm, e.what());
3371 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_collrects'"));
3377 static SQInteger debug_show_fps_wrapper(HSQUIRRELVM vm)
3380 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3381 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3386 scripting::debug_show_fps(arg0 == SQTrue);
3390 } catch(std::exception& e) {
3391 sq_throwerror(vm, e.what());
3394 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_show_fps'"));
3400 static SQInteger debug_draw_solids_only_wrapper(HSQUIRRELVM vm)
3403 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3404 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3409 scripting::debug_draw_solids_only(arg0 == SQTrue);
3413 } catch(std::exception& e) {
3414 sq_throwerror(vm, e.what());
3417 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_draw_solids_only'"));
3423 static SQInteger debug_draw_editor_images_wrapper(HSQUIRRELVM vm)
3426 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3427 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3432 scripting::debug_draw_editor_images(arg0 == SQTrue);
3436 } catch(std::exception& e) {
3437 sq_throwerror(vm, e.what());
3440 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_draw_editor_images'"));
3446 static SQInteger debug_worldmap_ghost_wrapper(HSQUIRRELVM vm)
3449 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3450 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3455 scripting::debug_worldmap_ghost(arg0 == SQTrue);
3459 } catch(std::exception& e) {
3460 sq_throwerror(vm, e.what());
3463 sq_throwerror(vm, _SC("Unexpected exception while executing function 'debug_worldmap_ghost'"));
3469 static SQInteger play_music_wrapper(HSQUIRRELVM vm)
3472 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3473 sq_throwerror(vm, _SC("Argument 1 not a string"));
3478 scripting::play_music(arg0);
3482 } catch(std::exception& e) {
3483 sq_throwerror(vm, e.what());
3486 sq_throwerror(vm, _SC("Unexpected exception while executing function 'play_music'"));
3492 static SQInteger play_sound_wrapper(HSQUIRRELVM vm)
3495 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3496 sq_throwerror(vm, _SC("Argument 1 not a string"));
3501 scripting::play_sound(arg0);
3505 } catch(std::exception& e) {
3506 sq_throwerror(vm, e.what());
3509 sq_throwerror(vm, _SC("Unexpected exception while executing function 'play_sound'"));
3515 static SQInteger set_game_speed_wrapper(HSQUIRRELVM vm)
3518 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
3519 sq_throwerror(vm, _SC("Argument 1 not a float"));
3524 scripting::set_game_speed(static_cast<float> (arg0));
3528 } catch(std::exception& e) {
3529 sq_throwerror(vm, e.what());
3532 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_game_speed'"));
3538 static SQInteger grease_wrapper(HSQUIRRELVM vm)
3543 scripting::grease();
3547 } catch(std::exception& e) {
3548 sq_throwerror(vm, e.what());
3551 sq_throwerror(vm, _SC("Unexpected exception while executing function 'grease'"));
3557 static SQInteger invincible_wrapper(HSQUIRRELVM vm)
3562 scripting::invincible();
3566 } catch(std::exception& e) {
3567 sq_throwerror(vm, e.what());
3570 sq_throwerror(vm, _SC("Unexpected exception while executing function 'invincible'"));
3576 static SQInteger ghost_wrapper(HSQUIRRELVM vm)
3585 } catch(std::exception& e) {
3586 sq_throwerror(vm, e.what());
3589 sq_throwerror(vm, _SC("Unexpected exception while executing function 'ghost'"));
3595 static SQInteger mortal_wrapper(HSQUIRRELVM vm)
3600 scripting::mortal();
3604 } catch(std::exception& e) {
3605 sq_throwerror(vm, e.what());
3608 sq_throwerror(vm, _SC("Unexpected exception while executing function 'mortal'"));
3614 static SQInteger restart_wrapper(HSQUIRRELVM vm)
3619 scripting::restart();
3623 } catch(std::exception& e) {
3624 sq_throwerror(vm, e.what());
3627 sq_throwerror(vm, _SC("Unexpected exception while executing function 'restart'"));
3633 static SQInteger whereami_wrapper(HSQUIRRELVM vm)
3638 scripting::whereami();
3642 } catch(std::exception& e) {
3643 sq_throwerror(vm, e.what());
3646 sq_throwerror(vm, _SC("Unexpected exception while executing function 'whereami'"));
3652 static SQInteger gotoend_wrapper(HSQUIRRELVM vm)
3657 scripting::gotoend();
3661 } catch(std::exception& e) {
3662 sq_throwerror(vm, e.what());
3665 sq_throwerror(vm, _SC("Unexpected exception while executing function 'gotoend'"));
3671 static SQInteger camera_wrapper(HSQUIRRELVM vm)
3676 scripting::camera();
3680 } catch(std::exception& e) {
3681 sq_throwerror(vm, e.what());
3684 sq_throwerror(vm, _SC("Unexpected exception while executing function 'camera'"));
3690 static SQInteger set_gamma_wrapper(HSQUIRRELVM vm)
3693 if(SQ_FAILED(sq_getfloat(vm, 2, &arg0))) {
3694 sq_throwerror(vm, _SC("Argument 1 not a float"));
3699 scripting::set_gamma(static_cast<float> (arg0));
3703 } catch(std::exception& e) {
3704 sq_throwerror(vm, e.what());
3707 sq_throwerror(vm, _SC("Unexpected exception while executing function 'set_gamma'"));
3713 static SQInteger quit_wrapper(HSQUIRRELVM vm)
3722 } catch(std::exception& e) {
3723 sq_throwerror(vm, e.what());
3726 sq_throwerror(vm, _SC("Unexpected exception while executing function 'quit'"));
3732 static SQInteger rand_wrapper(HSQUIRRELVM vm)
3736 int return_value = scripting::rand();
3738 sq_pushinteger(vm, return_value);
3741 } catch(std::exception& e) {
3742 sq_throwerror(vm, e.what());
3745 sq_throwerror(vm, _SC("Unexpected exception while executing function 'rand'"));
3751 static SQInteger record_demo_wrapper(HSQUIRRELVM vm)
3754 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3755 sq_throwerror(vm, _SC("Argument 1 not a string"));
3760 scripting::record_demo(arg0);
3764 } catch(std::exception& e) {
3765 sq_throwerror(vm, e.what());
3768 sq_throwerror(vm, _SC("Unexpected exception while executing function 'record_demo'"));
3774 static SQInteger play_demo_wrapper(HSQUIRRELVM vm)
3777 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3778 sq_throwerror(vm, _SC("Argument 1 not a string"));
3783 scripting::play_demo(arg0);
3787 } catch(std::exception& e) {
3788 sq_throwerror(vm, e.what());
3791 sq_throwerror(vm, _SC("Unexpected exception while executing function 'play_demo'"));
3797 static SQInteger Level_finish_wrapper(HSQUIRRELVM vm)
3800 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3801 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3806 scripting::Level_finish(arg0 == SQTrue);
3810 } catch(std::exception& e) {
3811 sq_throwerror(vm, e.what());
3814 sq_throwerror(vm, _SC("Unexpected exception while executing function 'Level_finish'"));
3820 static SQInteger Level_spawn_wrapper(HSQUIRRELVM vm)
3823 if(SQ_FAILED(sq_getstring(vm, 2, &arg0))) {
3824 sq_throwerror(vm, _SC("Argument 1 not a string"));
3828 if(SQ_FAILED(sq_getstring(vm, 3, &arg1))) {
3829 sq_throwerror(vm, _SC("Argument 2 not a string"));
3834 scripting::Level_spawn(arg0, arg1);
3838 } catch(std::exception& e) {
3839 sq_throwerror(vm, e.what());
3842 sq_throwerror(vm, _SC("Unexpected exception while executing function 'Level_spawn'"));
3848 static SQInteger Level_flip_vertically_wrapper(HSQUIRRELVM vm)
3853 scripting::Level_flip_vertically();
3857 } catch(std::exception& e) {
3858 sq_throwerror(vm, e.what());
3861 sq_throwerror(vm, _SC("Unexpected exception while executing function 'Level_flip_vertically'"));
3867 static SQInteger Level_toggle_pause_wrapper(HSQUIRRELVM vm)
3872 scripting::Level_toggle_pause();
3876 } catch(std::exception& e) {
3877 sq_throwerror(vm, e.what());
3880 sq_throwerror(vm, _SC("Unexpected exception while executing function 'Level_toggle_pause'"));
3886 static SQInteger Level_edit_wrapper(HSQUIRRELVM vm)
3889 if(SQ_FAILED(sq_getbool(vm, 2, &arg0))) {
3890 sq_throwerror(vm, _SC("Argument 1 not a bool"));
3895 scripting::Level_edit(arg0 == SQTrue);
3899 } catch(std::exception& e) {
3900 sq_throwerror(vm, e.what());
3903 sq_throwerror(vm, _SC("Unexpected exception while executing function 'Level_edit'"));
3909 } // namespace wrapper
3910 void create_squirrel_instance(HSQUIRRELVM v, scripting::AmbientSound* object, bool setup_releasehook)
3912 using namespace wrapper;
3914 sq_pushroottable(v);
3915 sq_pushstring(v, "AmbientSound", -1);
3916 if(SQ_FAILED(sq_get(v, -2))) {
3917 std::ostringstream msg;
3918 msg << "Couldn't resolved squirrel type 'AmbientSound'";
3919 throw SquirrelError(v, msg.str());
3922 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
3923 std::ostringstream msg;
3924 msg << "Couldn't setup squirrel instance for object of type 'AmbientSound'";
3925 throw SquirrelError(v, msg.str());
3927 sq_remove(v, -2); // remove object name
3929 if(setup_releasehook) {
3930 sq_setreleasehook(v, -1, AmbientSound_release_hook);
3933 sq_remove(v, -2); // remove root table
3936 void create_squirrel_instance(HSQUIRRELVM v, scripting::Camera* object, bool setup_releasehook)
3938 using namespace wrapper;
3940 sq_pushroottable(v);
3941 sq_pushstring(v, "Camera", -1);
3942 if(SQ_FAILED(sq_get(v, -2))) {
3943 std::ostringstream msg;
3944 msg << "Couldn't resolved squirrel type 'Camera'";
3945 throw SquirrelError(v, msg.str());
3948 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
3949 std::ostringstream msg;
3950 msg << "Couldn't setup squirrel instance for object of type 'Camera'";
3951 throw SquirrelError(v, msg.str());
3953 sq_remove(v, -2); // remove object name
3955 if(setup_releasehook) {
3956 sq_setreleasehook(v, -1, Camera_release_hook);
3959 sq_remove(v, -2); // remove root table
3962 void create_squirrel_instance(HSQUIRRELVM v, scripting::Candle* object, bool setup_releasehook)
3964 using namespace wrapper;
3966 sq_pushroottable(v);
3967 sq_pushstring(v, "Candle", -1);
3968 if(SQ_FAILED(sq_get(v, -2))) {
3969 std::ostringstream msg;
3970 msg << "Couldn't resolved squirrel type 'Candle'";
3971 throw SquirrelError(v, msg.str());
3974 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
3975 std::ostringstream msg;
3976 msg << "Couldn't setup squirrel instance for object of type 'Candle'";
3977 throw SquirrelError(v, msg.str());
3979 sq_remove(v, -2); // remove object name
3981 if(setup_releasehook) {
3982 sq_setreleasehook(v, -1, Candle_release_hook);
3985 sq_remove(v, -2); // remove root table
3988 void create_squirrel_instance(HSQUIRRELVM v, scripting::DisplayEffect* object, bool setup_releasehook)
3990 using namespace wrapper;
3992 sq_pushroottable(v);
3993 sq_pushstring(v, "DisplayEffect", -1);
3994 if(SQ_FAILED(sq_get(v, -2))) {
3995 std::ostringstream msg;
3996 msg << "Couldn't resolved squirrel type 'DisplayEffect'";
3997 throw SquirrelError(v, msg.str());
4000 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4001 std::ostringstream msg;
4002 msg << "Couldn't setup squirrel instance for object of type 'DisplayEffect'";
4003 throw SquirrelError(v, msg.str());
4005 sq_remove(v, -2); // remove object name
4007 if(setup_releasehook) {
4008 sq_setreleasehook(v, -1, DisplayEffect_release_hook);
4011 sq_remove(v, -2); // remove root table
4014 void create_squirrel_instance(HSQUIRRELVM v, scripting::FloatingImage* object, bool setup_releasehook)
4016 using namespace wrapper;
4018 sq_pushroottable(v);
4019 sq_pushstring(v, "FloatingImage", -1);
4020 if(SQ_FAILED(sq_get(v, -2))) {
4021 std::ostringstream msg;
4022 msg << "Couldn't resolved squirrel type 'FloatingImage'";
4023 throw SquirrelError(v, msg.str());
4026 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4027 std::ostringstream msg;
4028 msg << "Couldn't setup squirrel instance for object of type 'FloatingImage'";
4029 throw SquirrelError(v, msg.str());
4031 sq_remove(v, -2); // remove object name
4033 if(setup_releasehook) {
4034 sq_setreleasehook(v, -1, FloatingImage_release_hook);
4037 sq_remove(v, -2); // remove root table
4040 void create_squirrel_instance(HSQUIRRELVM v, scripting::LevelTime* object, bool setup_releasehook)
4042 using namespace wrapper;
4044 sq_pushroottable(v);
4045 sq_pushstring(v, "LevelTime", -1);
4046 if(SQ_FAILED(sq_get(v, -2))) {
4047 std::ostringstream msg;
4048 msg << "Couldn't resolved squirrel type 'LevelTime'";
4049 throw SquirrelError(v, msg.str());
4052 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4053 std::ostringstream msg;
4054 msg << "Couldn't setup squirrel instance for object of type 'LevelTime'";
4055 throw SquirrelError(v, msg.str());
4057 sq_remove(v, -2); // remove object name
4059 if(setup_releasehook) {
4060 sq_setreleasehook(v, -1, LevelTime_release_hook);
4063 sq_remove(v, -2); // remove root table
4066 void create_squirrel_instance(HSQUIRRELVM v, scripting::Platform* object, bool setup_releasehook)
4068 using namespace wrapper;
4070 sq_pushroottable(v);
4071 sq_pushstring(v, "Platform", -1);
4072 if(SQ_FAILED(sq_get(v, -2))) {
4073 std::ostringstream msg;
4074 msg << "Couldn't resolved squirrel type 'Platform'";
4075 throw SquirrelError(v, msg.str());
4078 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4079 std::ostringstream msg;
4080 msg << "Couldn't setup squirrel instance for object of type 'Platform'";
4081 throw SquirrelError(v, msg.str());
4083 sq_remove(v, -2); // remove object name
4085 if(setup_releasehook) {
4086 sq_setreleasehook(v, -1, Platform_release_hook);
4089 sq_remove(v, -2); // remove root table
4092 void create_squirrel_instance(HSQUIRRELVM v, scripting::Player* object, bool setup_releasehook)
4094 using namespace wrapper;
4096 sq_pushroottable(v);
4097 sq_pushstring(v, "Player", -1);
4098 if(SQ_FAILED(sq_get(v, -2))) {
4099 std::ostringstream msg;
4100 msg << "Couldn't resolved squirrel type 'Player'";
4101 throw SquirrelError(v, msg.str());
4104 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4105 std::ostringstream msg;
4106 msg << "Couldn't setup squirrel instance for object of type 'Player'";
4107 throw SquirrelError(v, msg.str());
4109 sq_remove(v, -2); // remove object name
4111 if(setup_releasehook) {
4112 sq_setreleasehook(v, -1, Player_release_hook);
4115 sq_remove(v, -2); // remove root table
4118 void create_squirrel_instance(HSQUIRRELVM v, scripting::ScriptedObject* object, bool setup_releasehook)
4120 using namespace wrapper;
4122 sq_pushroottable(v);
4123 sq_pushstring(v, "ScriptedObject", -1);
4124 if(SQ_FAILED(sq_get(v, -2))) {
4125 std::ostringstream msg;
4126 msg << "Couldn't resolved squirrel type 'ScriptedObject'";
4127 throw SquirrelError(v, msg.str());
4130 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4131 std::ostringstream msg;
4132 msg << "Couldn't setup squirrel instance for object of type 'ScriptedObject'";
4133 throw SquirrelError(v, msg.str());
4135 sq_remove(v, -2); // remove object name
4137 if(setup_releasehook) {
4138 sq_setreleasehook(v, -1, ScriptedObject_release_hook);
4141 sq_remove(v, -2); // remove root table
4144 void create_squirrel_instance(HSQUIRRELVM v, scripting::SSector* object, bool setup_releasehook)
4146 using namespace wrapper;
4148 sq_pushroottable(v);
4149 sq_pushstring(v, "SSector", -1);
4150 if(SQ_FAILED(sq_get(v, -2))) {
4151 std::ostringstream msg;
4152 msg << "Couldn't resolved squirrel type 'SSector'";
4153 throw SquirrelError(v, msg.str());
4156 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4157 std::ostringstream msg;
4158 msg << "Couldn't setup squirrel instance for object of type 'SSector'";
4159 throw SquirrelError(v, msg.str());
4161 sq_remove(v, -2); // remove object name
4163 if(setup_releasehook) {
4164 sq_setreleasehook(v, -1, SSector_release_hook);
4167 sq_remove(v, -2); // remove root table
4170 void create_squirrel_instance(HSQUIRRELVM v, scripting::Text* object, bool setup_releasehook)
4172 using namespace wrapper;
4174 sq_pushroottable(v);
4175 sq_pushstring(v, "Text", -1);
4176 if(SQ_FAILED(sq_get(v, -2))) {
4177 std::ostringstream msg;
4178 msg << "Couldn't resolved squirrel type 'Text'";
4179 throw SquirrelError(v, msg.str());
4182 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4183 std::ostringstream msg;
4184 msg << "Couldn't setup squirrel instance for object of type 'Text'";
4185 throw SquirrelError(v, msg.str());
4187 sq_remove(v, -2); // remove object name
4189 if(setup_releasehook) {
4190 sq_setreleasehook(v, -1, Text_release_hook);
4193 sq_remove(v, -2); // remove root table
4196 void create_squirrel_instance(HSQUIRRELVM v, scripting::Thunderstorm* object, bool setup_releasehook)
4198 using namespace wrapper;
4200 sq_pushroottable(v);
4201 sq_pushstring(v, "Thunderstorm", -1);
4202 if(SQ_FAILED(sq_get(v, -2))) {
4203 std::ostringstream msg;
4204 msg << "Couldn't resolved squirrel type 'Thunderstorm'";
4205 throw SquirrelError(v, msg.str());
4208 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4209 std::ostringstream msg;
4210 msg << "Couldn't setup squirrel instance for object of type 'Thunderstorm'";
4211 throw SquirrelError(v, msg.str());
4213 sq_remove(v, -2); // remove object name
4215 if(setup_releasehook) {
4216 sq_setreleasehook(v, -1, Thunderstorm_release_hook);
4219 sq_remove(v, -2); // remove root table
4222 void create_squirrel_instance(HSQUIRRELVM v, scripting::TileMap* object, bool setup_releasehook)
4224 using namespace wrapper;
4226 sq_pushroottable(v);
4227 sq_pushstring(v, "TileMap", -1);
4228 if(SQ_FAILED(sq_get(v, -2))) {
4229 std::ostringstream msg;
4230 msg << "Couldn't resolved squirrel type 'TileMap'";
4231 throw SquirrelError(v, msg.str());
4234 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4235 std::ostringstream msg;
4236 msg << "Couldn't setup squirrel instance for object of type 'TileMap'";
4237 throw SquirrelError(v, msg.str());
4239 sq_remove(v, -2); // remove object name
4241 if(setup_releasehook) {
4242 sq_setreleasehook(v, -1, TileMap_release_hook);
4245 sq_remove(v, -2); // remove root table
4248 void create_squirrel_instance(HSQUIRRELVM v, scripting::WillOWisp* object, bool setup_releasehook)
4250 using namespace wrapper;
4252 sq_pushroottable(v);
4253 sq_pushstring(v, "WillOWisp", -1);
4254 if(SQ_FAILED(sq_get(v, -2))) {
4255 std::ostringstream msg;
4256 msg << "Couldn't resolved squirrel type 'WillOWisp'";
4257 throw SquirrelError(v, msg.str());
4260 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4261 std::ostringstream msg;
4262 msg << "Couldn't setup squirrel instance for object of type 'WillOWisp'";
4263 throw SquirrelError(v, msg.str());
4265 sq_remove(v, -2); // remove object name
4267 if(setup_releasehook) {
4268 sq_setreleasehook(v, -1, WillOWisp_release_hook);
4271 sq_remove(v, -2); // remove root table
4274 void create_squirrel_instance(HSQUIRRELVM v, scripting::Wind* object, bool setup_releasehook)
4276 using namespace wrapper;
4278 sq_pushroottable(v);
4279 sq_pushstring(v, "Wind", -1);
4280 if(SQ_FAILED(sq_get(v, -2))) {
4281 std::ostringstream msg;
4282 msg << "Couldn't resolved squirrel type 'Wind'";
4283 throw SquirrelError(v, msg.str());
4286 if(SQ_FAILED(sq_createinstance(v, -1)) || SQ_FAILED(sq_setinstanceup(v, -1, object))) {
4287 std::ostringstream msg;
4288 msg << "Couldn't setup squirrel instance for object of type 'Wind'";
4289 throw SquirrelError(v, msg.str());
4291 sq_remove(v, -2); // remove object name
4293 if(setup_releasehook) {
4294 sq_setreleasehook(v, -1, Wind_release_hook);
4297 sq_remove(v, -2); // remove root table
4300 void register_supertux_wrapper(HSQUIRRELVM v)
4302 using namespace wrapper;
4304 sq_pushstring(v, "ANCHOR_TOP", -1);
4305 sq_pushinteger(v, 16);
4306 if(SQ_FAILED(sq_createslot(v, -3))) {
4307 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_TOP'");
4310 sq_pushstring(v, "ANCHOR_BOTTOM", -1);
4311 sq_pushinteger(v, 32);
4312 if(SQ_FAILED(sq_createslot(v, -3))) {
4313 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_BOTTOM'");
4316 sq_pushstring(v, "ANCHOR_LEFT", -1);
4317 sq_pushinteger(v, 1);
4318 if(SQ_FAILED(sq_createslot(v, -3))) {
4319 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_LEFT'");
4322 sq_pushstring(v, "ANCHOR_RIGHT", -1);
4323 sq_pushinteger(v, 2);
4324 if(SQ_FAILED(sq_createslot(v, -3))) {
4325 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_RIGHT'");
4328 sq_pushstring(v, "ANCHOR_MIDDLE", -1);
4329 sq_pushinteger(v, 0);
4330 if(SQ_FAILED(sq_createslot(v, -3))) {
4331 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_MIDDLE'");
4334 sq_pushstring(v, "ANCHOR_TOP_LEFT", -1);
4335 sq_pushinteger(v, 17);
4336 if(SQ_FAILED(sq_createslot(v, -3))) {
4337 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_TOP_LEFT'");
4340 sq_pushstring(v, "ANCHOR_TOP_RIGHT", -1);
4341 sq_pushinteger(v, 18);
4342 if(SQ_FAILED(sq_createslot(v, -3))) {
4343 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_TOP_RIGHT'");
4346 sq_pushstring(v, "ANCHOR_BOTTOM_LEFT", -1);
4347 sq_pushinteger(v, 33);
4348 if(SQ_FAILED(sq_createslot(v, -3))) {
4349 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_BOTTOM_LEFT'");
4352 sq_pushstring(v, "ANCHOR_BOTTOM_RIGHT", -1);
4353 sq_pushinteger(v, 34);
4354 if(SQ_FAILED(sq_createslot(v, -3))) {
4355 throw SquirrelError(v, "Couldn't register constant 'ANCHOR_BOTTOM_RIGHT'");
4358 sq_pushstring(v, "display", -1);
4359 sq_newclosure(v, &display_wrapper, 0);
4360 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "t.");
4361 if(SQ_FAILED(sq_createslot(v, -3))) {
4362 throw SquirrelError(v, "Couldn't register function 'display'");
4365 sq_pushstring(v, "print_stacktrace", -1);
4366 sq_newclosure(v, &print_stacktrace_wrapper, 0);
4367 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4368 if(SQ_FAILED(sq_createslot(v, -3))) {
4369 throw SquirrelError(v, "Couldn't register function 'print_stacktrace'");
4372 sq_pushstring(v, "get_current_thread", -1);
4373 sq_newclosure(v, &get_current_thread_wrapper, 0);
4374 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "t");
4375 if(SQ_FAILED(sq_createslot(v, -3))) {
4376 throw SquirrelError(v, "Couldn't register function 'get_current_thread'");
4379 sq_pushstring(v, "display_text_file", -1);
4380 sq_newclosure(v, &display_text_file_wrapper, 0);
4381 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4382 if(SQ_FAILED(sq_createslot(v, -3))) {
4383 throw SquirrelError(v, "Couldn't register function 'display_text_file'");
4386 sq_pushstring(v, "load_worldmap", -1);
4387 sq_newclosure(v, &load_worldmap_wrapper, 0);
4388 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4389 if(SQ_FAILED(sq_createslot(v, -3))) {
4390 throw SquirrelError(v, "Couldn't register function 'load_worldmap'");
4393 sq_pushstring(v, "load_level", -1);
4394 sq_newclosure(v, &load_level_wrapper, 0);
4395 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4396 if(SQ_FAILED(sq_createslot(v, -3))) {
4397 throw SquirrelError(v, "Couldn't register function 'load_level'");
4400 sq_pushstring(v, "wait", -1);
4401 sq_newclosure(v, &wait_wrapper, 0);
4402 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4403 if(SQ_FAILED(sq_createslot(v, -3))) {
4404 throw SquirrelError(v, "Couldn't register function 'wait'");
4407 sq_pushstring(v, "wait_for_screenswitch", -1);
4408 sq_newclosure(v, &wait_for_screenswitch_wrapper, 0);
4409 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4410 if(SQ_FAILED(sq_createslot(v, -3))) {
4411 throw SquirrelError(v, "Couldn't register function 'wait_for_screenswitch'");
4414 sq_pushstring(v, "exit_screen", -1);
4415 sq_newclosure(v, &exit_screen_wrapper, 0);
4416 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4417 if(SQ_FAILED(sq_createslot(v, -3))) {
4418 throw SquirrelError(v, "Couldn't register function 'exit_screen'");
4421 sq_pushstring(v, "fadeout_screen", -1);
4422 sq_newclosure(v, &fadeout_screen_wrapper, 0);
4423 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4424 if(SQ_FAILED(sq_createslot(v, -3))) {
4425 throw SquirrelError(v, "Couldn't register function 'fadeout_screen'");
4428 sq_pushstring(v, "shrink_screen", -1);
4429 sq_newclosure(v, &shrink_screen_wrapper, 0);
4430 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnnn");
4431 if(SQ_FAILED(sq_createslot(v, -3))) {
4432 throw SquirrelError(v, "Couldn't register function 'shrink_screen'");
4435 sq_pushstring(v, "abort_screenfade", -1);
4436 sq_newclosure(v, &abort_screenfade_wrapper, 0);
4437 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4438 if(SQ_FAILED(sq_createslot(v, -3))) {
4439 throw SquirrelError(v, "Couldn't register function 'abort_screenfade'");
4442 sq_pushstring(v, "translate", -1);
4443 sq_newclosure(v, &translate_wrapper, 0);
4444 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4445 if(SQ_FAILED(sq_createslot(v, -3))) {
4446 throw SquirrelError(v, "Couldn't register function 'translate'");
4449 sq_pushstring(v, "import", -1);
4450 sq_newclosure(v, &import_wrapper, 0);
4451 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4452 if(SQ_FAILED(sq_createslot(v, -3))) {
4453 throw SquirrelError(v, "Couldn't register function 'import'");
4456 sq_pushstring(v, "save_state", -1);
4457 sq_newclosure(v, &save_state_wrapper, 0);
4458 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4459 if(SQ_FAILED(sq_createslot(v, -3))) {
4460 throw SquirrelError(v, "Couldn't register function 'save_state'");
4463 sq_pushstring(v, "update_worldmap", -1);
4464 sq_newclosure(v, &update_worldmap_wrapper, 0);
4465 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4466 if(SQ_FAILED(sq_createslot(v, -3))) {
4467 throw SquirrelError(v, "Couldn't register function 'update_worldmap'");
4470 sq_pushstring(v, "debug_collrects", -1);
4471 sq_newclosure(v, &debug_collrects_wrapper, 0);
4472 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4473 if(SQ_FAILED(sq_createslot(v, -3))) {
4474 throw SquirrelError(v, "Couldn't register function 'debug_collrects'");
4477 sq_pushstring(v, "debug_show_fps", -1);
4478 sq_newclosure(v, &debug_show_fps_wrapper, 0);
4479 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4480 if(SQ_FAILED(sq_createslot(v, -3))) {
4481 throw SquirrelError(v, "Couldn't register function 'debug_show_fps'");
4484 sq_pushstring(v, "debug_draw_solids_only", -1);
4485 sq_newclosure(v, &debug_draw_solids_only_wrapper, 0);
4486 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4487 if(SQ_FAILED(sq_createslot(v, -3))) {
4488 throw SquirrelError(v, "Couldn't register function 'debug_draw_solids_only'");
4491 sq_pushstring(v, "debug_draw_editor_images", -1);
4492 sq_newclosure(v, &debug_draw_editor_images_wrapper, 0);
4493 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4494 if(SQ_FAILED(sq_createslot(v, -3))) {
4495 throw SquirrelError(v, "Couldn't register function 'debug_draw_editor_images'");
4498 sq_pushstring(v, "debug_worldmap_ghost", -1);
4499 sq_newclosure(v, &debug_worldmap_ghost_wrapper, 0);
4500 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4501 if(SQ_FAILED(sq_createslot(v, -3))) {
4502 throw SquirrelError(v, "Couldn't register function 'debug_worldmap_ghost'");
4505 sq_pushstring(v, "play_music", -1);
4506 sq_newclosure(v, &play_music_wrapper, 0);
4507 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4508 if(SQ_FAILED(sq_createslot(v, -3))) {
4509 throw SquirrelError(v, "Couldn't register function 'play_music'");
4512 sq_pushstring(v, "play_sound", -1);
4513 sq_newclosure(v, &play_sound_wrapper, 0);
4514 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4515 if(SQ_FAILED(sq_createslot(v, -3))) {
4516 throw SquirrelError(v, "Couldn't register function 'play_sound'");
4519 sq_pushstring(v, "set_game_speed", -1);
4520 sq_newclosure(v, &set_game_speed_wrapper, 0);
4521 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4522 if(SQ_FAILED(sq_createslot(v, -3))) {
4523 throw SquirrelError(v, "Couldn't register function 'set_game_speed'");
4526 sq_pushstring(v, "grease", -1);
4527 sq_newclosure(v, &grease_wrapper, 0);
4528 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4529 if(SQ_FAILED(sq_createslot(v, -3))) {
4530 throw SquirrelError(v, "Couldn't register function 'grease'");
4533 sq_pushstring(v, "invincible", -1);
4534 sq_newclosure(v, &invincible_wrapper, 0);
4535 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4536 if(SQ_FAILED(sq_createslot(v, -3))) {
4537 throw SquirrelError(v, "Couldn't register function 'invincible'");
4540 sq_pushstring(v, "ghost", -1);
4541 sq_newclosure(v, &ghost_wrapper, 0);
4542 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4543 if(SQ_FAILED(sq_createslot(v, -3))) {
4544 throw SquirrelError(v, "Couldn't register function 'ghost'");
4547 sq_pushstring(v, "mortal", -1);
4548 sq_newclosure(v, &mortal_wrapper, 0);
4549 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4550 if(SQ_FAILED(sq_createslot(v, -3))) {
4551 throw SquirrelError(v, "Couldn't register function 'mortal'");
4554 sq_pushstring(v, "restart", -1);
4555 sq_newclosure(v, &restart_wrapper, 0);
4556 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4557 if(SQ_FAILED(sq_createslot(v, -3))) {
4558 throw SquirrelError(v, "Couldn't register function 'restart'");
4561 sq_pushstring(v, "whereami", -1);
4562 sq_newclosure(v, &whereami_wrapper, 0);
4563 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4564 if(SQ_FAILED(sq_createslot(v, -3))) {
4565 throw SquirrelError(v, "Couldn't register function 'whereami'");
4568 sq_pushstring(v, "gotoend", -1);
4569 sq_newclosure(v, &gotoend_wrapper, 0);
4570 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4571 if(SQ_FAILED(sq_createslot(v, -3))) {
4572 throw SquirrelError(v, "Couldn't register function 'gotoend'");
4575 sq_pushstring(v, "camera", -1);
4576 sq_newclosure(v, &camera_wrapper, 0);
4577 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4578 if(SQ_FAILED(sq_createslot(v, -3))) {
4579 throw SquirrelError(v, "Couldn't register function 'camera'");
4582 sq_pushstring(v, "set_gamma", -1);
4583 sq_newclosure(v, &set_gamma_wrapper, 0);
4584 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4585 if(SQ_FAILED(sq_createslot(v, -3))) {
4586 throw SquirrelError(v, "Couldn't register function 'set_gamma'");
4589 sq_pushstring(v, "quit", -1);
4590 sq_newclosure(v, &quit_wrapper, 0);
4591 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4592 if(SQ_FAILED(sq_createslot(v, -3))) {
4593 throw SquirrelError(v, "Couldn't register function 'quit'");
4596 sq_pushstring(v, "rand", -1);
4597 sq_newclosure(v, &rand_wrapper, 0);
4598 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4599 if(SQ_FAILED(sq_createslot(v, -3))) {
4600 throw SquirrelError(v, "Couldn't register function 'rand'");
4603 sq_pushstring(v, "record_demo", -1);
4604 sq_newclosure(v, &record_demo_wrapper, 0);
4605 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4606 if(SQ_FAILED(sq_createslot(v, -3))) {
4607 throw SquirrelError(v, "Couldn't register function 'record_demo'");
4610 sq_pushstring(v, "play_demo", -1);
4611 sq_newclosure(v, &play_demo_wrapper, 0);
4612 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4613 if(SQ_FAILED(sq_createslot(v, -3))) {
4614 throw SquirrelError(v, "Couldn't register function 'play_demo'");
4617 sq_pushstring(v, "Level_finish", -1);
4618 sq_newclosure(v, &Level_finish_wrapper, 0);
4619 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4620 if(SQ_FAILED(sq_createslot(v, -3))) {
4621 throw SquirrelError(v, "Couldn't register function 'Level_finish'");
4624 sq_pushstring(v, "Level_spawn", -1);
4625 sq_newclosure(v, &Level_spawn_wrapper, 0);
4626 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tss");
4627 if(SQ_FAILED(sq_createslot(v, -3))) {
4628 throw SquirrelError(v, "Couldn't register function 'Level_spawn'");
4631 sq_pushstring(v, "Level_flip_vertically", -1);
4632 sq_newclosure(v, &Level_flip_vertically_wrapper, 0);
4633 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4634 if(SQ_FAILED(sq_createslot(v, -3))) {
4635 throw SquirrelError(v, "Couldn't register function 'Level_flip_vertically'");
4638 sq_pushstring(v, "Level_toggle_pause", -1);
4639 sq_newclosure(v, &Level_toggle_pause_wrapper, 0);
4640 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4641 if(SQ_FAILED(sq_createslot(v, -3))) {
4642 throw SquirrelError(v, "Couldn't register function 'Level_toggle_pause'");
4645 sq_pushstring(v, "Level_edit", -1);
4646 sq_newclosure(v, &Level_edit_wrapper, 0);
4647 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4648 if(SQ_FAILED(sq_createslot(v, -3))) {
4649 throw SquirrelError(v, "Couldn't register function 'Level_edit'");
4652 // Register class AmbientSound
4653 sq_pushstring(v, "AmbientSound", -1);
4654 if(sq_newclass(v, SQFalse) < 0) {
4655 std::ostringstream msg;
4656 msg << "Couldn't create new class 'AmbientSound'";
4657 throw SquirrelError(v, msg.str());
4659 sq_pushstring(v, "set_pos", -1);
4660 sq_newclosure(v, &AmbientSound_set_pos_wrapper, 0);
4661 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
4662 if(SQ_FAILED(sq_createslot(v, -3))) {
4663 throw SquirrelError(v, "Couldn't register function 'set_pos'");
4666 sq_pushstring(v, "get_pos_x", -1);
4667 sq_newclosure(v, &AmbientSound_get_pos_x_wrapper, 0);
4668 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4669 if(SQ_FAILED(sq_createslot(v, -3))) {
4670 throw SquirrelError(v, "Couldn't register function 'get_pos_x'");
4673 sq_pushstring(v, "get_pos_y", -1);
4674 sq_newclosure(v, &AmbientSound_get_pos_y_wrapper, 0);
4675 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4676 if(SQ_FAILED(sq_createslot(v, -3))) {
4677 throw SquirrelError(v, "Couldn't register function 'get_pos_y'");
4680 if(SQ_FAILED(sq_createslot(v, -3))) {
4681 throw SquirrelError(v, "Couldn't register class 'AmbientSound'");
4684 // Register class Camera
4685 sq_pushstring(v, "Camera", -1);
4686 if(sq_newclass(v, SQFalse) < 0) {
4687 std::ostringstream msg;
4688 msg << "Couldn't create new class 'Camera'";
4689 throw SquirrelError(v, msg.str());
4691 sq_pushstring(v, "reload_config", -1);
4692 sq_newclosure(v, &Camera_reload_config_wrapper, 0);
4693 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4694 if(SQ_FAILED(sq_createslot(v, -3))) {
4695 throw SquirrelError(v, "Couldn't register function 'reload_config'");
4698 sq_pushstring(v, "shake", -1);
4699 sq_newclosure(v, &Camera_shake_wrapper, 0);
4700 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnnn");
4701 if(SQ_FAILED(sq_createslot(v, -3))) {
4702 throw SquirrelError(v, "Couldn't register function 'shake'");
4705 sq_pushstring(v, "set_pos", -1);
4706 sq_newclosure(v, &Camera_set_pos_wrapper, 0);
4707 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
4708 if(SQ_FAILED(sq_createslot(v, -3))) {
4709 throw SquirrelError(v, "Couldn't register function 'set_pos'");
4712 sq_pushstring(v, "set_mode", -1);
4713 sq_newclosure(v, &Camera_set_mode_wrapper, 0);
4714 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4715 if(SQ_FAILED(sq_createslot(v, -3))) {
4716 throw SquirrelError(v, "Couldn't register function 'set_mode'");
4719 sq_pushstring(v, "scroll_to", -1);
4720 sq_newclosure(v, &Camera_scroll_to_wrapper, 0);
4721 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnnn");
4722 if(SQ_FAILED(sq_createslot(v, -3))) {
4723 throw SquirrelError(v, "Couldn't register function 'scroll_to'");
4726 if(SQ_FAILED(sq_createslot(v, -3))) {
4727 throw SquirrelError(v, "Couldn't register class 'Camera'");
4730 // Register class Candle
4731 sq_pushstring(v, "Candle", -1);
4732 if(sq_newclass(v, SQFalse) < 0) {
4733 std::ostringstream msg;
4734 msg << "Couldn't create new class 'Candle'";
4735 throw SquirrelError(v, msg.str());
4737 sq_pushstring(v, "get_burning", -1);
4738 sq_newclosure(v, &Candle_get_burning_wrapper, 0);
4739 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4740 if(SQ_FAILED(sq_createslot(v, -3))) {
4741 throw SquirrelError(v, "Couldn't register function 'get_burning'");
4744 sq_pushstring(v, "set_burning", -1);
4745 sq_newclosure(v, &Candle_set_burning_wrapper, 0);
4746 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4747 if(SQ_FAILED(sq_createslot(v, -3))) {
4748 throw SquirrelError(v, "Couldn't register function 'set_burning'");
4751 if(SQ_FAILED(sq_createslot(v, -3))) {
4752 throw SquirrelError(v, "Couldn't register class 'Candle'");
4755 // Register class DisplayEffect
4756 sq_pushstring(v, "DisplayEffect", -1);
4757 if(sq_newclass(v, SQFalse) < 0) {
4758 std::ostringstream msg;
4759 msg << "Couldn't create new class 'DisplayEffect'";
4760 throw SquirrelError(v, msg.str());
4762 sq_pushstring(v, "fade_out", -1);
4763 sq_newclosure(v, &DisplayEffect_fade_out_wrapper, 0);
4764 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4765 if(SQ_FAILED(sq_createslot(v, -3))) {
4766 throw SquirrelError(v, "Couldn't register function 'fade_out'");
4769 sq_pushstring(v, "fade_in", -1);
4770 sq_newclosure(v, &DisplayEffect_fade_in_wrapper, 0);
4771 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4772 if(SQ_FAILED(sq_createslot(v, -3))) {
4773 throw SquirrelError(v, "Couldn't register function 'fade_in'");
4776 sq_pushstring(v, "set_black", -1);
4777 sq_newclosure(v, &DisplayEffect_set_black_wrapper, 0);
4778 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4779 if(SQ_FAILED(sq_createslot(v, -3))) {
4780 throw SquirrelError(v, "Couldn't register function 'set_black'");
4783 sq_pushstring(v, "is_black", -1);
4784 sq_newclosure(v, &DisplayEffect_is_black_wrapper, 0);
4785 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4786 if(SQ_FAILED(sq_createslot(v, -3))) {
4787 throw SquirrelError(v, "Couldn't register function 'is_black'");
4790 sq_pushstring(v, "sixteen_to_nine", -1);
4791 sq_newclosure(v, &DisplayEffect_sixteen_to_nine_wrapper, 0);
4792 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4793 if(SQ_FAILED(sq_createslot(v, -3))) {
4794 throw SquirrelError(v, "Couldn't register function 'sixteen_to_nine'");
4797 sq_pushstring(v, "four_to_three", -1);
4798 sq_newclosure(v, &DisplayEffect_four_to_three_wrapper, 0);
4799 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4800 if(SQ_FAILED(sq_createslot(v, -3))) {
4801 throw SquirrelError(v, "Couldn't register function 'four_to_three'");
4804 if(SQ_FAILED(sq_createslot(v, -3))) {
4805 throw SquirrelError(v, "Couldn't register class 'DisplayEffect'");
4808 // Register class FloatingImage
4809 sq_pushstring(v, "FloatingImage", -1);
4810 if(sq_newclass(v, SQFalse) < 0) {
4811 std::ostringstream msg;
4812 msg << "Couldn't create new class 'FloatingImage'";
4813 throw SquirrelError(v, msg.str());
4815 sq_pushstring(v, "constructor", -1);
4816 sq_newclosure(v, &FloatingImage_constructor_wrapper, 0);
4817 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4818 if(SQ_FAILED(sq_createslot(v, -3))) {
4819 throw SquirrelError(v, "Couldn't register function 'constructor'");
4822 sq_pushstring(v, "set_layer", -1);
4823 sq_newclosure(v, &FloatingImage_set_layer_wrapper, 0);
4824 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
4825 if(SQ_FAILED(sq_createslot(v, -3))) {
4826 throw SquirrelError(v, "Couldn't register function 'set_layer'");
4829 sq_pushstring(v, "get_layer", -1);
4830 sq_newclosure(v, &FloatingImage_get_layer_wrapper, 0);
4831 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4832 if(SQ_FAILED(sq_createslot(v, -3))) {
4833 throw SquirrelError(v, "Couldn't register function 'get_layer'");
4836 sq_pushstring(v, "set_pos", -1);
4837 sq_newclosure(v, &FloatingImage_set_pos_wrapper, 0);
4838 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
4839 if(SQ_FAILED(sq_createslot(v, -3))) {
4840 throw SquirrelError(v, "Couldn't register function 'set_pos'");
4843 sq_pushstring(v, "get_pos_x", -1);
4844 sq_newclosure(v, &FloatingImage_get_pos_x_wrapper, 0);
4845 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4846 if(SQ_FAILED(sq_createslot(v, -3))) {
4847 throw SquirrelError(v, "Couldn't register function 'get_pos_x'");
4850 sq_pushstring(v, "get_pos_y", -1);
4851 sq_newclosure(v, &FloatingImage_get_pos_y_wrapper, 0);
4852 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4853 if(SQ_FAILED(sq_createslot(v, -3))) {
4854 throw SquirrelError(v, "Couldn't register function 'get_pos_y'");
4857 sq_pushstring(v, "set_anchor_point", -1);
4858 sq_newclosure(v, &FloatingImage_set_anchor_point_wrapper, 0);
4859 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
4860 if(SQ_FAILED(sq_createslot(v, -3))) {
4861 throw SquirrelError(v, "Couldn't register function 'set_anchor_point'");
4864 sq_pushstring(v, "get_anchor_point", -1);
4865 sq_newclosure(v, &FloatingImage_get_anchor_point_wrapper, 0);
4866 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4867 if(SQ_FAILED(sq_createslot(v, -3))) {
4868 throw SquirrelError(v, "Couldn't register function 'get_anchor_point'");
4871 sq_pushstring(v, "set_visible", -1);
4872 sq_newclosure(v, &FloatingImage_set_visible_wrapper, 0);
4873 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
4874 if(SQ_FAILED(sq_createslot(v, -3))) {
4875 throw SquirrelError(v, "Couldn't register function 'set_visible'");
4878 sq_pushstring(v, "get_visible", -1);
4879 sq_newclosure(v, &FloatingImage_get_visible_wrapper, 0);
4880 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4881 if(SQ_FAILED(sq_createslot(v, -3))) {
4882 throw SquirrelError(v, "Couldn't register function 'get_visible'");
4885 sq_pushstring(v, "set_action", -1);
4886 sq_newclosure(v, &FloatingImage_set_action_wrapper, 0);
4887 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4888 if(SQ_FAILED(sq_createslot(v, -3))) {
4889 throw SquirrelError(v, "Couldn't register function 'set_action'");
4892 sq_pushstring(v, "get_action", -1);
4893 sq_newclosure(v, &FloatingImage_get_action_wrapper, 0);
4894 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4895 if(SQ_FAILED(sq_createslot(v, -3))) {
4896 throw SquirrelError(v, "Couldn't register function 'get_action'");
4899 sq_pushstring(v, "fade_in", -1);
4900 sq_newclosure(v, &FloatingImage_fade_in_wrapper, 0);
4901 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4902 if(SQ_FAILED(sq_createslot(v, -3))) {
4903 throw SquirrelError(v, "Couldn't register function 'fade_in'");
4906 sq_pushstring(v, "fade_out", -1);
4907 sq_newclosure(v, &FloatingImage_fade_out_wrapper, 0);
4908 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4909 if(SQ_FAILED(sq_createslot(v, -3))) {
4910 throw SquirrelError(v, "Couldn't register function 'fade_out'");
4913 if(SQ_FAILED(sq_createslot(v, -3))) {
4914 throw SquirrelError(v, "Couldn't register class 'FloatingImage'");
4917 // Register class LevelTime
4918 sq_pushstring(v, "LevelTime", -1);
4919 if(sq_newclass(v, SQFalse) < 0) {
4920 std::ostringstream msg;
4921 msg << "Couldn't create new class 'LevelTime'";
4922 throw SquirrelError(v, msg.str());
4924 sq_pushstring(v, "start", -1);
4925 sq_newclosure(v, &LevelTime_start_wrapper, 0);
4926 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4927 if(SQ_FAILED(sq_createslot(v, -3))) {
4928 throw SquirrelError(v, "Couldn't register function 'start'");
4931 sq_pushstring(v, "stop", -1);
4932 sq_newclosure(v, &LevelTime_stop_wrapper, 0);
4933 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4934 if(SQ_FAILED(sq_createslot(v, -3))) {
4935 throw SquirrelError(v, "Couldn't register function 'stop'");
4938 sq_pushstring(v, "get_time", -1);
4939 sq_newclosure(v, &LevelTime_get_time_wrapper, 0);
4940 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4941 if(SQ_FAILED(sq_createslot(v, -3))) {
4942 throw SquirrelError(v, "Couldn't register function 'get_time'");
4945 sq_pushstring(v, "set_time", -1);
4946 sq_newclosure(v, &LevelTime_set_time_wrapper, 0);
4947 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
4948 if(SQ_FAILED(sq_createslot(v, -3))) {
4949 throw SquirrelError(v, "Couldn't register function 'set_time'");
4952 if(SQ_FAILED(sq_createslot(v, -3))) {
4953 throw SquirrelError(v, "Couldn't register class 'LevelTime'");
4956 // Register class Platform
4957 sq_pushstring(v, "Platform", -1);
4958 if(sq_newclass(v, SQFalse) < 0) {
4959 std::ostringstream msg;
4960 msg << "Couldn't create new class 'Platform'";
4961 throw SquirrelError(v, msg.str());
4963 sq_pushstring(v, "goto_node", -1);
4964 sq_newclosure(v, &Platform_goto_node_wrapper, 0);
4965 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
4966 if(SQ_FAILED(sq_createslot(v, -3))) {
4967 throw SquirrelError(v, "Couldn't register function 'goto_node'");
4970 sq_pushstring(v, "start_moving", -1);
4971 sq_newclosure(v, &Platform_start_moving_wrapper, 0);
4972 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4973 if(SQ_FAILED(sq_createslot(v, -3))) {
4974 throw SquirrelError(v, "Couldn't register function 'start_moving'");
4977 sq_pushstring(v, "stop_moving", -1);
4978 sq_newclosure(v, &Platform_stop_moving_wrapper, 0);
4979 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
4980 if(SQ_FAILED(sq_createslot(v, -3))) {
4981 throw SquirrelError(v, "Couldn't register function 'stop_moving'");
4984 if(SQ_FAILED(sq_createslot(v, -3))) {
4985 throw SquirrelError(v, "Couldn't register class 'Platform'");
4988 // Register class Player
4989 sq_pushstring(v, "Player", -1);
4990 if(sq_newclass(v, SQFalse) < 0) {
4991 std::ostringstream msg;
4992 msg << "Couldn't create new class 'Player'";
4993 throw SquirrelError(v, msg.str());
4995 sq_pushstring(v, "add_bonus", -1);
4996 sq_newclosure(v, &Player_add_bonus_wrapper, 0);
4997 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
4998 if(SQ_FAILED(sq_createslot(v, -3))) {
4999 throw SquirrelError(v, "Couldn't register function 'add_bonus'");
5002 sq_pushstring(v, "add_coins", -1);
5003 sq_newclosure(v, &Player_add_coins_wrapper, 0);
5004 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
5005 if(SQ_FAILED(sq_createslot(v, -3))) {
5006 throw SquirrelError(v, "Couldn't register function 'add_coins'");
5009 sq_pushstring(v, "make_invincible", -1);
5010 sq_newclosure(v, &Player_make_invincible_wrapper, 0);
5011 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5012 if(SQ_FAILED(sq_createslot(v, -3))) {
5013 throw SquirrelError(v, "Couldn't register function 'make_invincible'");
5016 sq_pushstring(v, "deactivate", -1);
5017 sq_newclosure(v, &Player_deactivate_wrapper, 0);
5018 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5019 if(SQ_FAILED(sq_createslot(v, -3))) {
5020 throw SquirrelError(v, "Couldn't register function 'deactivate'");
5023 sq_pushstring(v, "activate", -1);
5024 sq_newclosure(v, &Player_activate_wrapper, 0);
5025 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5026 if(SQ_FAILED(sq_createslot(v, -3))) {
5027 throw SquirrelError(v, "Couldn't register function 'activate'");
5030 sq_pushstring(v, "walk", -1);
5031 sq_newclosure(v, &Player_walk_wrapper, 0);
5032 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5033 if(SQ_FAILED(sq_createslot(v, -3))) {
5034 throw SquirrelError(v, "Couldn't register function 'walk'");
5037 sq_pushstring(v, "set_visible", -1);
5038 sq_newclosure(v, &Player_set_visible_wrapper, 0);
5039 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5040 if(SQ_FAILED(sq_createslot(v, -3))) {
5041 throw SquirrelError(v, "Couldn't register function 'set_visible'");
5044 sq_pushstring(v, "get_visible", -1);
5045 sq_newclosure(v, &Player_get_visible_wrapper, 0);
5046 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5047 if(SQ_FAILED(sq_createslot(v, -3))) {
5048 throw SquirrelError(v, "Couldn't register function 'get_visible'");
5051 sq_pushstring(v, "kill", -1);
5052 sq_newclosure(v, &Player_kill_wrapper, 0);
5053 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5054 if(SQ_FAILED(sq_createslot(v, -3))) {
5055 throw SquirrelError(v, "Couldn't register function 'kill'");
5058 sq_pushstring(v, "set_ghost_mode", -1);
5059 sq_newclosure(v, &Player_set_ghost_mode_wrapper, 0);
5060 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5061 if(SQ_FAILED(sq_createslot(v, -3))) {
5062 throw SquirrelError(v, "Couldn't register function 'set_ghost_mode'");
5065 sq_pushstring(v, "get_ghost_mode", -1);
5066 sq_newclosure(v, &Player_get_ghost_mode_wrapper, 0);
5067 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5068 if(SQ_FAILED(sq_createslot(v, -3))) {
5069 throw SquirrelError(v, "Couldn't register function 'get_ghost_mode'");
5072 sq_pushstring(v, "do_cheer", -1);
5073 sq_newclosure(v, &Player_do_cheer_wrapper, 0);
5074 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5075 if(SQ_FAILED(sq_createslot(v, -3))) {
5076 throw SquirrelError(v, "Couldn't register function 'do_cheer'");
5079 sq_pushstring(v, "do_duck", -1);
5080 sq_newclosure(v, &Player_do_duck_wrapper, 0);
5081 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5082 if(SQ_FAILED(sq_createslot(v, -3))) {
5083 throw SquirrelError(v, "Couldn't register function 'do_duck'");
5086 sq_pushstring(v, "do_standup", -1);
5087 sq_newclosure(v, &Player_do_standup_wrapper, 0);
5088 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5089 if(SQ_FAILED(sq_createslot(v, -3))) {
5090 throw SquirrelError(v, "Couldn't register function 'do_standup'");
5093 sq_pushstring(v, "do_backflip", -1);
5094 sq_newclosure(v, &Player_do_backflip_wrapper, 0);
5095 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5096 if(SQ_FAILED(sq_createslot(v, -3))) {
5097 throw SquirrelError(v, "Couldn't register function 'do_backflip'");
5100 sq_pushstring(v, "do_jump", -1);
5101 sq_newclosure(v, &Player_do_jump_wrapper, 0);
5102 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5103 if(SQ_FAILED(sq_createslot(v, -3))) {
5104 throw SquirrelError(v, "Couldn't register function 'do_jump'");
5107 sq_pushstring(v, "trigger_sequence", -1);
5108 sq_newclosure(v, &Player_trigger_sequence_wrapper, 0);
5109 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
5110 if(SQ_FAILED(sq_createslot(v, -3))) {
5111 throw SquirrelError(v, "Couldn't register function 'trigger_sequence'");
5114 sq_pushstring(v, "use_scripting_controller", -1);
5115 sq_newclosure(v, &Player_use_scripting_controller_wrapper, 0);
5116 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5117 if(SQ_FAILED(sq_createslot(v, -3))) {
5118 throw SquirrelError(v, "Couldn't register function 'use_scripting_controller'");
5121 sq_pushstring(v, "do_scripting_controller", -1);
5122 sq_newclosure(v, &Player_do_scripting_controller_wrapper, 0);
5123 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tsb");
5124 if(SQ_FAILED(sq_createslot(v, -3))) {
5125 throw SquirrelError(v, "Couldn't register function 'do_scripting_controller'");
5128 if(SQ_FAILED(sq_createslot(v, -3))) {
5129 throw SquirrelError(v, "Couldn't register class 'Player'");
5132 // Register class ScriptedObject
5133 sq_pushstring(v, "ScriptedObject", -1);
5134 if(sq_newclass(v, SQFalse) < 0) {
5135 std::ostringstream msg;
5136 msg << "Couldn't create new class 'ScriptedObject'";
5137 throw SquirrelError(v, msg.str());
5139 sq_pushstring(v, "set_action", -1);
5140 sq_newclosure(v, &ScriptedObject_set_action_wrapper, 0);
5141 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
5142 if(SQ_FAILED(sq_createslot(v, -3))) {
5143 throw SquirrelError(v, "Couldn't register function 'set_action'");
5146 sq_pushstring(v, "get_action", -1);
5147 sq_newclosure(v, &ScriptedObject_get_action_wrapper, 0);
5148 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5149 if(SQ_FAILED(sq_createslot(v, -3))) {
5150 throw SquirrelError(v, "Couldn't register function 'get_action'");
5153 sq_pushstring(v, "move", -1);
5154 sq_newclosure(v, &ScriptedObject_move_wrapper, 0);
5155 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
5156 if(SQ_FAILED(sq_createslot(v, -3))) {
5157 throw SquirrelError(v, "Couldn't register function 'move'");
5160 sq_pushstring(v, "set_pos", -1);
5161 sq_newclosure(v, &ScriptedObject_set_pos_wrapper, 0);
5162 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
5163 if(SQ_FAILED(sq_createslot(v, -3))) {
5164 throw SquirrelError(v, "Couldn't register function 'set_pos'");
5167 sq_pushstring(v, "get_pos_x", -1);
5168 sq_newclosure(v, &ScriptedObject_get_pos_x_wrapper, 0);
5169 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5170 if(SQ_FAILED(sq_createslot(v, -3))) {
5171 throw SquirrelError(v, "Couldn't register function 'get_pos_x'");
5174 sq_pushstring(v, "get_pos_y", -1);
5175 sq_newclosure(v, &ScriptedObject_get_pos_y_wrapper, 0);
5176 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5177 if(SQ_FAILED(sq_createslot(v, -3))) {
5178 throw SquirrelError(v, "Couldn't register function 'get_pos_y'");
5181 sq_pushstring(v, "set_velocity", -1);
5182 sq_newclosure(v, &ScriptedObject_set_velocity_wrapper, 0);
5183 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
5184 if(SQ_FAILED(sq_createslot(v, -3))) {
5185 throw SquirrelError(v, "Couldn't register function 'set_velocity'");
5188 sq_pushstring(v, "get_velocity_x", -1);
5189 sq_newclosure(v, &ScriptedObject_get_velocity_x_wrapper, 0);
5190 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5191 if(SQ_FAILED(sq_createslot(v, -3))) {
5192 throw SquirrelError(v, "Couldn't register function 'get_velocity_x'");
5195 sq_pushstring(v, "get_velocity_y", -1);
5196 sq_newclosure(v, &ScriptedObject_get_velocity_y_wrapper, 0);
5197 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5198 if(SQ_FAILED(sq_createslot(v, -3))) {
5199 throw SquirrelError(v, "Couldn't register function 'get_velocity_y'");
5202 sq_pushstring(v, "enable_gravity", -1);
5203 sq_newclosure(v, &ScriptedObject_enable_gravity_wrapper, 0);
5204 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5205 if(SQ_FAILED(sq_createslot(v, -3))) {
5206 throw SquirrelError(v, "Couldn't register function 'enable_gravity'");
5209 sq_pushstring(v, "gravity_enabled", -1);
5210 sq_newclosure(v, &ScriptedObject_gravity_enabled_wrapper, 0);
5211 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5212 if(SQ_FAILED(sq_createslot(v, -3))) {
5213 throw SquirrelError(v, "Couldn't register function 'gravity_enabled'");
5216 sq_pushstring(v, "set_visible", -1);
5217 sq_newclosure(v, &ScriptedObject_set_visible_wrapper, 0);
5218 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5219 if(SQ_FAILED(sq_createslot(v, -3))) {
5220 throw SquirrelError(v, "Couldn't register function 'set_visible'");
5223 sq_pushstring(v, "is_visible", -1);
5224 sq_newclosure(v, &ScriptedObject_is_visible_wrapper, 0);
5225 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5226 if(SQ_FAILED(sq_createslot(v, -3))) {
5227 throw SquirrelError(v, "Couldn't register function 'is_visible'");
5230 sq_pushstring(v, "set_solid", -1);
5231 sq_newclosure(v, &ScriptedObject_set_solid_wrapper, 0);
5232 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5233 if(SQ_FAILED(sq_createslot(v, -3))) {
5234 throw SquirrelError(v, "Couldn't register function 'set_solid'");
5237 sq_pushstring(v, "is_solid", -1);
5238 sq_newclosure(v, &ScriptedObject_is_solid_wrapper, 0);
5239 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5240 if(SQ_FAILED(sq_createslot(v, -3))) {
5241 throw SquirrelError(v, "Couldn't register function 'is_solid'");
5244 sq_pushstring(v, "get_name", -1);
5245 sq_newclosure(v, &ScriptedObject_get_name_wrapper, 0);
5246 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5247 if(SQ_FAILED(sq_createslot(v, -3))) {
5248 throw SquirrelError(v, "Couldn't register function 'get_name'");
5251 if(SQ_FAILED(sq_createslot(v, -3))) {
5252 throw SquirrelError(v, "Couldn't register class 'ScriptedObject'");
5255 // Register class SSector
5256 sq_pushstring(v, "SSector", -1);
5257 if(sq_newclass(v, SQFalse) < 0) {
5258 std::ostringstream msg;
5259 msg << "Couldn't create new class 'SSector'";
5260 throw SquirrelError(v, msg.str());
5262 sq_pushstring(v, "set_ambient_light", -1);
5263 sq_newclosure(v, &SSector_set_ambient_light_wrapper, 0);
5264 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnnn");
5265 if(SQ_FAILED(sq_createslot(v, -3))) {
5266 throw SquirrelError(v, "Couldn't register function 'set_ambient_light'");
5269 sq_pushstring(v, "get_ambient_red", -1);
5270 sq_newclosure(v, &SSector_get_ambient_red_wrapper, 0);
5271 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5272 if(SQ_FAILED(sq_createslot(v, -3))) {
5273 throw SquirrelError(v, "Couldn't register function 'get_ambient_red'");
5276 sq_pushstring(v, "get_ambient_green", -1);
5277 sq_newclosure(v, &SSector_get_ambient_green_wrapper, 0);
5278 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5279 if(SQ_FAILED(sq_createslot(v, -3))) {
5280 throw SquirrelError(v, "Couldn't register function 'get_ambient_green'");
5283 sq_pushstring(v, "get_ambient_blue", -1);
5284 sq_newclosure(v, &SSector_get_ambient_blue_wrapper, 0);
5285 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5286 if(SQ_FAILED(sq_createslot(v, -3))) {
5287 throw SquirrelError(v, "Couldn't register function 'get_ambient_blue'");
5290 sq_pushstring(v, "set_gravity", -1);
5291 sq_newclosure(v, &SSector_set_gravity_wrapper, 0);
5292 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5293 if(SQ_FAILED(sq_createslot(v, -3))) {
5294 throw SquirrelError(v, "Couldn't register function 'set_gravity'");
5297 if(SQ_FAILED(sq_createslot(v, -3))) {
5298 throw SquirrelError(v, "Couldn't register class 'SSector'");
5301 // Register class Text
5302 sq_pushstring(v, "Text", -1);
5303 if(sq_newclass(v, SQFalse) < 0) {
5304 std::ostringstream msg;
5305 msg << "Couldn't create new class 'Text'";
5306 throw SquirrelError(v, msg.str());
5308 sq_pushstring(v, "set_text", -1);
5309 sq_newclosure(v, &Text_set_text_wrapper, 0);
5310 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
5311 if(SQ_FAILED(sq_createslot(v, -3))) {
5312 throw SquirrelError(v, "Couldn't register function 'set_text'");
5315 sq_pushstring(v, "set_font", -1);
5316 sq_newclosure(v, &Text_set_font_wrapper, 0);
5317 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
5318 if(SQ_FAILED(sq_createslot(v, -3))) {
5319 throw SquirrelError(v, "Couldn't register function 'set_font'");
5322 sq_pushstring(v, "fade_in", -1);
5323 sq_newclosure(v, &Text_fade_in_wrapper, 0);
5324 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5325 if(SQ_FAILED(sq_createslot(v, -3))) {
5326 throw SquirrelError(v, "Couldn't register function 'fade_in'");
5329 sq_pushstring(v, "fade_out", -1);
5330 sq_newclosure(v, &Text_fade_out_wrapper, 0);
5331 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5332 if(SQ_FAILED(sq_createslot(v, -3))) {
5333 throw SquirrelError(v, "Couldn't register function 'fade_out'");
5336 sq_pushstring(v, "set_visible", -1);
5337 sq_newclosure(v, &Text_set_visible_wrapper, 0);
5338 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5339 if(SQ_FAILED(sq_createslot(v, -3))) {
5340 throw SquirrelError(v, "Couldn't register function 'set_visible'");
5343 sq_pushstring(v, "set_centered", -1);
5344 sq_newclosure(v, &Text_set_centered_wrapper, 0);
5345 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tb");
5346 if(SQ_FAILED(sq_createslot(v, -3))) {
5347 throw SquirrelError(v, "Couldn't register function 'set_centered'");
5350 sq_pushstring(v, "set_pos", -1);
5351 sq_newclosure(v, &Text_set_pos_wrapper, 0);
5352 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
5353 if(SQ_FAILED(sq_createslot(v, -3))) {
5354 throw SquirrelError(v, "Couldn't register function 'set_pos'");
5357 sq_pushstring(v, "get_pos_x", -1);
5358 sq_newclosure(v, &Text_get_pos_x_wrapper, 0);
5359 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5360 if(SQ_FAILED(sq_createslot(v, -3))) {
5361 throw SquirrelError(v, "Couldn't register function 'get_pos_x'");
5364 sq_pushstring(v, "get_pos_y", -1);
5365 sq_newclosure(v, &Text_get_pos_y_wrapper, 0);
5366 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5367 if(SQ_FAILED(sq_createslot(v, -3))) {
5368 throw SquirrelError(v, "Couldn't register function 'get_pos_y'");
5371 sq_pushstring(v, "set_anchor_point", -1);
5372 sq_newclosure(v, &Text_set_anchor_point_wrapper, 0);
5373 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
5374 if(SQ_FAILED(sq_createslot(v, -3))) {
5375 throw SquirrelError(v, "Couldn't register function 'set_anchor_point'");
5378 sq_pushstring(v, "get_anchor_point", -1);
5379 sq_newclosure(v, &Text_get_anchor_point_wrapper, 0);
5380 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5381 if(SQ_FAILED(sq_createslot(v, -3))) {
5382 throw SquirrelError(v, "Couldn't register function 'get_anchor_point'");
5385 if(SQ_FAILED(sq_createslot(v, -3))) {
5386 throw SquirrelError(v, "Couldn't register class 'Text'");
5389 // Register class Thunderstorm
5390 sq_pushstring(v, "Thunderstorm", -1);
5391 if(sq_newclass(v, SQFalse) < 0) {
5392 std::ostringstream msg;
5393 msg << "Couldn't create new class 'Thunderstorm'";
5394 throw SquirrelError(v, msg.str());
5396 sq_pushstring(v, "start", -1);
5397 sq_newclosure(v, &Thunderstorm_start_wrapper, 0);
5398 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5399 if(SQ_FAILED(sq_createslot(v, -3))) {
5400 throw SquirrelError(v, "Couldn't register function 'start'");
5403 sq_pushstring(v, "stop", -1);
5404 sq_newclosure(v, &Thunderstorm_stop_wrapper, 0);
5405 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5406 if(SQ_FAILED(sq_createslot(v, -3))) {
5407 throw SquirrelError(v, "Couldn't register function 'stop'");
5410 sq_pushstring(v, "thunder", -1);
5411 sq_newclosure(v, &Thunderstorm_thunder_wrapper, 0);
5412 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5413 if(SQ_FAILED(sq_createslot(v, -3))) {
5414 throw SquirrelError(v, "Couldn't register function 'thunder'");
5417 sq_pushstring(v, "lightning", -1);
5418 sq_newclosure(v, &Thunderstorm_lightning_wrapper, 0);
5419 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5420 if(SQ_FAILED(sq_createslot(v, -3))) {
5421 throw SquirrelError(v, "Couldn't register function 'lightning'");
5424 sq_pushstring(v, "flash", -1);
5425 sq_newclosure(v, &Thunderstorm_flash_wrapper, 0);
5426 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5427 if(SQ_FAILED(sq_createslot(v, -3))) {
5428 throw SquirrelError(v, "Couldn't register function 'flash'");
5431 sq_pushstring(v, "electrify", -1);
5432 sq_newclosure(v, &Thunderstorm_electrify_wrapper, 0);
5433 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5434 if(SQ_FAILED(sq_createslot(v, -3))) {
5435 throw SquirrelError(v, "Couldn't register function 'electrify'");
5438 if(SQ_FAILED(sq_createslot(v, -3))) {
5439 throw SquirrelError(v, "Couldn't register class 'Thunderstorm'");
5442 // Register class TileMap
5443 sq_pushstring(v, "TileMap", -1);
5444 if(sq_newclass(v, SQFalse) < 0) {
5445 std::ostringstream msg;
5446 msg << "Couldn't create new class 'TileMap'";
5447 throw SquirrelError(v, msg.str());
5449 sq_pushstring(v, "goto_node", -1);
5450 sq_newclosure(v, &TileMap_goto_node_wrapper, 0);
5451 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
5452 if(SQ_FAILED(sq_createslot(v, -3))) {
5453 throw SquirrelError(v, "Couldn't register function 'goto_node'");
5456 sq_pushstring(v, "start_moving", -1);
5457 sq_newclosure(v, &TileMap_start_moving_wrapper, 0);
5458 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5459 if(SQ_FAILED(sq_createslot(v, -3))) {
5460 throw SquirrelError(v, "Couldn't register function 'start_moving'");
5463 sq_pushstring(v, "stop_moving", -1);
5464 sq_newclosure(v, &TileMap_stop_moving_wrapper, 0);
5465 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5466 if(SQ_FAILED(sq_createslot(v, -3))) {
5467 throw SquirrelError(v, "Couldn't register function 'stop_moving'");
5470 sq_pushstring(v, "fade", -1);
5471 sq_newclosure(v, &TileMap_fade_wrapper, 0);
5472 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tnn");
5473 if(SQ_FAILED(sq_createslot(v, -3))) {
5474 throw SquirrelError(v, "Couldn't register function 'fade'");
5477 sq_pushstring(v, "set_alpha", -1);
5478 sq_newclosure(v, &TileMap_set_alpha_wrapper, 0);
5479 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|tn");
5480 if(SQ_FAILED(sq_createslot(v, -3))) {
5481 throw SquirrelError(v, "Couldn't register function 'set_alpha'");
5484 sq_pushstring(v, "get_alpha", -1);
5485 sq_newclosure(v, &TileMap_get_alpha_wrapper, 0);
5486 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5487 if(SQ_FAILED(sq_createslot(v, -3))) {
5488 throw SquirrelError(v, "Couldn't register function 'get_alpha'");
5491 if(SQ_FAILED(sq_createslot(v, -3))) {
5492 throw SquirrelError(v, "Couldn't register class 'TileMap'");
5495 // Register class WillOWisp
5496 sq_pushstring(v, "WillOWisp", -1);
5497 if(sq_newclass(v, SQFalse) < 0) {
5498 std::ostringstream msg;
5499 msg << "Couldn't create new class 'WillOWisp'";
5500 throw SquirrelError(v, msg.str());
5502 sq_pushstring(v, "goto_node", -1);
5503 sq_newclosure(v, &WillOWisp_goto_node_wrapper, 0);
5504 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ti");
5505 if(SQ_FAILED(sq_createslot(v, -3))) {
5506 throw SquirrelError(v, "Couldn't register function 'goto_node'");
5509 sq_pushstring(v, "set_state", -1);
5510 sq_newclosure(v, &WillOWisp_set_state_wrapper, 0);
5511 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|ts");
5512 if(SQ_FAILED(sq_createslot(v, -3))) {
5513 throw SquirrelError(v, "Couldn't register function 'set_state'");
5516 sq_pushstring(v, "start_moving", -1);
5517 sq_newclosure(v, &WillOWisp_start_moving_wrapper, 0);
5518 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5519 if(SQ_FAILED(sq_createslot(v, -3))) {
5520 throw SquirrelError(v, "Couldn't register function 'start_moving'");
5523 sq_pushstring(v, "stop_moving", -1);
5524 sq_newclosure(v, &WillOWisp_stop_moving_wrapper, 0);
5525 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5526 if(SQ_FAILED(sq_createslot(v, -3))) {
5527 throw SquirrelError(v, "Couldn't register function 'stop_moving'");
5530 if(SQ_FAILED(sq_createslot(v, -3))) {
5531 throw SquirrelError(v, "Couldn't register class 'WillOWisp'");
5534 // Register class Wind
5535 sq_pushstring(v, "Wind", -1);
5536 if(sq_newclass(v, SQFalse) < 0) {
5537 std::ostringstream msg;
5538 msg << "Couldn't create new class 'Wind'";
5539 throw SquirrelError(v, msg.str());
5541 sq_pushstring(v, "start", -1);
5542 sq_newclosure(v, &Wind_start_wrapper, 0);
5543 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5544 if(SQ_FAILED(sq_createslot(v, -3))) {
5545 throw SquirrelError(v, "Couldn't register function 'start'");
5548 sq_pushstring(v, "stop", -1);
5549 sq_newclosure(v, &Wind_stop_wrapper, 0);
5550 sq_setparamscheck(v, SQ_MATCHTYPEMASKSTRING, "x|t");
5551 if(SQ_FAILED(sq_createslot(v, -3))) {
5552 throw SquirrelError(v, "Couldn't register function 'stop'");
5555 if(SQ_FAILED(sq_createslot(v, -3))) {
5556 throw SquirrelError(v, "Couldn't register class 'Wind'");
5561 } // namespace scripting