private void AssignSprites(DialogLine Line)
    {
        Character speaker = Character.GetCharacter(Line.SpeakerID);

        try
        {
            Sprite speakerSprite = speaker.GetSprite((Line.SpeakerMood));
            if (speakerSprite)
            {
                LeftSprite.Assign(speakerSprite, speaker);
            }
        }
        catch { Debug.LogError("Something went wrong with assigning speaker sprites."); }

        int targets = 0;

        foreach (var t in Line.TargetMoods)
        {
            Character c      = Character.GetCharacter(t.Key);
            Sprite    sprite = c.GetSprite((t.Value));
            if (sprite)
            {
                if (ImageHandler.CharacterIsOnscreen(c))
                {
                    ImageHandler h = ImageHandler.GetCharacterImageHandler(c);
                    h.Assign(sprite, c);
                }

                else
                {
                    switch (targets)
                    {
                    case (0):
                    {
                        if (RightSprite.C != null)
                        {
                            goto case 1;
                        }
                        RightSprite.Assign(sprite, c);
                        break;
                    }

                    case (1):
                    {
                        if (InnerRightSprite.C != null)
                        {
                            goto case 2;
                        }
                        InnerRightSprite.Assign(sprite, c);
                        break;
                    }

                    case (2):
                    {
                        if (InnerLeftSprite.C != null)
                        {
                            goto default;
                        }
                        InnerLeftSprite.Assign(sprite, c);
                        break;
                    }

                    default:
                    {
                        Debug.LogError(
                            string.Format("Dialog Line [{0}] has too many targets and not all will be displayed", Line.LineID));
                        break;
                    }
                    }
                }
            }
        }
    }