Commit ef8d96d1 authored by wind2009's avatar wind2009

AI_Apophis

parent 752120ee
...@@ -273,3 +273,8 @@ AI_LV4 SUPPORT_MASTER_RULE_2020 ...@@ -273,3 +273,8 @@ AI_LV4 SUPPORT_MASTER_RULE_2020
Name=今晚有宵夜吗 Deck=MalissOCG Dialog=Xiaoye.zh-CN Name=今晚有宵夜吗 Deck=MalissOCG Dialog=Xiaoye.zh-CN
码丽丝卡组。 码丽丝卡组。
AI_LV4 SUPPORT_MASTER_RULE_2020 AI_LV4 SUPPORT_MASTER_RULE_2020
!尼亚-王家的神殿
Name=尼亚 Deck=Apophis Dialog=near.zh-CN
王家的神殿卡组。
AI_LV4 SUPPORT_MASTER_RULE_2020
\ No newline at end of file
#created by ...
#main
62514770
60411677
60411677
63198739
63198739
97522863
97522863
97522863
49238328
49238328
73628505
29095457
56506740
56506740
56506740
69299029
69299029
69299029
6325660
6325660
6325660
10045474
10045474
10045474
40366667
40366667
58053438
58053438
58053438
97045737
97045737
97045737
85888377
85888377
95561146
95561146
95561146
59576447
78114463
78114463
#extra
97800311
97800311
97800311
96633955
96633955
84815190
84815190
26096328
38354018
46772449
29301450
1528054
1528054
98978921
98978921
!side
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -224,6 +224,8 @@ namespace WindBot.Game.AI ...@@ -224,6 +224,8 @@ namespace WindBot.Game.AI
public const int EarthboundImmortal = 0x1021; public const int EarthboundImmortal = 0x1021;
public const int Naturia = 0x2a; public const int Naturia = 0x2a;
public const int Nordic = 0x42; public const int Nordic = 0x42;
public const int TimeLord = 0x4a;
public const int Harpie = 0x64; public const int Harpie = 0x64;
public const int Madolche = 0x71; public const int Madolche = 0x71;
public const int Ghostrick = 0x8d; public const int Ghostrick = 0x8d;
...@@ -1692,5 +1694,43 @@ namespace WindBot.Game.AI ...@@ -1692,5 +1694,43 @@ namespace WindBot.Game.AI
} }
return false; return false;
} }
/// <summary>
/// Check whether all available spell columns are negated.
/// </summary>
/// <returns></returns>
protected bool DefaultCheckAllAvailableSpellColumnNegated()
{
for (int i = 0; i < 5; i++) {
// occupied
if (Bot.SpellZone[i] != null) {
continue;
}
// negated
if (infiniteImpermanenceNegatedColumns.Contains(i)) {
continue;
}
// have empty column that's not negated
return false;
}
// all columns are negated
return true;
}
/// <summary>
/// Check whether the spells will be negated.
/// </summary>
/// <param name="card"></param>
/// <returns></returns>
protected bool DefaultCheckWhetherSpellActivateWillBeNegated(ClientCard card)
{
if (card == null) return false;
if (card.Location == CardLocation.SpellZone)
{
return infiniteImpermanenceNegatedColumns.Contains(card.Sequence);
}
// check whether will be negated by Infinite Impermanence
return DefaultCheckAllAvailableSpellColumnNegated();
}
} }
} }
...@@ -70,6 +70,7 @@ ...@@ -70,6 +70,7 @@
<Compile Include="Game\AI\DecksManager.cs" /> <Compile Include="Game\AI\DecksManager.cs" />
<Compile Include="Game\AI\Decks\MalissExecutor.cs" /> <Compile Include="Game\AI\Decks\MalissExecutor.cs" />
<Compile Include="Game\AI\Decks\RyzealExecutor.cs" /> <Compile Include="Game\AI\Decks\RyzealExecutor.cs" />
<Compile Include="Game\AI\Decks\ApophisExecutor.cs" />
<Compile Include="Game\AI\Decks\AlbazExecutor.cs" /> <Compile Include="Game\AI\Decks\AlbazExecutor.cs" />
<Compile Include="Game\AI\Decks\AltergeistExecutor.cs" /> <Compile Include="Game\AI\Decks\AltergeistExecutor.cs" />
<Compile Include="Game\AI\Decks\BraveExecutor.cs" /> <Compile Include="Game\AI\Decks\BraveExecutor.cs" />
......
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