/* * Adiciona o HabilidadeRacial ao jogador. * É verificado se o jogador possui os pré-requisitos * e já não possua o HabilidadeRacial. */ public bool aprender(IdHabilidadeRacial IdHabilidadeRacial) { HabilidadeRacial habilidade = HabilidadeRacial.getHabilidadeRacial(IdHabilidadeRacial); if (habilidade == null) { jogador.SendMessage("Habilidade racial não encontrado, informe os administradores."); return(false); } if (pontosDisponiveis() < 1) { jogador.SendMessage("Voce não possui pontos de habilidade racial disponiveis."); return(false); } if (!habilidade.PossuiPreRequisitos(jogador)) { jogador.SendMessage("Voce não possui os pre-requisitos para aprender o habilidade racial."); return(false); } if (possuiHabilidadeRacial((IdHabilidadeRacial)habilidade.Id)) { if (!podeAumentarNivelHabilidadeRacial((IdHabilidadeRacial)habilidade.Id)) { jogador.SendMessage("Você já possui o nível máximo nesta habilidade racial."); return(false); } } adicionarHabilidadeRacial(habilidade); return(true); }
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); }
/** * Retorna a classe do talento pelo seu ID */ public static HabilidadeRacial getHabilidadeRacial(IdHabilidadeRacial id) { return (HabilidadeRacial)habilidades[id]; }
/** * Verifica se o jogador já possui o HabilidadeRacial */ public bool possuiHabilidadeRacial(IdHabilidadeRacial IdHabilidadeRacial) { return(getRacaModule().Habilidades.ContainsKey(IdHabilidadeRacial)); }
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; }
/** * Verifica se o jogador já possui o HabilidadeRacial */ public bool possuiHabilidadeRacial(IdHabilidadeRacial IdHabilidadeRacial) { return getRacaModule().Habilidades.ContainsKey(IdHabilidadeRacial); }
/* * Adiciona o HabilidadeRacial ao jogador. * É verificado se o jogador possui os pré-requisitos * e já não possua o HabilidadeRacial. */ public bool aprender(IdHabilidadeRacial IdHabilidadeRacial) { HabilidadeRacial habilidade = HabilidadeRacial.getHabilidadeRacial(IdHabilidadeRacial); if (habilidade == null) { jogador.SendMessage("Habilidade racial não encontrado, informe os administradores."); return false; } if (pontosDisponiveis() < 1) { jogador.SendMessage("Voce não possui pontos de habilidade racial disponiveis."); return false; } if (!habilidade.PossuiPreRequisitos(jogador)) { jogador.SendMessage("Voce não possui os pre-requisitos para aprender o habilidade racial."); return false; } if (possuiHabilidadeRacial((IdHabilidadeRacial)habilidade.Id)) { if (!podeAumentarNivelHabilidadeRacial((IdHabilidadeRacial)habilidade.Id)) { jogador.SendMessage("Você já possui o nível máximo nesta habilidade racial."); return false; } } adicionarHabilidadeRacial(habilidade); return true; }
/** * Retorna a classe do talento pelo seu ID */ public static HabilidadeRacial getHabilidadeRacial(IdHabilidadeRacial id) { return((HabilidadeRacial)habilidades[id]); }