private static void UpdateIfLogicElseBrickReference(XmlSprite oldSprite, XmlSprite newSprite, int scriptCount, int brickCount)
{
XmlIfLogicElseBrickReference oldIfLogicBeginBrickReference;
XmlIfLogicElseBrickReference newIfLogicBeginBrickReference;
var oldBrick = oldSprite.Scripts.Scripts[scriptCount].Bricks.Bricks[brickCount];
if (oldBrick is XmlIfLogicBeginBrick)
{
oldIfLogicBeginBrickReference = (oldBrick as XmlIfLogicBeginBrick).IfLogicElseBrickReference;
newIfLogicBeginBrickReference =
(newSprite.Scripts.Scripts[scriptCount].Bricks.Bricks[brickCount] as XmlIfLogicBeginBrick)
.IfLogicElseBrickReference;
}
else
{
oldIfLogicBeginBrickReference = (oldBrick as XmlIfLogicEndBrick).IfLogicElseBrickReference;
newIfLogicBeginBrickReference =
(newSprite.Scripts.Scripts[scriptCount].Bricks.Bricks[brickCount] as XmlIfLogicEndBrick)
.IfLogicElseBrickReference;
}
var count = 0;
foreach (var brick in oldSprite.Scripts.Scripts[scriptCount].Bricks.Bricks)
{
if (brick == oldIfLogicBeginBrickReference.IfLogicElseBrick)
{
newIfLogicBeginBrickReference.IfLogicElseBrick = newSprite.Scripts.Scripts[scriptCount].Bricks.Bricks[count] as XmlIfLogicElseBrick;
return;
}
count++;
}
}