View Issue Details

IDProjectCategoryView StatusLast Update
0005196DarkRadiantMap Editingpublic08.11.2020 18:35
ReporterDragofer Assigned Togreebo  
PrioritynormalSeveritynormalReproducibilityalways
Status closedResolutionfixed 
Product Version2.7.0 
Target Version2.8.0Fixed in Version2.8.0 
Summary0005196: All spawnargs with the same value as the "name" spawnarg iterate when the entity is cloned
DescriptionIf any spawnargs have the same value as the "name" spawnarg, they too get iterated each time the entity is cloned. For example:

"classname" "func_static"
"name" "func_static"
"test_spawnarg" "func_static"

becomes

"classname" "func_static1"
"name" "func_static1"
"test_spawnarg" "func_static1"
Steps To Reproduce1) Create model -> stagecoach
2) Set the following spawnargs on the stagecoach:
"classname" "func_static"
"name" "func_static"
"test_spawnarg" "func_static"
3) Hit space to clone the stagecoach. All 3 of the above spawnargs have changed their value to "func_static1"
TagsNo tags attached.

Activities

greebo

greebo

27.03.2020 03:02

administrator   ~0012313

Last edited: 27.03.2020 03:02

View 2 revisions

That's an actual feature. There are a number of spawnargs that refer to an entity's name, like target and S/R spawnargs. When cloning a couple of objects, the intention of that code is to keep the links intact.
Dragofer

Dragofer

27.03.2020 10:25

developer   ~0012314

Last edited: 27.03.2020 10:26

View 2 revisions

Ah, I can see how that's very useful - but I think some of the spawnargs should remain unchanged: especially "classname" and any spawnargs like "def_attach" that reference classnames, as what they're referring to is defined outside of the .map and therefore unaffected by cloning.
greebo

greebo

27.03.2020 19:50

administrator   ~0012315

Agreed

Related Changesets

DarkRadiant: master 9d506eca

2020-03-28 14:53:52

greebo

Details Diff
Fix 0005196: The "classname" key and keys starting with "def_" won't monitor their values for name changes. This prevents particular entity setups where the "classname" is the same as the entity's "name" triggers a classname change when cloning. Affected Issues
0005196
mod - radiant/entity/NamespaceManager.cpp Diff File
mod - radiant/entity/NamespaceManager.h Diff File

Issue History

Date Modified Username Field Change
26.03.2020 20:40 Dragofer New Issue
26.03.2020 20:42 Dragofer Summary Cloning entities changes all spawnargs with the same value as "name" spawnarg => All spawnargs with the same value as the "name" spawnarg iterate when the entity is cloned
27.03.2020 03:02 greebo Status new => feedback
27.03.2020 03:02 greebo Note Added: 0012313
27.03.2020 03:02 greebo Note Edited: 0012313 View Revisions
27.03.2020 10:25 Dragofer Note Added: 0012314
27.03.2020 10:25 Dragofer Status feedback => new
27.03.2020 10:26 Dragofer Note Edited: 0012314 View Revisions
27.03.2020 19:50 greebo Status new => confirmed
27.03.2020 19:50 greebo Note Added: 0012315
28.03.2020 14:51 greebo Assigned To => greebo
28.03.2020 14:51 greebo Status confirmed => assigned
28.03.2020 14:52 greebo Target Version => 2.8.0
28.03.2020 14:54 greebo Changeset attached => DarkRadiant master 9d506eca
28.03.2020 14:54 greebo Resolution open => fixed
28.03.2020 14:57 greebo Status assigned => resolved
28.03.2020 14:57 greebo Fixed in Version => 2.8.0
08.11.2020 18:35 greebo Status resolved => closed