public static string GetReferenceString(XmlObjectNode referenceObject)
{
if (referenceObject is XmlLookReference)
return GetLookReferenceString((referenceObject as XmlLookReference).Look);
if (referenceObject is XmlSoundReference)
return GetSoundReferenceString((referenceObject as XmlSoundReference).Sound);
if (referenceObject is XmlSpriteReference)
return GetSpriteReferenceString((referenceObject as XmlSpriteReference));
if (referenceObject is XmlUserVariableReference)
return GetVariableReferenceString(referenceObject as XmlUserVariableReference);
if (referenceObject is XmlLoopBeginBrickReference)
{
var loopBeginBrickRef = referenceObject as XmlLoopBeginBrickReference;
if (loopBeginBrickRef.LoopBeginBrick is XmlForeverBrick)
return GetForeverBrickReferenceString(loopBeginBrickRef.LoopBeginBrick);
else
return GetRepeatBrickReferenceString(loopBeginBrickRef.LoopBeginBrick);
}
if (referenceObject is XmlLoopEndBrickReference)
{
var loopEndBrickRef = referenceObject as XmlLoopEndBrickReference;
if (loopEndBrickRef.LoopEndBrick is XmlForeverLoopEndBrick)
return GetForeverLoopEndBrickReferenceString(loopEndBrickRef.LoopEndBrick);
else
return GetRepeatLoopEndBrickReferenceString(loopEndBrickRef.LoopEndBrick);
}
if (referenceObject is XmlIfLogicBeginBrickReference)
return GetIfLogicBeginBrickReferenceString(referenceObject as XmlIfLogicBeginBrickReference);
if (referenceObject is XmlIfLogicElseBrickReference)
return GetIfLogicElseBrickReferenceString(referenceObject as XmlIfLogicElseBrickReference);
if (referenceObject is XmlIfLogicEndBrickReference)
return GetIfLogicEndBrickReferenceString(referenceObject as XmlIfLogicEndBrickReference);
return "";
}