本文整理汇总了C#中Jogador.getSistemaTalento方法的典型用法代码示例。如果您正苦于以下问题:C# Jogador.getSistemaTalento方法的具体用法?C# Jogador.getSistemaTalento怎么用?C# Jogador.getSistemaTalento使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Jogador
的用法示例。
在下文中一共展示了Jogador.getSistemaTalento方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: getHabilidades
/**
* 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;
}
示例2: alcanceBonus
/**
* 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;
}
示例3: PossuiPreRequisitos
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;
}
示例4: aprenderHabilidade
/**
* Quando confirmado o aprendizado, esse método será invocado pelo gump de Confirmação.
*/
public override bool aprenderHabilidade(Jogador jogador, int idHabilidade)
{
try
{
return jogador.getSistemaTalento().aprender((IdHabilidadeTalento)idHabilidade);
}
catch (Exception e)
{
Console.WriteLine(e.StackTrace);
jogador.SendMessage("Não foi possível encontrar habilidade com o id informado. " + idHabilidade);
return false;
}
}
示例5: bonusResistencia
/**
* Retorna o bônus que o jogador tem para o tipo de resistencia.
*/
public int bonusResistencia(Jogador jogador, ResistanceType type)
{
int bonus = 0;
//habilidade racial
Dictionary<IdHabilidadeRacial, HabilidadeNode> racial = jogador.getSistemaRaca().getHabilidades();
List<HabilidadeNode> habilidadesNode = new List<HabilidadeNode>(racial.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.racial, type);
//habilidade talento
Dictionary<IdHabilidadeTalento, HabilidadeNode> talento = jogador.getSistemaTalento().getHabilidades();
habilidadesNode = new List<HabilidadeNode>(talento.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.talento, type);
return bonus;
}
示例6: acertarBonus
public int acertarBonus(Jogador jogador, Mobile defensor)
{
int bonus = 0;
//habilidade racial
Dictionary<IdHabilidadeRacial, HabilidadeNode> racial = jogador.getSistemaRaca().getHabilidades();
List<HabilidadeNode> habilidadesNode = new List<HabilidadeNode>(racial.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.racial, jogador, defensor);
//habilidade talento
Dictionary<IdHabilidadeTalento, HabilidadeNode> talento = jogador.getSistemaTalento().getHabilidades();
habilidadesNode = new List<HabilidadeNode>(talento.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.talento, jogador, defensor);
return bonus;
}
示例7: OnSummon
/**
* Evento invocado quando uma criatura é invocada por um jogador.
*/
public void OnSummon(Jogador caster, BaseCreature creature, ref Point3D p, ref TimeSpan duration)
{
SistemaTalento st = caster.getSistemaTalento();
//Aumenta o duração
if (st.possuiHabilidadeTalento(IdHabilidadeTalento.conjuracaoExtendida))
{
caster.SendMessage("Duracao normal: {0}", duration);
double totalDuracaoSegundos = duration.TotalSeconds * 1.5;
duration = TimeSpan.FromSeconds(totalDuracaoSegundos);
caster.SendMessage("Duracao alterada: {0}", duration);
}
//Aumenta a resistencia das conjurações
if (st.possuiHabilidadeTalento(IdHabilidadeTalento.conjuracaoResistente))
{
creature.AddResistanceMod(new ResistanceMod(ResistanceType.Cold, 5));
creature.AddResistanceMod(new ResistanceMod(ResistanceType.Energy, 5));
creature.AddResistanceMod(new ResistanceMod(ResistanceType.Fire, 5));
creature.AddResistanceMod(new ResistanceMod(ResistanceType.Physical, 5));
creature.AddResistanceMod(new ResistanceMod(ResistanceType.Poison, 5));
caster.SendMessage("Bonus resistencia");
}
//Aumenta os atributos da conjuração
if (st.possuiHabilidadeTalento(IdHabilidadeTalento.conjuracaoResistente))
{
HabilidadeNode node = st.getHabilidades()[IdHabilidadeTalento.conjuracaoResistente];
StatMod statusBonus = new StatMod(StatType.All, "TalentoConjuracaoForte", node.Nivel * 10, TimeSpan.FromDays(99));
creature.AddStatMod(statusBonus);
caster.SendMessage("Bonus Status");
}
}
示例8: temTalentoParaEquipar
public static bool temTalentoParaEquipar(Jogador jogador, BaseWeapon arma)
{
SistemaTalento sistemaTalento = jogador.getSistemaTalento();
//FIXME quando as armas forem criadas. elas teram as categorias corretas e
//será mais fácil realizar o teste
/*
if(isItemComun(arma)) {
return true;
}
else if(isArmaComum(arma, CategoriaArma.espada) && sistemaTalento.possuiTalento(IDTalento.armaComumEspada)) {
return true;
}
else if(isArmaComum(arma, CategoriaArma.machado) && sistemaTalento.possuiTalento(IDTalento.armaComumMachado)) {
return true;
}
else if(isArmaComum(arma, CategoriaArma.amasso) && sistemaTalento.possuiTalento(IDTalento.armaComumAmasso)) {
return true;
}
else if(isArmaComum(arma, CategoriaArma.pontiaguda) && sistemaTalento.possuiTalento(IDTalento.armaComumPontiaguda)) {
return true;
}
else if(isArmaComum(arma, CategoriaArma.distancia) && sistemaTalento.possuiTalento(IDTalento.armaComumDistancia)) {
return true;
}
else if(isArmaMarcial(arma, CategoriaArma.espada) && sistemaTalento.possuiTalento(IDTalento.armaMarcialEspada)) {
return true;
}
else if(isArmaMarcial(arma, CategoriaArma.machado) && sistemaTalento.possuiTalento(IDTalento.armaMarcialMachado)) {
return true;
}
else if(isArmaMarcial(arma, CategoriaArma.amasso) && sistemaTalento.possuiTalento(IDTalento.armaMarcialAmasso)) {
return true;
}
else if(isArmaMarcial(arma, CategoriaArma.pontiaguda) && sistemaTalento.possuiTalento(IDTalento.armaMarcialPontiaguda)) {
return true;
}
else if(isArmaMarcial(arma, CategoriaArma.distancia) && sistemaTalento.possuiTalento(IDTalento.armaMarcialDistancia)) {
return true;
}
*/
return false;
}
示例9: apararBonus
public double apararBonus(Jogador jogador, Item item)
{
double bonus = 0;
//habilidade racial
Dictionary<IdHabilidadeRacial, HabilidadeNode> racial = jogador.getSistemaRaca().getHabilidades();
List<HabilidadeNode> habilidadesNode = new List<HabilidadeNode>(racial.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.racial, item);
//habilidade talento
Dictionary<IdHabilidadeTalento, HabilidadeNode> talento = jogador.getSistemaTalento().getHabilidades();
habilidadesNode = new List<HabilidadeNode>(talento.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.talento, item);
return bonus;
}
示例10: chanceAtaqueCriticoBonus
/**
* Bonus na chance do ataque crítico. Valor em %. exemplo 10 para 10% a mais na chance, que já é de 5%.
*/
public int chanceAtaqueCriticoBonus(Jogador atacante, Mobile defensor)
{
int bonus = 0;
//habilidade racial
Dictionary<IdHabilidadeRacial, HabilidadeNode> racial = atacante.getSistemaRaca().getHabilidades();
List<HabilidadeNode> habilidadesNode = new List<HabilidadeNode>(racial.Values);
bonus += getChanceAtaqueCriticoBonus(habilidadesNode, HabilidadeTipo.racial, atacante, defensor);
//habilidade talento
Dictionary<IdHabilidadeTalento, HabilidadeNode> talento = atacante.getSistemaTalento().getHabilidades();
habilidadesNode = new List<HabilidadeNode>(talento.Values);
bonus += getChanceAtaqueCriticoBonus(habilidadesNode, HabilidadeTipo.talento, atacante, defensor);
return bonus;
}
示例11: temTalentoParaEquiparArmadura
public static bool temTalentoParaEquiparArmadura(Jogador jogador, BaseArmor armadura)
{
SistemaTalento sistemaTalento = jogador.getSistemaTalento();
/*
if(isRoupa(armadura)) {
return true;
}
else if(isArmaduraLeve(armadura) && sistemaTalento.possuiTalento(IDTalento.armaduraLeve)) {
return true;
}
else if(isArmaduraMedia(armadura) && sistemaTalento.possuiTalento(IDTalento.armaduraMedia)) {
return true;
}
else if(isArmaduraPesada(armadura) && sistemaTalento.possuiTalento(IDTalento.armaduraPesada)) {
return true;
}
*/
return false;
}
示例12: skillsCap
/**
* Recupera o valor do skillCap total.
*/
public int skillsCap(Jogador jogador, TipoSkill tipoSkill)
{
int skillsCap = jogador.Skills.Cap;
//habilidade racial
Dictionary<IdHabilidadeRacial, HabilidadeNode> racial = jogador.getSistemaRaca().getHabilidades();
List<HabilidadeNode> habilidadesNode = new List<HabilidadeNode>(racial.Values);
int bonus = getBonus(habilidadesNode, HabilidadeTipo.racial, tipoSkill);
//habilidade talento
Dictionary<IdHabilidadeTalento, HabilidadeNode> talento = jogador.getSistemaTalento().getHabilidades();
habilidadesNode = new List<HabilidadeNode>(talento.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.talento, tipoSkill);
return skillsCap + bonus;
}
示例13: defenderBonus
public int defenderBonus(Jogador jogador)
{
int bonus = 0;
BaseWeapon arma = jogador.Weapon as BaseWeapon;
Item escudo = jogador.ShieldArmor;
//habilidade racial
Dictionary<IdHabilidadeRacial, HabilidadeNode> racial = jogador.getSistemaRaca().getHabilidades();
List<HabilidadeNode> habilidadesNode = new List<HabilidadeNode>(racial.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.racial, arma, escudo);
//habilidade talento
Dictionary<IdHabilidadeTalento, HabilidadeNode> talento = jogador.getSistemaTalento().getHabilidades();
habilidadesNode = new List<HabilidadeNode>(talento.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.talento, arma, escudo);
return bonus;
}
示例14: valorAtributoBonusAtaque
/**
* Retorna o valor do atributo que é utilizado para calcular o dano.
* Normalmente será a força, mas existe talento que pode alterar isso.
*
*/
public int valorAtributoBonusAtaque(Jogador jogador)
{
int valorAtributo = jogador.Str;
//procura pelo talento que altera o atributo para dar dano com dex
bool dex = jogador.getSistemaTalento().possuiHabilidadeTalento(IdHabilidadeTalento.agilidadeComArma);
//se possuir, verifica se ele esta com arma pontiaguda
if (dex)
{
if(WeaponType.Piercing.Equals(jogador.Weapon.GetType())) {
valorAtributo = jogador.Dex;
}
}
return valorAtributo;
}
示例15: skillCap
/**
* Recupera o skillCap da skill informada. Procurando alguma habilidade de possa aumentar o valor.
*
*/
public double skillCap(Jogador jogador, Skill skill)
{
double cap = skill.Cap;
double bonus = 0;
//habilidade racial
Dictionary<IdHabilidadeRacial, HabilidadeNode> racial = jogador.getSistemaRaca().getHabilidades();
List<HabilidadeNode> habilidadesNode = new List<HabilidadeNode>(racial.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.racial, skill.SkillName);
//habilidade talento
Dictionary<IdHabilidadeTalento, HabilidadeNode> talento = jogador.getSistemaTalento().getHabilidades();
habilidadesNode = new List<HabilidadeNode>(talento.Values);
bonus += getBonus(habilidadesNode, HabilidadeTipo.talento, skill.SkillName);
return cap + bonus;
}