Mercurial > hg > dmlib
comparison jssplr.c @ 220:b0407a4c0a11
Simplify frame finding in envelope update function.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sun, 07 Oct 2012 23:24:08 +0300 |
parents | b4eb9b59fef3 |
children | 5c36aff80205 |
comparison
equal
deleted
inserted
replaced
219:b4eb9b59fef3 | 220:b0407a4c0a11 |
---|---|
131 } | 131 } |
132 | 132 |
133 | 133 |
134 static BOOL jmpExecEnvelope(JSSEnvelope *env, JSSPlayerEnvelope *pe, BOOL keyOff) | 134 static BOOL jmpExecEnvelope(JSSEnvelope *env, JSSPlayerEnvelope *pe, BOOL keyOff) |
135 { | 135 { |
136 int point = 0; | 136 int point; |
137 | 137 |
138 if (!pe->exec) | 138 if (!pe->exec) |
139 return FALSE; | 139 return FALSE; |
140 | 140 |
141 // Find current point, if not last point | 141 // Find current point, if not last point |
142 while (point < env->npoints - 1) | 142 for (point = 0; point < env->npoints - 1; point++) |
143 { | 143 { |
144 if (pe->frame >= env->points[point + 1].frame) | 144 if (pe->frame < env->points[point + 1].frame) |
145 point++; | |
146 else | |
147 break; | 145 break; |
148 } | 146 } |
149 | 147 |
150 if (env->flags & jenvfLooped && pe->frame >= env->points[env->loopE].frame) | 148 if (env->flags & jenvfLooped && pe->frame >= env->points[env->loopE].frame) |
151 { | 149 { |