MCV no longer loses controlgroup when transforming
This commit is contained in:
@@ -99,6 +99,12 @@ namespace OpenRA
|
|||||||
Combine(world, groupActors, mods.HasModifier(Modifiers.Shift), false);
|
Combine(world, groupActors, mods.HasModifier(Modifiers.Shift), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void AddToControlGroup(Actor a, int group)
|
||||||
|
{
|
||||||
|
if (!controlGroups[group].Contains(a))
|
||||||
|
controlGroups[group].Add(a);
|
||||||
|
}
|
||||||
|
|
||||||
public int? GetControlGroupForActor(Actor a)
|
public int? GetControlGroupForActor(Actor a)
|
||||||
{
|
{
|
||||||
return controlGroups.Where(g => g.Value.Contains(a))
|
return controlGroups.Where(g => g.Value.Contains(a))
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ namespace OpenRA.Mods.RA.Activities
|
|||||||
nt.OnTransform(self);
|
nt.OnTransform(self);
|
||||||
|
|
||||||
var selected = w.Selection.Contains(self);
|
var selected = w.Selection.Contains(self);
|
||||||
|
var controlgroup = w.Selection.GetControlGroupForActor(self);
|
||||||
|
|
||||||
self.Destroy();
|
self.Destroy();
|
||||||
foreach (var s in Sounds)
|
foreach (var s in Sounds)
|
||||||
@@ -81,6 +82,8 @@ namespace OpenRA.Mods.RA.Activities
|
|||||||
|
|
||||||
if (selected)
|
if (selected)
|
||||||
w.Selection.Add(w, a);
|
w.Selection.Add(w, a);
|
||||||
|
if (controlgroup.HasValue)
|
||||||
|
w.Selection.AddToControlGroup(a, controlgroup.Value);
|
||||||
});
|
});
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
|
|||||||
Reference in New Issue
Block a user