Skip to content

Commit

Permalink
Fixed: After a mimic sector, it was not possible for that sector to t…
Browse files Browse the repository at this point in the history
…hen support a special thinker of any description (if the source of the mimic had a thinker at the time P_CopySector() is called). Basically, do NOT copy xsector->specialdata.

This poses the question: when mimicking a sector, should any active special thinkers be copied also? Currently the engine-side speed and target properties for the planes ARE copied but since there is no thinker for the mimic target, they will never move.

If so, we need to handle this correctly (stopping any existing thinker and then create a copy of the one used for the source of the mimic). This in turn poses another question: Should the properties of the new thinker be re-evaluated at the time of the mimic or should they be direct copies of those of the mimicked thinker (this could lead to floors/ceilings moving onto the other side of one another)?

Any thoughts?
  • Loading branch information
danij committed Mar 19, 2007
1 parent a3773e1 commit 5be29df
Showing 1 changed file with 0 additions and 4 deletions.
4 changes: 0 additions & 4 deletions doomsday/plugins/common/src/dmu_lib.c
Expand Up @@ -237,10 +237,8 @@ void P_CopySector(sector_t* from, sector_t* to)
// Copy the extended properties too
#if __JDOOM__ || __JHERETIC__
xto->special = xfrom->special;
//xto->tag = xfrom->tag;
xto->soundtraversed = xfrom->soundtraversed;
xto->soundtarget = xfrom->soundtarget;
xto->specialdata = xfrom->specialdata;
#if __JHERETIC__
xto->seqType = xfrom->seqType;
#endif
Expand All @@ -251,11 +249,9 @@ void P_CopySector(sector_t* from, sector_t* to)
xto->xg = xfrom->xg;
#else
xto->special = xfrom->special;
//xto->tag = xfrom->tag;
xto->soundtraversed = xfrom->soundtraversed;
xto->soundtarget = xfrom->soundtarget;
xto->seqType = xfrom->seqType;
xto->specialdata = xfrom->specialdata;
#endif
}

Expand Down

0 comments on commit 5be29df

Please sign in to comment.