Inheritance: MonoBehaviour
コード例 #1
0
        public bool create(String cpf, String apelido, String nome, int num_camisa, String posicao,
            String nacionalidade, DateTime data_nasc, String email, String id_equipe)
        {
            var con = db();

            Jogador jogador = new Jogador();
            jogador.cpf = cpf;
            jogador.apelido = apelido;
            jogador.nome = nome;
            jogador.num_camisa = num_camisa;
            jogador.posicao = posicao;
            jogador.nacionalidade = nacionalidade;
            jogador.data_nasc = data_nasc;
            jogador.email = email;
            //jogador.foto = foto;
            if(id_equipe == "")
            {
                jogador.id_equipe = null;
            }
            else
            {
                jogador.id_equipe = Int32.Parse(id_equipe);
            }
            con.Jogador.Add(jogador);

            int rows = con.SaveChanges();

            return rows.Equals(1);
        }
コード例 #2
0
    public void DidTapContinueButton()
    {
        int numberOfPlayers = 0;
        Jogo.jogadores.Clear();
        Jogo.jogadoresAtivos.Clear();

        for (int i = 0; i < characters.Length; i++) {
            if (characters[i].isOn) {
                numberOfPlayers++;
            }
            Jogador j = new Jogador();
            j.fotoID = i;
            j.taJogando = characters[i].isOn;
            Jogo.jogadores.Add(j);

        }

        if (numberOfPlayers >= 3) {
            for (int i = 0; i < numberOfPlayers; i++) {
                Rodada r = new Rodada();
                Jogo.partida.rodadas.Add(r);
            }

            SceneManager.LoadScene("TelaSorteioCliente");
        } else {
            errorPopup.SetActive(true);
        }
    }
コード例 #3
0
        public HabilidadeDescricaoGump(Jogador jogador, int IdHabilidade, HabilidadeGump gump)
            : base(10, 30)
        {
            this.jogador = jogador;
            this.IdHabilidade = IdHabilidade;
            this.habilidadeGump = gump;

            this.Closable = false;
            this.Disposable = false;
            this.Dragable = true;
            this.Resizable = false;

            jogador.CloseGump(typeof(HabilidadeDescricaoGump));

            this.AddPage(0);
            this.AddBackground(86, 89, 403, 328, 9380);
            this.AddImage(108, 132, 52);
            this.AddLabel(158, 127, 193, @"Descrição de " + habilidadeGump.getTipoHabilidade());

            string descricao = montarDescricao();

            this.AddHtml(146, 170, 304, 173, @descricao, (bool)true, (bool)true);

            //acoes
            this.AddButton(292, 352, 241, 243, (int)Buttons.cancelarAprenderHabilidade, GumpButtonType.Reply, 0);
        }
コード例 #4
0
ファイル: HabilidadeGump.cs プロジェクト: evildude807/kaltar
        public HabilidadeGump(Jogador jogador)
            : base(0, 0)
        {
            this.Closable=true;
            this.Disposable=true;
            this.Dragable=true;
            this.Resizable=false;

            this.jogador = jogador;

            jogador.CloseGump( typeof( HabilidadeGump ) );

            //ttulo
            this.AddPage(0);
            this.AddBackground(10, 15, 482, 430, 9380);
            this.AddLabel(83, 54, 193, @getTitulo());
            this.AddImage(33, 59, 52);

            //total de pontos de HabilidadeRacials
            this.AddImage(401, 53, 51);
            this.AddLabel(417, 67, 0, @totalPontosHabilidade(jogador));

            //cabecalho da tabela de habilidade
            AddLabel(338, 135, 0, @"Nível");
            AddLabel(384, 135, 0, @"Nível Máximo");
            AddLabel(48, 135, 0, @"Habilidade");

            //imagens de separacao do cabecalho e lista
            AddImage(43, 159, 50);
            AddImage(181, 159, 50);
            AddImage(321, 159, 50);

            //lista de HabilidadeRacials
            listarHabilidades(jogador);
        }
コード例 #5
0
        public AprenderHabilidadeGump(Jogador jogador, List<int> habilidades)
            : base(10, 30)
        {
            this.jogador = jogador;
            this.habilidades = habilidades;

            this.Closable=true;
            this.Disposable=false;
            this.Dragable=true;
            this.Resizable=false;

            jogador.CloseGump(typeof(AprenderHabilidadeGump));

            this.AddPage(0);
            this.AddBackground(10, 15, 482, 430, 9380);
            this.AddLabel(82, 54, 193, @"Aprender " + getTipoHabilidade());
            this.AddImage(32, 56, 52);
            this.AddImage(401, 53, 51);
            this.AddLabel(417, 67, 0, @totalPontosHabilidade(jogador));
            this.AddHtml(72, 93, 395, 38, @"Escolha a " + getTipoHabilidade() + " que deseja aprender.", (bool)false, (bool)false);

            //cabecalho da tabela de habilidade
            AddLabel(384, 135, 0, @"Nível Máximo");
            AddLabel(48, 135, 0, @"Habilidade");

            //imagens de separacao do cabecalho e lista
            AddImage(43, 159, 50);
            AddImage(181, 159, 50);
            AddImage(321, 159, 50);

            listarHabilidades();
        }
コード例 #6
0
    void Start()
    {
        fonteAtual = ((Rodada)Jogo.partida.rodadas [Jogo.rodadaAtual]).fonte;
        for (int i = 0; i < 6; i++) {
            if (i < Jogo.jogadoresAtivos.Count) {

                Jogador j = (Jogador)Jogo.jogadoresAtivos [i];
                if (j.eCliente) {
                    cliente = j;
                    rowCliente = rows [i];
                }
                rows [i].pontuacao.text = j.pontuacaoTotal.ToString ();
                if (j.acertou) {
                    rows [i].avatar.sprite = avatarAcertou [j.fotoID];
                    numeroAcertos++;
                } else {
                    rows [i].avatar.sprite = avatarErrou [j.fotoID];
                }
            } else {
                rows [i].gameObject.SetActive (false);
            }
        }

        CalcularPontuacaoCliente ();
        DefineVencedor();
    }
コード例 #7
0
        /**
         * Ocorre quando um ataque e aparado.
         * dano = Dano recebido se nao fosse aparado.
         */
        public override void onAparar(Mobile attacker, Jogador defensor, int dano)
        {
            int cura = (int) (dano * 0.5);
            defensor.Heal(cura, defensor, true);

            defensor.PublicOverheadMessage(Server.Network.MessageType.Regular, 0, false, "Defesa Revigorando!!!");
        }
コード例 #8
0
        public EscolhaPericiasGump(Jogador jogador, int[] valores, int inicio)
            : base(20, 20)
        {
            this.jogador = jogador;
            this.pericias = pericias;
            this.valoresPericia = valores;
            this.inicio = inicio;

            this.Closable=false;
            this.Disposable=false;
            this.Dragable=true;
            this.Resizable=false;

            this.AddPage(0);
            this.AddBackground(58, 14, 371, 570, 9380);
            this.AddImage(83, 52, 52);
            this.AddLabel(146, 53, 0, @"Perícias");

            //total disponivel
            this.AddImage(333, 53, 51);

            this.AddLabel(355, 66, 0, totalParaGastar().ToString());

            this.AddLabel(199, 127, 0, @"Valor");
            this.AddLabel(336, 112, 0, @"Máximo");
            this.AddLabel(335, 156, 0, @"Mínimo");
            this.AddLabel(348, 130, 0, maxPericia.ToString());
            this.AddLabel(349, 176, 0, minimoPericia.ToString());

            criarPaginas();
        }
コード例 #9
0
        public override void aplicar(Jogador jogador, HabilidadeNode node, bool primeiraVez)
        {
            int ponto = primeiraVez ? node.Nivel : node.Nivel - 1;

            jogador.RawStr += ponto;
            jogador.RawDex += ponto;
            jogador.RawInt += ponto;
        }
コード例 #10
0
        /**
         * Ocorre quando um ataque e aparado.
         * dano = Dano recebido se nao fosse aparado.
         */
        public override void onAtaqueCritico(Jogador atacante, Mobile defensor, int dano)
        {
            int cura = (int) (dano * 0.5);

            atacante.Heal(dano, atacante, true);

            atacante.PublicOverheadMessage(Server.Network.MessageType.Regular, 0, false, "Revitalização de Combate!!!");
        }
コード例 #11
0
        /**
         * Recupera todas as habilidades do jogador.
         */
        public override List<HabilidadeNode> getHabilidades(Jogador jogador)
        {
            List<HabilidadeNode> habilidades = new List<HabilidadeNode>();
            foreach(HabilidadeNode node in jogador.getSistemaTalento().getHabilidades().Values) {
                habilidades.Add(node);
            }

            return habilidades;
        }
コード例 #12
0
 public JogadorDaVez()
 {
     // Cria uma lista circular com os jogadores possiveis. Cada jogador tem uma lista de personagens
     this.rootJogadores = new Jogador(PlayersTags.Demonios);
     this.rootJogadores.next = new Jogador(PlayersTags.Inimigos);
     this.rootJogadores.next.next = new Jogador(PlayersTags.Aliados);
     this.rootJogadores.next.next.next = new Jogador(PlayersTags.Jogador);
     this.rootJogadores.next.next.next.next = this.rootJogadores;
 }
コード例 #13
0
        public override bool PossuiPreRequisitos(Jogador jogador)
        {
            if (jogador.RawStr >= 50)
            {
                return true;
            }

            return false;
        }
コード例 #14
0
ファイル: FocoEmArma.cs プロジェクト: evildude807/kaltar
        public override int acertarBonus(HabilidadeNode node, Jogador jogador, Mobile defensor)
        {
            BaseWeapon arma = jogador.Weapon as BaseWeapon;
            if(arma.DefSkill.Equals(TipoGrupo)) {
                return node.Nivel * 5;
            }

            return 0;
        }
コード例 #15
0
        public override bool PossuiPreRequisitos(Jogador jogador)
        {
            if (jogador.getSistemaClasse().getClasse() is Escudeiro)
            {
                return true;
            }

            return false;
        }
コード例 #16
0
ファイル: TelaPalpite.cs プロジェクト: davicabral/not-my-type
    void Start()
    {
        jogadorAtual = ((Rodada)Jogo.partida.rodadas [Jogo.rodadaAtual]).palpiteAtual;
        avatar.sprite = avatarPictures [jogadorAtual.fotoID];

        for (int i = 0; i < respostas.Length; i++) {
            respostas [i].GetComponentInChildren<Text> ().text = Jogo.opcoesDeResposta [i];
        }
    }
コード例 #17
0
        public override bool PossuiPreRequisitos(Jogador jogador)
        {
            if ((jogador.getSistemaClasse().getClasse() is Escudeiro || jogador.getSistemaClasse().getClasse() is Gatuno) && jogador.RawDex >= 60)
            {
                return true;
            }

            return false;
        }
コード例 #18
0
        public override bool PossuiPreRequisitos(Jogador jogador)
        {
            if (jogador.getSistemaClasse().getClasse() is Aprendiz || jogador.getSistemaClasse().getClasse() is Seminarista)
            {
                return true;
            }

            return false;
        }
コード例 #19
0
        public override int danoBonus(HabilidadeNode node, Jogador atacante, Mobile defensor)
        {
            BaseWeapon arma = atacante.Weapon as BaseWeapon;
            if (arma.DefSkill.Equals(TipoGrupo))
            {
                return node.Nivel * 5;
            }

            return 0;
        }
コード例 #20
0
ファイル: FocoCritico.cs プロジェクト: evildude807/kaltar
        public override int chanceAtaqueCriticoBonus(HabilidadeNode node, Jogador atacante, Mobile defensor)
        {
            BaseWeapon arma = atacante.Weapon as BaseWeapon;
            if (arma.DefSkill.Equals(TipoGrupo))
            {
                return 5;
            }

            return 0;
        }
コード例 #21
0
ファイル: Inclinacao.cs プロジェクト: evildude807/kaltar
        public static void feiticaria(Jogador jogador)
        {
            SkillUtil.zerarSkills(jogador);

            jogador.Skills.Magery.Base = 30;
            jogador.Skills.Meditation.Base = 30;
            jogador.Skills.MagicResist.Base = 30;
            jogador.Skills.Inscribe.Base = 10;
            jogador.Skills.Macing.Base = 20;
        }
コード例 #22
0
ファイル: PoderDaFe.cs プロジェクト: evildude807/kaltar
        public override bool PossuiPreRequisitos(Jogador jogador)
        {
            //Tiago, colocar o requisito do talento emboscada
            if (jogador.getSistemaClasse().getClasse() is Seminarista)
            {
                return true;
            }

            return false;
        }
コード例 #23
0
        public override bool PossuiPreRequisitos(Jogador jogador)
        {
            if (jogador.getSistemaClasse().getClasse() is Escudeiro)
            {
                //Tiago, falta colocar o teste do Talento escudo protetor
                return true;
            }

            return false;
        }
コード例 #24
0
ファイル: Flanquear.cs プロジェクト: evildude807/kaltar
        public override int danoBonus(HabilidadeNode node, Jogador atacante, Mobile defensor)
        {
            int bonus = 0;

            Point3D locA = atacante.Location;
            Point3D locD = defensor.Location;

            Console.WriteLine("flanquear 1");

            //esta no alcance de 1 tile
            if (Utility.InRange(locA, locD, 1))
            {
                Console.WriteLine("flanquear 2");

                Direction dirD = defensor.Direction;

                int x = locD.X;
                int y = locD.Y;

                //ajusta o valor de X
                if (Direction.Mask.Equals(dirD) || Direction.West.Equals(dirD) || Direction.Left.Equals(dirD))
                {
                    x++;
                }
                else if (Direction.Down.Equals(dirD) || Direction.East.Equals(dirD) || Direction.Right.Equals(dirD))
                {
                    x--;
                }

                //ajusta o valor de Y
                if (Direction.Mask.Equals(dirD) || Direction.North.Equals(dirD) || Direction.Right.Equals(dirD))
                {
                    y++;
                }
                else if (Direction.Left.Equals(dirD) || Direction.South.Equals(dirD) || Direction.Down.Equals(dirD))
                {
                    y--;
                }

                //se o atacante estiver nas costas do adversário
                if (locA.X == x && locA.Y == y)
                {
                    int divisor = node.Nivel == 1 ? 15 : 10;
                    bonus = atacante.Dex / divisor;

                    atacante.SendMessage("Bonus dano flanqueado: {0}", bonus);

                    //mensagem para atacante e defensor
                    atacante.PublicOverheadMessage(Server.Network.MessageType.Regular, 0, false, "Flanqueando!");
                    defensor.PrivateOverheadMessage(Server.Network.MessageType.Regular, 0, false, "Você foi flanqueando!", defensor.NetState);
                }
            }

            return bonus;
        }
コード例 #25
0
ファイル: Turno.cs プロジェクト: pedrohbg/UFF.ES2.Damas
 protected Jogador ObterJogadorContrario(Jogador jogador)
 {
     if (jogador == Jogador.Agil)
     {
         return Jogador.Classico;
     }
     else
     {
         return Jogador.Agil;
     }
 }
コード例 #26
0
ファイル: Base.cs プロジェクト: pedrohbg/UFF.ES2.Damas
 public static Jogador ObterTipoJogadorInimigo(Jogador jogador)
 {
     if (jogador == Jogador.Agil)
     {
         return Jogador.Classico;
     }
     else
     {
         return Jogador.Agil;
     }
 }
コード例 #27
0
ファイル: Inclinacao.cs プロジェクト: evildude807/kaltar
        public static void clericato(Jogador jogador)
        {
            SkillUtil.zerarSkills(jogador);

            jogador.Skills.Meditation.Base = 30;
            jogador.Skills.Macing.Base = 20;
            jogador.Skills.Tactics.Base = 10;
            jogador.Skills.Healing.Base = 30;
            jogador.Skills.Veterinary.Base = 30;
            jogador.Skills.SpiritSpeak.Base = 30;
            jogador.Skills.Parry.Base = 10;
        }
コード例 #28
0
ファイル: CombateUtil.cs プロジェクト: evildude807/kaltar
        /**
         * Evento que ocorre quando um arco é equipado. Mesmo que seja um BaseWeapon, ainda nao fiz para as
         * demais armas.
         */
        public int alcanceBonus(Jogador jogador, BaseWeapon arma)
        {
            int bonus = 0;

            //Tiago, trocar pelo nome da habilidade correta
            if (jogador.getSistemaTalento().possuiHabilidadeTalento(IdHabilidadeTalento.olhosDeAguia))
            {
                bonus += 2;
            }

            return bonus;
        }
コード例 #29
0
ファイル: DanoCritico.cs プロジェクト: evildude807/kaltar
        public override bool PossuiPreRequisitos(Jogador jogador)
        {
            if (jogador.getSistemaClasse().getClasse() is Escudeiro || jogador.getSistemaClasse().getClasse() is Gatuno)
            {
                if (jogador.getSistemaTalento().possuiHabilidadeTalento(TalentoNecessario))
                {
                    return true;
                }
            }

            return false;
        }
コード例 #30
0
ファイル: ContraAtaque.cs プロジェクト: evildude807/kaltar
        /**
         * Ocorre quando um ataque e aparado.
         * dano = Dano recebido se nao fosse aparado.
         */
        public override void onAparar(Mobile attacker, Jogador defensor, int dano)
        {
            BaseWeapon weapon = defensor.Weapon as BaseWeapon;

            if (weapon != null)
            {
                defensor.FixedParticles(0x3779, 1, 15, 0x158B, 0x0, 0x3, EffectLayer.Waist);
                weapon.OnSwing(defensor, attacker);
            }

            defensor.PublicOverheadMessage(Server.Network.MessageType.Regular, 0, false, "Contra Ataque!!!");
        }
コード例 #31
0
        public override bool PossuiPreRequisitos(Jogador jogador)
        {
            return jogador.getSistemaRaca().getRaca() is Humano;
		}
コード例 #32
0
        private void btnPesquisaNome_Click(object sender, EventArgs e)
        {
            Jogador jogador = new Jogador();

            PesquisarNome(jogador);
        }
コード例 #33
0
 public Jogador SalvarJogador(Jogador jogador)
 {
     throw new NotImplementedException();
 }
コード例 #34
0
 public override void aplicar(Jogador jogador, HabilidadeNode node, bool primeiraVez)
 {
 }
コード例 #35
0
        public void Deve_Criar_Um_Jogador_Com_Cpf_Valida()
        {
            var jogador = new Jogador("Renato Ayres de Oliveira", "05982100676");

            Assert.IsNotNull(jogador);
        }
コード例 #36
0
 public void cobrarTaxa(Jogador j)
 {
     j.cobrarValor(taxa);
 }
コード例 #37
0
 public void opcaoCompra(Jogador j)
 {
     comprar(j, true);
 }
コード例 #38
0
 public override void aplicar(Jogador jogador, HabilidadeNode node, bool primeiraVez)
 {
     jogador.UpdateResistances();
 }
コード例 #39
0
 public SistemaClasse(Jogador jogador)
 {
     this.jogador = jogador;
 }
コード例 #40
0
 public AprenderHabilidadeRacial(Jogador jogador, List <int> habilidades) : base(jogador, habilidades)
 {
 }
コード例 #41
0
 public void AlterarJogador(Jogador jogador)
 {
     throw new NotImplementedException();
 }
コード例 #42
0
 public Jogador AdicionarJogador(Jogador jogador)
 {
     _context.Jogadores.Add(jogador);
     _context.SaveChanges();
 }
コード例 #43
0
 public override bool PossuiPreRequisitos(Jogador jogador)
 {
     return(jogador.getSistemaRaca().getRaca() is MeioOrc);
 }
コード例 #44
0
        public void Deve_Validar_Um_Jogador_Com_Cpf_Invalido()
        {
            var jogador = new Jogador("Renato Ayres", "99999999");

            Assert.Fail();
        }
コード例 #45
0
        public void Cadastrar(Jogador novoJogador)
        {
            ctx.Jogador.Add(novoJogador);

            ctx.SaveChanges();
        }
コード例 #46
0
        protected void btnCalcularIdade_Click(object sender, EventArgs e)
        {
            Jogador j = new Jogador(Convert.ToDateTime(txtDataNascimento.Text));

            lblMensagem.Text = Convert.ToString(j.CalcularIdade());
        }
コード例 #47
0
        public void Deve_criar_um_jogador()
        {
            var jogador = new Jogador(_nome);

            Assert.NotNull(jogador);
        }
コード例 #48
0
        protected void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                if (string.IsNullOrEmpty(txtNome.Text))
                {
                    throw new NomeInvalidoException("O nome dece ser digitado.");
                }
                if (ddlPosicao.SelectedValue == "0")
                {
                    throw new PosicaoInvalidaException("Selecione a posição em que o jogador atua.");
                }

                Jogador j = new Jogador();
                j.Id          = Convert.ToInt32(txtId.Text);
                j.NmNome      = txtNome.Text;
                j.DtNascimeto = Convert.ToDateTime(txtDataNascimento.Text);
                j.NrCamisa    = Convert.ToInt32(txtNumeroCamisa.Text);


                j.Posicao = (PosicaoEnum)Enum.Parse(typeof(PosicaoEnum), ddlPosicao.SelectedValue);

                if (j.Posicao == PosicaoEnum.LateralDireito)
                {
                    j.NmPosicao = "Lateral Direito";
                }
                else if (j.Posicao == PosicaoEnum.LateralEsquerdo)
                {
                    j.NmPosicao = "Lateral Esquerdo";
                }
                else if (j.Posicao == PosicaoEnum.MeioCampo)
                {
                    j.NmNome = "Meio Campo";
                }
                else
                {
                    j.NmPosicao = j.Posicao.ToString();
                }

                j.DtConvocacao = Convert.ToDateTime(txtConvocacao.Text);
                j.DtDispensa   = Convert.ToDateTime(txtDispensa.Text);

                lblMensagem.Text = j.ObterDados();
                //TODos: SALVAMENTO DE BANCO DE DADOS SERA SALVO AQUI!!
                string scriptMensagem = string.Format("<script>ChamarExibirMensagemSucesso(`{0}`);</script>", j.ObterDados());

                ClientScript.RegisterStartupScript(this.GetType(), "CheveMensagem", scriptMensagem);
            }
            catch (NomeInvalidoException nEx)
            {
                string scriptMensagem = string.Format("<script>ChamarExibirMensagemErro(`{0}`);</script>", nEx.Message);

                ClientScript.RegisterStartupScript(this.GetType(), "ChaveMensagem", scriptMensagem);
            }
            catch (PosicaoInvalidaException posicaoEx)
            {
                lblMensagem.Text      = posicaoEx.Message;
                lblMensagem.ForeColor = System.Drawing.Color.Red;
            }
            catch (Exception ex)
            {
                lblMensagem.Text      = ex.Message;
                lblMensagem.ForeColor = System.Drawing.Color.Red;
            }
        }
コード例 #49
0
 public jogoFoda(Jogador jogador)
 {
     _jogador = jogador;
 }
コード例 #50
0
 public void Insert(Jogador jogador)
 {
     _db.Jogadores.Add(jogador);
 }
コード例 #51
0
        private void btnPesquisaPosicao_Click(object sender, EventArgs e)
        {
            Jogador jogador = new Jogador();

            PesquisarPosicao(jogador);
        }
コード例 #52
0
 public void Update(Jogador jogador)
 {
     _db.Entry(jogador).State = System.Data.Entity.EntityState.Modified;
 }
コード例 #53
0
        public override void aplicar(Jogador jogador, HabilidadeNode node, bool primeiraVez)
        {
            int ponto = primeiraVez ? node.Nivel : node.Nivel - 1;

            jogador.Skills.Tactics.Base += (ponto * 5);
        }
コード例 #54
0
        public async Task <bool> Adicionar(Jogador jogador)
        {
            await _contexto.Jogadores.AddAsync(jogador);

            return(await _contexto.SaveChangesAsync() > 0);
        }
コード例 #55
0
 public async Task <bool> Atualizar(Jogador jogador)
 {
     _contexto.Jogadores.Update(jogador);
     return(await _contexto.SaveChangesAsync() > 0);
 }
コード例 #56
0
 public async Task <bool> Deletar(Jogador jogador)
 {
     _contexto.Jogadores.Remove(jogador);
     return(await _contexto.SaveChangesAsync() > 0);
 }
コード例 #57
0
        public void Deve_Validar_Um_Jogador_Sem_Nome()
        {
            var jogador = new Jogador(null, "99999999");

            Assert.Fail();
        }
コード例 #58
0
 public override bool PossuiPreRequisitos(Jogador jogador)
 {
     return(true);
 }
コード例 #59
0
 /**
  * Recupera o número de pontos de habilidade.
  */
 public override string totalPontosHabilidade(Jogador jogador)
 {
     return(jogador.getSistemaRaca().pontosDisponiveis() + "");
 }
コード例 #60
0
        public void Insert(Jogador j)
        {
            //Connection Factory: Classe que gerencia o local da conexão, tendo o método responsável por obter a conexão
            cf = new ConnectionFactory();

            //StringBuilder: Construtor de String e o Método Append concatena cada linha dentro da variável chamada query
            StringBuilder query = new StringBuilder();

            query.AppendLine("INSERT INTO TB_JOGADOR ");
            query.AppendLine("(DS_NOME, NR_NUMERO, ID_POSICAO_JOGADOR, ID_SELECAO_JOGADOR, DS_IMAGEM_JOGADOR, DS_TIPO_IMAGEM_JOGADOR, DS_CAMINHO_IMAGEM_JOGADOR) ");
            query.AppendLine("VALUES (@DS_NOME, @NR_NUMERO, @ID_POSICAO_JOGADOR, @ID_SELECAO_JOGADOR, @DS_IMAGEM_JOGADOR, @DS_TIPO_IMAGEM_JOGADOR, @DS_CAMINHO_IMAGEM_JOGADOR) ");
            query.AppendLine("SELECT SCOPE_IDENTITY(); ");//Linha Responsável por retornar id que foi Inserido

            //CreateCommand: Inicializa o objeto SqlCommand associando o comando com a conexão do Banco onde será executado
            cf.Comando = cf.Conexao.CreateCommand();

            //Abaixo os parametros que no momento da execução serão substituídos pelos valor das propriedades

            cf.Comando.Parameters.AddWithValue("@DS_NOME", j.DsNome);
            cf.Comando.Parameters.AddWithValue("@NR_NUMERO", j.NrCamisa);
            cf.Comando.Parameters.AddWithValue("@ID_POSICAO_JOGADOR", j.IdPosicaoJogador);
            cf.Comando.Parameters.AddWithValue("@ID_SELECAO_JOGADOR", j.IdSelecaoJogador);

            //Se o array de bytes estiver diferente de vazio, salvará, caso contrário manda nulo para o banco
            if (j.DsImagemJogador.Length != 0)
            {
                cf.Comando.Parameters.AddWithValue("@DS_IMAGEM_JOGADOR", j.DsImagemJogador);
            }
            else
            {
                cf.Comando.Parameters.AddWithValue("@DS_IMAGEM_JOGADOR", DBNull.Value);
            }

            //Se o caminho da imagem não estiver vazio, salvará, caso contrário mando nulo para o banco
            if (!string.IsNullOrEmpty(j.DsCaminhoImagemJogador))
            {
                cf.Comando.Parameters.AddWithValue("@DS_CAMINHO_IMAGEM_JOGADOR", j.DsCaminhoImagemJogador);
                cf.Comando.Parameters.AddWithValue("@DS_TIPO_IMAGEM_JOGADOR", j.DsTipoImagem);
            }
            else
            {
                cf.Comando.Parameters.AddWithValue("@DS_CAMINHO_IMAGEM_JOGADOR", DBNull.Value);
                cf.Comando.Parameters.AddWithValue("@DS_TIPO_IMAGEM_JOGADOR", DBNull.Value);
            }

            //CommandType indica que o comando será via texto, poderia ser uma procedure no banco de dados por exemplo.
            cf.Comando.CommandType = CommandType.Text;//Clicar com o Direito para adicionar Using

            //CommandText: Propriedade do objeto command que receberá o texto do comando a ser executado.
            cf.Comando.CommandText = query.ToString();

            //Abre a conexão
            cf.Conexao.Open();

            //ExecuteScalar retornar a primeira coluna do último select executado
            //Como o Scope_identity retorna a chave primária inserida, ele retornará o ID que guardaremos para o objeto Pessoa
            j.IdJogador = Convert.ToInt32(cf.Comando.ExecuteScalar());

            //Fecha a conexão
            cf.Conexao.Close();
        }