reverted old z-order

svn-id: r45946
This commit is contained in:
Vladimir Menshakov 2009-11-17 07:44:40 +00:00
parent 61ed19f892
commit b0ca65a9a8

View File

@ -581,6 +581,58 @@ bool Scene::render(OSystem *system) {
}
}
for (byte i = 0; i < 4; ++i) {
Animation *a = custom_animation + i;
Surface *s = a->currentFrame();
if (s != NULL) {
if (!a->ignore)
busy = true;
else
busy = false;
if (!a->paused && !a->loop)
got_any_animation = true;
} else {
a = animation + i;
if (!custom_animation[i].empty()) {
debug(0, "custom animation ended, restart animation in the same slot.");
custom_animation[i].free();
a->restart();
}
s = a->currentFrame();
}
if (current_event.type == SceneEvent::kWaitLanAnimationFrame && current_event.slot == i) {
if (s == NULL) {
restart |= nextEvent();
continue;
}
int index = a->currentIndex();
if (index == current_event.animation) {
debug(0, "kWaitLanAnimationFrame(%d, %d) complete", current_event.slot, current_event.animation);
restart |= nextEvent();
}
}
if (s == NULL)
continue;
if (debug_features.feature[DebugFeatures::kShowLan])
animation_position[i] = s->render(surface);
if (a->id == 0)
continue;
Object *obj = getObject(a->id);
if (obj != NULL) {
obj->rect.left = s->x;
obj->rect.top = s->y;
obj->rect.right = s->w + s->x;
obj->rect.bottom = s->h + s->y;
obj->rect.save();
//obj->dump();
}
}
{
Surface *mark = actor_animation.currentFrame();
if (mark != NULL) {
@ -635,7 +687,6 @@ bool Scene::render(OSystem *system) {
}
}
//render on
if (on.pixels != NULL && debug_features.feature[DebugFeatures::kShowOn]) {
if (_id != 16 || getOns(16)[0] != 0) {
@ -643,60 +694,6 @@ bool Scene::render(OSystem *system) {
}
}
for (byte i = 0; i < 4; ++i) {
Animation *a = custom_animation + i;
Surface *s = a->currentFrame();
if (s != NULL) {
if (!a->ignore)
busy = true;
else
busy = false;
if (!a->paused && !a->loop)
got_any_animation = true;
} else {
a = animation + i;
if (!custom_animation[i].empty()) {
debug(0, "custom animation ended, restart animation in the same slot.");
custom_animation[i].free();
a->restart();
}
s = a->currentFrame();
}
if (current_event.type == SceneEvent::kWaitLanAnimationFrame && current_event.slot == i) {
if (s == NULL) {
restart |= nextEvent();
continue;
}
int index = a->currentIndex();
if (index == current_event.animation) {
debug(0, "kWaitLanAnimationFrame(%d, %d) complete", current_event.slot, current_event.animation);
restart |= nextEvent();
}
}
if (s == NULL)
continue;
if (debug_features.feature[DebugFeatures::kShowLan])
animation_position[i] = s->render(surface);
if (a->id == 0)
continue;
Object *obj = getObject(a->id);
if (obj != NULL) {
obj->rect.left = s->x;
obj->rect.top = s->y;
obj->rect.right = s->w + s->x;
obj->rect.bottom = s->h + s->y;
obj->rect.save();
//obj->dump();
}
}
if (!message.empty()) {
bool visible = true;
if (message_first_frame != 0 && message_animation != NULL) {