X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fanim.c;h=1215f1ca7f1f66d5b9def641e54386a789831e91;hb=12a8fd3a64d6bee5ca5f5b89e4a00b49d78bbd2c;hp=b79d5cc6f6a0089b56cab8b21ab0ed8e17b4324e;hpb=115ce6f2da1914d68b0fe0e5f9082973190dacdd;p=rocksndiamonds.git diff --git a/src/anim.c b/src/anim.c index b79d5cc6..1215f1ca 100644 --- a/src/anim.c +++ b/src/anim.c @@ -18,11 +18,11 @@ #include "screens.h" -/* values for global toon animation definition */ +// values for global toon animation definition #define NUM_GLOBAL_TOON_ANIMS 1 #define NUM_GLOBAL_TOON_PARTS MAX_NUM_TOONS -/* values for global animation definition (including toons) */ +// values for global animation definition (including toons) #define NUM_GLOBAL_ANIMS_AND_TOONS (NUM_GLOBAL_ANIMS + \ NUM_GLOBAL_TOON_ANIMS) #define NUM_GLOBAL_ANIM_PARTS_AND_TOONS MAX(NUM_GLOBAL_ANIM_PARTS_ALL, \ @@ -58,13 +58,13 @@ ANIM_CLASS_MENU | \ ANIM_CLASS_SUBMENU) -/* values for global animation states */ +// values for global animation states #define ANIM_STATE_INACTIVE 0 #define ANIM_STATE_RESTART (1 << 0) #define ANIM_STATE_WAITING (1 << 1) #define ANIM_STATE_RUNNING (1 << 2) -/* values for global animation control */ +// values for global animation control #define ANIM_NO_ACTION 0 #define ANIM_START 1 #define ANIM_CONTINUE 2 @@ -195,7 +195,7 @@ struct AnimClassGameMode { -1, -1 } }; -/* forward declaration for internal use */ +// forward declaration for internal use static void HandleGlobalAnim(int, int); static void DoAnimationExt(void); static void ResetGlobalAnim_Clickable(void); @@ -215,9 +215,9 @@ static int anim_classes_last = ANIM_CLASS_NONE; static boolean drawing_to_fading_buffer = FALSE; -/* ========================================================================= */ -/* generic animation frame calculation */ -/* ========================================================================= */ +// ============================================================================ +// generic animation frame calculation +// ============================================================================ int getAnimationFrame(int num_frames, int delay, int mode, int start_frame, int sync_frame) @@ -226,34 +226,34 @@ int getAnimationFrame(int num_frames, int delay, int mode, int start_frame, sync_frame += start_frame * delay; - if (mode & ANIM_LOOP) /* looping animation */ + if (mode & ANIM_LOOP) // looping animation { frame = (sync_frame % (delay * num_frames)) / delay; } - else if (mode & ANIM_LINEAR) /* linear (non-looping) animation */ + else if (mode & ANIM_LINEAR) // linear (non-looping) animation { frame = sync_frame / delay; if (frame > num_frames - 1) frame = num_frames - 1; } - else if (mode & ANIM_PINGPONG) /* oscillate (border frames once) */ + else if (mode & ANIM_PINGPONG) // oscillate (border frames once) { int max_anim_frames = (num_frames > 1 ? 2 * num_frames - 2 : 1); frame = (sync_frame % (delay * max_anim_frames)) / delay; frame = (frame < num_frames ? frame : max_anim_frames - frame); } - else if (mode & ANIM_PINGPONG2) /* oscillate (border frames twice) */ + else if (mode & ANIM_PINGPONG2) // oscillate (border frames twice) { int max_anim_frames = 2 * num_frames; frame = (sync_frame % (delay * max_anim_frames)) / delay; frame = (frame < num_frames ? frame : max_anim_frames - frame - 1); } - else if (mode & ANIM_RANDOM) /* play frames in random order */ + else if (mode & ANIM_RANDOM) // play frames in random order { - /* note: expect different frames for the same delay cycle! */ + // note: expect different frames for the same delay cycle! if (gfx.anim_random_frame < 0) frame = GetSimpleRandom(num_frames); @@ -265,16 +265,16 @@ int getAnimationFrame(int num_frames, int delay, int mode, int start_frame, frame = sync_frame % num_frames; } - if (mode & ANIM_REVERSE) /* use reverse animation direction */ + if (mode & ANIM_REVERSE) // use reverse animation direction frame = num_frames - frame - 1; return frame; } -/* ========================================================================= */ -/* global animation functions */ -/* ========================================================================= */ +// ============================================================================ +// global animation functions +// ============================================================================ static int getGlobalAnimationPart(struct GlobalAnimMainControlInfo *anim) { @@ -407,7 +407,7 @@ static void InitToonControls(void) ctrl->num_anims++; } -void InitGlobalAnimControls(void) +static void InitGlobalAnimControls(void) { int i, m, a, p; int mode_nr, anim_nr, part_nr; @@ -530,12 +530,12 @@ void InitGlobalAnimControls(void) InitToonControls(); - /* sort all animations according to draw_order and animation number */ + // sort all animations according to draw_order and animation number for (m = 0; m < NUM_GAME_MODES; m++) { struct GlobalAnimControlInfo *ctrl = &global_anim_ctrl[m]; - /* sort all main animations for this game mode */ + // sort all main animations for this game mode qsort(ctrl->anim, ctrl->num_anims, sizeof(struct GlobalAnimMainControlInfo), compareGlobalAnimMainControlInfo); @@ -544,7 +544,7 @@ void InitGlobalAnimControls(void) { struct GlobalAnimMainControlInfo *anim = &ctrl->anim[a]; - /* sort all animation parts for this main animation */ + // sort all animation parts for this main animation qsort(anim->part, anim->num_parts, sizeof(struct GlobalAnimPartControlInfo), compareGlobalAnimPartControlInfo); @@ -573,7 +573,7 @@ void InitGlobalAnimations(void) InitGlobalAnimControls(); } -void DrawGlobalAnimationsExt(int drawing_target, int drawing_stage) +static void DrawGlobalAnimationsExt(int drawing_target, int drawing_stage) { Bitmap *fade_bitmap = (drawing_target == DRAW_TO_FADE_SOURCE ? gfx.fade_bitmap_source : @@ -806,7 +806,7 @@ void DrawGlobalAnimations(int drawing_target, int drawing_stage) ResetGlobalAnim_Clicked(); } -boolean SetGlobalAnimPart_Viewport(struct GlobalAnimPartControlInfo *part) +static boolean SetGlobalAnimPart_Viewport(struct GlobalAnimPartControlInfo *part) { int viewport_x; int viewport_y; @@ -1035,7 +1035,8 @@ static boolean clickConsumed(struct GlobalAnimPartControlInfo *part) return (part->control_info.style & STYLE_PASSTHROUGH ? FALSE : TRUE); } -int HandleGlobalAnim_Part(struct GlobalAnimPartControlInfo *part, int state) +static int HandleGlobalAnim_Part(struct GlobalAnimPartControlInfo *part, + int state) { struct GlobalAnimControlInfo *ctrl = &global_anim_ctrl[part->mode_nr]; struct GlobalAnimMainControlInfo *anim = &ctrl->anim[part->anim_nr]; @@ -1279,7 +1280,8 @@ int HandleGlobalAnim_Part(struct GlobalAnimPartControlInfo *part, int state) return ANIM_STATE_RUNNING; } -void HandleGlobalAnim_Main(struct GlobalAnimMainControlInfo *anim, int action) +static void HandleGlobalAnim_Main(struct GlobalAnimMainControlInfo *anim, + int action) { struct GlobalAnimPartControlInfo *part; struct GraphicInfo *c = &anim->control_info; @@ -1431,7 +1433,7 @@ void HandleGlobalAnim_Main(struct GlobalAnimMainControlInfo *anim, int action) anim->last_active_part_nr = active_part_nr; } -void HandleGlobalAnim_Mode(struct GlobalAnimControlInfo *ctrl, int action) +static void HandleGlobalAnim_Mode(struct GlobalAnimControlInfo *ctrl, int action) { int i; @@ -1660,7 +1662,7 @@ boolean HandleGlobalAnimClicks(int mx, int my, int button) boolean release_event; boolean click_consumed_current = click_consumed; - /* check if button state has changed since last invocation */ + // check if button state has changed since last invocation press_event = (button != 0 && last_button == 0); release_event = (button == 0 && last_button != 0); last_button = button;