… | |
… | |
246 | static bool can_merge (object *op1, object *op2); |
246 | static bool can_merge (object *op1, object *op2); |
247 | |
247 | |
248 | void clear (); |
248 | void clear (); |
249 | void clone (object *destination); |
249 | void clone (object *destination); |
250 | |
250 | |
|
|
251 | bool destroyed () { return QUERY_FLAG (this, FLAG_FREED); } |
|
|
252 | |
251 | void instantiate () |
253 | void instantiate () |
252 | { |
254 | { |
253 | if (!uuid.seq) // HACK |
255 | if (!uuid.seq) // HACK |
254 | uuid = gen_uuid (); |
256 | uuid = gen_uuid (); |
255 | |
257 | |
… | |
… | |
350 | struct archetype : zero_initialised |
352 | struct archetype : zero_initialised |
351 | { |
353 | { |
352 | archetype (); |
354 | archetype (); |
353 | ~archetype (); |
355 | ~archetype (); |
354 | |
356 | |
|
|
357 | static archetype *find (const char *arch); |
|
|
358 | |
355 | shstr ACC (RW, name); /* More definite name, like "generate_kobold" */ |
359 | shstr ACC (RW, name); /* More definite name, like "generate_kobold" */ |
356 | struct archetype *ACC (RW, next); /* Next archetype in a linked list */ |
360 | struct archetype *ACC (RW, next); /* Next archetype in a linked list */ |
357 | struct archetype *ACC (RW, head); /* The main part of a linked object */ |
361 | struct archetype *ACC (RW, head); /* The main part of a linked object */ |
358 | struct archetype *ACC (RW, more); /* Next part of a linked object */ |
362 | struct archetype *ACC (RW, more); /* Next part of a linked object */ |
359 | object ACC (RO, clone); /* An object from which to do copy_object() */ |
363 | object ACC (RO, clone); /* An object from which to do copy_object() */ |
360 | uint32 ACC (RW, editable); /* editable flags (mainly for editor) */ |
364 | uint32 ACC (RW, editable); /* editable flags (mainly for editor) */ |
361 | sint8 ACC (RW, tail_x), ACC (RW, tail_y); /* Where the lower right most portion of the object is |
365 | sint8 ACC (RW, tail_x), ACC (RW, tail_y); /* Where the lower right most portion of the object is |
362 | * in comparison to the head. |
366 | * in comparison to the head. |
363 | */ |
367 | */ |
364 | }; |
368 | }; |
365 | |
369 | |
366 | extern object *objects; |
370 | extern object *objects; |
367 | extern object *active_objects; |
371 | extern object *active_objects; |
368 | |
372 | |