projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed bug when handling init and anim events for global animations
[rocksndiamonds.git]
/
src
/
anim.c
diff --git
a/src/anim.c
b/src/anim.c
index 219c79fd4c97b88ff074a77db45fee1052a25672..a20ee4a3153c7881e9235b6c852f448a2ff83976 100644
(file)
--- a/
src/anim.c
+++ b/
src/anim.c
@@
-1210,24
+1210,32
@@
static boolean checkGlobalAnimEvent(int anim_event, int mask)
static boolean isClickablePart(struct GlobalAnimPartControlInfo *part, int mask)
{
struct GraphicInfo *c = &part->control_info;
static boolean isClickablePart(struct GlobalAnimPartControlInfo *part, int mask)
{
struct GraphicInfo *c = &part->control_info;
- int num_init_events = GetGlobalAnimEventValueCount(c->init_event);
- int num_anim_events = GetGlobalAnimEventValueCount(c->anim_event);
int i;
int i;
-
for (i = 0; i < num_init_events; i++
)
+
if (part->init_event_state
)
{
{
- int init_event = GetGlobalAnimEventValue(c->init_event, i);
+ int num_init_events = GetGlobalAnimEventValueCount(c->init_event);
+
+ for (i = 0; i < num_init_events; i++)
+ {
+ int init_event = GetGlobalAnimEventValue(c->init_event, i);
- if (checkGlobalAnimEvent(init_event, mask))
- return TRUE;
+ if (checkGlobalAnimEvent(init_event, mask))
+ return TRUE;
+ }
}
}
-
for (i = 0; i < num_anim_events; i++
)
+
if (part->anim_event_state
)
{
{
- int
anim_event = GetGlobalAnimEventValue(c->anim_event, i
);
+ int
num_anim_events = GetGlobalAnimEventValueCount(c->anim_event
);
- if (checkGlobalAnimEvent(anim_event, mask))
- return TRUE;
+ for (i = 0; i < num_anim_events; i++)
+ {
+ int anim_event = GetGlobalAnimEventValue(c->anim_event, i);
+
+ if (checkGlobalAnimEvent(anim_event, mask))
+ return TRUE;
+ }
}
return FALSE;
}
return FALSE;