public static void cache_OnCommand(CommandEventArgs e) { NubiaPlayer p = e.Mobile as NubiaPlayer; int DD = 10; int NuitModus = 0; if (p.Competences.mustWait()) { return; } if (LightCycle.ComputeLevelFor(p) > p.LightLevel) { if (LightCycle.ComputeLevelFor(p) > 10) { NuitModus -= 5; } else if (LightCycle.ComputeLevelFor(p) < 10) { NuitModus += 5; } p.SendMessage("Bonus de nuit: -" + NuitModus); } else { if (p.LightLevel > 10) { NuitModus -= 5; } else if (p.LightLevel < 10) { NuitModus += 5; } p.SendMessage("Bonus de nuit: -" + NuitModus); } DD += NuitModus; DD += (int)p.Taille * 2; bool mustBluff = false; int DDBluff = 10; foreach (NubiaMobile mob in p.GetMobilesInRange(8)) { if (mob == p) { continue; } if (mob.CanSee(p)) { int mobPsy = mob.Competences[CompType.Psychologie].intRoll() - NuitModus; int bluff = p.Competences[CompType.Bluff].intRoll() + NuitModus; if (mobPsy < bluff) { mob.SendMessage("Quelques choses vous attire l'oeil plus loin"); } DDBluff += mobPsy - bluff; mustBluff = true; } } if (mustBluff) { if (p.Competences[CompType.Bluff].roll(DDBluff)) { p.SendMessage("Vous réussissez à distraitre les observateurs pour vous cacher"); } else { p.SendMessage("Trop de monde vous observer, impossible de vous cacher"); return; } } if (p.Competences[CompType.Discretion].roll(DD)) { p.SendMessage("Vous vous dissimulez avec discretion"); p.Hidden = true; } else { p.SendMessage("Vous n'arrivez pas a vous dissimuler"); } p.Competences.wait(1); }
public override void ComputeBaseLightLevels(Mobile m, out int global, out int personal) { global = LightCycle.ComputeLevelFor(m); personal = m.LightLevel; }