Commit da9d8577 authored by 苍蓝's avatar 苍蓝

fix

parent 8c413a87
Pipeline #28917 passed with stage
in 22 seconds
......@@ -85,6 +85,9 @@ namespace WindBot.Game.AI.Decks
//AddExecutor(ExecutorType.Activate, DefaultDontChainMyself);
AddExecutor(ExecutorType.Repos, DefaultMonsterRepos);
AddExecutor(ExecutorType.Repos, CardId.救火女, 反转Repos);;
AddExecutor(ExecutorType.Repos, CardId.光天女, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.夜魔女, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.花草女, 圣防Repos);
AddExecutor(ExecutorType.Repos, CardId.主存女, 圣防Repos);
AddExecutor(ExecutorType.Repos, CardId.细剑女, 圣防Repos);
......
......@@ -27,6 +27,7 @@ namespace WindBot.Game.AI.Decks
AddExecutor(ExecutorType.Activate, _CardId.激流葬, 激流葬Effect);
AddExecutor(ExecutorType.Activate, _CardId.真空湮灭, 真空湮灭Effect);
AddExecutor(ExecutorType.Activate, _CardId.圣防, 圣防Effect);
AddExecutor(ExecutorType.Activate, _CardId.沙尘防护罩, 圣防Effect);
AddExecutor(ExecutorType.Activate, _CardId.暗黑释放, 圣防Effect);
AddExecutor(ExecutorType.Activate, ImFeelingLucky);
......@@ -117,6 +118,7 @@ namespace WindBot.Game.AI.Decks
AddExecutor(ExecutorType.Activate, _CardId.死供, 死供Effect);
AddExecutor(ExecutorType.Activate, _CardId.活杀, 活杀Effect);
AddExecutor(ExecutorType.Activate, _CardId.耳语妖精, 耳语妖精Effect);
AddExecutor(ExecutorType.Repos, 反转Repos2);
AddExecutor(ExecutorType.Repos, DefaultMonsterRepos);
AddExecutor(ExecutorType.Repos, 圣防Repos);
......
......@@ -84,6 +84,9 @@ namespace WindBot.Game.AI.Decks
AddExecutor(ExecutorType.Activate, _CardId.加百列热茶, 加百列热茶Effect);
AddExecutor(ExecutorType.Activate, DefaultDontChainMyself);
AddExecutor(ExecutorType.Repos, DefaultMonsterRepos);
AddExecutor(ExecutorType.Repos, CardId.幻煌,反转Repos);
AddExecutor(ExecutorType.Repos, CardId.起重龙,反转Repos);
AddExecutor(ExecutorType.Repos, CardId.建造龙, 反转Repos);
AddExecutor(ExecutorType.Repos, 圣防Repos);
AddExecutor(ExecutorType.SpellSet, TrapCardSet);
AddExecutor(ExecutorType.SpellSet);
......
......@@ -93,6 +93,10 @@ namespace WindBot.Game.AI.Decks
AddExecutor(ExecutorType.Activate, _CardId.星战骑佩流安, 星战骑佩流安Effect);
AddExecutor(ExecutorType.Activate, _CardId.加百列热茶, 加百列热茶Effect);
AddExecutor(ExecutorType.Activate, DefaultDontChainMyself);
AddExecutor(ExecutorType.Repos, CardId.破坏之剑士, 反转Repos);
AddExecutor(ExecutorType.Repos, _CardId.结界像, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.连击龙, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.七星道魔术师, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.青眼白龙, 圣防Repos);
AddExecutor(ExecutorType.Repos, CardId.破坏之剑士, 圣防Repos);
......
......@@ -85,6 +85,9 @@ namespace WindBot.Game.AI.Decks
AddExecutor(ExecutorType.Summon, CardId.七星道法师);
AddExecutor(ExecutorType.Repos, DefaultMonsterRepos);
AddExecutor(ExecutorType.SummonOrSet, DefaultMonsterSummon);
AddExecutor(ExecutorType.Repos, CardId.青眼白龙, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.连击龙, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.七星道魔术师, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.青眼白龙, 圣防Repos);
AddExecutor(ExecutorType.Repos, CardId.破坏之剑士, 圣防Repos);
//AddExecutor(ExecutorType.Activate, CardId.sionmax, sionmaxEffect);
......
......@@ -73,26 +73,30 @@ namespace WindBot.Game.AI.Decks
AddExecutor(ExecutorType.Activate, CardId.天惠枪, 天惠枪Effect);
AddExecutor(ExecutorType.SpellSet, CardId.魔力抽出, speset);
AddExecutor(ExecutorType.SpellSet, CardId.魔术的幕帘, speset);
AddExecutor(ExecutorType.SpellSet, CardId.魔术的幕帘, 幕帘set);
AddExecutor(ExecutorType.SpellSet, CardId.七宝船, speset);
AddExecutor(ExecutorType.SpellSet, CardId.采掘, speset);
AddExecutor(ExecutorType.SpellSet, CardId.幽灵旋风, speset);
AddExecutor(ExecutorType.SpellSet, CardId.宝石, speset);
AddExecutor(ExecutorType.SpellSet, CardId.DMB, speset);
AddExecutor(ExecutorType.SpellSet, CardId.二重加速, speset);
AddExecutor(ExecutorType.SpellSet, CardId.水流, speset);
AddExecutor(ExecutorType.SpellSet, CardId.宝石, speset);
AddExecutor(ExecutorType.SpellSet, CardId.天惠枪, speset);
AddExecutor(ExecutorType.SpellSet, CardId.三猫, speset);
AddExecutor(ExecutorType.SpellSet, _CardId.魔法筒);
AddExecutor(ExecutorType.SpellSet, CardId.魔术的幕帘);
AddExecutor(ExecutorType.SpellSet, CardId.DMA);
AddExecutor(ExecutorType.SpellSet, CardId.宝石);
AddExecutor(ExecutorType.SpellSet, _CardId.黑洞);
AddExecutor(ExecutorType.SpellSet, CardId.DMA);
AddExecutor(ExecutorType.Summon, CardId.DMG, DMGsummon);
AddExecutor(ExecutorType.Activate, CardId.宝石, 宝石Effect2);
//AddExecutor(ExecutorType.Activate, DefaultDontChainMyself);
AddExecutor(ExecutorType.Repos, CardId.黑曜, 反转Repos);
AddExecutor(ExecutorType.Repos, _CardId.黑魔术师, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.遂行者, 反转Repos);
AddExecutor(ExecutorType.Repos, _CardId.黑魔术师, 圣防Repos);
AddExecutor(ExecutorType.Repos, CardId.遂行者, 圣防Repos);
AddExecutor(ExecutorType.Repos, CardId.DMG, 圣防Repos);
......@@ -338,6 +342,12 @@ namespace WindBot.Game.AI.Decks
return true;
return false;
}
private bool 幕帘set()
{
if (Bot.LifePoints > 1000 && Bot.GetSpellCountWithoutField() <= 1)
return true;
return false;
}
private bool 抽出sp()
{
......@@ -431,29 +441,36 @@ namespace WindBot.Game.AI.Decks
AI.SelectYesNo(true);
return true;
}
else if (Bot.HasInHand(CardId.DMG) && Bot.GetSpellCount() >= 2 && Bot.GetHandCount() >=4)
{
AI.SelectCard(CardId.DMG);
return true;
}
return false;
}
private bool 魔力抽出Effect()
{
if (Bot.HasInSpellZone(target))
if (Bot.HasInSpellZone(cost2))
{
AI.SelectCard(target);
if (Bot.HasInHand(mon))
AI.SelectCard(cost2);
if (Bot.HasInHand(mon3))
{
AI.SelectYesNo(true);
AI.SelectNextCard(mon);
AI.SelectNextCard(mon3);
}
}
return true; ;
}
private bool 幕帘Effect()
{
if (Bot.HasInHandOrInSpellZone(CardId.DMA) && (Bot.HasInHand(CardId.遂行者) || Bot.HasInHand(_CardId.黑魔术师))&& Enemy.GetSpellCount() >= 2)
if (Bot.LifePoints > 1000)
{
if (Bot.HasInHandOrInSpellZone(CardId.DMA) && (Bot.HasInHand(CardId.遂行者) || Bot.HasInHand(_CardId.黑魔术师)) && Enemy.GetSpellCount() >= 2)
{
AI.SelectCard(CardId.遂行者, _CardId.黑魔术师);
return true;
}
if (Bot.HasInHand(CardId.黑曜) && Bot.GetGraveyardSpells().Count >=5 )
if (Bot.HasInHand(CardId.黑曜) && Bot.GetGraveyardSpells().Count >= 5)
{
AI.SelectCard(CardId.黑曜);
return true;
......@@ -466,6 +483,9 @@ namespace WindBot.Game.AI.Decks
if (Bot.HasInHand(mon3)) AI.SelectCard(mon3);
return true;
}
return false;
}
private bool 天惠枪Effect()
{
if (Bot.HasInMonstersZone(CardId.黑曜))
......@@ -516,16 +536,26 @@ namespace WindBot.Game.AI.Decks
if (Bot.GetGraveyardMonsters().Count <= 3)
{
AI.SelectYesNo(true);
if (Bot.GetGraveyardMonsters().Count >= 2 && Bot.Hand.GetMatchingCardsCount(card => card.Level >= 6) >= 3 && Bot.HasInGraveyard(CardId.七宝船))
if (Bot.GetGraveyardMonsters().Count >= 2 && Bot.Hand.GetMatchingCardsCount(card => card.Level >= 7) >= 2 && Bot.HasInGraveyard(CardId.七宝船))
{
AI.SelectCard(CardId.七宝船);
return true;
}
if (Bot.GetGraveyardMonsters().Count >= 2 && !Bot.GetMonsters().Any() && Bot.HasInGraveyard(CardId.宝石) && !Bot.HasInHandOrInSpellZone(CardId.宝石))
{
AI.SelectCard(CardId.宝石);
return true;
}
if (Bot.GetGraveyardMonsters().Count >= 2 && Bot.Hand.GetMatchingCardsCount(card => card.Level >= 6) == 0 && Bot.HasInGraveyard(CardId.宝石))
{
AI.SelectCard(CardId.宝石);
return true;
}
if (Bot.GetGraveyardMonsters().Count >= 2 && !Bot.GetMonsters().Any() && Bot.HasInHand(mon3) && Bot.HasInGraveyard(CardId.魔术的幕帘) && !Bot.HasInHandOrInSpellZoneOrInGraveyard(CardId.宝石))
{
AI.SelectCard(CardId.魔术的幕帘);
return true;
}
if (Bot.GetGraveyardMonsters().Count >= 2 && Enemy.GetSpellCount() > 2 && (Bot.HasInMonstersZone(_CardId.黑魔术师) || Bot.HasInMonstersZone(CardId.遂行者)) && Bot.HasInGraveyard(CardId.DMA))
{
AI.SelectCard(CardId.DMA);
......@@ -549,6 +579,10 @@ namespace WindBot.Game.AI.Decks
{
return true;
}
else if (Bot.GetHandCount() >= 5)
{
return true;
}
return false;
}
private bool 采掘Effect()
......@@ -614,7 +648,7 @@ namespace WindBot.Game.AI.Decks
if (Bot.GetMonsterCount() <= 1)
{
if (Bot.HasInHandOrInGraveyard(CardId.DMG) && Bot.HasInHandOrInGraveyard(mon2))
AI.SelectCard(mon2);
AI.SelectCard(mon3);
return true;
}
return false;
......
......@@ -120,6 +120,9 @@ namespace WindBot.Game.AI.Decks
AddExecutor(ExecutorType.Repos, DefaultMonsterRepos);
AddExecutor(ExecutorType.SpellSet, DefaultSpellSet);
AddExecutor(ExecutorType.Activate, CardId.世纪末兽机界, DefaultField2);
AddExecutor(ExecutorType.Repos, CardId.钢机神, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.最强战旗, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.恶德, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.最强战旗, 圣防Repos);
AddExecutor(ExecutorType.Repos, CardId.钢机神, 圣防Repos);
}
......
......@@ -85,6 +85,11 @@ namespace WindBot.Game.AI.Decks
AddExecutor(ExecutorType.Repos, CardId.破坏之剑士, DefaultMonsterRepos);
AddExecutor(ExecutorType.Repos, CardId.连击龙, DefaultMonsterRepos);
AddExecutor(ExecutorType.Repos, CardId.人造人, DefaultMonsterRepos);
AddExecutor(ExecutorType.Repos, CardId.青眼白龙, 反转Repos);
AddExecutor(ExecutorType.Repos, _CardId.手枪龙, 反转Repos);
AddExecutor(ExecutorType.Repos, _CardId.黑魔术师, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.小手枪龙, 反转Repos);
AddExecutor(ExecutorType.Repos, CardId.狼人, 反转Repos);
AddExecutor(ExecutorType.MonsterSet, CardId.千年盾, DefaultMonsterSummon);
AddExecutor(ExecutorType.Repos, CardId.成金恐龙王, 成金恐龙王Summon);
AddExecutor(ExecutorType.Summon, CardId.成金恐龙王, 成金恐龙王Summon);
......
......@@ -43,6 +43,10 @@ namespace WindBot.Game.AI
public const int 万能地雷 = 120234005;
public const int 万能地雷2 = 120237001;
public const int 落穴 = 120150019;
public const int 神鸟攻击 = 120247065;
public const int 攻击无力化 = 120249065;
public const int 沙尘防护罩 = 120263038;
public const int 强脱 = 120254032;
public const int 暗黑释放 = 120105013;
public const int 真空湮灭 = 120216026;
public const int 亚龙地狱 = 120231068;
......@@ -550,6 +554,18 @@ namespace WindBot.Game.AI
}
return false;
}
protected bool 反转Repos()
{
if (Card.IsFacedown())
return true;
return false;
}
protected bool 反转Repos2()
{
if (Card.IsFacedown() && Card.Attack >= 2100)
return true;
return false;
}
protected bool 圣防Repos()
{
......@@ -563,6 +579,10 @@ namespace WindBot.Game.AI
_CardId.万能地雷,
_CardId.万能地雷2,
_CardId.大灾害,
_CardId.神鸟攻击,
_CardId.攻击无力化,
_CardId.强脱,
_CardId.沙尘防护罩,
_CardId.激流葬};
if (Bot.MonsterZone.GetMatchingCardsCount(card => card.IsAttack() && card.Level > 5) >= 2
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment