When converting object_rw to object, recompute gun points for CT_CNTRLCEN as they are now part of object and not globals anymore
This commit is contained in:
parent
cf31923266
commit
df5d4196e7
|
@ -75,6 +75,7 @@ extern void do_controlcen_frame(object *obj);
|
|||
// Initialize control center for a level.
|
||||
// Call when a new level is started.
|
||||
extern void init_controlcen_for_level(void);
|
||||
extern void calc_controlcen_gun_point(reactor *reactor, object *obj,int gun_num);
|
||||
|
||||
extern void do_controlcen_destroyed_stuff(object *objp);
|
||||
extern void do_controlcen_dead_frame(void);
|
||||
|
|
|
@ -4086,6 +4086,15 @@ void multi_object_rw_to_object(object_rw *obj_rw, object *obj)
|
|||
case CT_POWERUP:
|
||||
obj->ctype.powerup_info.count = obj_rw->ctype.powerup_info.count;
|
||||
break;
|
||||
case CT_CNTRLCEN:
|
||||
{
|
||||
// gun points of reactor now part of the object but of course not saved in object_rw. Let's just recompute them.
|
||||
int i = 0;
|
||||
reactor *reactor = get_reactor_definition(obj->id);
|
||||
for (i=0; i<reactor->n_guns; i++)
|
||||
calc_controlcen_gun_point(reactor, obj, i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
switch (obj->render_type)
|
||||
|
|
|
@ -359,6 +359,15 @@ void state_object_rw_to_object(object_rw *obj_rw, object *obj)
|
|||
case CT_POWERUP:
|
||||
obj->ctype.powerup_info.count = obj_rw->ctype.powerup_info.count;
|
||||
break;
|
||||
case CT_CNTRLCEN:
|
||||
{
|
||||
// gun points of reactor now part of the object but of course not saved in object_rw and overwritten due to reset_objects(). Let's just recompute them.
|
||||
int i = 0;
|
||||
reactor *reactor = get_reactor_definition(obj->id);
|
||||
for (i=0; i<reactor->n_guns; i++)
|
||||
calc_controlcen_gun_point(reactor, obj, i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
switch (obj->render_type)
|
||||
|
|
Loading…
Reference in a new issue