Bez popisu

crystal_fade.c 836B

12345678910111213141516171819202122232425262728293031
  1. #include <pokeagb/pokeagb.h>
  2. #define CRYSTAL_MAX_INTENSITY 5
  3. #define CRYSTAL_SPEED 1
  4. void task_fade_flash(u8 id) {
  5. switch (tasks[id].priv[1]) {
  6. case 0:
  7. fade_screen(0xFFFFFFFF, CRYSTAL_SPEED, 0, CRYSTAL_MAX_INTENSITY, tasks[id].priv[0]);
  8. tasks[id].priv[1]++;
  9. break;
  10. case 1:
  11. if (!pal_fade_control.active) {
  12. fade_screen(0xFFFFFFFF, CRYSTAL_SPEED, CRYSTAL_MAX_INTENSITY, 0, tasks[id].priv[0]);
  13. tasks[id].priv[1]++;
  14. }
  15. break;
  16. case 2:
  17. if (!pal_fade_control.active) {
  18. task_del(id);
  19. script_env_2_enable_and_set_ctx_running();
  20. }
  21. break;
  22. }
  23. }
  24. void sp_crystal_fade(void) {
  25. u16 color = var_8000;
  26. u8 t_id = task_add(task_fade_flash, 1);
  27. tasks[t_id].priv[0] = color;
  28. }