mirror of
https://github.com/oshima-studios/OshimaGameModule.git
synced 2025-12-05 08:09:04 +00:00
新的战技魔法路线图
This commit is contained in:
parent
4737780742
commit
8d7154e212
@ -7,7 +7,7 @@ namespace Oshima.FunGame.OshimaModules.Effects.PassiveEffects
|
||||
{
|
||||
public override long Id => 4109;
|
||||
public override string Name => "气绝";
|
||||
public override string Description => $"此角色处于气绝状态,行动受限并且每{GameplayEquilibriumConstant.InGameTime}持续流失 {(_isPercentage ? $"{_durationDamagePercent * 100:0.##}% [ {Damage:0.##} ]" : Damage.ToString("0.##"))} 点当前生命值。来自:[ {Source} ] 的 [ {Skill.Name} ]";
|
||||
public override string Description => $"此角色处于气绝状态,行动受限并且每{GameplayEquilibriumConstant.InGameTime}持续流失 {(_isPercentage ? $"{_durationDamagePercent * 100:0.##}% [ {Damage:0.##} ]" : Damage.ToString("0.##"))} 点当前生命值,此生命流失效果不会导致角色死亡。来自:[ {Source} ] 的 [ {Skill.Name} ]";
|
||||
public override EffectType EffectType => EffectType.Bleed;
|
||||
public override DispelledType DispelledType => DispelledType.Strong;
|
||||
public override bool IsDebuff => true;
|
||||
@ -73,8 +73,13 @@ namespace Oshima.FunGame.OshimaModules.Effects.PassiveEffects
|
||||
damage += GetDamage(hp, elapsed);
|
||||
}
|
||||
}
|
||||
WriteLine($"[ {character} ] 因气绝而流失生命值!");
|
||||
DamageToEnemy(Source, character, DamageType.True, MagicType, damage);
|
||||
character.HP -= damage;
|
||||
if (character.HP <= 0)
|
||||
{
|
||||
character.HP = 1;
|
||||
}
|
||||
GamingQueue?.CalculateCharacterDamageStatistics(Source, character, damage, DamageType.True);
|
||||
WriteLine($"[ {character} ] 因气绝而流失了 {damage:0.##} 点生命值!");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -8,7 +8,7 @@ namespace Oshima.FunGame.OshimaModules.Effects.SkillEffects
|
||||
{
|
||||
public override long Id => Skill.Id;
|
||||
public override string Name => Skill.Name;
|
||||
public override string Description => $"对目标{(Skill.CanSelectTargetCount > 1 ? $"至多 {Skill.CanSelectTargetCount} 个" : "")}敌人造成气绝 {气绝时间}。气绝期间,目标行动受限且持续{DamageString}。";
|
||||
public override string Description => $"对目标{(Skill.CanSelectTargetCount > 1 ? $"至多 {Skill.CanSelectTargetCount} 个" : "")}敌人造成气绝 {气绝时间}。气绝期间,目标行动受限且每{GameplayEquilibriumConstant.InGameTime}持续{DamageString},此生命流失效果不会导致角色死亡。";
|
||||
public override DispelledType DispelledType => DispelledType.Strong;
|
||||
|
||||
private string 气绝时间 => _durative && _duration > 0 ? 实际气绝时间 + $" {GameplayEquilibriumConstant.InGameTime}" : (!_durative && _durationTurn > 0 ? 实际气绝时间 + " 回合" : $"0 {GameplayEquilibriumConstant.InGameTime}");
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
namespace Oshima.FunGame.OshimaModules.Skills
|
||||
// 注:绝大多数技能名称来自《英雄传说 空之轨迹》
|
||||
namespace Oshima.FunGame.OshimaModules.Skills
|
||||
{
|
||||
/**
|
||||
* 冰霜攻击 = 单体伤害
|
||||
@ -7,27 +8,31 @@
|
||||
* 石之锤 = 单体伤害
|
||||
* 风之轮 = 单体伤害
|
||||
* 心灵之霞 = 单体伤害
|
||||
* 次元上升 = 单体伤害+眩晕(时间型)
|
||||
* 次元上升 = 单体伤害+眩晕(时间型),需强驱散
|
||||
* 暗物质 = 单体伤害
|
||||
*
|
||||
* 回复术 = 我方·单体回复,
|
||||
* 治愈术 = 我方·单体回复,
|
||||
* 复苏术 = 我方·单体弱驱散+回复+复苏,
|
||||
* 圣灵术 = 我方·全体弱驱散+回复+复苏,
|
||||
* 时间加速 = 我方·单体速度提升(时间型),
|
||||
* 时间减速 = 单体速度减少(时间型),
|
||||
* 反魔法领域 = 多目标封技(技能受限,时间型)+施法解除,
|
||||
* 沉默十字 = 多目标封技(技能受限,回合型)+施法解除,
|
||||
* 虚弱领域 = 全体虚弱(伤害降低+护甲魔抗降低+重伤,时间型),
|
||||
* 混沌烙印 = 单体气绝(行动受限+持续伤害,时间型),
|
||||
* 凝胶稠絮 = 单体虚弱(伤害降低+护甲魔抗降低+重伤,回合型),
|
||||
* 回复术 = 我方·单体回复
|
||||
* 治愈术 = 我方·单体回复
|
||||
* 复苏术 = 我方·单体弱驱散+回复+复苏
|
||||
* 圣灵术 = 我方·全体弱驱散+回复+复苏
|
||||
* 时间加速 = 我方·单体速度提升(时间型)
|
||||
* 时间减速 = 单体速度减少(时间型)
|
||||
* 反魔法领域 = 多目标封技(技能受限,时间型)+施法解除,可弱驱散
|
||||
* 沉默十字 = 多目标封技(技能受限,回合型)+施法解除,可弱驱散
|
||||
* 虚弱领域 = 全体虚弱(伤害降低+护甲魔抗降低+重伤,时间型),可弱驱散
|
||||
* 混沌烙印 = 单体气绝(行动受限+持续伤害,时间型),需强驱散
|
||||
* 凝胶稠絮 = 单体虚弱(伤害降低+护甲魔抗降低+重伤,回合型),可弱驱散
|
||||
*
|
||||
* 大地之墙 = 我方·多目标护盾+持续性弱驱散(时间型),
|
||||
* 盖亚之盾 = 我方·全体物理+魔法护盾,
|
||||
* 风之守护 = 我方·暴击率+闪避提升(回合型),
|
||||
* 结晶防护 = 我方·护甲+魔抗提升(回合型),
|
||||
* 强音之力 = 我方·攻击提升(回合型),
|
||||
* 大地之墙 = 我方·多目标物理护盾+持续性弱驱散(时间型)
|
||||
* 盖亚之盾 = 我方·全体物理+魔法护盾值
|
||||
* 风之守护 = 我方·暴击率+闪避提升(回合型)
|
||||
* 结晶防护 = 我方·护甲+魔抗提升(回合型)
|
||||
* 强音之力 = 我方·攻击提升(回合型)
|
||||
* 神圣祝福 = 我方·攻击+护甲+魔抗提升(回合型)
|
||||
* 根源屏障 = 我方·技能免疫+魔法免疫(回合型)
|
||||
*
|
||||
* 灾难冲击波 = 多目标伤害+魔抗降低(回合型),可弱驱散
|
||||
* 银色荆棘 = 多目标伤害,90%概率混乱(行动受限,如同AI控制行动),需强驱散
|
||||
*/
|
||||
public enum MagicID : long
|
||||
{
|
||||
@ -57,12 +62,159 @@
|
||||
风之守护 = 1022,
|
||||
结晶防护 = 1023,
|
||||
强音之力 = 1024,
|
||||
神圣祝福 = 1025
|
||||
神圣祝福 = 1025,
|
||||
根源屏障 = 1026,
|
||||
|
||||
灾难冲击波 = 1027,
|
||||
银色荆棘 = 1028
|
||||
}
|
||||
|
||||
/**
|
||||
* 疾风步 = 自身·速度/暴击提升(时间型)+不可选中+破隐一击
|
||||
* 助威 = 我方·多目标攻击力提升(回合型)
|
||||
* 挑拨 = 多目标愤怒(嘲讽,回合型),需强驱散
|
||||
* 绞丝棍 = 单体伤害
|
||||
* 金刚击 = 单体伤害+施法解除
|
||||
* 旋风轮 = 多目标伤害
|
||||
* 樱花无双击 = 单体伤害+生命偷取
|
||||
* 双连击 = 单体2次普通攻击
|
||||
* 绝影 = 单体伤害+迟滞(硬直时间延长),可弱驱散
|
||||
* 胧 = 单体攻击,20%几率战斗不能(攻击不能+施法不能),需强驱散
|
||||
* 魔眼 = 单体迟滞(硬直时间延长)、30%概率混乱(行动受限,如同AI控制行动),需强驱散
|
||||
* 漆黑之牙 = 全体伤害
|
||||
* 风之鞭 = 多目标伤害
|
||||
* 拘束之鞭 = 单体伤害+施法解除
|
||||
* 天堂之吻 = 我方·硬直时间提前(时间型)
|
||||
* 狐媚暗随 = 单体伤害
|
||||
* 女王之怒 = 单体伤害+虚弱(伤害降低+护甲魔抗降低+重伤,回合型),可弱驱散
|
||||
* 裁决塔罗 = 多目标伤害+以下状态之一:冻结(完全行动不能)/混乱(行动受限,如同AI控制行动)/战斗不能(攻击不能+施法不能),需强驱散
|
||||
* 快速狙击 = 随机单体目标伤害
|
||||
* 精准射击 = 单体伤害+施法解除
|
||||
* 欢乐激发 = 我方·多目标回复
|
||||
* 乱心安魂曲 = 多目标伤害
|
||||
* 斗魂 = 攻击力降低+物理护甲降低,可弱驱散
|
||||
* 岚 = 多目标伤害+施法解除
|
||||
* 光明之环 = 我方·全体强驱散+复苏,复苏的回复量为20%;起步消耗100能量,每10能量额外增加护甲魔抗
|
||||
* 圣星光旋 = 全体伤害
|
||||
* 公牛之怒 = 自身·扣除生命值+回复能量
|
||||
* 火焰碎击 = 单体伤害+战斗不能(时间型)+施法解除,需强驱散
|
||||
* 螺旋之刃 = 单体迟滞(硬直时间延长),可弱驱散
|
||||
* 霸王疾风 = 单体伤害
|
||||
* 炎龙倒海 = 全体伤害
|
||||
* 回复弹 = 我方·单体弱驱散+回复
|
||||
* 导力装甲 = 自身·封技+攻击力提升+护甲魔抗提升+硬直时间提前
|
||||
* 回复原状 = 自身·解除导力装甲
|
||||
* 卫星激光 = 多目标伤害
|
||||
* 强打 = 单体伤害,20%几率气绝(行动受限+持续伤害,时间型),需强驱散
|
||||
* 龙神功 = 自身·攻击力提升+护甲魔抗提升(回合型)
|
||||
* 养命功 = 自身·持续性弱驱散+回复(回合型)
|
||||
* 月华掌 = 单体伤害,50%几率混乱(行动受限,如同AI控制行动),需强驱散
|
||||
* 雷神脚 = 多目标伤害
|
||||
* 泰山玄武靠 = 多目标伤害
|
||||
* 弓刃交错 = 单体伤害+迟滞(硬直时间延长),可弱驱散
|
||||
* 神圣祈祷 = 我方·持续性强驱散+回复(时间型)
|
||||
* 牺牲之箭 = 我方不含自身·能量回复
|
||||
* 石化之矢 = 单体伤害+石化(完全行动不能,时间型),需强驱散
|
||||
* 死亡制裁 = 多目标伤害
|
||||
* 星杯领域 = 我方·完全免疫,回合型;起步消耗100能量,每100能量额外回合
|
||||
* 魔枪洛亚 = 全体伤害
|
||||
* 八叶灭杀 = 单体伤害
|
||||
* 剑风闪 = 多目标伤害
|
||||
* 落叶 = 单体伤害+迟滞(硬直时间延长),可弱驱散
|
||||
* 风花阵 = 自身·攻击力提升+护甲降低
|
||||
* 陀螺舞 = 多目标愤怒(嘲讽,回合型),需强驱散
|
||||
* 光破斩 = 多目标伤害
|
||||
* 跳跃点射 = 单体伤害+护甲降低+施法解除,需强驱散
|
||||
* 鲨鱼锚击 = 单体伤害+气绝(行动受限+持续伤害,时间型),需强驱散
|
||||
* 光鬼斩 = 单体伤害,30%几率气绝(行动受限+持续伤害,时间型),需强驱散
|
||||
* 樱花残月 = 单体伤害
|
||||
* 雷索吸缚 = 单体愤怒(嘲讽,回合型)、30%几率气绝(行动受限+持续伤害,时间型),需强驱散
|
||||
* 狂刃剑舞 = 敌方·单体攻击,20%几率混乱(行动受限,如同AI控制行动),需强驱散
|
||||
* 无相飞刀 = 单体封技+施法解除,可弱驱散
|
||||
* 破邪显正 = 多目标伤害
|
||||
* 镜花水月 = 自身·完全免疫,回合型
|
||||
* 号令 = 我方不含自身·攻击力提升
|
||||
* 千剑之雨 = 多目标伤害
|
||||
* 无尽剑制 = 全体伤害
|
||||
* 圣洁祝福 = 我方不含自身·单体强驱散+回复+能量回复
|
||||
* 天堂阻灭 = 单体伤害
|
||||
* 灾难一掷 = 单体伤害,10%几率战斗不能
|
||||
* 血腥旋转 = 多目标伤害,10%几率战斗不能
|
||||
* 歼灭 = 全体伤害,50%几率战斗不能
|
||||
*/
|
||||
public enum SkillID : long
|
||||
{
|
||||
疾风步 = 2001,
|
||||
助威 = 2002,
|
||||
挑拨 = 2003,
|
||||
绞丝棍 = 2004,
|
||||
金刚击 = 2005,
|
||||
旋风轮 = 2006,
|
||||
樱花无双击 = 2007,
|
||||
双连击 = 2008,
|
||||
绝影 = 2009,
|
||||
胧 = 2010,
|
||||
魔眼 = 2011,
|
||||
漆黑之牙 = 2012,
|
||||
风之鞭 = 2013,
|
||||
拘束之鞭 = 2014,
|
||||
天堂之吻 = 2015,
|
||||
狐媚暗随 = 2016,
|
||||
女王之怒 = 2017,
|
||||
裁决塔罗 = 2018,
|
||||
快速狙击 = 2019,
|
||||
精准射击 = 2020,
|
||||
欢乐激发 = 2021,
|
||||
乱心安魂曲 = 2022,
|
||||
斗魂 = 2023,
|
||||
岚 = 2024,
|
||||
光明之环 = 2025,
|
||||
圣星光旋 = 2026,
|
||||
公牛之怒 = 2027,
|
||||
火焰碎击 = 2028,
|
||||
螺旋之刃 = 2029,
|
||||
霸王疾风 = 2030,
|
||||
炎龙倒海 = 2031,
|
||||
回复弹 = 2032,
|
||||
导力装甲 = 2033,
|
||||
回复原状 = 2034,
|
||||
卫星激光 = 2035,
|
||||
强打 = 2036,
|
||||
龙神功 = 2037,
|
||||
养命功 = 2038,
|
||||
月华掌 = 2039,
|
||||
雷神脚 = 2040,
|
||||
泰山玄武靠 = 2041,
|
||||
弓刃交错 = 2042,
|
||||
神圣祈祷 = 2043,
|
||||
牺牲之箭 = 2044,
|
||||
石化之矢 = 2045,
|
||||
死亡制裁 = 2046,
|
||||
星杯领域 = 2047,
|
||||
魔枪洛亚 = 2048,
|
||||
八叶灭杀 = 2049,
|
||||
剑风闪 = 2050,
|
||||
落叶 = 2051,
|
||||
风花阵 = 2052,
|
||||
陀螺舞 = 2053,
|
||||
光破斩 = 2054,
|
||||
跳跃点射 = 2055,
|
||||
鲨鱼锚击 = 2056,
|
||||
光鬼斩 = 2057,
|
||||
樱花残月 = 2058,
|
||||
雷索吸缚 = 2059,
|
||||
狂刃剑舞 = 2060,
|
||||
无相飞刀 = 2061,
|
||||
破邪显正 = 2062,
|
||||
镜花水月 = 2063,
|
||||
号令 = 2064,
|
||||
千剑之雨 = 2065,
|
||||
无尽剑制 = 2066,
|
||||
圣洁祝福 = 2067,
|
||||
天堂阻灭 = 2068,
|
||||
灾难一掷 = 2069,
|
||||
血腥旋转 = 2070,
|
||||
歼灭 = 2071
|
||||
}
|
||||
|
||||
public enum SuperSkillID : long
|
||||
|
||||
@ -1306,6 +1306,11 @@ namespace Oshima.FunGame.OshimaServers.Service
|
||||
{
|
||||
int genCount = 10 - Bosses.Count;
|
||||
|
||||
Item[] weapons = [.. FunGameConstant.Equipment.Where(i => i.Id.ToString().StartsWith("11") && (int)i.QualityType == 5)];
|
||||
Item[] armors = [.. FunGameConstant.Equipment.Where(i => i.Id.ToString().StartsWith("12") && (int)i.QualityType == 5)];
|
||||
Item[] shoes = [.. FunGameConstant.Equipment.Where(i => i.Id.ToString().StartsWith("13") && (int)i.QualityType == 5)];
|
||||
Item[] accessory = [.. FunGameConstant.Equipment.Where(i => i.Id.ToString().StartsWith("14") && (int)i.QualityType == 4)];
|
||||
Item[] consumables = [.. FunGameConstant.AllItems.Where(i => i.ItemType == ItemType.Consumable && i.IsInGameItem)];
|
||||
for (int i = 0; i < genCount; i++)
|
||||
{
|
||||
int nowIndex = Bosses.Count > 0 ? Bosses.Keys.Max() + 1 : 1;
|
||||
@ -1324,10 +1329,6 @@ namespace Oshima.FunGame.OshimaServers.Service
|
||||
boss.Level = cLevel;
|
||||
boss.NormalAttack.Level = naLevel;
|
||||
boss.NormalAttack.ExHardnessTime = -4;
|
||||
Item[] weapons = [.. FunGameConstant.Equipment.Where(i => i.Id.ToString().StartsWith("11") && (int)i.QualityType == 4)];
|
||||
Item[] armors = [.. FunGameConstant.Equipment.Where(i => i.Id.ToString().StartsWith("12") && (int)i.QualityType == 1)];
|
||||
Item[] shoes = [.. FunGameConstant.Equipment.Where(i => i.Id.ToString().StartsWith("13") && (int)i.QualityType == 1)];
|
||||
Item[] accessory = [.. FunGameConstant.Equipment.Where(i => i.Id.ToString().StartsWith("14") && (int)i.QualityType == 3)];
|
||||
Item? a = null, b = null, c = null, d = null, d2 = null;
|
||||
if (weapons.Length > 0)
|
||||
{
|
||||
@ -1358,7 +1359,7 @@ namespace Oshima.FunGame.OshimaServers.Service
|
||||
Item? magicCardPack = GenerateMagicCardPack(5, (QualityType)4);
|
||||
if (magicCardPack != null)
|
||||
{
|
||||
magicCardPack.QualityType = QualityType.Red;
|
||||
magicCardPack.QualityType = QualityType.Gold;
|
||||
foreach (Skill magic in magicCardPack.Skills.Magics)
|
||||
{
|
||||
magic.Level = mLevel;
|
||||
@ -1370,6 +1371,14 @@ namespace Oshima.FunGame.OshimaServers.Service
|
||||
Item realItem = item.Copy();
|
||||
boss.Equip(realItem);
|
||||
}
|
||||
if (consumables.Length > 0 && boss.Items.Count < 5)
|
||||
{
|
||||
for (int j = 0; j < 2; j++)
|
||||
{
|
||||
Item consumable = consumables[Random.Shared.Next(consumables.Length)].Copy();
|
||||
boss.Items.Add(consumable);
|
||||
}
|
||||
}
|
||||
Skill bossSkill = Factory.OpenFactory.GetInstance<Skill>(0, "BOSS专属被动", []);
|
||||
bossSkill.Level = 1;
|
||||
bossSkill.Character = boss;
|
||||
|
||||
@ -1007,7 +1007,7 @@ namespace Oshima.FunGame.OshimaServers.Service
|
||||
Item[] shoes = [.. FunGameConstant.Equipment.Where(i => i.Id.ToString().StartsWith("13") && (int)i.QualityType == sQuality)];
|
||||
Item[] accessories = [.. FunGameConstant.Equipment.Where(i => i.Id.ToString().StartsWith("14") && (int)i.QualityType == acQuality)];
|
||||
Item[] consumables = [.. FunGameConstant.AllItems.Where(i => i.ItemType == ItemType.Consumable && i.IsInGameItem)];
|
||||
foreach (Character character in queue.HardnessTime.Keys)
|
||||
foreach (Character character in queue.AllCharacters)
|
||||
{
|
||||
if (addLevel)
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user