Nessuna descrizione

custom_specials.c 641B

12345678910111213141516171819202122232425262728293031323334
  1. #include <bpre.h>
  2. #include "cutscene_meteor.h"
  3. #include "camera_move.h"
  4. #include <debug.h>
  5. void dns_switch()
  6. {
  7. volatile u8* test_pointer = (u8*) (0x0203FAB0);
  8. *(test_pointer+1) = (*(test_pointer+1) == 3 ? 0 : (*(test_pointer+1)) + 1);
  9. *test_pointer = 1;
  10. }
  11. void init_script()
  12. {
  13. for(u16 i = 0x1000; i < 0x1800; ++i)
  14. {
  15. clear_flag(i);
  16. }
  17. }
  18. static callback special_routines[5] = {
  19. play_meteor,
  20. sp_move_camera,
  21. init_script,
  22. some_test,
  23. dns_switch,
  24. };
  25. void special_asm() //special 0x68
  26. {
  27. u16* var_special = var_access(CALLASM_VAR);
  28. special_routines[*var_special]();
  29. }