… | |
… | |
1027 | |
1027 | |
1028 | /* Now process op */ |
1028 | /* Now process op */ |
1029 | if (QUERY_FLAG (op, FLAG_FREED)) |
1029 | if (QUERY_FLAG (op, FLAG_FREED)) |
1030 | { |
1030 | { |
1031 | LOG (llevError, "BUG: process_events(): Free object on list\n"); |
1031 | LOG (llevError, "BUG: process_events(): Free object on list\n"); |
1032 | op->speed = 0; |
1032 | op->set_speed (0); |
1033 | update_ob_speed (op); |
|
|
1034 | continue; |
1033 | continue; |
1035 | } |
1034 | } |
1036 | |
1035 | |
1037 | /* I've seen occasional crashes due to this - the object is removed, |
1036 | /* I've seen occasional crashes due to this - the object is removed, |
1038 | * and thus the map it points to (last map it was on) may be bogus |
1037 | * and thus the map it points to (last map it was on) may be bogus |
… | |
… | |
1056 | |
1055 | |
1057 | if (!op->speed) |
1056 | if (!op->speed) |
1058 | { |
1057 | { |
1059 | LOG (llevError, "BUG: process_events(): Object %s has no speed, " |
1058 | LOG (llevError, "BUG: process_events(): Object %s has no speed, " |
1060 | "but is on active list\n", &op->arch->name); |
1059 | "but is on active list\n", &op->arch->name); |
1061 | update_ob_speed (op); |
1060 | op->set_speed (0); |
1062 | continue; |
1061 | continue; |
1063 | } |
1062 | } |
1064 | |
1063 | |
1065 | if (op->map == NULL && op->env == NULL && op->name && op->type != MAP) |
1064 | if (op->map == NULL && op->env == NULL && op->name && op->type != MAP) |
1066 | { |
1065 | { |
1067 | LOG (llevError, "BUG: process_events(): Object without map or " |
1066 | LOG (llevError, "BUG: process_events(): Object without map or " |
1068 | "inventory is on active list: %s (%d)\n", &op->name, op->count); |
1067 | "inventory is on active list: %s (%d)\n", &op->name, op->count); |
1069 | op->speed = 0; |
1068 | op->set_speed (0); |
1070 | update_ob_speed (op); |
|
|
1071 | continue; |
1069 | continue; |
1072 | } |
1070 | } |
1073 | |
1071 | |
1074 | /* Animate the object. Bug or feature that anim_speed |
1072 | /* Animate the object. Bug or feature that anim_speed |
1075 | * is based on ticks, and not the creatures speed? |
1073 | * is based on ticks, and not the creatures speed? |