mirror of
https://github.com/zeldaret/oot
synced 2026-05-27 08:08:42 -04:00
28cc9d68cf
* z64 - a * z64 - b * z64 - c * z64 - d * z64 - e * z64 - f * z64 - g * z64 - h * z64 - i * z64 - l * z64 - m * z64 - o * z64 - p * z64 - q * z64 - r * z64 - s * z64 - t * z64 - v * restore file * fix merge * fix merge --------- Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
37 lines
799 B
C
37 lines
799 B
C
#include "array_count.h"
|
|
#include "ultra64.h"
|
|
#include "cutscene_flags.h"
|
|
#include "play_state.h"
|
|
|
|
void CutsceneFlags_UnsetAll(PlayState* play) {
|
|
u8 i;
|
|
|
|
for (i = 0; i < ARRAY_COUNT(play->cutsceneFlags); i++) {
|
|
play->cutsceneFlags[i] = 0;
|
|
}
|
|
}
|
|
|
|
void CutsceneFlags_Set(PlayState* play, s16 flag) {
|
|
s16 index = flag / 16;
|
|
s16 bit = flag % 16;
|
|
s16 mask = 1 << bit;
|
|
|
|
play->cutsceneFlags[index] |= mask;
|
|
}
|
|
|
|
void CutsceneFlags_Unset(PlayState* play, s16 flag) {
|
|
s16 index = flag / 16;
|
|
s16 bit = flag % 16;
|
|
s16 mask = (1 << bit) ^ 0xFFFF;
|
|
|
|
play->cutsceneFlags[index] &= mask;
|
|
}
|
|
|
|
s32 CutsceneFlags_Get(PlayState* play, s16 flag) {
|
|
s16 index = flag / 16;
|
|
s16 bit = flag % 16;
|
|
s16 mask = 1 << bit;
|
|
|
|
return play->cutsceneFlags[index] & mask;
|
|
}
|