… | |
… | |
1100 | |
1100 | |
1101 | void |
1101 | void |
1102 | process_events (mapstruct *map) |
1102 | process_events (mapstruct *map) |
1103 | { |
1103 | { |
1104 | object *op; |
1104 | object *op; |
1105 | tag_t tag; |
|
|
1106 | |
1105 | |
1107 | static object *marker; |
1106 | static object *marker; |
1108 | |
|
|
1109 | if (!marker) |
1107 | if (!marker) |
1110 | marker = get_object (); |
1108 | marker = get_object (); |
1111 | |
1109 | |
1112 | process_players1 (map); |
1110 | process_players1 (map); |
1113 | |
1111 | |
… | |
… | |
1120 | active_objects = marker; |
1118 | active_objects = marker; |
1121 | |
1119 | |
1122 | while (marker->active_next) |
1120 | while (marker->active_next) |
1123 | { |
1121 | { |
1124 | op = marker->active_next; |
1122 | op = marker->active_next; |
1125 | tag = op->count; |
|
|
1126 | |
1123 | |
1127 | /* Move marker forward - swap op and marker */ |
1124 | /* Move marker forward - swap op and marker */ |
1128 | op->active_prev = marker->active_prev; |
1125 | op->active_prev = marker->active_prev; |
1129 | |
1126 | |
1130 | if (op->active_prev) |
1127 | if (op->active_prev) |
… | |
… | |
1217 | LOG (llevDebug, "process_events: calling process_object with removed object %s\n", op->name ? op->name : "null"); |
1214 | LOG (llevDebug, "process_events: calling process_object with removed object %s\n", op->name ? op->name : "null"); |
1218 | } |
1215 | } |
1219 | #endif |
1216 | #endif |
1220 | --op->speed_left; |
1217 | --op->speed_left; |
1221 | process_object (op); |
1218 | process_object (op); |
|
|
1219 | |
1222 | if (was_destroyed (op, tag)) |
1220 | if (op->destroyed ()) |
1223 | continue; |
1221 | continue; |
1224 | } |
1222 | } |
|
|
1223 | |
1225 | if (settings.casting_time == TRUE && op->casting_time > 0) |
1224 | if (settings.casting_time == TRUE && op->casting_time > 0) |
1226 | op->casting_time--; |
1225 | op->casting_time--; |
|
|
1226 | |
1227 | if (op->speed_left <= 0) |
1227 | if (op->speed_left <= 0) |
1228 | op->speed_left += FABS (op->speed); |
1228 | op->speed_left += FABS (op->speed); |
1229 | } |
1229 | } |
1230 | |
1230 | |
1231 | /* Remove marker object from active list */ |
1231 | /* Remove marker object from active list */ |