public static void Servidor_Dados() { // Limpa os dados Limpar.Servidor_Dados(); // Se o arquivo não existir, não é necessário carregá-lo if (!Diretórios.Servidor_Dados.Exists) { Escrever.Servidor_Dados(); return; } // Cria um sistema binário para a manipulação dos dados BinaryReader Binário = new BinaryReader(Diretórios.Servidor_Dados.OpenRead()); // Lê os dados Listas.Servidor_Dados.Game_Nome = Binário.ReadString(); Listas.Servidor_Dados.Mensagem = Binário.ReadString(); Listas.Servidor_Dados.Porta = Binário.ReadInt16(); Listas.Servidor_Dados.Máx_Jogadores = Binário.ReadByte(); Listas.Servidor_Dados.Máx_Personagens = Binário.ReadByte(); Listas.Servidor_Dados.Num_Classes = Binário.ReadByte(); Listas.Servidor_Dados.Num_Azulejos = Binário.ReadByte(); Listas.Servidor_Dados.Num_Mapas = Binário.ReadInt16(); Listas.Servidor_Dados.Num_NPCs = Binário.ReadInt16(); Listas.Servidor_Dados.Num_Itens = Binário.ReadInt16(); // Fecha o sistema Binário.Dispose(); }
public static void Definir_Servidor() { string Diretório = Listas.Opções.Diretório_Servidor; // Previni erros if (!Directory.Exists(Diretório)) { Listas.Opções.Diretório_Servidor = string.Empty; Escrever.Opções(); return; } // Demonstra o diretório Seleção.Objetos.txtServidor_Diretório.Text = Diretório; // Define os diretórios Servidor_Dados = new FileInfo(Diretório + @"\Dados\Gerais" + Formato); Classes_Dados = new DirectoryInfo(Diretório + @"\Dados\Classes\"); Azulejos_Dados = new DirectoryInfo(Diretório + @"\Dados\Azulejos\"); Mapas_Dados = new DirectoryInfo(Diretório + @"\Dados\Mapas\"); NPCs_Dados = new DirectoryInfo(Diretório + @"\Dados\NPCs\"); Itens_Dados = new DirectoryInfo(Diretório + @"\Dados\Itens\"); // Cria os diretórios Servidor_Dados.Directory.Create(); Classes_Dados.Create(); Azulejos_Dados.Create(); NPCs_Dados.Create(); Mapas_Dados.Create(); Itens_Dados.Create(); // Lê os dados gerais do servidor Ler.Servidor_Dados(); }
public static void Marcador_Dados(byte Índice) { FileInfo Arquivo = new FileInfo(Diretórios.Marcadores_Dados.FullName + Índice + Diretórios.Formato); // Cria o arquivo caso ele não existir if (!Arquivo.Exists) { Escrever.Marcador_Dados(Índice); return; } // Cria um sistema binário para a manipulação dos dados BinaryReader Binário = new BinaryReader(Arquivo.OpenRead()); // Carrega os dados Listas.Marcador[Índice].Geral.Nome = Binário.ReadString(); Listas.Marcador[Índice].Geral.Posição.X = Binário.ReadInt32(); Listas.Marcador[Índice].Geral.Posição.Y = Binário.ReadInt32(); Listas.Marcador[Índice].Geral.Visível = Binário.ReadBoolean(); Listas.Marcador[Índice].Texto = Binário.ReadString(); Listas.Marcador[Índice].Estado = Binário.ReadBoolean(); // Fecha o sistema Binário.Dispose(); }
public static void Opções() { // Defini os dados das opções Listas.Opções.Diretório_Cliente = string.Empty; Listas.Opções.Diretório_Servidor = string.Empty; // Salva o que foi modificado Escrever.Opções(); }
private void butSalvar_Click(object sender, EventArgs e) { // Salva os dados Escrever.Azulejos(); // Volta à janela de seleção Visible = false; Seleção.Objetos.Visible = true; }
static void Main(string[] args) { var nota = new NotaFiscal { Numero = 1210, Chave = "NFE1023023012302103012202" }; var escrever = new Escrever(); escrever.Log(nota); Console.ReadKey(); }
private void butSalvar_Click(object sender, EventArgs e) { // Salva a dimensão da estrutura Listas.Servidor_Dados.Num_NPCs = (byte)Listas.NPC.GetUpperBound(0); Escrever.Servidor_Dados(); Escrever.NPCs(); // Volta à janela de seleção Visible = false; Seleção.Objetos.Visible = true; }
private void butSalvar_Click(object sender, EventArgs e) { // Salva a dimensão da estrutura Listas.Cliente_Dados.Num_Botões = (byte)Listas.Botão.GetUpperBound(0); Listas.Cliente_Dados.Num_Digitalizadores = (byte)Listas.Digitalizador.GetUpperBound(0); Listas.Cliente_Dados.Num_Paineis = (byte)Listas.Painel.GetUpperBound(0); Listas.Cliente_Dados.Num_Marcadores = (byte)Listas.Marcador.GetUpperBound(0); Escrever.Cliente_Dados(); Escrever.Ferramentas(); // Volta à janela de seleção Visible = false; Seleção.Objetos.Visible = true; }
private void butSalvar_Click(object sender, System.EventArgs e) { // Salva os dados Listas.Servidor_Dados.Game_Nome = Objetos.txtGame_Nome.Text; Listas.Servidor_Dados.Mensagem = Objetos.txtMensagem.Text; Listas.Servidor_Dados.Porta = (short)Objetos.numPorta.Value; Listas.Servidor_Dados.Máx_Jogadores = (byte)Objetos.numMáx_Jogadores.Value; Listas.Servidor_Dados.Máx_Personagens = (byte)Objetos.numMáx_Personagens.Value; Escrever.Servidor_Dados(); // Volta à janela de seleção Visible = false; Seleção.Objetos.Visible = true; }
public static void Azulejos() { Listas.Servidor_Dados.Num_Azulejos = (byte)Gráficos.Tex_Azulejo.GetUpperBound(0); Listas.Azulejo = new Listas.Estruturas.Azulejos_Azulejo[Listas.Servidor_Dados.Num_Azulejos + 1]; // Salva a quantidade dos azulejos Escrever.Servidor_Dados(); // Limpa e lê os dados for (byte i = 1; i <= Listas.Azulejo.GetUpperBound(0); i++) { Limpar.Azulejo(i); Azulejo(i); } }
public static void Azulejo(byte Índice) { FileInfo Arquivo = new FileInfo(Diretórios.Azulejos_Dados.FullName + Índice + Diretórios.Formato); Size Textura_Tamanho = Gráficos.TTamanho(Gráficos.Tex_Azulejo[Índice]); Size Tamanho = new Size(Textura_Tamanho.Width / Globais.Grade - 1, Textura_Tamanho.Height / Globais.Grade - 1); // Cria o arquivo caso ele não existir if (!Arquivo.Exists) { Escrever.Azulejo(Índice); return; } // Cria um sistema binário para a manipulação dos dados BinaryReader Binário = new BinaryReader(Arquivo.OpenRead()); // Dados básicos Listas.Azulejo[Índice].Largura = Binário.ReadByte(); Listas.Azulejo[Índice].Altura = Binário.ReadByte(); // Previni erros (Foi trocado de azulejo) if (Tamanho != new Size(Listas.Azulejo[Índice].Largura, Listas.Azulejo[Índice].Altura)) { Binário.Dispose(); Limpar.Azulejo(Índice); Escrever.Azulejo(Índice); return; } for (byte x = 0; x <= Tamanho.Width; x++) { for (byte y = 0; y <= Tamanho.Height; y++) { // Atributos Listas.Azulejo[Índice].Azulejo[x, y].Atributo = Binário.ReadByte(); // Bloqueio direcional for (byte i = 0; i <= (byte)Globais.Direções.Quantidade - 1; i++) { Listas.Azulejo[Índice].Azulejo[x, y].Bloqueio[i] = Binário.ReadBoolean(); } } } // Fecha o sistema Binário.Dispose(); }
private void butSelecionarDiretório_Servidor_Click(object sender, EventArgs e) { // Seleciona o diretório atual Diretório_Servidor.SelectedPath = Listas.Opções.Diretório_Servidor; // Apenas se já estiver selecionado um diretório if (Diretório_Servidor.ShowDialog() != DialogResult.OK) { return; } // Salva os dados Listas.Opções.Diretório_Servidor = Diretório_Servidor.SelectedPath; Escrever.Opções(); // Define e cria os diretórios Diretórios.Definir_Servidor(); }
public static void Item(byte Índice) { FileInfo Arquivo = new FileInfo(Diretórios.Itens_Dados.FullName + Índice + Diretórios.Formato); // Cria o arquivo caso ele não existir if (!Arquivo.Exists) { Escrever.Item(Índice); return; } // Cria um sistema binário para a manipulação dos dados BinaryReader Binário = new BinaryReader(Arquivo.OpenRead()); // Lê os dados Listas.Item[Índice].Nome = Binário.ReadString(); Listas.Item[Índice].Descrição = Binário.ReadString(); Listas.Item[Índice].Textura = Binário.ReadInt16(); Listas.Item[Índice].Tipo = Binário.ReadByte(); Listas.Item[Índice].Preço = Binário.ReadInt16(); Listas.Item[Índice].Empilhável = Binário.ReadBoolean(); Listas.Item[Índice].NãoDropável = Binário.ReadBoolean(); Listas.Item[Índice].Req_Level = Binário.ReadInt16(); Listas.Item[Índice].Req_Classe = Binário.ReadByte(); Listas.Item[Índice].Poção_Experiência = Binário.ReadInt16(); for (byte i = 0; i <= (byte)Globais.Vitais.Quantidade - 1; i++) { Listas.Item[Índice].Poção_Vital[i] = Binário.ReadInt16(); } Listas.Item[Índice].Equip_Tipo = Binário.ReadByte(); for (byte i = 0; i <= (byte)Globais.Atributos.Quantidade - 1; i++) { Listas.Item[Índice].Equip_Atributo[i] = Binário.ReadInt16(); } Listas.Item[Índice].Arma_Dano = Binário.ReadInt16(); // Fecha o sistema Binário.Dispose(); }
public static void NPC(byte Índice) { FileInfo Arquivo = new FileInfo(Diretórios.NPCs_Dados.FullName + Índice + Diretórios.Formato); // Cria o arquivo caso ele não existir if (!Arquivo.Exists) { Escrever.NPC(Índice); return; } // Cria um sistema binário para a manipulação dos dados BinaryReader Binário = new BinaryReader(Arquivo.OpenRead()); // Lê os dados Listas.NPC[Índice].Nome = Binário.ReadString(); Listas.NPC[Índice].Textura = Binário.ReadInt16(); Listas.NPC[Índice].Agressividade = Binário.ReadByte(); Listas.NPC[Índice].Aparecimento = Binário.ReadByte(); Listas.NPC[Índice].Visão = Binário.ReadByte(); Listas.NPC[Índice].Experiência = Binário.ReadByte(); for (byte i = 0; i <= (byte)Globais.Vitais.Quantidade - 1; i++) { Listas.NPC[Índice].Vital[i] = Binário.ReadInt16(); } for (byte i = 0; i <= (byte)Globais.Atributos.Quantidade - 1; i++) { Listas.NPC[Índice].Atributo[i] = Binário.ReadInt16(); } for (byte i = 0; i <= Globais.Máx_NPC_Queda - 1; i++) { Listas.NPC[Índice].Queda[i].Item_Num = Binário.ReadInt16(); Listas.NPC[Índice].Queda[i].Quantidade = Binário.ReadInt16(); Listas.NPC[Índice].Queda[i].Chance = Binário.ReadByte(); } // Fecha o sistema Binário.Dispose(); }
static void Main(string[] args) { var objToLog = new List <ClassePai>(); var objP1 = new ClassePai { NomePai = "Papai", Filhos = new List <ClasseFilho>() }; var objF1 = new ClasseFilho { NomeFilho = "Filho 1" }; var objF2 = new ClasseFilho { NomeFilho = "Filho 2" }; objP1.Filhos.Add(objF1); objP1.Filhos.Add(objF2); var objP2 = new ClassePai { NomePai = "Papai 2", Filhos = new List <ClasseFilho>() }; var objF3 = new ClasseFilho { NomeFilho = "Filho 3" }; var objF4 = new ClasseFilho { NomeFilho = "Filho 4" }; objP2.Filhos.Add(objF3); objP2.Filhos.Add(objF4); objToLog.Add(objP1); objToLog.Add(objP2); var escrever = new Escrever(); escrever.LogGenerico(objToLog); Console.ReadKey(); }
public static void Classe(byte Índice) { FileInfo Arquivo = new FileInfo(Diretórios.Classes_Dados.FullName + Índice + Diretórios.Formato); // Cria o arquivo caso ele não existir if (!Arquivo.Exists) { Escrever.Classe(Índice); return; } // Cria um sistema binário para a manipulação dos dados BinaryReader Binário = new BinaryReader(Arquivo.OpenRead()); // Lê os dados Listas.Classe[Índice].Nome = Binário.ReadString(); Listas.Classe[Índice].Textura_Masculina = Binário.ReadInt16(); Listas.Classe[Índice].Textura_Feminina = Binário.ReadInt16(); Listas.Classe[Índice].Aparecer_Mapa = Binário.ReadInt16(); Listas.Classe[Índice].Aparecer_Direção = Binário.ReadByte(); Listas.Classe[Índice].Aparecer_X = Binário.ReadByte(); Listas.Classe[Índice].Aparecer_Y = Binário.ReadByte(); // Vitais for (byte i = 0; i <= (byte)Globais.Vitais.Quantidade - 1; i++) { Listas.Classe[Índice].Vital[i] = Binário.ReadInt16(); } // Atributos for (byte i = 0; i <= (byte)Globais.Atributos.Quantidade - 1; i++) { Listas.Classe[Índice].Atributo[i] = Binário.ReadInt16(); } // Fecha o sistema Binário.Dispose(); }
public static void Cliente_Dados() { // Limpa os dados Limpar.Cliente_Dados(); // Se o arquivo não existir, não é necessário carregá-lo if (!Diretórios.Cliente_Dados.Exists) { Escrever.Cliente_Dados(); return; } // Cria um sistema binário para a manipulação dos dados BinaryReader Binário = new BinaryReader(Diretórios.Cliente_Dados.OpenRead()); // Lê os dados Listas.Cliente_Dados.Num_Botões = Binário.ReadByte(); Listas.Cliente_Dados.Num_Digitalizadores = Binário.ReadByte(); Listas.Cliente_Dados.Num_Paineis = Binário.ReadByte(); Listas.Cliente_Dados.Num_Marcadores = Binário.ReadByte(); // Fecha o sistema Binário.Dispose(); }
public static void Definir_Cliente() { string Diretório = Listas.Opções.Diretório_Cliente; // Previni erros if (!Directory.Exists(Diretório)) { Listas.Opções.Diretório_Cliente = string.Empty; Escrever.Opções(); return; } // Demonstra o diretório Seleção.Objetos.txtCliente_Diretório.Text = Diretório; // Cliente Fontes = new DirectoryInfo(Diretório + @"\Fontes\"); Sons = new DirectoryInfo(Diretório + @"\Aúdio\Sons\"); Músicas = new DirectoryInfo(Diretório + @"\Aúdio\Músicas\"); Cliente_Dados = new FileInfo(Diretório + @"\Dados\Gerais" + Formato); Botões_Dados = new DirectoryInfo(Diretório + @"\Dados\Ferramentas\Botões\"); Digitalizadores_Dados = new DirectoryInfo(Diretório + @"\Dados\Ferramentas\Digitalizadores\"); Paineis_Dados = new DirectoryInfo(Diretório + @"\Dados\Ferramentas\Paineis\"); Marcadores_Dados = new DirectoryInfo(Diretório + @"\Dados\Ferramentas\Marcadores\"); Tex_Panoramas = new DirectoryInfo(Diretório + @"\Gráficos\Panoramas\"); Tex_Luzes = new DirectoryInfo(Diretório + @"\Gráficos\Luzes\"); Tex_Fumaças = new DirectoryInfo(Diretório + @"\Gráficos\Fumaças\"); Tex_Personagens = new DirectoryInfo(Diretório + @"\Gráficos\Personagens\"); Tex_Faces = new DirectoryInfo(Diretório + @"\Gráficos\Faces\"); Tex_Paineis = new DirectoryInfo(Diretório + @"\Gráficos\Interface\Ferramentas\Paineis\"); Tex_Botões = new DirectoryInfo(Diretório + @"\Gráficos\Interface\Ferramentas\Botões\"); Tex_Marcador = new FileInfo(Diretório + @"\Gráficos\Interface\Ferramentas\Marcador"); Tex_Digitalizador = new FileInfo(Diretório + @"\Gráficos\Interface\Ferramentas\Digitalizador"); Tex_Azulejos = new DirectoryInfo(Diretório + @"\Gráficos\Azulejos\"); Tex_Grade = new FileInfo(Diretório + @"\Gráficos\Grade"); Tex_Clima = new FileInfo(Diretório + @"\Gráficos\Clima"); Tex_Preenchido = new FileInfo(Diretório + @"\Gráficos\Preenchido"); Tex_Direções = new FileInfo(Diretório + @"\Gráficos\Direções"); Tex_Transparente = new FileInfo(Diretório + @"\Gráficos\Transparente"); Tex_Iluminação = new FileInfo(Diretório + @"\Gráficos\Iluminação"); Tex_Itens = new DirectoryInfo(Diretório + @"\Gráficos\Itens\"); // Cria os diretórios Fontes.Create(); Sons.Create(); Músicas.Create(); Cliente_Dados.Directory.Create(); Botões_Dados.Create(); Digitalizadores_Dados.Create(); Paineis_Dados.Create(); Marcadores_Dados.Create(); Tex_Panoramas.Create(); Tex_Fumaças.Create(); Tex_Luzes.Create(); Tex_Personagens.Create(); Tex_Faces.Create(); Tex_Paineis.Create(); Tex_Botões.Create(); Tex_Marcador.Directory.Create(); Tex_Digitalizador.Directory.Create(); Tex_Azulejos.Create(); Tex_Grade.Directory.Create(); Tex_Clima.Directory.Create(); Tex_Preenchido.Directory.Create(); Tex_Direções.Directory.Create(); Tex_Transparente.Directory.Create(); Tex_Iluminação.Directory.Create(); Tex_Itens.Create(); // Lê os dados gerais do cliente Ler.Cliente_Dados(); Gráficos.LerTexturas(); Áudio.Som.Ler(); }
public static void Mapa(short Índice) { FileInfo Arquivo = new FileInfo(Diretórios.Mapas_Dados.FullName + Índice + Diretórios.Formato); // Cria o arquivo caso ele não existir if (!Arquivo.Exists) { Escrever.Mapa(Índice); return; } // Cria um sistema binário para a manipulação dos dados BinaryReader Binário = new BinaryReader(Arquivo.OpenRead()); // Lê os dados Listas.Mapa[Índice].Revisão = Binário.ReadInt16(); Listas.Mapa[Índice].Nome = Binário.ReadString(); Listas.Mapa[Índice].Largura = Binário.ReadByte(); Listas.Mapa[Índice].Altura = Binário.ReadByte(); Listas.Mapa[Índice].Moral = Binário.ReadByte(); Listas.Mapa[Índice].Panorama = Binário.ReadByte(); Listas.Mapa[Índice].Música = Binário.ReadByte(); Listas.Mapa[Índice].Coloração = Binário.ReadInt32(); Listas.Mapa[Índice].Clima.Tipo = Binário.ReadByte(); Listas.Mapa[Índice].Clima.Intensidade = Binário.ReadByte(); Listas.Mapa[Índice].Fumaça.Textura = Binário.ReadByte(); Listas.Mapa[Índice].Fumaça.VelocidadeX = Binário.ReadSByte(); Listas.Mapa[Índice].Fumaça.VelocidadeY = Binário.ReadSByte(); Listas.Mapa[Índice].Fumaça.Transparência = Binário.ReadByte(); Listas.Mapa[Índice].LuzGlobal = Binário.ReadByte(); Listas.Mapa[Índice].Iluminação = Binário.ReadByte(); // Ligações for (short i = 0; i <= (short)Globais.Direções.Quantidade - 1; i++) { Listas.Mapa[Índice].Ligação[i] = Binário.ReadInt16(); } // Quantidade de camadas byte NumCamadas = Binário.ReadByte(); Listas.Mapa[Índice].Camada = new System.Collections.Generic.List <Listas.Estruturas.Camada>(); // Camadas for (byte i = 0; i <= NumCamadas; i++) { // Dados básicos Listas.Mapa[Índice].Camada.Add(new Listas.Estruturas.Camada()); Listas.Mapa[Índice].Camada[i].Nome = Binário.ReadString(); Listas.Mapa[Índice].Camada[i].Tipo = Binário.ReadByte(); // Redimensiona os azulejos Listas.Mapa[Índice].Camada[i].Azulejo = new Listas.Estruturas.Azulejo_Dados[Listas.Mapa[Índice].Largura + 1, Listas.Mapa[Índice].Altura + 1]; // Azulejos for (byte x = 0; x <= Listas.Mapa[Índice].Largura; x++) { for (byte y = 0; y <= Listas.Mapa[Índice].Altura; y++) { Listas.Mapa[Índice].Camada[i].Azulejo[x, y].x = Binário.ReadByte(); Listas.Mapa[Índice].Camada[i].Azulejo[x, y].y = Binário.ReadByte(); Listas.Mapa[Índice].Camada[i].Azulejo[x, y].Azulejo = Binário.ReadByte(); Listas.Mapa[Índice].Camada[i].Azulejo[x, y].Automático = Binário.ReadBoolean(); Listas.Mapa[Índice].Camada[i].Azulejo[x, y].Mini = new Point[4]; } } } // Dados específicos dos azulejos Listas.Mapa[Índice].Azulejo = new Listas.Estruturas.Mapas_Azulejo_Dados[Listas.Mapa[Índice].Largura + 1, Listas.Mapa[Índice].Altura + 1]; for (byte x = 0; x <= Listas.Mapa[Índice].Largura; x++) { for (byte y = 0; y <= Listas.Mapa[Índice].Altura; y++) { Listas.Mapa[Índice].Azulejo[x, y].Atributo = Binário.ReadByte(); Listas.Mapa[Índice].Azulejo[x, y].Dado_1 = Binário.ReadInt16(); Listas.Mapa[Índice].Azulejo[x, y].Dado_2 = Binário.ReadInt16(); Listas.Mapa[Índice].Azulejo[x, y].Dado_3 = Binário.ReadInt16(); Listas.Mapa[Índice].Azulejo[x, y].Dado_4 = Binário.ReadInt16(); Listas.Mapa[Índice].Azulejo[x, y].Zona = Binário.ReadByte(); Listas.Mapa[Índice].Azulejo[x, y].Bloqueio = new bool[(byte)Globais.Direções.Quantidade]; for (byte i = 0; i <= (byte)Globais.Direções.Quantidade - 1; i++) { Listas.Mapa[Índice].Azulejo[x, y].Bloqueio[i] = Binário.ReadBoolean(); } } } // Luzes byte NumLuzes = Binário.ReadByte(); Listas.Mapa[Índice].Luz = new System.Collections.Generic.List <Listas.Estruturas.Luz_Estrutura>(); if (NumLuzes > 0) { for (byte i = 0; i <= NumLuzes - 1; i++) { Listas.Mapa[Índice].Luz.Add(new Listas.Estruturas.Luz_Estrutura(new Rectangle(Binário.ReadByte(), Binário.ReadByte(), Binário.ReadByte(), Binário.ReadByte()))); } } // NPCs byte NumNPCs = Binário.ReadByte(); Listas.Mapa[Índice].NPC = new System.Collections.Generic.List <Listas.Estruturas.Mapa_NPC>(); Listas.Estruturas.Mapa_NPC NPC = new Listas.Estruturas.Mapa_NPC(); if (NumNPCs > 0) { for (byte i = 0; i <= NumNPCs - 1; i++) { NPC.Índice = Binário.ReadInt16(); NPC.Zona = Binário.ReadByte(); NPC.Aparecer = Binário.ReadBoolean(); NPC.X = Binário.ReadByte(); NPC.Y = Binário.ReadByte(); Listas.Mapa[Índice].NPC.Add(NPC); } } // Fecha o sistema Binário.Dispose(); }