using System; using System.Collections.Generic; using System.Linq; namespace JXHelper.Core { public enum SkillType { Attack, // Chiêu công kích (thi triển bằng Chuột trái hoặc Chuột phải) ActiveBuff, // Chiêu buff chủ động (thi triển định kỳ bằng Chuột phải hoặc phím võ công) Curse, // Bùa chú suy yếu / giảm kháng (thi triển vào đối thủ trước khi đánh) Passive // Chiêu bị động (tự kích hoạt vĩnh viễn, KHÔNG CÓ PHÍM và KHÔNG CẦN BẤM PHÍM) } public class SkillDef { public int SkillId { get; set; } public string Name { get; set; } = string.Empty; public string Sect { get; set; } = string.Empty; public SkillType Type { get; set; } = SkillType.Attack; public int RequiredLevel { get; set; } = 1; public bool IsBuff => Type == SkillType.ActiveBuff; public bool IsCurse => Type == SkillType.Curse; public bool IsPassive => Type == SkillType.Passive; public int DefaultCooldownSec { get; set; } public string Description { get; set; } = string.Empty; public override string ToString() => RequiredLevel > 1 ? $"{Name} (cấp {RequiredLevel})" : Name; } /// /// Cơ sở dữ liệu chuẩn chiêu thức 10 Môn Phái Võ Lâm Truyền Kỳ 1. /// Phân định rõ rệt: Chiêu công kích (Attack), Chiêu buff chủ động (ActiveBuff), Bùa chú suy yếu (Curse), và Chiêu bị động (Passive). /// public static class SkillDatabase { public static readonly string[] AllSects = new[] { "Cái Bang", "Võ Đang", "Thiếu Lâm", "Thiên Vương", "Đường Môn", "Ngũ Độc", "Nga My", "Thúy Yên", "Thiên Nhẫn", "Côn Lôn" }; public static readonly List MasterSkills = new() { // === CÁI BANG === new SkillDef { SkillId = 125, Name = "Hàng Long Tại Dã", Sect = "Cái Bang", Type = SkillType.Attack, RequiredLevel = 10, DefaultCooldownSec = 0, Description = "Chưởng pháp Cái Bang sơ cấp cấp 10 (1 rồng)" }, new SkillDef { SkillId = 126, Name = "Đả Cẩu Trận", Sect = "Cái Bang", Type = SkillType.ActiveBuff, RequiredLevel = 20, DefaultCooldownSec = 180, Description = "Trận pháp tăng né tránh và phòng thủ" }, new SkillDef { SkillId = 127, Name = "Hàng Long Hữu Hối", Sect = "Cái Bang", Type = SkillType.Attack, RequiredLevel = 30, DefaultCooldownSec = 0, Description = "Chưởng pháp Cái Bang trung cấp cấp 30 (2 rồng)" }, new SkillDef { SkillId = 136, Name = "Bổng Đả Ác Cẩu", Sect = "Cái Bang", Type = SkillType.Attack, RequiredLevel = 30, DefaultCooldownSec = 0, Description = "Bổng pháp Cái Bang cấp 30" }, new SkillDef { SkillId = 277, Name = "Hoạt Bất Lưu Thủ", Sect = "Cái Bang", Type = SkillType.Passive, RequiredLevel = 40, DefaultCooldownSec = 0, Description = "Tuyệt kỹ bị động cấp 40 Cái Bang tăng né tránh cực đại" }, new SkillDef { SkillId = 129, Name = "Kháng Long Hữu Hối", Sect = "Cái Bang", Type = SkillType.Attack, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Chưởng rồng Cái Bang cấp 50 xuất 3 rồng lửa uy lực lớn" }, new SkillDef { SkillId = 128, Name = "Ác Cẩu Lan Lộ", Sect = "Cái Bang", Type = SkillType.Attack, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Bổng pháp Cái Bang cấp 50 đánh lan xung quanh" }, new SkillDef { SkillId = 360, Name = "Tiêu Diêu Công", Sect = "Cái Bang", Type = SkillType.Passive, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Tâm pháp bị động cấp 50 Cái Bang gia tăng uy lực tấn công" }, new SkillDef { SkillId = 130, Name = "Túy Điệp Cuồng Vũ", Sect = "Cái Bang", Type = SkillType.ActiveBuff, RequiredLevel = 60, DefaultCooldownSec = 60, Description = "Trấn phái Cái Bang uống rượu tăng né tránh và tốc độ chạy" }, new SkillDef { SkillId = 134, Name = "Phi Long Tại Thiên", Sect = "Cái Bang", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Tuyệt kỹ chưởng rồng Cái Bang cấp 90" }, new SkillDef { SkillId = 138, Name = "Thiên Hạ Vô Cẩu", Sect = "Cái Bang", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Tuyệt kỹ Đả Cẩu Bổng pháp Cái Bang cấp 90" }, new SkillDef { SkillId = 361, Name = "Hóa Cảnh Tiêu Dao", Sect = "Cái Bang", Type = SkillType.Passive, RequiredLevel = 120, DefaultCooldownSec = 0, Description = "Tâm pháp bị động tăng hỏa sát và tốc độ đánh" }, new SkillDef { SkillId = 362, Name = "Bát Hoang Lục Hợp", Sect = "Cái Bang", Type = SkillType.Passive, RequiredLevel = 120, DefaultCooldownSec = 0, Description = "Tâm pháp trấn phái hỗ trợ bị động Cái Bang" }, // === VÕ ĐANG === new SkillDef { SkillId = 80, Name = "Thương Khung Vô Cực", Sect = "Võ Đang", Type = SkillType.Attack, RequiredLevel = 10, DefaultCooldownSec = 0, Description = "Quyền pháp Võ Đang sơ cấp cấp 10" }, new SkillDef { SkillId = 86, Name = "Thê Vân Tung", Sect = "Võ Đang", Type = SkillType.ActiveBuff, RequiredLevel = 20, DefaultCooldownSec = 90, Description = "Khinh công tăng tốc chạy Võ Đang" }, new SkillDef { SkillId = 82, Name = "Kiếm Phi Kinh Thiên", Sect = "Võ Đang", Type = SkillType.Attack, RequiredLevel = 30, DefaultCooldownSec = 0, Description = "Kiếm pháp Võ Đang cấp 30 phóng kiếm tầm xa" }, new SkillDef { SkillId = 83, Name = "Bác Cấp Lệ Ma", Sect = "Võ Đang", Type = SkillType.Attack, RequiredLevel = 30, DefaultCooldownSec = 0, Description = "Quyền pháp Võ Đang cấp 30" }, new SkillDef { SkillId = 87, Name = "Thất Tinh Quyết", Sect = "Võ Đang", Type = SkillType.Passive, RequiredLevel = 40, DefaultCooldownSec = 0, Description = "Tâm pháp bị động tăng chính xác và tốc đánh" }, new SkillDef { SkillId = 84, Name = "Tọa Vọng Vô Vi", Sect = "Võ Đang", Type = SkillType.ActiveBuff, RequiredLevel = 50, DefaultCooldownSec = 180, Description = "Dùng nội lực hóa giải sát thương (khiên mana)" }, new SkillDef { SkillId = 88, Name = "Thái Cực Thần Công", Sect = "Võ Đang", Type = SkillType.Passive, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Tâm pháp bị động tăng nội lực tối đa và tấn công" }, new SkillDef { SkillId = 90, Name = "Nhân Kiếm Hợp Nhất", Sect = "Võ Đang", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chiêu thức kiếm pháp Võ Đang cấp 90" }, new SkillDef { SkillId = 91, Name = "Vô Ngã Vô Kiếm", Sect = "Võ Đang", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chiêu thức quyền pháp Võ Đang cấp 90" }, // === NGA MY === new SkillDef { SkillId = 95, Name = "Phiêu Tuyết Xuyên Vân", Sect = "Nga My", Type = SkillType.Attack, RequiredLevel = 10, DefaultCooldownSec = 0, Description = "Chưởng pháp Nga My sơ cấp cấp 10" }, new SkillDef { SkillId = 98, Name = "Từ Hàng Phổ Độ", Sect = "Nga My", Type = SkillType.ActiveBuff, RequiredLevel = 20, DefaultCooldownSec = 2, Description = "Hồi phục sinh lực cho bản thân và toàn bộ đồng đội xung quanh" }, new SkillDef { SkillId = 105, Name = "Mộng Điệp", Sect = "Nga My", Type = SkillType.ActiveBuff, RequiredLevel = 30, DefaultCooldownSec = 120, Description = "Aura hồi mana và hỗ trợ đồng đội" }, new SkillDef { SkillId = 106, Name = "Kiếm Ca Tinh Vụ", Sect = "Nga My", Type = SkillType.Passive, RequiredLevel = 40, DefaultCooldownSec = 0, Description = "Tâm pháp kiếm pháp bị động Nga My" }, new SkillDef { SkillId = 100, Name = "Lưu Thủy", Sect = "Nga My", Type = SkillType.ActiveBuff, RequiredLevel = 50, DefaultCooldownSec = 90, Description = "Tăng tốc độ di chuyển và xuất chiêu" }, new SkillDef { SkillId = 102, Name = "Phật Tâm Từ Hữu", Sect = "Nga My", Type = SkillType.ActiveBuff, RequiredLevel = 50, DefaultCooldownSec = 180, Description = "Tăng toàn diện sinh lực và kháng cho cả tổ đội" }, new SkillDef { SkillId = 107, Name = "Băng Tâm Tiên Tử", Sect = "Nga My", Type = SkillType.Passive, RequiredLevel = 60, DefaultCooldownSec = 0, Description = "Tâm pháp bị động tăng băng sát và phòng thủ" }, new SkillDef { SkillId = 104, Name = "Phật Quang Phổ Chiếu", Sect = "Nga My", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chưởng pháp Nga My tầm xa cấp 90" }, new SkillDef { SkillId = 108, Name = "Phong Sương Toái Ảnh", Sect = "Nga My", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Kiếm pháp Băng sát Nga My cấp 90" }, // === NGŨ ĐỘC === new SkillDef { SkillId = 110, Name = "Vô Hình Cổ", Sect = "Ngũ Độc", Type = SkillType.ActiveBuff, RequiredLevel = 20, DefaultCooldownSec = 180, Description = "Ẩn thân tàng hình tránh né quái" }, new SkillDef { SkillId = 113, Name = "Hóa Cốt Miên Chưởng", Sect = "Ngũ Độc", Type = SkillType.Curse, RequiredLevel = 20, DefaultCooldownSec = 8, Description = "Bùa rút sinh lực đối thủ liên tục" }, new SkillDef { SkillId = 111, Name = "U Hồn Phệ Phách", Sect = "Ngũ Độc", Type = SkillType.Curse, RequiredLevel = 30, DefaultCooldownSec = 8, Description = "Bùa làm chậm tốc độ chạy đối thủ" }, new SkillDef { SkillId = 115, Name = "Bách Độc Xuyên Tâm", Sect = "Ngũ Độc", Type = SkillType.Attack, RequiredLevel = 40, DefaultCooldownSec = 0, Description = "Đao pháp độc Ngũ Độc cấp 40" }, new SkillDef { SkillId = 116, Name = "Xuyên Tâm Độc Thích", Sect = "Ngũ Độc", Type = SkillType.Passive, RequiredLevel = 40, DefaultCooldownSec = 0, Description = "Kỹ năng bị động tăng uy lực đao pháp" }, new SkillDef { SkillId = 112, Name = "Vạn Cổ Thực Tâm", Sect = "Ngũ Độc", Type = SkillType.Curse, RequiredLevel = 50, DefaultCooldownSec = 6, Description = "Bùa tăng sát thương độc công và giảm kháng độc" }, new SkillDef { SkillId = 114, Name = "Thi Độc Hủ Nhục", Sect = "Ngũ Độc", Type = SkillType.Curse, RequiredLevel = 50, DefaultCooldownSec = 10, Description = "Bùa ăn mòn giáp và giảm kháng toàn diện" }, new SkillDef { SkillId = 119, Name = "Ngũ Độc Kỳ Kinh", Sect = "Ngũ Độc", Type = SkillType.Passive, RequiredLevel = 60, DefaultCooldownSec = 0, Description = "Tâm pháp bị động tăng độc sát toàn phái" }, new SkillDef { SkillId = 117, Name = "Âm Phong Thực Cốt", Sect = "Ngũ Độc", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chưởng độc Ngũ Độc tầm xa cấp 90" }, new SkillDef { SkillId = 118, Name = "Đoạt Hồn Hủ Tâm", Sect = "Ngũ Độc", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chưởng độc Ngũ Độc cao cấp cấp 90" }, // === THIẾU LÂM === new SkillDef { SkillId = 10, Name = "La Hán Quyền", Sect = "Thiếu Lâm", Type = SkillType.Attack, RequiredLevel = 10, DefaultCooldownSec = 0, Description = "Quyền pháp cơ bản Thiếu Lâm cấp 10" }, new SkillDef { SkillId = 11, Name = "Thiếu Lâm Đao Pháp", Sect = "Thiếu Lâm", Type = SkillType.Attack, RequiredLevel = 10, DefaultCooldownSec = 0, Description = "Đao pháp cơ bản Thiếu Lâm cấp 10" }, new SkillDef { SkillId = 12, Name = "Thiếu Lâm Côn Pháp", Sect = "Thiếu Lâm", Type = SkillType.Attack, RequiredLevel = 10, DefaultCooldownSec = 0, Description = "Côn pháp cơ bản Thiếu Lâm cấp 10" }, new SkillDef { SkillId = 14, Name = "Bất Động Minh Vương", Sect = "Thiếu Lâm", Type = SkillType.ActiveBuff, RequiredLevel = 20, DefaultCooldownSec = 60, Description = "Tăng hộ thể phòng ngự toàn diện" }, new SkillDef { SkillId = 16, Name = "La Hán Trận", Sect = "Thiếu Lâm", Type = SkillType.ActiveBuff, RequiredLevel = 30, DefaultCooldownSec = 180, Description = "Phản đòn sát thương cận chiến" }, new SkillDef { SkillId = 20, Name = "Dịch Cân Kinh", Sect = "Thiếu Lâm", Type = SkillType.ActiveBuff, RequiredLevel = 40, DefaultCooldownSec = 180, Description = "Tăng sinh lực và toàn bộ kháng tính" }, new SkillDef { SkillId = 25, Name = "Kim Cang Phục Ma", Sect = "Thiếu Lâm", Type = SkillType.Attack, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Côn pháp Thiếu Lâm cấp 50" }, new SkillDef { SkillId = 24, Name = "Ma Ha Vô Lượng", Sect = "Thiếu Lâm", Type = SkillType.Attack, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Đao pháp Thiếu Lâm cấp 50" }, new SkillDef { SkillId = 23, Name = "Long Trảo Thủ", Sect = "Thiếu Lâm", Type = SkillType.Attack, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Quyền pháp Thiếu Lâm cấp 50" }, new SkillDef { SkillId = 19, Name = "Sư Tử Hống", Sect = "Thiếu Lâm", Type = SkillType.ActiveBuff, RequiredLevel = 50, DefaultCooldownSec = 60, Description = "Tuyệt kỹ chấn choáng quần thể Thiếu Lâm cấp 50" }, new SkillDef { SkillId = 28, Name = "Như Lai Thiên Diệp", Sect = "Thiếu Lâm", Type = SkillType.Passive, RequiredLevel = 60, DefaultCooldownSec = 0, Description = "Trấn phái bị động tăng công pháp Thiếu Lâm" }, new SkillDef { SkillId = 26, Name = "Đạt Ma Vũ Khí", Sect = "Thiếu Lâm", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Quyền pháp Thiếu Lâm cấp 90" }, new SkillDef { SkillId = 27, Name = "Hoành Tảo Thiên Quân", Sect = "Thiếu Lâm", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Côn pháp Thiếu Lâm cấp 90" }, new SkillDef { SkillId = 29, Name = "Vô Tướng Trảm", Sect = "Thiếu Lâm", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Đao pháp Thiếu Lâm cấp 90" }, // === THIÊN VƯƠNG === new SkillDef { SkillId = 38, Name = "Kim Chung Tráo", Sect = "Thiên Vương", Type = SkillType.ActiveBuff, RequiredLevel = 20, DefaultCooldownSec = 120, Description = "Tăng giáp kháng ngoại công cực mạnh" }, new SkillDef { SkillId = 44, Name = "Đoạt Hồn Thích", Sect = "Thiên Vương", Type = SkillType.Attack, RequiredLevel = 40, DefaultCooldownSec = 0, Description = "Chiêu thương pháp Thiên Vương cấp 40" }, new SkillDef { SkillId = 42, Name = "Bá Vương Tái Thế", Sect = "Thiên Vương", Type = SkillType.Passive, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Tâm pháp bị động tăng lực tay và chí mạng" }, new SkillDef { SkillId = 46, Name = "Truy Tinh Trục Nguyệt", Sect = "Thiên Vương", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Thương pháp Thiên Vương cấp 90" }, new SkillDef { SkillId = 48, Name = "Truy Phong Trục Điện", Sect = "Thiên Vương", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chùy pháp Thiên Vương cấp 90" }, // === ĐƯỜNG MÔN === new SkillDef { SkillId = 60, Name = "Mê Ảnh Tung", Sect = "Đường Môn", Type = SkillType.ActiveBuff, RequiredLevel = 20, DefaultCooldownSec = 90, Description = "Tăng tốc độ di chuyển và né tránh" }, new SkillDef { SkillId = 62, Name = "Tâm Nhãn", Sect = "Đường Môn", Type = SkillType.Passive, RequiredLevel = 40, DefaultCooldownSec = 0, Description = "Kỹ năng bị động tăng độ chính xác và xuất chiêu" }, new SkillDef { SkillId = 64, Name = "Tiểu Lý Phi Đao", Sect = "Đường Môn", Type = SkillType.Attack, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Ám khí phi đao Đường Môn cấp 50" }, new SkillDef { SkillId = 68, Name = "Bạo Vũ Lê Hoa", Sect = "Đường Môn", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chiêu nỏ ám khí Đường Môn cấp 90" }, new SkillDef { SkillId = 70, Name = "Nhiếp Hồn Nguyệt Ảnh", Sect = "Đường Môn", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chiêu phi đao Đường Môn cấp 90" }, // === THÚY YÊN === new SkillDef { SkillId = 121, Name = "Phong Hoa Tuyết Nguyệt", Sect = "Thúy Yên", Type = SkillType.Attack, RequiredLevel = 20, DefaultCooldownSec = 0, Description = "Đao pháp Thúy Yên cấp 20" }, new SkillDef { SkillId = 122, Name = "Tuyết Ảnh", Sect = "Thúy Yên", Type = SkillType.ActiveBuff, RequiredLevel = 30, DefaultCooldownSec = 90, Description = "Khinh công tăng tốc chạy Thúy Yên" }, new SkillDef { SkillId = 120, Name = "Băng Tâm Trái Ảnh", Sect = "Thúy Yên", Type = SkillType.ActiveBuff, RequiredLevel = 40, DefaultCooldownSec = 60, Description = "Tăng né tránh và phản đòn tầm xa" }, new SkillDef { SkillId = 124, Name = "Phù Vân Khứ Nhật", Sect = "Thúy Yên", Type = SkillType.Passive, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Tâm pháp bị động tăng băng sát và làm chậm" }, new SkillDef { SkillId = 128, Name = "Băng Túng Vô Ảnh", Sect = "Thúy Yên", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Đao pháp Băng sát Thúy Yên cấp 90" }, // === THIÊN NHẪN === new SkillDef { SkillId = 73, Name = "Ảo Ảnh Phi Hồ", Sect = "Thiên Nhẫn", Type = SkillType.Attack, RequiredLevel = 20, DefaultCooldownSec = 0, Description = "Chiêu đao pháp Thiên Nhẫn cấp 20" }, new SkillDef { SkillId = 72, Name = "Ma Diễm Tại Thiên", Sect = "Thiên Nhẫn", Type = SkillType.ActiveBuff, RequiredLevel = 30, DefaultCooldownSec = 120, Description = "Vòng lửa thiêu đốt và phòng thủ" }, new SkillDef { SkillId = 74, Name = "Phi Hồng Vô Tích", Sect = "Thiên Nhẫn", Type = SkillType.ActiveBuff, RequiredLevel = 40, DefaultCooldownSec = 90, Description = "Khinh công tốc hành Thiên Nhẫn" }, new SkillDef { SkillId = 78, Name = "Thiên Ngoại Lưu Tinh", Sect = "Thiên Nhẫn", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chiêu thương hỏa sát Thiên Nhẫn cấp 90" }, new SkillDef { SkillId = 79, Name = "Vân Long Kích", Sect = "Thiên Nhẫn", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chiêu đao pháp Thiên Nhẫn cấp 90" }, // === CÔN LÔN === new SkillDef { SkillId = 132, Name = "Thanh Phong Phù", Sect = "Côn Lôn", Type = SkillType.ActiveBuff, RequiredLevel = 20, DefaultCooldownSec = 180, Description = "Tăng kháng độc và giảm thọ thương" }, new SkillDef { SkillId = 136, Name = "Thiên Thanh Địa Trọc", Sect = "Côn Lôn", Type = SkillType.Passive, RequiredLevel = 30, DefaultCooldownSec = 0, Description = "Tâm pháp bị động hỗ trợ Côn Lôn" }, new SkillDef { SkillId = 135, Name = "Sương Ngạo Côn Lôn", Sect = "Côn Lôn", Type = SkillType.ActiveBuff, RequiredLevel = 50, DefaultCooldownSec = 180, Description = "Tăng sinh khí tối đa và né tránh" }, new SkillDef { SkillId = 138, Name = "Cuồng Lôi Chấn Địa", Sect = "Côn Lôn", Type = SkillType.Attack, RequiredLevel = 50, DefaultCooldownSec = 0, Description = "Chiêu thức kiếm pháp Côn Lôn cấp 50" }, new SkillDef { SkillId = 142, Name = "Ngũ Lôi Chánh Pháp", Sect = "Côn Lôn", Type = SkillType.Attack, RequiredLevel = 60, DefaultCooldownSec = 0, Description = "Bùa chú công kích Côn Lôn cấp 60" }, new SkillDef { SkillId = 140, Name = "Lôi Động Cửu Thiên", Sect = "Côn Lôn", Type = SkillType.Attack, RequiredLevel = 90, DefaultCooldownSec = 0, Description = "Chiêu thức lôi pháp Côn Lôn cấp 90" }, }; public static List GetBuffSkills() => MasterSkills.Where(s => s.IsBuff).ToList(); public static List GetActiveBuffSkills() => MasterSkills.Where(s => s.IsBuff).ToList(); public static List GetCurseSkills() => MasterSkills.Where(s => s.IsCurse).ToList(); public static List GetPassiveSkills() => MasterSkills.Where(s => s.IsPassive).ToList(); public static List GetSkillsBySect(string sect) => MasterSkills.Where(s => s.Sect.Equals(sect, StringComparison.OrdinalIgnoreCase)).ToList(); public static List GetAttackSkillsBySect(string sect) => MasterSkills.Where(s => s.Sect.Equals(sect, StringComparison.OrdinalIgnoreCase) && s.Type == SkillType.Attack) .OrderBy(s => s.RequiredLevel) .ToList(); public static List GetCurseSkillsBySect(string sect) => MasterSkills.Where(s => s.Sect.Equals(sect, StringComparison.OrdinalIgnoreCase) && s.IsCurse).ToList(); public static SkillDef? FindByName(string name) => MasterSkills.FirstOrDefault(s => s.Name.Equals(name, StringComparison.OrdinalIgnoreCase) || name.StartsWith(s.Name, StringComparison.OrdinalIgnoreCase)); } }