public override bool Apply(Fighter[] targets) { Zone zone = new Zone(Effect.ShapeType, Effect.Radius); Color color = Color.FromArgb(Effect.Value); Trap trap = new Trap(Fight.PopNextMarkId(), Source, SpellLevel, Effect, CastPoint, zone, color); Fight.AddMark(trap); return(true); }
public override bool Apply(Fighter[] targets) { MarkTriggerTypeEnum type = GetTriggerType(); Zone zone = new Zone(Effect.ShapeType, Effect.Radius); Color color = Color.FromArgb(Effect.Value); Glyph glyph = new Glyph(Fight.PopNextMarkId(), Source, SpellLevel, Effect, CastPoint, zone, color, type); Fight.AddMark(glyph); return(true); }
public override bool Apply(Fighter[] targets) { if (Fight.GetMarks <Rune>(x => x.CenterPoint.CellId == CastPoint.CellId).Count() > 0) { return(false); } Zone zone = new Zone(Effect.ShapeType, Effect.Radius); Color color = Color.FromArgb(Effect.Value); Rune rune = new Rune(Fight.PopNextMarkId(), Source, SpellLevel, Effect, CastPoint, zone, color); Fight.AddMark(rune); return(true); }
public override bool Apply(Fighter[] targets) { if (!Source.Team.CanSpawnPortal()) { Source.Team.RemoveFirstPortal(Source); } Zone zone = new Zone(Effect.ShapeType, Effect.Radius); Color color = GetColorByTeam(Source.Team); Portal portal = new Portal(Fight.PopNextMarkId(), Source, SpellLevel, Effect, CastPoint, zone, color); Fight.AddMark(portal); //if (Source.Team.GetAllPortals().Length <= 2) //{ // ContextHandler.SendGameActionFightActivateGlyphTrapMessage(Fight.Clients, 1, 1181, Caster, Caster.Fight.GetAllPortalsByTeam(Caster.Team).Count > 1); //} return(true); }