Esempio n. 1
0
        public IEnumerable <ICharacterPropertyRenderer> BuildList(ICharacterTextures textures,
                                                                  ICharacterRenderProperties renderProperties)
        {
            bool shieldAdded = false, weaponAdded = false;

            if (IsShieldBehindCharacter(renderProperties))
            {
                shieldAdded = true;
                yield return(new ShieldRenderer(renderProperties, textures.Shield));
            }

            if (IsWeaponBehindCharacter(renderProperties))
            {
                weaponAdded = true;
                yield return(new WeaponRenderer(renderProperties, textures.Weapon, EIFFile));
            }

            yield return(new SkinRenderer(renderProperties, textures.Skin, EIFFile));

            yield return(new FaceRenderer(renderProperties, textures.Face, EIFFile));

            yield return(new EmoteRenderer(renderProperties, textures.Emote, EIFFile));

            yield return(new BootsRenderer(renderProperties, textures.Boots, EIFFile));

            yield return(new ArmorRenderer(renderProperties, textures.Armor, EIFFile));

            if (!weaponAdded)
            {
                yield return(new WeaponRenderer(renderProperties, textures.Weapon, EIFFile));
            }

            if (IsHairOnTopOfHat(renderProperties))
            {
                yield return(new HatRenderer(renderProperties, textures.Hat, EIFFile));

                yield return(new HairRenderer(renderProperties, textures.Hair, EIFFile));
            }
            else
            {
                yield return(new HairRenderer(renderProperties, textures.Hair, EIFFile));

                yield return(new HatRenderer(renderProperties, textures.Hat, EIFFile));
            }

            if (!shieldAdded)
            {
                yield return(new ShieldRenderer(renderProperties, textures.Shield));
            }
        }
 public CharacterRendererFactory(IEndlessGameProvider gameProvider,
                                 IRenderTargetFactory renderTargetFactory,
                                 ICharacterProvider characterProvider,
                                 IRenderOffsetCalculator renderOffsetCalculator,
                                 ICharacterPropertyRendererBuilder characterPropertyRendererBuilder,
                                 ICharacterTextures characterTextures,
                                 ICharacterSpriteCalculator characterSpriteCalculator)
 {
     _gameProvider                     = gameProvider;
     _renderTargetFactory              = renderTargetFactory;
     _characterProvider                = characterProvider;
     _renderOffsetCalculator           = renderOffsetCalculator;
     _characterPropertyRendererBuilder = characterPropertyRendererBuilder;
     _characterTextures                = characterTextures;
     _characterSpriteCalculator        = characterSpriteCalculator;
 }
Esempio n. 3
0
 public CharacterRenderer(Game game,
                          IRenderTargetFactory renderTargetFactory,
                          ICharacterProvider characterProvider,
                          IRenderOffsetCalculator renderOffsetCalculator,
                          ICharacterPropertyRendererBuilder characterPropertyRendererBuilder,
                          ICharacterTextures characterTextures,
                          ICharacterSpriteCalculator characterSpriteCalculator,
                          ICharacterRenderProperties renderProperties)
     : base(game)
 {
     _renderTargetFactory              = renderTargetFactory;
     _characterProvider                = characterProvider;
     _renderOffsetCalculator           = renderOffsetCalculator;
     _characterPropertyRendererBuilder = characterPropertyRendererBuilder;
     _characterTextures                = characterTextures;
     _characterSpriteCalculator        = characterSpriteCalculator;
     RenderProperties = renderProperties;
 }