Example #1
0
        internal bool apagar(int x, int y, CamadaDominio objCamada)
        {
            if (objCamada == null)
            {
                return(false);
            }

            if (!objCamada.Equals(this.objCamada))
            {
                return(false);
            }

            List <TileGrafico> lstGfcTileTemp = new List <TileGrafico>(this.lstGfcTile);

            lstGfcTileTemp.Reverse();

            foreach (TileGrafico gfcTile in lstGfcTileTemp)
            {
                if (gfcTile.apagar(x, y))
                {
                    this.apagar(objCamada, gfcTile);
                    return(true);
                }
            }

            return(false);
        }
Example #2
0
        internal bool addPersonagem(PersonagemDominio objPersonagem, CamadaDominio objCamada)
        {
            if (objCamada == null)
            {
                return(false);
            }

            if (!objCamada.Equals(this.objCamada))
            {
                return(false);
            }

            PersonagemTileDominio objPersonagemTile = new PersonagemTileDominio();

            objPersonagemTile.dirImagem     = objPersonagem.objTile.dirImagem;
            objPersonagemTile.objPersonagem = objPersonagem;
            objPersonagemTile.rtgImg        = objPersonagem.objTile.rtgImg;
            objPersonagemTile.rtgMapa       = new Rectangle(0, 0, objPersonagem.objTile.rtgImg.Width, objPersonagem.objTile.rtgImg.Height);

            objPersonagemTile.iniciar(true);

            PersonagemTileGrafico gfcPersonagemTile = new PersonagemTileGrafico(this.objDisplay, objPersonagemTile);

            gfcPersonagemTile.gfcCamada = this;
            gfcPersonagemTile.objTile   = objPersonagemTile;

            this.lstGfcTile.Add(gfcPersonagemTile);

            this.objCamada.addPersonagemTile(objPersonagemTile);

            this.invalidar();

            return(true);
        }
Example #3
0
        internal TileGrafico selecionarTile(int x, int y, CamadaDominio objCamada)
        {
            if (objCamada == null)
            {
                return(null);
            }

            if (!objCamada.Equals(this.objCamada))
            {
                return(null);
            }

            List <TileGrafico> lstGfcTileTemp = new List <TileGrafico>(this.lstGfcTile);

            lstGfcTileTemp.Reverse();

            foreach (TileGrafico gfcTile in lstGfcTileTemp)
            {
                TileGrafico gfcResultado = gfcTile.selecionar(x, y);

                if (gfcResultado != null)
                {
                    this.invalidar();

                    return(gfcResultado);
                }
            }

            return(null);
        }
Example #4
0
        private void addItemCamada(TreeNodeRpg tnrPai, MapaDominio objMapa)
        {
            CamadaDominio objCamada = CamadaDominio.criar(tnrPai.Nodes.Count);

            objMapa.addCamada(objCamada);

            tnrPai.Nodes.Add(new TreeNodeRpg(objCamada));
        }
Example #5
0
        private void abrirMapa(TreeNodeRpg tnrMapa, MapaDominio objMapa, CamadaDominio objCamada)
        {
            if (objCamada == null)
            {
                return;
            }

            tnrMapa.Nodes.Add(new TreeNodeRpg(objCamada));
        }
Example #6
0
 private void addPersonagem(PersonagemDominio objPersonagem, CamadaDominio objCamada)
 {
     foreach (CamadaGrafico gfcCamada in this.lstGfcCamada)
     {
         if (gfcCamada.addPersonagem(objPersonagem, objCamada))
         {
             return;
         }
     }
 }
Example #7
0
        private void setObjCamadaSelecionada(CamadaDominio objCamadaSelecionada)
        {
            this.Text = this.objMapa.attStrNome.strValor;

            if (objCamadaSelecionada == null)
            {
                return;
            }

            this.Text = string.Format("{0} (camada: {1})", this.objMapa.attStrNome.strValor, objCamadaSelecionada.attStrNome.strValor);
        }
Example #8
0
        private void apagar(CamadaDominio objCamada, TileGrafico gfcTile)
        {
            if (!objCamada.removerTile(gfcTile.objTile))
            {
                return;
            }

            this.removerGfcTile(gfcTile);

            this.invalidar();
        }
Example #9
0
        private void atualizarObjSelecionadoCamada(CamadaDominio objCamada)
        {
            if (this.objMapa == null)
            {
                return;
            }

            if (!this.objMapa.lstObjCamada.Contains(objCamada))
            {
                return;
            }

            this.objCamadaSelecionada = objCamada;
        }
Example #10
0
        private void setObjCamada(CamadaDominio objCamada)
        {
            if (objCamada == null)
            {
                return;
            }

            objCamada.attBooVisivel.onStrValorAlterado += ((o, e) =>
            {
                this.invalidar();
                this.objDisplay.Invalidate();
            });

            objCamada.onAddTile += ((o, e) => this.invalidar());
        }
Example #11
0
        private void apagar(int x, int y, CamadaDominio objCamada)
        {
            if (!this.objMapa.lstObjCamada.Contains(objCamada))
            {
                return;
            }

            foreach (CamadaGrafico gfcCamada in this.lstGfcCamada)
            {
                if (gfcCamada.apagar(x, y, objCamada))
                {
                    return;
                }
            }
        }
Example #12
0
        private void selecionarTile(int x, int y, CamadaDominio objCamada)
        {
            if (!this.objMapa.lstObjCamada.Contains(objCamada))
            {
                return;
            }

            foreach (CamadaGrafico gfcCamada in this.lstGfcCamada)
            {
                TileGrafico gfcTileSelecionado = gfcCamada.selecionarTile(x, y, objCamada);

                if (gfcTileSelecionado == null)
                {
                    continue;
                }

                this.gfcTileSelecionado = gfcTileSelecionado;
            }
        }
Example #13
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();
        }
Example #14
0
        private CamadaGrafico getGfcCamada(CamadaDominio objCamada)
        {
            if (objCamada == null)
            {
                return(null);
            }

            foreach (CamadaGrafico gfcCamada in this.lstGfcCamada)
            {
                if (!objCamada.Equals(gfcCamada.objCamada))
                {
                    continue;
                }

                return(gfcCamada);
            }

            CamadaGrafico gfcCamadaNova = new CamadaGrafico(this, objCamada);

            this.lstGfcCamada.Add(gfcCamadaNova);

            return(gfcCamadaNova);
        }
Example #15
0
 public CamadaGrafico(DisplayBase objDisplay, CamadaDominio objCamada) : base(objDisplay)
 {
     this.objCamada = objCamada;
 }