本文整理汇总了C#中Jogador.SendMessage方法的典型用法代码示例。如果您正苦于以下问题:C# Jogador.SendMessage方法的具体用法?C# Jogador.SendMessage怎么用?C# Jogador.SendMessage使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Jogador
的用法示例。
在下文中一共展示了Jogador.SendMessage方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: 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.getSistemaRaca().aprender((IdHabilidadeRacial)idHabilidade);
}
catch (Exception e)
{
Console.WriteLine(e.StackTrace);
jogador.SendMessage("Não foi possível encontrar habilidade com o id informado. " + idHabilidade);
return false;
}
}
示例2: danoBonus
public override int danoBonus(HabilidadeNode node, Jogador atacante, Mobile defensor)
{
int bonus = 0;
if(isMortoVivo(defensor)) {
bonus = (int) (atacante.Skills.SpiritSpeak.Value / 10);
atacante.SendMessage("Bonus dano Poder da Fé: {0}", bonus);
//mensagem para atacante e defensor
atacante.PublicOverheadMessage(Server.Network.MessageType.Regular, 0, false, "Poder da Fé!");
defensor.PrivateOverheadMessage(Server.Network.MessageType.Regular, 0, false, "Você recebeu o Poder da Fé!", defensor.NetState);
}
return bonus;
}
示例3: 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");
}
}
示例4: danoBonus
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;
}