Exemplo n.º 1
0
        private void adicionarHabilidadeRacial(HabilidadeRacial habilidade)
        {
            RacaModule rm = getRacaModule();

            HabilidadeNode node = null;

            if (rm.Habilidades.ContainsKey((IdHabilidadeRacial)habilidade.Id))
            {
                node = rm.Habilidades[(IdHabilidadeRacial)habilidade.Id];
            }

            bool primeiraVez = true;

            if (node == null)
            {
                node = new HabilidadeNode((int)habilidade.Id, 1);
                rm.Habilidades.Add((IdHabilidadeRacial)node.Id, node);

                jogador.SendMessage("Você acaba de aprender o habilidade racial {0}.", habilidade.Nome);
                primeiraVez = true;
            }
            else
            {
                node.aumentarNivel();
                jogador.SendMessage("Sua habilidade {0} acaba de aumentar de nível.", habilidade.Nome);
                primeiraVez = false;
            }

            //faz as modificacoes necessárias da habilidade
            habilidade.aplicar(jogador, node, primeiraVez);
        }
Exemplo n.º 2
0
        private bool podeAumentarNivelHabilidadeRacial(IdHabilidadeRacial idHabilidadeRacial)
        {
            RacaModule rm = getRacaModule();

            if (rm.Habilidades.ContainsKey(idHabilidadeRacial))
            {
                HabilidadeRacial habilidade = HabilidadeRacial.getHabilidadeRacial(idHabilidadeRacial);
                HabilidadeNode   node       = rm.Habilidades[idHabilidadeRacial];

                if (habilidade.NivelMaximo > node.Nivel)
                {
                    return(true);
                }
            }

            return(false);
        }
Exemplo n.º 3
0
        /**
         * Atribui os valores da raca ao jogador.
         */
        public void aplicarRaca(Race raca)
        {
            bool feminino = jogador.Female;

            int cabeloCor = raca.RandomHairHue();
            int PeleCor   = raca.RandomSkinHue();

            int barba  = raca.RandomFacialHair(feminino);
            int cabelo = raca.RandomHair(feminino);

            //atribui o cabelo
            jogador.HairItemID = cabelo;
            jogador.HairHue    = cabeloCor;

            //atribui a barba
            jogador.FacialHairItemID = barba;
            jogador.FacialHairHue    = cabeloCor;

            //se tiver a barba de orc, remove e pode adicionar novamente abaixo.
            Item barbaItem = jogador.FindItemOnLayer(Layer.FacialHair);

            if (barbaItem is OrcMascaraBarba)
            {
                jogador.RemoveItem(barbaItem);
            }

            //adiciona a barba padrão para os orcs
            if (raca is MeioOrc)
            {
                jogador.AddItem(new OrcMascaraBarba(PeleCor));
            }

            //atribui o corpo
            jogador.BodyValue = raca.AliveBody(feminino);

            //atribui a cor da pelo
            jogador.Hue = PeleCor;

            //atribui no modulo de raca a raca escolhida
            RacaModule rm = getRacaModule();

            rm.Raca = raca;

            jogador.SendMessage("Você acaba de se tornar um {0}", raca.Name);
        }
Exemplo n.º 4
0
        /**
         * Recupera o modulo de HabilidadeRacial
         */
        private RacaModule getRacaModule()
        {
            RacaModule tm = (RacaModule)CentralMemory.GetModule(jogador.Serial, typeof(RacaModule));

            return(tm);
        }