示例#1
0
        private Rectangle desenharLivreRtgMapa(int x, int y, TileDominio objTile)
        {
            x = this.normalizarX(x);

            y = this.normalizarY(y);

            return(new Rectangle(x, y, objTile.rtgImg.Width, objTile.rtgImg.Height));
        }
示例#2
0
        private void addBackground(TabDockImagem tabDockImagem)
        {
            TileDominio objTileBackground = new TileDominio();

            objTileBackground.dirImagem = tabDockImagem.objImagem.attDirCompleto.strValor;
            objTileBackground.rtgImg    = this.addBackgroundSelecao(tabDockImagem);

            this.objMapa.objTileBackground = objTileBackground;
        }
示例#3
0
        protected virtual void setObjTile(TileDominio objTile)
        {
            if (objTile == null)
            {
                return;
            }

            objTile.gfcTile = this;

            objTile.onBooSelecionadoChanged += this.objTile_onBooSelecionadoChanged;
        }
示例#4
0
        private TileDominio desenharTile(int x, int y)
        {
            TileDominio objTileResultado = new TileDominio();

            objTileResultado.booFixo   = true;
            objTileResultado.dirImagem = AppRpg.i.frmPrincipal.tabDockImagemSelecionada.objImagem.attDirCompleto.strValor;
            objTileResultado.rtgImg    = this.desenharTileRtgImg(x, y);
            objTileResultado.rtgMapa   = this.desenharTileRtgMapa(x, y);

            return(objTileResultado);
        }
示例#5
0
        protected override void setObjTile(TileDominio objTile)
        {
            base.setObjTile(objTile);

            if (objTile == null)
            {
                return;
            }

            if (!(objTile is PersonagemTileDominio))
            {
                return;
            }

            this.objPersonagemTile = (objTile as PersonagemTileDominio);
        }
示例#6
0
        private TileGrafico getGfcTile(TileDominio objTile)
        {
            if (objTile == null)
            {
                return(null);
            }

            if (objTile.gfcTile != null)
            {
                return(objTile.gfcTile);
            }

            foreach (TileGrafico gfcTile in this.lstGfcTile)
            {
                if (!objTile.Equals(gfcTile.objTile))
                {
                    continue;
                }

                objTile.gfcTile = gfcTile;

                return(gfcTile);
            }

            TileGrafico gfcTileNovo = null;

            if (objTile is PersonagemTileDominio)
            {
                gfcTileNovo = new PersonagemTileGrafico(this.objDisplay, (objTile as PersonagemTileDominio));
            }
            else
            {
                gfcTileNovo = new TileGrafico(this.objDisplay, objTile);
            }

            gfcTileNovo.gfcCamada = this;

            this.lstGfcTile.Add(gfcTileNovo);

            return(gfcTileNovo);
        }
示例#7
0
        private void desenhar(int x, int y, CamadaDominio objCamada)
        {
            // TODO: Usar a classe "view" da camada (CamadaGrafico) para adicionar o tile. Não o seu domínio.
            if (AppRpg.i.frmPrincipal.tabDockImagemSelecionada == null)
            {
                return;
            }

            if (AppRpg.i.frmPrincipal.tabDockImagemSelecionada.objImagem == null)
            {
                return;
            }

            if (string.IsNullOrEmpty(AppRpg.i.frmPrincipal.tabDockImagemSelecionada.objImagem.attDirCompleto.strValor))
            {
                return;
            }

            if (AppRpg.i.frmPrincipal.tabDockImagemSelecionada.ctrImagem.objSelecao.rtg == default(Rectangle))
            {
                return;
            }

            TileDominio objTile = null;

            if (AppRpg.i.frmPrincipal.tabDockImagemSelecionada.ctrImagem.intTileTamanho < 10)
            {
                objTile = this.desenharLivre(x, y);
            }
            else
            {
                objTile = this.desenharTile(x, y);
            }

            objCamada.addTile(objTile);

            this.Invalidate();
        }
示例#8
0
        private void selecionarPersonagem()
        {
            if (this.objPersonagem == null)
            {
                return;
            }

            if (AppRpg.i.frmPrincipal.tabDockImagemSelecionada == null)
            {
                return;
            }

            if (AppRpg.i.frmPrincipal.tabDockImagemSelecionada.objImagem == null)
            {
                return;
            }

            if (string.IsNullOrEmpty(AppRpg.i.frmPrincipal.tabDockImagemSelecionada.objImagem.attDirCompleto.strValor))
            {
                return;
            }

            if (AppRpg.i.frmPrincipal.tabDockImagemSelecionada.ctrImagem.objSelecao.rtg == default(Rectangle))
            {
                return;
            }

            TileDominio objTilePersonagem = new TileDominio();

            objTilePersonagem.booFixo   = true;
            objTilePersonagem.dirImagem = AppRpg.i.frmPrincipal.tabDockImagemSelecionada.objImagem.attDirCompleto.strValor;
            objTilePersonagem.rtgImg    = this.selecionarPersonagemRtgImg();

            this.objPersonagem.objTile = objTilePersonagem;

            this.montarLayoutPersonagem();
        }
示例#9
0
 public TileGrafico(DisplayBase objDisplay, TileDominio objTile) : base(objDisplay)
 {
     this.objTile = objTile;
 }
示例#10
0
 public BackgroundGrafico(DisplayBase objDisplay, TileDominio objTile) : base(objDisplay, objTile)
 {
 }
示例#11
0
 private void objMapa_onObjTileBackgroundChanged(object sender, TileDominio objTileBackground)
 {
     this.atualizarBackground(objTileBackground);
 }
示例#12
0
        private void atualizarBackground(TileDominio objTileBackground)
        {
            this.gfcBackground.objTile = objTileBackground;

            this.gfcBackground.invalidar();
        }