… | |
… | |
230 | float ACC (RW, move_slow_penalty); /* How much this slows down the object */ |
230 | float ACC (RW, move_slow_penalty); /* How much this slows down the object */ |
231 | }; |
231 | }; |
232 | |
232 | |
233 | struct object : zero_initialised, object_keep, object_copy, object_pod |
233 | struct object : zero_initialised, object_keep, object_copy, object_pod |
234 | { |
234 | { |
|
|
235 | typedef unordered_vector<object *> vector; |
|
|
236 | |
|
|
237 | static vector mortals; |
|
|
238 | static vector active; // active objects, not yet used |
|
|
239 | static vector objects; // not used yet, use first->next->... |
|
|
240 | static object *first; // will be replaced by "objects" |
|
|
241 | |
235 | static object *create (); |
242 | static object *create (); |
236 | void free (bool free_inventory = false); |
243 | void free (bool free_inventory = false); |
237 | |
244 | |
238 | static void free_mortals (); |
245 | static void free_mortals (); |
239 | static bool can_merge (object *op1, object *op2); |
246 | static bool can_merge (object *op1, object *op2); |