Authored Unity primitive/object-model shim, VFX layer (control-flow-preserving, InstantVfx never invokes its action -- headless suppression), god-object stubs (GameMgr/EffectMgr/UIManager with faithfully-extracted nested enums), View/UI/Touch tree, LitJson+BetterList+Tuple copied, third-party stubs. Discovered Roslyn header-error masking: fixing class-header type errors unmasks body references, so the true copy closure is ~2570 files (was 782 under masking). Errors: masked-25720 -> 268; our shim files compile clean. Remaining: ~50 residual shim/external types, 24 NGUI UI-base overrides, static-type fixes, plus likely 1-2 more unmask waves.
1455 lines
71 KiB
C#
1455 lines
71 KiB
C#
using System;
|
|
|
|
namespace Wizard;
|
|
|
|
public static class AIScriptParser
|
|
{
|
|
public static int ParseInt(string num)
|
|
{
|
|
if (num == "")
|
|
{
|
|
return 0;
|
|
}
|
|
try
|
|
{
|
|
return int.Parse(num);
|
|
}
|
|
catch (Exception)
|
|
{
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
public static AIScriptTokenBase ConvertWordToToken(string word)
|
|
{
|
|
if (float.TryParse(word, out var result))
|
|
{
|
|
return new AIScriptNumericToken(result);
|
|
}
|
|
switch (word)
|
|
{
|
|
case "+":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.PLUS);
|
|
case "-":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.MINUS);
|
|
case "*":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.MULTI);
|
|
case "/":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.DIV);
|
|
case "%":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.REMAIN);
|
|
case "(":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.LEFT_BLACKET);
|
|
case ")":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.RIGHT_BLACKET);
|
|
case ",":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.COMMA);
|
|
case ">":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.MORE_THAN);
|
|
case ">=":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.MORE_EQUAL);
|
|
case "<":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.LESS_THAN);
|
|
case "<=":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.LESS_EQUAL);
|
|
case "==":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.EQUAL);
|
|
case "max":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.MAX);
|
|
case "min":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.MIN);
|
|
case "|":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.OR);
|
|
case "&":
|
|
return new AIScriptOperatorSymbolToken(AIScriptTokenType.AND);
|
|
default:
|
|
{
|
|
bool isNot = false;
|
|
if (word.StartsWith("!"))
|
|
{
|
|
isNot = true;
|
|
word = word.Substring(1);
|
|
}
|
|
return word switch
|
|
{
|
|
"NOW_TURN" => new AIScriptVariableToken(AIScriptTokenVariableType.NOW_TURN),
|
|
"COUNTDOWN" => new AIScriptVariableToken(AIScriptTokenVariableType.COUNTDOWN),
|
|
"REINCARNATION_MAX" => new AIScriptVariableToken(AIScriptTokenVariableType.REINCARNATION_MAX),
|
|
"SPELLBOOST" => new AIScriptVariableToken(AIScriptTokenVariableType.SPELLBOOST),
|
|
"FIELD_SPACE" => new AIScriptVariableToken(AIScriptTokenVariableType.FIELD_SPACE),
|
|
"ALLY_UNIT_MIN" => new AIScriptVariableToken(AIScriptTokenVariableType.ALLY_UNIT_MIN),
|
|
"ALLY_UNIT_MAX" => new AIScriptVariableToken(AIScriptTokenVariableType.ALLY_UNIT_MAX),
|
|
"ALLY_ATTACKABLE_ATK_MAX" => new AIScriptVariableToken(AIScriptTokenVariableType.ALLY_ATTACKABLE_ATK_MAX),
|
|
"ALLY_NON_ATTACKABLE_ATK_MAX" => new AIScriptVariableToken(AIScriptTokenVariableType.ALLY_NON_ATTACKABLE_ATK_MAX),
|
|
"ALLY_MAX_ATTACKABLE_LIFE" => new AIScriptVariableToken(AIScriptTokenVariableType.ALLY_MAX_ATTACKABLE_LIFE),
|
|
"ENEMY_UNIT_MIN" => new AIScriptVariableToken(AIScriptTokenVariableType.ENEMY_UNIT_MIN),
|
|
"ENEMY_UNIT_MAX" => new AIScriptVariableToken(AIScriptTokenVariableType.ENEMY_UNIT_MAX),
|
|
"HAND_COUNT_E" => new AIScriptVariableToken(AIScriptTokenVariableType.HAND_COUNT_E),
|
|
"DECK_COUNT_E" => new AIScriptVariableToken(AIScriptTokenVariableType.DECK_COUNT_E),
|
|
"PLAYPTN_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.PLAYPTN_COUNT),
|
|
"MEMBER_ATK_SUM" => new AIScriptVariableToken(AIScriptTokenVariableType.MEMBER_ATK_SUM),
|
|
"MEMBER_MAX_LIFE" => new AIScriptVariableToken(AIScriptTokenVariableType.MEMBER_MAX_LIFE),
|
|
"MEMBER_LIFE_SUM" => new AIScriptVariableToken(AIScriptTokenVariableType.MEMBER_LIFE_SUM),
|
|
"INPLAY_ATTACK_SUM_TO_LEADER" => new AIScriptVariableToken(AIScriptTokenVariableType.INPLAY_ATTACK_SUM_TO_LEADER),
|
|
"SUMMON_DRUNKEN_ATK_MAX" => new AIScriptVariableToken(AIScriptTokenVariableType.SUMMON_DRUNKEN_ATK_MAX),
|
|
"ATTACK_TARGET_ATK_MAX" => new AIScriptVariableToken(AIScriptTokenVariableType.ATTACK_TARGET_ATK_MAX),
|
|
"ENEMY_MIN_ATK" => new AIScriptVariableToken(AIScriptTokenVariableType.ENEMY_MIN_ATK),
|
|
"ENEMY_MAX_ATK" => new AIScriptVariableToken(AIScriptTokenVariableType.ENEMY_MAX_ATK),
|
|
"ENEMY_ATK_SUM" => new AIScriptVariableToken(AIScriptTokenVariableType.ENEMY_ATK_SUM),
|
|
"ALLY_INPLAY_MAX_ATK" => new AIScriptVariableToken(AIScriptTokenVariableType.ALLY_INPLAY_MAX_ATK),
|
|
"GRAVE_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.GRAVE_COUNT),
|
|
"ALLY_MAX_PP" => new AIScriptVariableToken(AIScriptTokenVariableType.ALLY_MAX_PP),
|
|
"ENEMY_MAX_PP" => new AIScriptVariableToken(AIScriptTokenVariableType.ENEMY_MAX_PP),
|
|
"REST_PP" => new AIScriptVariableToken(AIScriptTokenVariableType.REST_PP),
|
|
"NOW_REST_PP" => new AIScriptVariableToken(AIScriptTokenVariableType.NOW_REST_PP),
|
|
"ALLY_EP" => new AIScriptVariableToken(AIScriptTokenVariableType.ALLY_EP),
|
|
"ENEMY_EP" => new AIScriptVariableToken(AIScriptTokenVariableType.ENEMY_EP),
|
|
"OWN_ATK" => new AIScriptVariableToken(AIScriptTokenVariableType.OWN_ATK),
|
|
"OWN_LIFE" => new AIScriptVariableToken(AIScriptTokenVariableType.OWN_LIFE),
|
|
"OWN_COST" => new AIScriptVariableToken(AIScriptTokenVariableType.OWN_COST),
|
|
"OWN_BASE_ATK" => new AIScriptVariableToken(AIScriptTokenVariableType.OWN_BASE_ATK),
|
|
"OWN_BASE_LIFE" => new AIScriptVariableToken(AIScriptTokenVariableType.OWN_BASE_LIFE),
|
|
"KILLER_ATTACK_VALUE" => new AIScriptVariableToken(AIScriptTokenVariableType.KILLER_ATTACK_VALUE),
|
|
"ENHANCE_COST" => new AIScriptVariableToken(AIScriptTokenVariableType.ENHANCE_COST),
|
|
"PLAY_ACTOR_ENHANCE_COST" => new AIScriptVariableToken(AIScriptTokenVariableType.PLAY_ACTOR_ENHANCE_COST),
|
|
"ACCELERATE_COST" => new AIScriptVariableToken(AIScriptTokenVariableType.ACCELERATE_COST),
|
|
"CHOICE_TRANSFORM_COST" => new AIScriptVariableToken(AIScriptTokenVariableType.CHOICE_TRANSFORM_COST),
|
|
"BASE_SKILL_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.BASE_SKILL_COUNT),
|
|
"LAST_LIFE" => new AIScriptVariableToken(AIScriptTokenVariableType.LAST_LIFE),
|
|
"MAX_ATTACKABLE_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.MAX_ATTACKABLE_COUNT),
|
|
"HAND_MIN_COST" => new AIScriptVariableToken(AIScriptTokenVariableType.HAND_MIN_COST),
|
|
"HAND_MAX_COST" => new AIScriptVariableToken(AIScriptTokenVariableType.HAND_MAX_COST),
|
|
"LEADER_DEF_LIFE" => new AIScriptVariableToken(AIScriptTokenVariableType.LEADER_DEF_LIFE),
|
|
"LEADER_CURRENT_LIFE" => new AIScriptVariableToken(AIScriptTokenVariableType.LEADER_CURRENT_LIFE),
|
|
"UNION_BURST_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.UNION_BURST_COUNT),
|
|
"CONSUME_EP" => new AIScriptVariableToken(AIScriptTokenVariableType.CONSUME_EP),
|
|
"LAST_HEAL_AMOUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.LAST_HEAL_AMOUNT),
|
|
"JUST_BEFORE_TURN_DAMAGE" => new AIScriptVariableToken(AIScriptTokenVariableType.JUST_BEFORE_TURN_DAMAGE),
|
|
"RALLY_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.RALLY_COUNT),
|
|
"SKYBOUND_ART_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.SKYBOUND_ART_COUNT),
|
|
"SUPER_SKYBOUND_ART_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.SUPER_SKYBOUND_ART_COUNT),
|
|
"USED_EP_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.USED_EP_COUNT),
|
|
"USED_PP_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.USED_PP_COUNT),
|
|
"EARTH_RITE_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.EARTH_RITE_COUNT),
|
|
"NECROMANCE_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.NECROMANCE_COUNT),
|
|
"USED_STACK_COUNT" => new AIScriptVariableToken(AIScriptTokenVariableType.USED_STACK_COUNT),
|
|
"DEFAULT_DAMAGE" => new AIScriptVariableToken(AIScriptTokenVariableType.DEFAULT_DAMAGE),
|
|
"NEXT_PLAY_PRIORITY" => new AIScriptVariableToken(AIScriptTokenVariableType.NEXT_PLAY_PRIORITY),
|
|
"NECROMANCED_COUNT_IN_GAME" => new AIScriptVariableToken(AIScriptTokenVariableType.NECROMANCED_COUNT_IN_GAME),
|
|
"IS_EVO_TURN" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_EVO_TURN),
|
|
"IS_ABLE_EVO" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_ABLE_EVO),
|
|
"IS_F_ADV" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_F_ADV),
|
|
"IS_F_DISADV" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_F_DISADV),
|
|
"IS_AWAKE" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_AWAKE),
|
|
"IS_BERSERK" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_BERSERK),
|
|
"IS_TO_BE_BERSERK" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_TO_BE_BERSERK),
|
|
"IS_ON_FIELD" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_ON_FIELD),
|
|
"IS_IN_HAND" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_IN_HAND),
|
|
"IS_IN_PLAYPTN" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_IN_PLAYPTN),
|
|
"IS_OWNER_TURN" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_OWNER_TURN),
|
|
"IS_ALLY" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_ALLY),
|
|
"IS_ENEMY" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_ENEMY),
|
|
"IS_ALLY_FIRST" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_ALLY_FIRST),
|
|
"IS_SNEAK" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_SNEAK),
|
|
"IS_EVOLVED" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_EVOLVED),
|
|
"IS_KILLER" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_KILLER),
|
|
"IS_MEDUSA" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_MEDUSA),
|
|
"IS_GUARD" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_GUARD),
|
|
"IS_RUSH" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_RUSH),
|
|
"IS_PLAYOUT_ATTACKER" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_PLAYOUT_ATTACKER),
|
|
"IS_ENHANCED" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_ENHANCED),
|
|
"IS_ACCELERATE" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_ACCELERATE),
|
|
"IS_CRYSTALIZE" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_CRYSTALIZE),
|
|
"IS_ATTACK_LEADER" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_ATTACK_LEADER),
|
|
"IS_FANFARE" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_FANFARE),
|
|
"IS_SKILL_REMOVED" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_SKILL_REMOVED),
|
|
"IS_BARBAROSSA" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_BARBAROSSA),
|
|
"IS_RESONANCE" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_RESONANCE),
|
|
"IS_LETHAL" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_LETHAL),
|
|
"IS_USED_EVO" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_USED_EVO),
|
|
"IS_FIRST_TURN" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_FIRST_TURN),
|
|
"IS_DAMAGED" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_DAMAGED),
|
|
"IS_DELAY_HEAL" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_DELAY_HEAL),
|
|
"IS_NOT_ATTACK_YET" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_NOT_ATTACK_YET),
|
|
"IS_EVOLVING" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_EVOLVING),
|
|
"IS_LEADER" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_LEADER),
|
|
"IS_GET_ON" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_GET_ON),
|
|
"IS_SKILL_SUMMONED" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_SKILL_SUMMONED),
|
|
"IS_UNTOUCHABLE" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_UNTOUCHABLE),
|
|
"IS_FORCE_TARGETING" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_FORCE_TARGETING),
|
|
"IS_QUICK" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_QUICK),
|
|
"IS_NOT_BE_ATTACKED" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_NOT_BE_ATTACKED),
|
|
"IS_IN_SIMULATION" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_IN_SIMULATION),
|
|
"IS_IGNORE_GUARD" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_IGNORE_GUARD),
|
|
"IS_ATTACKED" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_ATTACKED),
|
|
"IS_ONEMORELASTWORD_TAGGED" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_ONEMORELASTWORD_TAGGED),
|
|
"IS_DRAIN" => new AIScriptVariableToken(AIScriptTokenVariableType.IS_DRAIN),
|
|
"MEMBER_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.MEMBER_COUNT, 1),
|
|
"INPLAY_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.INPLAY_COUNT, 1),
|
|
"PLAYOUT_ATTACKER_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.PLAYOUT_ATTACKER_COUNT, 1),
|
|
"BEFORE_PLAYPTN_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.BEFORE_PLAYPTN_COUNT, 1),
|
|
"PLAY_TOKEN_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.PLAY_TOKEN_COUNT, 1),
|
|
"EVO_COUNT_IN_GAME" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVO_COUNT_IN_GAME, 1),
|
|
"EVO_COUNT_IN_PREVIOUS_TURN" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVO_COUNT_IN_PREVIOUS_TURN, 1),
|
|
"HAND_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.HAND_COUNT, 1),
|
|
"HAND_NAME_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.HAND_NAME_COUNT, 0),
|
|
"SKILL_COUNT_FROM_ID" => new AIScriptFunctionToken(AIScriptTokenFuncType.SKILL_COUNT_FROM_ID, 2),
|
|
"TAG_COUNT_FROM_ID" => new AIScriptFunctionToken(AIScriptTokenFuncType.TAG_COUNT_FROM_ID, 2),
|
|
"DECK_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.DECK_COUNT, 1),
|
|
"EVAL_RANDOM_MULTI_DAMAGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_RANDOM_MULTI_DAMAGE, 2),
|
|
"EVAL_RANDOM_MULTI_SELECT_DAMAGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_RANDOM_MULTI_SELECT_DAMAGE, 3),
|
|
"EVAL_RANDOM_MULTI_DAMAGE_MAX" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_RANDOM_MULTI_DAMAGE_MAX, 0),
|
|
"EVAL_INSTANT_ATTACK" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_INSTANT_ATTACK, 3),
|
|
"EVAL_RUSH" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_RUSH, 3),
|
|
"EVAL_TARGETING_DAMAGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_TARGETING_DAMAGE, 2),
|
|
"EVAL_TARGETING_AND_RANDOM_MULTI_DAMAGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_TARGETING_AND_RANDOM_MULTI_DAMAGE, 0),
|
|
"EVAL_TARGETING_DESTROY" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_TARGETING_DESTROY, 4),
|
|
"EVAL_TARGETING_OTHER_DESTROY" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_TARGETING_OTHER_DESTROY, 4),
|
|
"EVAL_TARGETING_MULTI_DESTROY" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_TARGETING_MULTI_DESTROY, 0),
|
|
"EVAL_TARGETING_BOUNCE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_TARGETING_BOUNCE, 4),
|
|
"EVAL_TARGETING_BANISH" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_TARGETING_BANISH, 4),
|
|
"EVAL_TARGETING_HEAL" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_TARGETING_HEAL, 0),
|
|
"EVAL_TARGETING_METAMORPHOSE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_TARGETING_METAMORPHOSE, 0),
|
|
"EVAL_TARGETING_BUFF" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_TARGETING_BUFF, 0),
|
|
"EVAL_ECHO_DAMAGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_ECHO_DAMAGE, 2),
|
|
"EVAL_ALL_DAMAGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_ALL_DAMAGE, 2),
|
|
"EVAL_ALL_MULTI_DAMAGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_ALL_MULTI_DAMAGE, 3),
|
|
"EVAL_ALL_DESTROY" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_ALL_DESTROY, 4),
|
|
"EVAL_ALL_BOUNCE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_ALL_BOUNCE, 4),
|
|
"EVAL_ALL_METAMORPHOSE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_ALL_METAMORPHOSE, 0),
|
|
"EVAL_ALL_BUFF" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_ALL_BUFF, 0),
|
|
"EVAL_RANDOM_BUFF" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_RANDOM_BUFF, 0),
|
|
"EVAL_ALL_HEAL" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_ALL_HEAL, 0),
|
|
"EVAL_ALL_BANISH" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_ALL_BANISH, 0),
|
|
"EVAL_RANDOM_DESTROY" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_RANDOM_DESTROY, 3),
|
|
"EVAL_RANDOM_BOUNCE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_RANDOM_BOUNCE, 1),
|
|
"EVAL_RANDOM_BANISH" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_RANDOM_BANISH, 0),
|
|
"EVAL_RANDOM_METAMORPHOSE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_RANDOM_METAMORPHOSE, 0),
|
|
"EVAL_LEADER_DAMAGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_LEADER_DAMAGE, 2),
|
|
"EVAL_LEADER_HEAL" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_LEADER_HEAL, 2),
|
|
"EVAL_REANIMATE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_REANIMATE, 1),
|
|
"EVAL_DIVIDED_DAMAGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_DIVIDED_DAMAGE, 1),
|
|
"FORCED_EXCHANGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.FORCED_EXCHANGE, 1),
|
|
"LIFE" => new AIScriptFunctionToken(AIScriptTokenFuncType.LIFE, 1),
|
|
"ATTACK" => new AIScriptFunctionToken(AIScriptTokenFuncType.ATTACK, 1),
|
|
"POW" => new AIScriptFunctionToken(AIScriptTokenFuncType.POW, 2),
|
|
"CEILING" => new AIScriptFunctionToken(AIScriptTokenFuncType.CEILING, 1),
|
|
"FLOOR" => new AIScriptFunctionToken(AIScriptTokenFuncType.FLOOR, 1),
|
|
"EVAL_COUNTDOWN" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_CHANT_COUNT_CHANGE, 1),
|
|
"EVAL_ALL_COUNTDOWN" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_CHANT_COUNT_CHANGE_ALL, 1),
|
|
"IS_CLASH_TARGET" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_CLASH_TARGET, 1),
|
|
"IS_ATTACK_TARGET" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_ATTACK_TARGET, 1),
|
|
"IS_SELECTED_TARGET" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_SELECTED_TARGET, 1),
|
|
"IS_NEXT_PLAY" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_NEXT_PLAY, 1),
|
|
"DECK_NAME_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.DECK_NAME_COUNT, 1),
|
|
"BROKEN_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.BROKEN_COUNT, 1),
|
|
"BROKEN_NAME_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.BROKEN_NAME_COUNT, 1),
|
|
"BROKEN_COST_SUM" => new AIScriptFunctionToken(AIScriptTokenFuncType.BROKEN_COST_SUM, 1),
|
|
"IS_TRIBE" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_TRIBE, 1),
|
|
"PLAYED_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.PLAYED_COUNT, 1),
|
|
"PLAYED_COUNT_IN_GAME" => new AIScriptFunctionToken(AIScriptTokenFuncType.PLAYED_COUNT_IN_GAME, 1),
|
|
"PLAYED_COUNT_IN_PREVIOUS_TURN" => new AIScriptFunctionToken(AIScriptTokenFuncType.PLAYED_COUNT_IN_PREVIOUS_TURN, 1),
|
|
"PLAYED_NAME_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.PLAYED_NAME_COUNT, 1),
|
|
"RANDOM" => new AIScriptFunctionToken(AIScriptTokenFuncType.RANDOM, 1),
|
|
"IS_REANIMATE" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_REANIMATE, 1),
|
|
"DAMAGE_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.DAMAGE_COUNT, 1),
|
|
"HEAL_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.HEAL_COUNT, 1),
|
|
"TOTAL_DAMAGE" => new AIScriptFunctionToken(AIScriptTokenFuncType.TOTAL_DAMAGE, 0),
|
|
"FUSION_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.FUSION_COUNT, 0),
|
|
"NOW_FUSION_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.NOW_FUSION_COUNT, 0),
|
|
"FUSION_COUNT_AT_ONCE" => new AIScriptFunctionToken(AIScriptTokenFuncType.FUSION_COUNT_AT_ONCE, 0),
|
|
"FUSION_NAME_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.FUSION_NAME_COUNT, 0),
|
|
"IS_SKILL_OCCURRED" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_SKILL_OCCURRED, 0),
|
|
"SKILL_ACTIVATE_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.SKILL_ACTIVATE_COUNT, 0),
|
|
"HAND_MAX_ATTACK" => new AIScriptFunctionToken(AIScriptTokenFuncType.HAND_MAX_ATTACK, 0),
|
|
"DECK_MAX_COST" => new AIScriptFunctionToken(AIScriptTokenFuncType.DECK_MAX_COST, 0),
|
|
"INPLAY_LARGEST_LIFE" => new AIScriptFunctionToken(AIScriptTokenFuncType.INPLAY_LARGEST_LIFE, 0),
|
|
"LEADER_MAX_LIFE" => new AIScriptFunctionToken(AIScriptTokenFuncType.LEADER_MAX_LIFE, 0),
|
|
"IS_DISCARD_TARGET" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_DISCARD_TARGET, 0),
|
|
"DISCARD_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.DISCARD_COUNT, 0),
|
|
"BOUNCE_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.BOUNCE_COUNT, 0),
|
|
"EMOTE_PLAY_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.EMOTE_PLAY_COUNT, 0),
|
|
"DRAW_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.DRAW_COUNT, 0),
|
|
"MEMBER_MAX_ATK" => new AIScriptFunctionToken(AIScriptTokenFuncType.MEMBER_MAX_ATK, 0),
|
|
"LEAVE_NAME_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.LEAVE_NAME_COUNT, 1),
|
|
"DESTROYED_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.DESTROYED_COUNT, 1),
|
|
"IS_BURIAL_RITE" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_BURIAL_RITE, 0),
|
|
"BURIAL_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.BURIAL_COUNT, 1),
|
|
"RESONANCE_START_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.RESONANCE_START_COUNT, 2),
|
|
"SUMMON_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.SUMMON_COUNT, 1),
|
|
"BUFF_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.BUFF_COUNT, 0),
|
|
"IS_HOLDING_BATTLE_SKILL" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_HOLDING_BATTLE_SKILL, 1),
|
|
"IS_LEADER_HOLDING_BATTLE_SKILL" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_LEADER_HOLDING_BATTLE_SKILL, 1),
|
|
"STACK_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.STACK_COUNT, 0),
|
|
"LEAVE_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.LEAVE_COUNT, 0),
|
|
"OWN_DESTROY_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.OWN_DESTROY_COUNT, 0),
|
|
"IS_SELECTABLE" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_SELECTABLE, 0),
|
|
"IS_ENEMY_AI_ID" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_ENEMY_AI_ID, 0),
|
|
"ADD_HAND_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.ADD_HAND_COUNT, 0),
|
|
"BASE_COST" => new AIScriptFunctionToken(AIScriptTokenFuncType.BASE_COST, 0),
|
|
"RECEIVED_DAMAGE_SUM" => new AIScriptFunctionToken(AIScriptTokenFuncType.RECEIVED_DAMAGE_SUM, 0),
|
|
"IS_PLAYER_CHARA_ID" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_PLAYER_CHARA_ID, 0),
|
|
"FUSION_COUNT_IN_GAME" => new AIScriptFunctionToken(AIScriptTokenFuncType.FUSION_COUNT_IN_GAME, 0),
|
|
"FUSION_NAME_COUNT_IN_GAME" => new AIScriptFunctionToken(AIScriptTokenFuncType.FUSION_NAME_COUNT_IN_GAME, 0),
|
|
"IS_PLAYER_ABILITY_ID" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_PLAYER_ABILITY_ID, 0),
|
|
"BANISH_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.BANISH_COUNT, 0),
|
|
"HAND_BANISH_COUNT" => new AIScriptFunctionToken(AIScriptTokenFuncType.HAND_BANISH_COUNT, 0),
|
|
"IS_BOTH_CLASS" => new AIScriptFunctionToken(AIScriptTokenFuncType.IS_BOTH_CLASS, 0),
|
|
"EVAL_ATTACK_REMOVE" => new AIScriptFunctionToken(AIScriptTokenFuncType.EVAL_ATTACK_REMOVE, 0),
|
|
"ADDED_DECK_COUNT_IN_GAME" => new AIScriptFunctionToken(AIScriptTokenFuncType.ADDED_DECK_COUNT_IN_GAME, 0),
|
|
"NONE" => new AIScriptArgumentToken(AIScriptTokenArgType.NONE, isNot),
|
|
"LEGION" => new AIScriptArgumentToken(AIScriptTokenArgType.LEGION, isNot),
|
|
"LORD" => new AIScriptArgumentToken(AIScriptTokenArgType.LORD, isNot),
|
|
"WHITE_RITUAL" => new AIScriptArgumentToken(AIScriptTokenArgType.WHITE_RITUAL, isNot),
|
|
"ARTIFACT" => new AIScriptArgumentToken(AIScriptTokenArgType.ARTIFACT, isNot),
|
|
"MANARIA" => new AIScriptArgumentToken(AIScriptTokenArgType.MANARIA, isNot),
|
|
"MACHINE" => new AIScriptArgumentToken(AIScriptTokenArgType.MACHINE, isNot),
|
|
"FOOD" => new AIScriptArgumentToken(AIScriptTokenArgType.FOOD, isNot),
|
|
"LEVIN" => new AIScriptArgumentToken(AIScriptTokenArgType.LEVIN, isNot),
|
|
"NATURE" => new AIScriptArgumentToken(AIScriptTokenArgType.NATURE, isNot),
|
|
"BANQUET" => new AIScriptArgumentToken(AIScriptTokenArgType.BANQUET, isNot),
|
|
"HERO" => new AIScriptArgumentToken(AIScriptTokenArgType.HERO, isNot),
|
|
"ARMED" => new AIScriptArgumentToken(AIScriptTokenArgType.ARMED, isNot),
|
|
"LOOT" => new AIScriptArgumentToken(AIScriptTokenArgType.LOOT, isNot),
|
|
"HELLBOUND" => new AIScriptArgumentToken(AIScriptTokenArgType.HELLBOUND, isNot),
|
|
"SCHOOL" => new AIScriptArgumentToken(AIScriptTokenArgType.SCHOOL, isNot),
|
|
"CHESS" => new AIScriptArgumentToken(AIScriptTokenArgType.CHESS, isNot),
|
|
"ANY_TRIBE" => new AIScriptArgumentToken(AIScriptTokenArgType.ANY_TRIBE, isNot),
|
|
"ALL" => new AIScriptArgumentToken(AIScriptTokenArgType.ALL, isNot),
|
|
"SPELL" => new AIScriptArgumentToken(AIScriptTokenArgType.SPELL, isNot),
|
|
"SPELL_CARD_TYPE" => new AIScriptArgumentToken(AIScriptTokenArgType.SPELL_CARD_TYPE, isNot),
|
|
"ALL_SPELLBOOST" => new AIScriptArgumentToken(AIScriptTokenArgType.ALL_SPELLBOOST, isNot),
|
|
"FIELD" => new AIScriptArgumentToken(AIScriptTokenArgType.FIELD, isNot),
|
|
"CHANT_FIELD" => new AIScriptArgumentToken(AIScriptTokenArgType.CHANT_FIELD, isNot),
|
|
"CLASS" => new AIScriptArgumentToken(AIScriptTokenArgType.CLASS, isNot),
|
|
"ALLY_CLASS" => new AIScriptArgumentToken(AIScriptTokenArgType.ALLY_CLASS, isNot),
|
|
"ENEMY_CLASS" => new AIScriptArgumentToken(AIScriptTokenArgType.ENEMY_CLASS, isNot),
|
|
"ACCELERATE" => new AIScriptArgumentToken(AIScriptTokenArgType.ACCELERATE, isNot),
|
|
"CRYSTALIZE" => new AIScriptArgumentToken(AIScriptTokenArgType.CRYSTALIZE, isNot),
|
|
"LASTWORD" => new AIScriptArgumentToken(AIScriptTokenArgType.LASTWORD, isNot),
|
|
"KILLER" => new AIScriptArgumentToken(AIScriptTokenArgType.KILLER, isNot),
|
|
"SNEAK" => new AIScriptArgumentToken(AIScriptTokenArgType.SNEAK, isNot),
|
|
"MEDUSA" => new AIScriptArgumentToken(AIScriptTokenArgType.MEDUSA, isNot),
|
|
"QUICK" => new AIScriptArgumentToken(AIScriptTokenArgType.QUICK, isNot),
|
|
"RUSH" => new AIScriptArgumentToken(AIScriptTokenArgType.RUSH, isNot),
|
|
"DRAIN" => new AIScriptArgumentToken(AIScriptTokenArgType.DRAIN, isNot),
|
|
"GUARD" => new AIScriptArgumentToken(AIScriptTokenArgType.GUARD, isNot),
|
|
"UNTOUCHABLE" => new AIScriptArgumentToken(AIScriptTokenArgType.UNTOUCHABLE, isNot),
|
|
"FORCE_TARGETING" => new AIScriptArgumentToken(AIScriptTokenArgType.FORCE_TARGETING, isNot),
|
|
"UNBANISHABLE" => new AIScriptArgumentToken(AIScriptTokenArgType.UNBANISHABLE, isNot),
|
|
"IGNORE_GUARD" => new AIScriptArgumentToken(AIScriptTokenArgType.IGNORE_GUARD, isNot),
|
|
"DAMAGE_CLIP" => new AIScriptArgumentToken(AIScriptTokenArgType.DAMAGE_CLIP, isNot),
|
|
"DAMAGE_CUT" => new AIScriptArgumentToken(AIScriptTokenArgType.DAMAGE_CUT, isNot),
|
|
"SKILL_DAMAGE" => new AIScriptArgumentToken(AIScriptTokenArgType.SKILL_DAMAGE, isNot),
|
|
"ALL_DAMAGE" => new AIScriptArgumentToken(AIScriptTokenArgType.ALL_DAMAGE, isNot),
|
|
"ATTACK_DAMAGE" => new AIScriptArgumentToken(AIScriptTokenArgType.ATTACK_DAMAGE, isNot),
|
|
"SPELL_DAMAGE" => new AIScriptArgumentToken(AIScriptTokenArgType.SPELL_DAMAGE, isNot),
|
|
"NOT_BE_ATTACKED" => new AIScriptArgumentToken(AIScriptTokenArgType.NOT_BE_ATTACKED, isNot),
|
|
"UNION_BURST" => new AIScriptArgumentToken(AIScriptTokenArgType.UNION_BURST, isNot),
|
|
"NO_SKILL" => new AIScriptArgumentToken(AIScriptTokenArgType.NO_SKILL, isNot),
|
|
"CRYSTALIZE_HOLDER" => new AIScriptArgumentToken(AIScriptTokenArgType.CRYSTALIZE_HOLDER, isNot),
|
|
"ELF" => new AIScriptArgumentToken(AIScriptTokenArgType.ELF, isNot),
|
|
"ROYAL" => new AIScriptArgumentToken(AIScriptTokenArgType.ROYAL, isNot),
|
|
"WITCH" => new AIScriptArgumentToken(AIScriptTokenArgType.WITCH, isNot),
|
|
"DRAGON" => new AIScriptArgumentToken(AIScriptTokenArgType.DRAGON, isNot),
|
|
"NECROMANCER" => new AIScriptArgumentToken(AIScriptTokenArgType.NECROMANCER, isNot),
|
|
"VAMPIRE" => new AIScriptArgumentToken(AIScriptTokenArgType.VAMPIRE, isNot),
|
|
"BISHOP" => new AIScriptArgumentToken(AIScriptTokenArgType.BISHOP, isNot),
|
|
"NEMESIS" => new AIScriptArgumentToken(AIScriptTokenArgType.NEMESIS, isNot),
|
|
"WHEN_PLAY" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_PLAY, isNot),
|
|
"WHEN_DESTROY" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_DESTROY, isNot),
|
|
"WHEN_ATTACK" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_ATTACK, isNot),
|
|
"WHEN_CLASH" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_CLASH, isNot),
|
|
"WHEN_EVO" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_EVO, isNot),
|
|
"WHEN_TURNEND" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_TURNEND, isNot),
|
|
"WHEN_ALLY_TURNEND" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_ALLY_TURNEND, isNot),
|
|
"WHEN_OPPONENT_TURNEND" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_OPPONENT_TURNEND, isNot),
|
|
"WHEN_ALLY_TURNSTART" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_ALLY_TURNSTART, isNot),
|
|
"WHEN_OPPONENT_TURNSTART" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_OPPONENT_TURNSTART, isNot),
|
|
"WHEN_NEXT_TURNEND" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_NEXT_TURNEND, isNot),
|
|
"WHEN_SUMMON" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_SUMMON, isNot),
|
|
"WHEN_HEAL" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_HEAL, isNot),
|
|
"WHEN_LEAVE" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_LEAVE, isNot),
|
|
"FIRST_TURN" => new AIScriptArgumentToken(AIScriptTokenArgType.FIRST_TURN, isNot),
|
|
"EVOLVED" => new AIScriptArgumentToken(AIScriptTokenArgType.EVOLVED, isNot),
|
|
"ATTACKABLE" => new AIScriptArgumentToken(AIScriptTokenArgType.ATTACKABLE, isNot),
|
|
"CANT_ATTACK" => new AIScriptArgumentToken(AIScriptTokenArgType.CANT_ATTACK, isNot),
|
|
"PREVIOUS_TURN_ATTACKED" => new AIScriptArgumentToken(AIScriptTokenArgType.PREVIOUS_TURN_ATTACKED, isNot),
|
|
"ATTACKED" => new AIScriptArgumentToken(AIScriptTokenArgType.ATTACKED, isNot),
|
|
"CONSUME_EP_ZERO" => new AIScriptArgumentToken(AIScriptTokenArgType.CONSUME_EP_ZERO, isNot),
|
|
"ALLY" => new AIScriptArgumentToken(AIScriptTokenArgType.ALLY, isNot),
|
|
"ENEMY" => new AIScriptArgumentToken(AIScriptTokenArgType.OPPONENT, isNot),
|
|
"BOTH" => new AIScriptArgumentToken(AIScriptTokenArgType.BOTH, isNot),
|
|
"SELECTED_TARGET_SIDE" => new AIScriptArgumentToken(AIScriptTokenArgType.SELECTED_TARGET_SIDE, isNot),
|
|
"RANDOM_SELECT" => new AIScriptArgumentToken(AIScriptTokenArgType.RANDOM_SELECT, isNot),
|
|
"ALL_SELECT" => new AIScriptArgumentToken(AIScriptTokenArgType.ALL_SELECT, isNot),
|
|
"TARGET_SELECT" => new AIScriptArgumentToken(AIScriptTokenArgType.TARGET_SELECT, isNot),
|
|
"SECOND_TARGET_SELECT" => new AIScriptArgumentToken(AIScriptTokenArgType.SECOND_TARGET_SELECT, isNot),
|
|
"RANDOM_MULTI_SELECT" => new AIScriptArgumentToken(AIScriptTokenArgType.RANDOM_MULTI_SELECT, isNot),
|
|
"REVERSE_TARGET" => new AIScriptArgumentToken(AIScriptTokenArgType.REVERSE_TARGET, isNot),
|
|
"FIRST_SELECT" => new AIScriptArgumentToken(AIScriptTokenArgType.FIRST_SELECT, isNot),
|
|
"DIVIDED_SELECT" => new AIScriptArgumentToken(AIScriptTokenArgType.DIVIDED_SELECT, isNot),
|
|
"OLDEST_SELECT" => new AIScriptArgumentToken(AIScriptTokenArgType.OLDEST_SELECT, isNot),
|
|
"FOLLOWER" => new AIScriptArgumentToken(AIScriptTokenArgType.FOLLOWER, isNot),
|
|
"FOLLOWER_CARD_TYPE" => new AIScriptArgumentToken(AIScriptTokenArgType.FOLLOWER_CARD_TYPE, isNot),
|
|
"AMULET" => new AIScriptArgumentToken(AIScriptTokenArgType.AMULET, isNot),
|
|
"NOT_COUNTDOWN_AMULET" => new AIScriptArgumentToken(AIScriptTokenArgType.NOT_COUNTDOWN_AMULET, isNot),
|
|
"DAMAGED_FOLLOWER" => new AIScriptArgumentToken(AIScriptTokenArgType.DAMAGED_FOLLOWER, isNot),
|
|
"NO_DAMAGED_FOLLOWER" => new AIScriptArgumentToken(AIScriptTokenArgType.NO_DAMAGED_FOLLOWER, isNot),
|
|
"EVOLVED_FOLLOWER" => new AIScriptArgumentToken(AIScriptTokenArgType.EVOLVED_FOLLOWER, isNot),
|
|
"BUFFED_FOLLOWER" => new AIScriptArgumentToken(AIScriptTokenArgType.BUFFED_FOLLOWER, isNot),
|
|
"OTHER_FOLLOWER" => new AIScriptArgumentToken(AIScriptTokenArgType.OTHER_FOLLOWER, isNot),
|
|
"SUMMON_FOLLOWER" => new AIScriptArgumentToken(AIScriptTokenArgType.SUMMON_FOLLOWER, isNot),
|
|
"SUMMON_AMULET" => new AIScriptArgumentToken(AIScriptTokenArgType.SUMMON_AMULET, isNot),
|
|
"LATEST_SUMMON_CARD" => new AIScriptArgumentToken(AIScriptTokenArgType.LATEST_SUMMON_CARD, isNot),
|
|
"LATEST_DRAW_CARD" => new AIScriptArgumentToken(AIScriptTokenArgType.LATEST_DRAW_CARD, isNot),
|
|
"ROMELIA_TARGET" => new AIScriptArgumentToken(AIScriptTokenArgType.ROMELIA_TARGET, isNot),
|
|
"MIN_ATTACK" => new AIScriptArgumentToken(AIScriptTokenArgType.MIN_ATTACK, isNot),
|
|
"MAX_ATTACK" => new AIScriptArgumentToken(AIScriptTokenArgType.MAX_ATTACK, isNot),
|
|
"MIN_COST" => new AIScriptArgumentToken(AIScriptTokenArgType.MIN_COST, isNot),
|
|
"MAX_COST" => new AIScriptArgumentToken(AIScriptTokenArgType.MAX_COST, isNot),
|
|
"ALLY_AMULET" => new AIScriptArgumentToken(AIScriptTokenArgType.ALLY_AMULET, isNot),
|
|
"LIFE_INF" => new AIScriptArgumentToken(AIScriptTokenArgType.LIFE_INF, isNot),
|
|
"ATK_INF" => new AIScriptArgumentToken(AIScriptTokenArgType.ATK_INF, isNot),
|
|
"COST_INF" => new AIScriptArgumentToken(AIScriptTokenArgType.COST_INF, isNot),
|
|
"LIFE_SUP" => new AIScriptArgumentToken(AIScriptTokenArgType.LIFE_SUP, isNot),
|
|
"ATK_EQL" => new AIScriptArgumentToken(AIScriptTokenArgType.ATK_EQL, isNot),
|
|
"LIFE_EQL" => new AIScriptArgumentToken(AIScriptTokenArgType.LIFE_EQL, isNot),
|
|
"ATK_SUP" => new AIScriptArgumentToken(AIScriptTokenArgType.ATK_SUP, isNot),
|
|
"COST_SUP" => new AIScriptArgumentToken(AIScriptTokenArgType.COST_SUP, isNot),
|
|
"COST_EQL" => new AIScriptArgumentToken(AIScriptTokenArgType.COST_EQL, isNot),
|
|
"BASE_COST_INF" => new AIScriptArgumentToken(AIScriptTokenArgType.BASE_COST_INF, isNot),
|
|
"BASE_COST_SUP" => new AIScriptArgumentToken(AIScriptTokenArgType.BASE_COST_SUP, isNot),
|
|
"BASE_COST_EQL" => new AIScriptArgumentToken(AIScriptTokenArgType.BASE_COST_EQL, isNot),
|
|
"COUNTDOWN_EQL" => new AIScriptArgumentToken(AIScriptTokenArgType.COUNTDOWN_EQL, isNot),
|
|
"PLAY_COUNT_EQL" => new AIScriptArgumentToken(AIScriptTokenArgType.PLAY_COUNT_EQL, isNot),
|
|
"CLASH_TARGET" => new AIScriptArgumentToken(AIScriptTokenArgType.CLASH_TARGET, isNot),
|
|
"BANISHED_TARGET" => new AIScriptArgumentToken(AIScriptTokenArgType.BANISHED_TARGET, isNot),
|
|
"GETOFF_CARD" => new AIScriptArgumentToken(AIScriptTokenArgType.GETOFF_CARD, isNot),
|
|
"ATTACKER" => new AIScriptArgumentToken(AIScriptTokenArgType.ATTACKER, isNot),
|
|
"EVOLVER" => new AIScriptArgumentToken(AIScriptTokenArgType.EVOLVER, isNot),
|
|
"PLAYED_CARD" => new AIScriptArgumentToken(AIScriptTokenArgType.PLAYED_CARD, isNot),
|
|
"TEMP" => new AIScriptArgumentToken(AIScriptTokenArgType.TEMP, isNot),
|
|
"PERM" => new AIScriptArgumentToken(AIScriptTokenArgType.PERM, isNot),
|
|
"TURN" => new AIScriptArgumentToken(AIScriptTokenArgType.TURN, isNot),
|
|
"GAME" => new AIScriptArgumentToken(AIScriptTokenArgType.GAME, isNot),
|
|
"DESTROY" => new AIScriptArgumentToken(AIScriptTokenArgType.DESTROY, isNot),
|
|
"BANISH" => new AIScriptArgumentToken(AIScriptTokenArgType.BANISH, isNot),
|
|
"TOKEN_DRAW" => new AIScriptArgumentToken(AIScriptTokenArgType.TOKEN_DRAW, isNot),
|
|
"SELF" => new AIScriptArgumentToken(AIScriptTokenArgType.SELF, isNot),
|
|
"NEUTRAL" => new AIScriptArgumentToken(AIScriptTokenArgType.NEUTRAL, isNot),
|
|
"WHEN_DAMAGED" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_DAMAGED, isNot),
|
|
"USE_MIN" => new AIScriptArgumentToken(AIScriptTokenArgType.USE_MIN, isNot),
|
|
"IGNORE_IN_BATTLE" => new AIScriptArgumentToken(AIScriptTokenArgType.IGNORE_IN_BATTLE, isNot),
|
|
"IGNORE_IN_FUSION" => new AIScriptArgumentToken(AIScriptTokenArgType.IGNORE_IN_FUSION, isNot),
|
|
"IN_HAND" => new AIScriptArgumentToken(AIScriptTokenArgType.IN_HAND, isNot),
|
|
"IN_PLAY" => new AIScriptArgumentToken(AIScriptTokenArgType.IN_PLAY, isNot),
|
|
"LAST_DRAW_CARD" => new AIScriptArgumentToken(AIScriptTokenArgType.LAST_DRAW_CARD, isNot),
|
|
"NEWER" => new AIScriptArgumentToken(AIScriptTokenArgType.NEWER, isNot),
|
|
"OLDEST_FOLLOWER" => new AIScriptArgumentToken(AIScriptTokenArgType.OLDEST_FOLLOWER, isNot),
|
|
"OTHER_OLDEST_HAND_CARD_TYPE" => new AIScriptArgumentToken(AIScriptTokenArgType.OTHER_OLDEST_HAND_CARD_TYPE, isNot),
|
|
"CHOICED_TARGET" => new AIScriptArgumentToken(AIScriptTokenArgType.CHOICED_TARGET, isNot),
|
|
"SELECTED_TARGET" => new AIScriptArgumentToken(AIScriptTokenArgType.SELECTED_TARGET, isNot),
|
|
"SECOND_SELECTED_TARGET" => new AIScriptArgumentToken(AIScriptTokenArgType.SECOND_SELECTED_TARGET, isNot),
|
|
"PLAYED" => new AIScriptArgumentToken(AIScriptTokenArgType.PLAYED, isNot),
|
|
"PLAYPTN" => new AIScriptArgumentToken(AIScriptTokenArgType.PLAYPTN, isNot),
|
|
"BEFORE_PLAYPTN" => new AIScriptArgumentToken(AIScriptTokenArgType.BEFORE_PLAYPTN, isNot),
|
|
"NOW" => new AIScriptArgumentToken(AIScriptTokenArgType.NOW, isNot),
|
|
"DESTRUCTIBLE" => new AIScriptArgumentToken(AIScriptTokenArgType.DESTRUCTIBLE, isNot),
|
|
"TRIGGER" => new AIScriptArgumentToken(AIScriptTokenArgType.TRIGGER, isNot),
|
|
"REAL_SKILL_TARGET" => new AIScriptArgumentToken(AIScriptTokenArgType.REAL_SKILL_TARGET, isNot),
|
|
"CANDIDATE" => new AIScriptArgumentToken(AIScriptTokenArgType.CANDIDATE, isNot),
|
|
"ENHANCED" => new AIScriptArgumentToken(AIScriptTokenArgType.ENHANCED, isNot),
|
|
"LEAST_VALUE" => new AIScriptArgumentToken(AIScriptTokenArgType.LEAST_VALUE, isNot),
|
|
"ALLY_ATTACK_FOLLOWER" => new AIScriptArgumentToken(AIScriptTokenArgType.ALLY_ATTACK_FOLLOWER, isNot),
|
|
"ADD" => new AIScriptArgumentToken(AIScriptTokenArgType.ADD, isNot),
|
|
"SET" => new AIScriptArgumentToken(AIScriptTokenArgType.SET, isNot),
|
|
"SELECTED_TARGET_ID" => new AIScriptArgumentToken(AIScriptTokenArgType.SELECTED_TARGET_ID, isNot),
|
|
"DEFAULT_LOGIC" => new AIScriptArgumentToken(AIScriptTokenArgType.DEFAULT_LOGIC, isNot),
|
|
"DESTROY_LOGIC" => new AIScriptArgumentToken(AIScriptTokenArgType.DESTROY_LOGIC, isNot),
|
|
"DAMAGE_LOGIC" => new AIScriptArgumentToken(AIScriptTokenArgType.DAMAGE_LOGIC, isNot),
|
|
"BANISH_LOGIC" => new AIScriptArgumentToken(AIScriptTokenArgType.BANISH_LOGIC, isNot),
|
|
"BOUNCE_LOGIC" => new AIScriptArgumentToken(AIScriptTokenArgType.BOUNCE_LOGIC, isNot),
|
|
"METAMORPHOSE_LOGIC" => new AIScriptArgumentToken(AIScriptTokenArgType.METAMORPHOSE_LOGIC, isNot),
|
|
"MAX_ATTACK_LOGIC" => new AIScriptArgumentToken(AIScriptTokenArgType.MAX_ATTACK_LOGIC, isNot),
|
|
"TYRANT_ORDER_LOGIC" => new AIScriptArgumentToken(AIScriptTokenArgType.TYRANT_ORDER_LOGIC, isNot),
|
|
"REVERSE_DISCARD_LOGIC" => new AIScriptArgumentToken(AIScriptTokenArgType.REVERSE_DISCARD_LOGIC, isNot),
|
|
"WHITEFROST_WHISPER_LOGIC" => new AIScriptArgumentToken(AIScriptTokenArgType.WHITEFROST_WHISPER_LOGIC, isNot),
|
|
"FILTER_END" => new AIScriptArgumentToken(AIScriptTokenArgType.FILTER_END, isNot),
|
|
"NEXT_PLAY" => new AIScriptArgumentToken(AIScriptTokenArgType.NEXT_PLAY, isNot),
|
|
"WHEN_PLAY_DAMAGE" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_PLAY_DAMAGE, isNot),
|
|
"WHEN_PLAY_DESTROY" => new AIScriptArgumentToken(AIScriptTokenArgType.WHEN_PLAY_DESTROY, isNot),
|
|
"FIRST_SUMMON_FOLLOWER_IN_PLAYPTN" => new AIScriptArgumentToken(AIScriptTokenArgType.FIRST_SUMMON_FOLLOWER_IN_PLAYPTN, isNot),
|
|
"DESTROYED_CARD" => new AIScriptArgumentToken(AIScriptTokenArgType.DESTROYED_CARD, isNot),
|
|
"DESTROYED_IN_CURRENT_TURN" => new AIScriptArgumentToken(AIScriptTokenArgType.DESTROYED_IN_CURRENT_TURN, isNot),
|
|
_ => ConvertWordWithSpecialMarkToToken(word, isNot),
|
|
};
|
|
}
|
|
}
|
|
}
|
|
|
|
public static AIScriptTokenBase ConvertWordWithSpecialMarkToToken(string word, bool isNot)
|
|
{
|
|
char c = word[0];
|
|
string text = word.Substring(1);
|
|
switch (c)
|
|
{
|
|
case '@':
|
|
{
|
|
int result = 0;
|
|
if (int.TryParse(text, out result))
|
|
{
|
|
return new AIScriptIDToken(result, isNot);
|
|
}
|
|
break;
|
|
}
|
|
case '#':
|
|
return new AIScriptTextToken(text, isNot);
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public static AIPlayTagType ConvertWordToTagType(string word)
|
|
{
|
|
switch (word)
|
|
{
|
|
case "playBonus":
|
|
return AIPlayTagType.PlayBonus;
|
|
case "playBonusRate":
|
|
return AIPlayTagType.PlayBonusRate;
|
|
case "fanfareBonus":
|
|
return AIPlayTagType.FanfareBonus;
|
|
case "ignoreFanfareBonus":
|
|
return AIPlayTagType.IgnoreFanfareBonus;
|
|
case "ignoreBreak":
|
|
return AIPlayTagType.IgnoreBreak;
|
|
case "evoBonus":
|
|
return AIPlayTagType.EvoBonus;
|
|
case "memberEvoBonus":
|
|
return AIPlayTagType.MemberEvoBonus;
|
|
case "enemyEvoBonus":
|
|
return AIPlayTagType.EnemyEvoBonus;
|
|
case "battleBonus":
|
|
return AIPlayTagType.BattleBonus;
|
|
case "battleBonusRate":
|
|
return AIPlayTagType.BattleBonusRate;
|
|
case "clashBonus":
|
|
return AIPlayTagType.ClashBonus;
|
|
case "clashDestroy":
|
|
return AIPlayTagType.ClashDestroy;
|
|
case "clashHeal":
|
|
return AIPlayTagType.ClashHeal;
|
|
case "clashToken":
|
|
return AIPlayTagType.ClashToken;
|
|
case "clashBanish":
|
|
return AIPlayTagType.ClashBanish;
|
|
case "clashSpellboost":
|
|
return AIPlayTagType.ClashSpellboost;
|
|
case "afterClashHeal":
|
|
return AIPlayTagType.AfterClashHeal;
|
|
case "attackDamage":
|
|
return AIPlayTagType.AttackDamage;
|
|
case "attackBreakDamage":
|
|
return AIPlayTagType.AttackBreakDamage;
|
|
case "attackBreakEvo":
|
|
return AIPlayTagType.AttackBreakEvo;
|
|
case "attackBreakRecoverPp":
|
|
return AIPlayTagType.AttackBreakRecoverPp;
|
|
case "attackBreakAttackTwice":
|
|
return AIPlayTagType.AttackBreakAttackTwice;
|
|
case "attackHeal":
|
|
return AIPlayTagType.AttackHeal;
|
|
case "attackAttackableCount":
|
|
return AIPlayTagType.AttackAttackableCount;
|
|
case "attackQuick":
|
|
return AIPlayTagType.AttackQuick;
|
|
case "afterAttackHeal":
|
|
return AIPlayTagType.AfterAttackHeal;
|
|
case "attackBonus":
|
|
return AIPlayTagType.AttackBonus;
|
|
case "clashDamage":
|
|
return AIPlayTagType.ClashDamage;
|
|
case "afterClashDamage":
|
|
return AIPlayTagType.AfterClashDamage;
|
|
case "clashRemoveSkill":
|
|
return AIPlayTagType.ClashRemoveSkill;
|
|
case "attackRemoveSkill":
|
|
return AIPlayTagType.AttackRemoveSkill;
|
|
case "playptnBonus":
|
|
return AIPlayTagType.PlayptnBonus;
|
|
case "priority":
|
|
return AIPlayTagType.Priority;
|
|
case "playoutAtkB":
|
|
return AIPlayTagType.PlayoutAttackBonus;
|
|
case "playoutDamageB":
|
|
return AIPlayTagType.PlayoutDamageBonus;
|
|
case "allyPlayoutDamageBonus":
|
|
return AIPlayTagType.AllyPlayoutDamageBonus;
|
|
case "playoutNextTurn":
|
|
return AIPlayTagType.PlayoutNextTurn;
|
|
case "costBonus":
|
|
return AIPlayTagType.CostBonus;
|
|
case "playLimit":
|
|
return AIPlayTagType.PlayLimit;
|
|
case "mlgKeep":
|
|
return AIPlayTagType.MulliganKeep;
|
|
case "mlgChange":
|
|
return AIPlayTagType.MulliganChange;
|
|
case "handPlus":
|
|
return AIPlayTagType.HandPlus;
|
|
case "playPlus":
|
|
return AIPlayTagType.PlayPlus;
|
|
case "evoHandPlus":
|
|
return AIPlayTagType.EvoHandPlus;
|
|
case "noNormalEvo":
|
|
return AIPlayTagType.NoNormalEvo;
|
|
case "evoEvo":
|
|
return AIPlayTagType.EvoEvo;
|
|
case "evoDamage":
|
|
return AIPlayTagType.EvoDamage;
|
|
case "break":
|
|
return AIPlayTagType.Break;
|
|
case "otherBreakBonus":
|
|
return AIPlayTagType.OtherBreakBonus;
|
|
case "otherBanishBonus":
|
|
return AIPlayTagType.OtherBanishBonus;
|
|
case "otherLeaveBonus":
|
|
return AIPlayTagType.OtherLeaveBonus;
|
|
case "lastwordDestroy":
|
|
return AIPlayTagType.LastwordDestroy;
|
|
case "breakDamage":
|
|
return AIPlayTagType.BreakDamage;
|
|
case "breakRecoverAttackableCount":
|
|
return AIPlayTagType.BreakRecoverAttackableCount;
|
|
case "lastwordDamage":
|
|
return AIPlayTagType.LastwordDamage;
|
|
case "lastwordHeal":
|
|
return AIPlayTagType.LastwordHeal;
|
|
case "lastwordMetamorphose":
|
|
return AIPlayTagType.LastwordMetamorphose;
|
|
case "lastwordBanish":
|
|
return AIPlayTagType.LastwordBanish;
|
|
case "lastwordDraw":
|
|
return AIPlayTagType.LastwordDraw;
|
|
case "lastwordAddDeck":
|
|
return AIPlayTagType.LastwordAddDeck;
|
|
case "lastwordSetStatus":
|
|
return AIPlayTagType.LastwordSetStatus;
|
|
case "turnEndDestroy":
|
|
return AIPlayTagType.TurnEndDestroy;
|
|
case "turnEndBanish":
|
|
return AIPlayTagType.TurnEndBanish;
|
|
case "turnEndDamage":
|
|
return AIPlayTagType.TurnEndDamage;
|
|
case "turnEndHeal":
|
|
return AIPlayTagType.TurnEndHeal;
|
|
case "turnEndSetLeaderMaxLife":
|
|
return AIPlayTagType.TurnEndSetLeaderMaxLife;
|
|
case "turnEndDiscard":
|
|
return AIPlayTagType.TurnEndDiscard;
|
|
case "turnEndBuff":
|
|
return AIPlayTagType.TurnEndBuff;
|
|
case "turnEndSubtractCountdown":
|
|
return AIPlayTagType.TurnEndSubtractCountdown;
|
|
case "turnEndToken":
|
|
return AIPlayTagType.TurnEndToken;
|
|
case "turnEndBounce":
|
|
return AIPlayTagType.TurnEndBounce;
|
|
case "turnEndAddDeck":
|
|
return AIPlayTagType.TurnEndAddDeck;
|
|
case "turnEndEvo":
|
|
return AIPlayTagType.TurnEndEvo;
|
|
case "turnEndDraw":
|
|
return AIPlayTagType.TurnEndDraw;
|
|
case "turnEndShield":
|
|
return AIPlayTagType.TurnEndShield;
|
|
case "turnEndDamageClip":
|
|
return AIPlayTagType.TurnEndDamageClip;
|
|
case "turnEndDamageCut":
|
|
return AIPlayTagType.TurnEndDamageCut;
|
|
case "turnEndGuard":
|
|
return AIPlayTagType.TurnEndGuard;
|
|
case "turnEndBanAttack":
|
|
return AIPlayTagType.TurnEndBanAttack;
|
|
case "playSkip":
|
|
return AIPlayTagType.PlaySkip;
|
|
case "playSkipWithEvo":
|
|
return AIPlayTagType.PlaySkipWithEvo;
|
|
case "playSkipIfEvo":
|
|
return AIPlayTagType.PlaySkipIfEvo;
|
|
case "playSkipWithAction":
|
|
return AIPlayTagType.PlaySkipWithAction;
|
|
case "playSkipWithActionIfEvo":
|
|
return AIPlayTagType.PlaySkipWithActionIfEvo;
|
|
case "target":
|
|
return AIPlayTagType.Target;
|
|
case "ignoreTarget":
|
|
return AIPlayTagType.IgnoreTarget;
|
|
case "memBattleB":
|
|
return AIPlayTagType.MemberBattleBonus;
|
|
case "memberBattleBonusRate":
|
|
return AIPlayTagType.MemberBattleBonusRate;
|
|
case "enemyBattleB":
|
|
return AIPlayTagType.EnemyBattleBonus;
|
|
case "enemyBattleBonusRate":
|
|
return AIPlayTagType.EnemyBattleBonusRate;
|
|
case "allyPlayB":
|
|
return AIPlayTagType.AllyPlayBonus;
|
|
case "enemyPlayBonus":
|
|
return AIPlayTagType.EnemyPlayBonus;
|
|
case "reincarnation":
|
|
return AIPlayTagType.ReincarnationSimulation;
|
|
case "attackBuff":
|
|
return AIPlayTagType.AttackBuff;
|
|
case "attackHandBuff":
|
|
return AIPlayTagType.AttackHandBuff;
|
|
case "attackDestroy":
|
|
return AIPlayTagType.AttackDestroy;
|
|
case "attackBanish":
|
|
return AIPlayTagType.AttackBanish;
|
|
case "attackEvo":
|
|
return AIPlayTagType.AttackEvo;
|
|
case "afterAttackEvo":
|
|
return AIPlayTagType.AfterAttackEvo;
|
|
case "afterAttackDraw":
|
|
return AIPlayTagType.AfterAttackDraw;
|
|
case "afterAttackBanish":
|
|
return AIPlayTagType.AfterAttackBanish;
|
|
case "breakBuff":
|
|
return AIPlayTagType.BreakBuff;
|
|
case "breakSetLeaderMaxLife":
|
|
return AIPlayTagType.BreakSetLeaderMaxLife;
|
|
case "summonBuff":
|
|
return AIPlayTagType.SummonBuff;
|
|
case "summonEvo":
|
|
return AIPlayTagType.SummonEvo;
|
|
case "summonRush":
|
|
return AIPlayTagType.SummonRush;
|
|
case "summonQuick":
|
|
return AIPlayTagType.SummonQuick;
|
|
case "summonDamage":
|
|
return AIPlayTagType.SummonDamage;
|
|
case "summonBanish":
|
|
return AIPlayTagType.SummonBanish;
|
|
case "summonHeal":
|
|
return AIPlayTagType.SummonHeal;
|
|
case "summonDestroy":
|
|
return AIPlayTagType.SummonDestroy;
|
|
case "summonBanAttack":
|
|
return AIPlayTagType.SummonBanAttack;
|
|
case "otherSummonDamage":
|
|
return AIPlayTagType.OtherSummonDamage;
|
|
case "otherSummonRush":
|
|
return AIPlayTagType.OtherSummonRush;
|
|
case "otherSummonGuard":
|
|
return AIPlayTagType.OtherSummonGuard;
|
|
case "otherSummonQuick":
|
|
return AIPlayTagType.OtherSummonQuick;
|
|
case "otherSummonKiller":
|
|
return AIPlayTagType.OtherSummonKiller;
|
|
case "otherSummonDrain":
|
|
return AIPlayTagType.OtherSummonDrain;
|
|
case "otherSummonBanish":
|
|
return AIPlayTagType.OtherSummonBanish;
|
|
case "otherSummonHeal":
|
|
return AIPlayTagType.OtherSummonHeal;
|
|
case "otherSummonBuff":
|
|
return AIPlayTagType.OtherSummonBuff;
|
|
case "otherSummonEvo":
|
|
return AIPlayTagType.OtherSummonEvo;
|
|
case "otherSummonDamageCut":
|
|
return AIPlayTagType.OtherSummonDamageCut;
|
|
case "otherSummonDamageClip":
|
|
return AIPlayTagType.OtherSummonDamageClip;
|
|
case "otherSummonSubtractCountdown":
|
|
return AIPlayTagType.OtherSummonSubtractCountdown;
|
|
case "otherSummonAddCemetery":
|
|
return AIPlayTagType.OtherSummonAddCemetery;
|
|
case "otherSummonUntouchable":
|
|
return AIPlayTagType.OtherSummonUntouchable;
|
|
case "otherSummonDestroy":
|
|
return AIPlayTagType.OtherSummonDestory;
|
|
case "otherSummonDraw":
|
|
return AIPlayTagType.OtherSummonDraw;
|
|
case "attackByLife":
|
|
return AIPlayTagType.AttackByLife;
|
|
case "attackToken":
|
|
return AIPlayTagType.AttackToken;
|
|
case "puppetAttack":
|
|
return AIPlayTagType.PuppetAttack;
|
|
case "noSkipAttack":
|
|
return AIPlayTagType.NoSkipAttack;
|
|
case "evoToken":
|
|
return AIPlayTagType.EvoToken;
|
|
case "playDestroy":
|
|
return AIPlayTagType.PlayDestroy;
|
|
case "playDamage":
|
|
return AIPlayTagType.PlayDamage;
|
|
case "fanfareDamage":
|
|
return AIPlayTagType.FanfareDamage;
|
|
case "fanfareDestroy":
|
|
return AIPlayTagType.FanfareDestroy;
|
|
case "playMetamorphose":
|
|
return AIPlayTagType.PlayMetamorphose;
|
|
case "fanfareMetamorphose":
|
|
return AIPlayTagType.FanfareMetamorphose;
|
|
case "playHandMetamorphose":
|
|
return AIPlayTagType.PlayHandMetamorphose;
|
|
case "fanfareHandMetamorphose":
|
|
return AIPlayTagType.FanfareHandMetamorphose;
|
|
case "playHeal":
|
|
return AIPlayTagType.PlayHeal;
|
|
case "fanfareHeal":
|
|
return AIPlayTagType.FanfareHeal;
|
|
case "playBanish":
|
|
return AIPlayTagType.PlayBanish;
|
|
case "fanfareBanish":
|
|
return AIPlayTagType.FanfareBanish;
|
|
case "playBounce":
|
|
return AIPlayTagType.PlayBounce;
|
|
case "fanfareBounce":
|
|
return AIPlayTagType.FanfareBounce;
|
|
case "playSubtractCountdown":
|
|
return AIPlayTagType.PlaySubtractCountdown;
|
|
case "fanfareSubtractCountdown":
|
|
return AIPlayTagType.FanfareSubtractCountdown;
|
|
case "fanfareRecoverAttackableCount":
|
|
return AIPlayTagType.FanfareRecoverAttackableCount;
|
|
case "fanfareSneak":
|
|
return AIPlayTagType.FanfareSneak;
|
|
case "playSneak":
|
|
return AIPlayTagType.PlaySneak;
|
|
case "fanfareQuick":
|
|
return AIPlayTagType.FanfareQuick;
|
|
case "playQuick":
|
|
return AIPlayTagType.PlayQuick;
|
|
case "fanfareRush":
|
|
return AIPlayTagType.FanfareRush;
|
|
case "playRush":
|
|
return AIPlayTagType.PlayRush;
|
|
case "fanfareGuard":
|
|
return AIPlayTagType.FanfareGuard;
|
|
case "playGuard":
|
|
return AIPlayTagType.PlayGuard;
|
|
case "fanfareDrain":
|
|
return AIPlayTagType.FanfareDrain;
|
|
case "playDrain":
|
|
return AIPlayTagType.PlayDrain;
|
|
case "fanfareKiller":
|
|
return AIPlayTagType.FanfareKiller;
|
|
case "playKiller":
|
|
return AIPlayTagType.PlayKiller;
|
|
case "fanfareUntouchable":
|
|
return AIPlayTagType.FanfareUntouchable;
|
|
case "playUntouchable":
|
|
return AIPlayTagType.PlayUntouchable;
|
|
case "playBonusInSimulation":
|
|
return AIPlayTagType.PlayBonusInSimulation;
|
|
case "fanfareBonusInSimulation":
|
|
return AIPlayTagType.FanfareBonusInSimulation;
|
|
case "fanfareForceTargeting":
|
|
return AIPlayTagType.FanfareForceTargeting;
|
|
case "breakFirst":
|
|
return AIPlayTagType.BreakFirst;
|
|
case "breakLast":
|
|
return AIPlayTagType.BreakLast;
|
|
case "bounceBonus":
|
|
return AIPlayTagType.BounceBonus;
|
|
case "banishBonus":
|
|
return AIPlayTagType.BanishBonus;
|
|
case "breakBeforePlay":
|
|
return AIPlayTagType.BreakBeforePlay;
|
|
case "emoOnPlay":
|
|
return AIPlayTagType.EmoteOnPlay;
|
|
case "emoOnEvo":
|
|
return AIPlayTagType.EmoteOnEvo;
|
|
case "emoOnAtk":
|
|
return AIPlayTagType.EmoteOnAtk;
|
|
case "emoOnDestroy":
|
|
return AIPlayTagType.EmoteOnDestroy;
|
|
case "forceEmoOnDestroy":
|
|
return AIPlayTagType.ForceEmoteOnDestroy;
|
|
case "emoOnTurnEnd":
|
|
return AIPlayTagType.EmoteOnTurnEnd;
|
|
case "clashKiller":
|
|
return AIPlayTagType.ClashKiller;
|
|
case "playAttachTag":
|
|
return AIPlayTagType.PlayAttachTag;
|
|
case "fanfareAttachTag":
|
|
return AIPlayTagType.FanfareAttachTag;
|
|
case "playCopyTag":
|
|
return AIPlayTagType.PlayCopyTag;
|
|
case "fanfareCopyTag":
|
|
return AIPlayTagType.FanfareCopyTag;
|
|
case "attackAttachTag":
|
|
return AIPlayTagType.AttackAttachTag;
|
|
case "lastwordAttachTag":
|
|
return AIPlayTagType.LastwordAttachTag;
|
|
case "evoAttachTag":
|
|
return AIPlayTagType.EvoAttachTag;
|
|
case "summonAttachTag":
|
|
return AIPlayTagType.SummonAttachTag;
|
|
case "otherSummonAttachTag":
|
|
return AIPlayTagType.OtherSummonAttachTag;
|
|
case "breakAttachTag":
|
|
return AIPlayTagType.BreakAttachTag;
|
|
case "necromanceAttachTag":
|
|
return AIPlayTagType.NecromanceAttachTag;
|
|
case "turnEndAttachTag":
|
|
return AIPlayTagType.TurnEndAttachTag;
|
|
case "healAttachTag":
|
|
return AIPlayTagType.HealAttachTag;
|
|
case "fanfareAttachStyle":
|
|
return AIPlayTagType.FanfareAttachStyle;
|
|
case "fanfareToken":
|
|
return AIPlayTagType.FanfareToken;
|
|
case "lastwordToken":
|
|
return AIPlayTagType.LastwordToken;
|
|
case "playToken":
|
|
return AIPlayTagType.PlayToken;
|
|
case "addCardToPlayoutPlayPtn":
|
|
return AIPlayTagType.AddCardToPlayoutPlayPtn;
|
|
case "cantBeAttacked":
|
|
return AIPlayTagType.CantBeAttacked;
|
|
case "necromance":
|
|
return AIPlayTagType.Necromance;
|
|
case "earthRite":
|
|
return AIPlayTagType.EarthRite;
|
|
case "burialRite":
|
|
return AIPlayTagType.BurialRite;
|
|
case "enhance":
|
|
return AIPlayTagType.Enhance;
|
|
case "accelerate":
|
|
return AIPlayTagType.Accelerate;
|
|
case "crystalize":
|
|
return AIPlayTagType.Crystalize;
|
|
case "choiceTransform":
|
|
return AIPlayTagType.ChoiceTransform;
|
|
case "removeSkill":
|
|
return AIPlayTagType.RemoveSkill;
|
|
case "oneMoreLastword":
|
|
return AIPlayTagType.OneMoreLastword;
|
|
case "attackableClass":
|
|
return AIPlayTagType.AttackableClass;
|
|
case "clashBuff":
|
|
return AIPlayTagType.ClashBuff;
|
|
case "playptnBaseStatsRate":
|
|
return AIPlayTagType.PlayptnBaseStatsRate;
|
|
case "playRecoverPp":
|
|
return AIPlayTagType.PlayRecoverPP;
|
|
case "fanfareRecoverPp":
|
|
return AIPlayTagType.FanfareRecoverPp;
|
|
case "buffRecoverPp":
|
|
return AIPlayTagType.BuffRecoverPP;
|
|
case "condChoice":
|
|
return AIPlayTagType.CondChoice;
|
|
case "evoChoice":
|
|
return AIPlayTagType.EvoChoice;
|
|
case "playChoice":
|
|
return AIPlayTagType.PlayChoice;
|
|
case "fanfareChoice":
|
|
return AIPlayTagType.FanfareChoice;
|
|
case "plagueCity":
|
|
return AIPlayTagType.PlagueCity;
|
|
case "breakDestroy":
|
|
return AIPlayTagType.BreakDestroy;
|
|
case "evolvedAttackable":
|
|
return AIPlayTagType.EvolvedAttackable;
|
|
case "evolvedAttackableCount":
|
|
return AIPlayTagType.EvolvedAttackableCount;
|
|
case "evolvedSkill":
|
|
return AIPlayTagType.EvolvedSkill;
|
|
case "evoDestroy":
|
|
return AIPlayTagType.EvoDestroy;
|
|
case "evoBuff":
|
|
return AIPlayTagType.EvoBuff;
|
|
case "evoHeal":
|
|
return AIPlayTagType.EvoHeal;
|
|
case "evoBanish":
|
|
return AIPlayTagType.EvoBanish;
|
|
case "evoSubtractCountdown":
|
|
return AIPlayTagType.EvoSubtractCountdown;
|
|
case "evoSetLeaderMaxLife":
|
|
return AIPlayTagType.EvoSetLeaderMaxLife;
|
|
case "evoMetamorphose":
|
|
return AIPlayTagType.EvoMetamorphose;
|
|
case "evoHandMetamorphose":
|
|
return AIPlayTagType.EvoHandMetamorphose;
|
|
case "evoBounce":
|
|
return AIPlayTagType.EvoBounce;
|
|
case "evoRush":
|
|
return AIPlayTagType.EvoRush;
|
|
case "evoQuick":
|
|
return AIPlayTagType.EvoQuick;
|
|
case "evoGuard":
|
|
return AIPlayTagType.EvoGuard;
|
|
case "evoKiller":
|
|
return AIPlayTagType.EvoKiller;
|
|
case "evoDrain":
|
|
return AIPlayTagType.EvoDrain;
|
|
case "evoShield":
|
|
return AIPlayTagType.EvoShield;
|
|
case "evoDamageCut":
|
|
return AIPlayTagType.EvoDamageCut;
|
|
case "evoReanimate":
|
|
return AIPlayTagType.EvoReanimate;
|
|
case "evoAddDeck":
|
|
return AIPlayTagType.EvoAddDeck;
|
|
case "healDamage":
|
|
return AIPlayTagType.HealDamage;
|
|
case "healBuff":
|
|
return AIPlayTagType.HealBuff;
|
|
case "healToken":
|
|
return AIPlayTagType.HealToken;
|
|
case "healHeal":
|
|
return AIPlayTagType.HealHeal;
|
|
case "healEvo":
|
|
return AIPlayTagType.HealEvo;
|
|
case "turnEndMetamorphose":
|
|
return AIPlayTagType.TurnEndMetamorphose;
|
|
case "leaveBonus":
|
|
return AIPlayTagType.LeaveBonus;
|
|
case "leaveToken":
|
|
return AIPlayTagType.LeaveToken;
|
|
case "leaveHeal":
|
|
return AIPlayTagType.LeaveHeal;
|
|
case "leaveDamage":
|
|
return AIPlayTagType.LeaveDamage;
|
|
case "leaveAttachTag":
|
|
return AIPlayTagType.LeaveAttachTag;
|
|
case "leaveBanish":
|
|
return AIPlayTagType.LeaveBanish;
|
|
case "lastwordBuff":
|
|
return AIPlayTagType.LastwordBuff;
|
|
case "firstEvo":
|
|
return AIPlayTagType.FirstEvo;
|
|
case "lastwordReanimate":
|
|
return AIPlayTagType.LastwordReanimate;
|
|
case "reanimateBonus":
|
|
return AIPlayTagType.ReanimateBonus;
|
|
case "reanimateEvo":
|
|
return AIPlayTagType.ReanimateEvo;
|
|
case "playDraw":
|
|
return AIPlayTagType.PlayDraw;
|
|
case "handBonus":
|
|
return AIPlayTagType.HandBonus;
|
|
case "fusion":
|
|
return AIPlayTagType.Fusion;
|
|
case "playReanimate":
|
|
return AIPlayTagType.PlayReanimate;
|
|
case "fanfareReanimate":
|
|
return AIPlayTagType.FanfareReanimate;
|
|
case "modifyHeal":
|
|
return AIPlayTagType.ModifyHeal;
|
|
case "evoRecoverPp":
|
|
return AIPlayTagType.EvoRecoverPp;
|
|
case "fusionBonus":
|
|
return AIPlayTagType.FusionBonus;
|
|
case "fusionDraw":
|
|
return AIPlayTagType.FusionDraw;
|
|
case "noInstantAttack":
|
|
return AIPlayTagType.NoInstantAttack;
|
|
case "giveSkill":
|
|
return AIPlayTagType.GiveSkill;
|
|
case "playDiscard":
|
|
return AIPlayTagType.PlayDiscard;
|
|
case "fanfareDiscard":
|
|
return AIPlayTagType.FanfareDiscard;
|
|
case "discardedBonus":
|
|
return AIPlayTagType.DiscardedBonus;
|
|
case "attackDiscard":
|
|
return AIPlayTagType.AttackDiscard;
|
|
case "discardedToken":
|
|
return AIPlayTagType.DiscardedToken;
|
|
case "discardDamage":
|
|
return AIPlayTagType.DiscardDamage;
|
|
case "breakHeal":
|
|
return AIPlayTagType.BreakHeal;
|
|
case "buffDamage":
|
|
return AIPlayTagType.BuffDamage;
|
|
case "buffHeal":
|
|
return AIPlayTagType.BuffHeal;
|
|
case "buffBuff":
|
|
return AIPlayTagType.BuffBuff;
|
|
case "buffEvo":
|
|
return AIPlayTagType.BuffEvo;
|
|
case "buffDestroy":
|
|
return AIPlayTagType.BuffDestroy;
|
|
case "buffToken":
|
|
return AIPlayTagType.BuffToken;
|
|
case "buffDraw":
|
|
return AIPlayTagType.BuffDraw;
|
|
case "buffShield":
|
|
return AIPlayTagType.BuffShield;
|
|
case "discardHeal":
|
|
return AIPlayTagType.DiscardHeal;
|
|
case "evoDiscard":
|
|
return AIPlayTagType.EvoDiscard;
|
|
case "allyDiscardBonus":
|
|
return AIPlayTagType.AllyDiscardBonus;
|
|
case "buffRush":
|
|
return AIPlayTagType.BuffRush;
|
|
case "banishAttachTag":
|
|
return AIPlayTagType.BanishAttachTag;
|
|
case "otherBanishToken":
|
|
return AIPlayTagType.OtherBanishToken;
|
|
case "otherBanishAddCemetery":
|
|
return AIPlayTagType.OtherBanishAddCemetery;
|
|
case "getOn":
|
|
return AIPlayTagType.GetOn;
|
|
case "getOnBanish":
|
|
return AIPlayTagType.GetOnBanish;
|
|
case "getOnDamage":
|
|
return AIPlayTagType.GetOnDamage;
|
|
case "getOnEvo":
|
|
return AIPlayTagType.GetOnEvo;
|
|
case "getOffMetamorphose":
|
|
return AIPlayTagType.GetOffMetamorphose;
|
|
case "getOffEvo":
|
|
return AIPlayTagType.GetOffEvo;
|
|
case "rallyCountPlus":
|
|
return AIPlayTagType.RallyCountPlus;
|
|
case "playActivateCount":
|
|
return AIPlayTagType.PlayActivateCount;
|
|
case "attackActivateCount":
|
|
return AIPlayTagType.AttackActivateCount;
|
|
case "breakActivateCount":
|
|
return AIPlayTagType.BreakActivateCount;
|
|
case "banishActivateCount":
|
|
return AIPlayTagType.BanishActivateCount;
|
|
case "damagedActivateCount":
|
|
return AIPlayTagType.DamagedActivateCount;
|
|
case "buffActivateCount":
|
|
return AIPlayTagType.BuffActivateCounnt;
|
|
case "turnEndActivateCount":
|
|
return AIPlayTagType.TurnEndActivateCount;
|
|
case "healActivateCount":
|
|
return AIPlayTagType.HealActivateCount;
|
|
case "evoActivateCount":
|
|
return AIPlayTagType.EvoActivateCount;
|
|
case "necromanceActivateCount":
|
|
return AIPlayTagType.NecromanceActivateCount;
|
|
case "summonActivateCount":
|
|
return AIPlayTagType.SummonActivateCount;
|
|
case "bounceDamage":
|
|
return AIPlayTagType.BounceDamage;
|
|
case "playBuff":
|
|
return AIPlayTagType.PlayBuff;
|
|
case "fanfareBuff":
|
|
return AIPlayTagType.FanfareBuff;
|
|
case "playHandBuff":
|
|
return AIPlayTagType.PlayHandBuff;
|
|
case "fanfareHandBuff":
|
|
return AIPlayTagType.FanfareHandBuff;
|
|
case "playSetMaxStatus":
|
|
return AIPlayTagType.PlaySetMaxStatus;
|
|
case "fanfareSetMaxStatus":
|
|
return AIPlayTagType.FanfareSetMaxStatus;
|
|
case "playSetLeaderMaxLife":
|
|
return AIPlayTagType.PlaySetLeaderMaxLife;
|
|
case "resonanceDamage":
|
|
return AIPlayTagType.ResonanceDamage;
|
|
case "resonanceHeal":
|
|
return AIPlayTagType.ResonanceHeal;
|
|
case "resonanceKiller":
|
|
return AIPlayTagType.ResonanceKiller;
|
|
case "forceBerserk":
|
|
return AIPlayTagType.ForceBerserk;
|
|
case "setAITribe":
|
|
return AIPlayTagType.SetAITribe;
|
|
case "playSpellboost":
|
|
return AIPlayTagType.PlaySpellboost;
|
|
case "fanfareSpellboost":
|
|
return AIPlayTagType.FanfareSpellboost;
|
|
case "playAddCemetery":
|
|
return AIPlayTagType.PlayAddCemetery;
|
|
case "necromanceAddCemetery":
|
|
return AIPlayTagType.NecromanceAddCemetery;
|
|
case "fanfareAddCemetery":
|
|
return AIPlayTagType.FanfareAddCemetery;
|
|
case "playBanAttack":
|
|
return AIPlayTagType.PlayBanAttack;
|
|
case "fanfareBanAttack":
|
|
return AIPlayTagType.FanfareBanAttack;
|
|
case "playIgnoreGuard":
|
|
return AIPlayTagType.PlayIgnoreGuard;
|
|
case "fanfareIgnoreGuard":
|
|
return AIPlayTagType.FanfareIgnoreGuard;
|
|
case "turnStartAttachTag":
|
|
return AIPlayTagType.TurnStartAttachTag;
|
|
case "turnStartSubtractCountdown":
|
|
return AIPlayTagType.TurnStartSubtractCountdown;
|
|
case "turnStartDamageCut":
|
|
return AIPlayTagType.TurnStartDamageCut;
|
|
case "turnStartShield":
|
|
return AIPlayTagType.TurnStartShield;
|
|
case "turnStartDamage":
|
|
return AIPlayTagType.TurnStartDamage;
|
|
case "generateTag":
|
|
return AIPlayTagType.GenerateTag;
|
|
case "evoTokenDraw":
|
|
return AIPlayTagType.EvoTokenDraw;
|
|
case "evoAttackableCount":
|
|
return AIPlayTagType.EvoAttackableCount;
|
|
case "evoChangeCost":
|
|
return AIPlayTagType.EvoChangeCost;
|
|
case "playTokenDraw":
|
|
return AIPlayTagType.PlayTokenDraw;
|
|
case "fanfareTokenDraw":
|
|
return AIPlayTagType.FanfareTokenDraw;
|
|
case "playSummonHandCard":
|
|
return AIPlayTagType.PlaySummonHandCard;
|
|
case "fanfareSummonHandCard":
|
|
return AIPlayTagType.FanfareSummonHandCard;
|
|
case "playChangeClass":
|
|
return AIPlayTagType.PlayChangeClass;
|
|
case "fanfareChangeClass":
|
|
return AIPlayTagType.FanfareChangeClass;
|
|
case "playChangeTribe":
|
|
return AIPlayTagType.PlayChangeTribe;
|
|
case "fanfareChangeTribe":
|
|
return AIPlayTagType.FanfareChangeTribe;
|
|
case "playChangeCost":
|
|
return AIPlayTagType.PlayChangeCost;
|
|
case "fanfareChangeCost":
|
|
return AIPlayTagType.FanfareChangeCost;
|
|
case "playSelect":
|
|
return AIPlayTagType.PlaySelect;
|
|
case "fanfareSelect":
|
|
return AIPlayTagType.FanfareSelect;
|
|
case "playHandSelect":
|
|
return AIPlayTagType.PlayHandSelect;
|
|
case "fanfareHandSelect":
|
|
return AIPlayTagType.FanfareHandSelect;
|
|
case "evoHandSelect":
|
|
return AIPlayTagType.EvoHandSelect;
|
|
case "removeByDestroy":
|
|
return AIPlayTagType.RemoveByDestroy;
|
|
case "evoHandBuff":
|
|
return AIPlayTagType.EvoHandBuff;
|
|
case "playNotBeAttacked":
|
|
return AIPlayTagType.PlayNotBeAttacked;
|
|
case "fanfareNotBeAttacked":
|
|
return AIPlayTagType.FanfareNotBeAttacked;
|
|
case "playAttackableCount":
|
|
return AIPlayTagType.PlayAttackableCount;
|
|
case "fanfareAttackableCount":
|
|
return AIPlayTagType.FanfareAttackableCount;
|
|
case "breakAddStack":
|
|
return AIPlayTagType.BreakAddStack;
|
|
case "changeInplayImmediateRemoveByBanish":
|
|
return AIPlayTagType.ChangeInplayImmediateRemoveByBanish;
|
|
case "changeInplayImmediateRemoveByDestroy":
|
|
return AIPlayTagType.ChangeInplayImmediateRemoveByDestroy;
|
|
case "changeInplayCannotPlay":
|
|
return AIPlayTagType.ChangeInplayCannotPlay;
|
|
case "changeInplayCannotAttack":
|
|
return AIPlayTagType.ChangeInplayCannotAttack;
|
|
case "changeInplayAttachTag":
|
|
return AIPlayTagType.ChangeInplayAttachTag;
|
|
case "changeInplayImmediateShield":
|
|
return AIPlayTagType.ChangeInplayImmediateShield;
|
|
case "changeInplayImmediateDamageCut":
|
|
return AIPlayTagType.ChangeInplayImmediateDamageCut;
|
|
case "changeInplayImmediateDamageClip":
|
|
return AIPlayTagType.ChangeInplayImmediateDamageClip;
|
|
case "changeInplayImmediateLifeLowerLimit":
|
|
return AIPlayTagType.ChangeInplayImmediateLifeLowerLimit;
|
|
case "changeInplayImmediateUntouchable":
|
|
return AIPlayTagType.ChangeInplayImmediateUntouchable;
|
|
case "changeInplayImmediateIndestructible":
|
|
return AIPlayTagType.ChangeInplayImmediateIndestructible;
|
|
case "changePpTotalBuff":
|
|
return AIPlayTagType.ChangePpTotalBuff;
|
|
case "changeInplayImmediateDamageModifier":
|
|
return AIPlayTagType.ChangeInplayImmediateDamageModifier;
|
|
case "evoSetStatus":
|
|
return AIPlayTagType.EvoSetStatus;
|
|
case "playRemoveSkill":
|
|
return AIPlayTagType.PlayRemoveSkill;
|
|
case "fanfareRemoveSkill":
|
|
return AIPlayTagType.FanfareRemoveSkill;
|
|
case "playModifyConsumeEp":
|
|
return AIPlayTagType.PlayModifyConsumeEp;
|
|
case "fanfareModifyConsumeEp":
|
|
return AIPlayTagType.FanfareModifyConsumeEp;
|
|
case "playEvo":
|
|
return AIPlayTagType.PlayEvo;
|
|
case "fanfareEvo":
|
|
return AIPlayTagType.FanfareEvo;
|
|
case "otherPlayEvo":
|
|
return AIPlayTagType.OtherPlayEvo;
|
|
case "otherEnhanceEvo":
|
|
return AIPlayTagType.OtherEnhanceEvo;
|
|
case "otherPlayDamage":
|
|
return AIPlayTagType.OtherPlayDamage;
|
|
case "otherPlayDestroy":
|
|
return AIPlayTagType.OtherPlayDestroy;
|
|
case "otherPlayBounce":
|
|
return AIPlayTagType.OtherPlayBounce;
|
|
case "otherPlayBuff":
|
|
return AIPlayTagType.OtherPlayBuff;
|
|
case "otherPlayToken":
|
|
return AIPlayTagType.OtherPlayToken;
|
|
case "otherPlayRemoveTag":
|
|
return AIPlayTagType.OtherPlayRemoveTag;
|
|
case "otherPlayQuick":
|
|
return AIPlayTagType.OtherPlayQuick;
|
|
case "attackSubtractCountdown":
|
|
return AIPlayTagType.AttackSubtractCountdown;
|
|
case "damagedBonus":
|
|
return AIPlayTagType.DamagedBonus;
|
|
case "damagedBuff":
|
|
return AIPlayTagType.DamagedBuff;
|
|
case "damagedDamage":
|
|
return AIPlayTagType.DamagedDamage;
|
|
case "damagedToken":
|
|
return AIPlayTagType.DamagedToken;
|
|
case "damagedHeal":
|
|
return AIPlayTagType.DamagedHeal;
|
|
case "damagedCantUnderAttack":
|
|
return AIPlayTagType.DamagedCantUnderAttack;
|
|
case "otherDamagedDamage":
|
|
return AIPlayTagType.OtherDamagedDamage;
|
|
case "otherDamagedHeal":
|
|
return AIPlayTagType.OtherDamagedHeal;
|
|
case "otherDamagedSetLeaderMaxLife":
|
|
return AIPlayTagType.OtherDamagedSetLeaderMaxLife;
|
|
case "otherDamagedSubtractCountdown":
|
|
return AIPlayTagType.OtherDamagedSubtractCountdown;
|
|
case "otherDamagedBanish":
|
|
return AIPlayTagType.OtherDamagedBanish;
|
|
case "otherAttackBuff":
|
|
return AIPlayTagType.OtherAttackBuff;
|
|
case "otherAttackDamage":
|
|
return AIPlayTagType.OtherAttackDamage;
|
|
case "otherAttackHeal":
|
|
return AIPlayTagType.OtherAttackHeal;
|
|
case "otherAttackToken":
|
|
return AIPlayTagType.OtherAttackToken;
|
|
case "otherEvoBuff":
|
|
return AIPlayTagType.OtherEvoBuff;
|
|
case "otherAttackAttachTag":
|
|
return AIPlayTagType.OtherAttackAttachTag;
|
|
case "otherAttackRemoveTag":
|
|
return AIPlayTagType.OtherAttackRemoveTag;
|
|
case "otherEvoDamage":
|
|
return AIPlayTagType.OtherEvoDamage;
|
|
case "otherEvoBanish":
|
|
return AIPlayTagType.OtherEvoBanish;
|
|
case "otherEvoSubtractCountdown":
|
|
return AIPlayTagType.OtherEvoSubtractCountdown;
|
|
case "otherEvoEvo":
|
|
return AIPlayTagType.OtherEvoEvo;
|
|
case "otherEvoToken":
|
|
return AIPlayTagType.OtherEvoToken;
|
|
case "otherEvoShield":
|
|
return AIPlayTagType.OtherEvoShield;
|
|
case "selfAndOtherEvoDamage":
|
|
return AIPlayTagType.SelfAndOtherEvoDamage;
|
|
case "selfAndOtherEvoAttachTag":
|
|
return AIPlayTagType.SelfAndOtherEvoAttachTag;
|
|
case "selfAndOtherEvoShield":
|
|
return AIPlayTagType.SelfAndOtherEvoShield;
|
|
case "selfAndOtherEvoDestroy":
|
|
return AIPlayTagType.SelfAndOtherEvoDestroy;
|
|
case "selfAndOtherEvoBounce":
|
|
return AIPlayTagType.SelfAndOtherEvoBounce;
|
|
case "selfAndOtherEvoToken":
|
|
return AIPlayTagType.SelfAndOtherEvoToken;
|
|
case "selfAndOtherEvoDraw":
|
|
return AIPlayTagType.SelfAndOtherEvoDraw;
|
|
case "selfAndOtherEvoAddCemetery":
|
|
return AIPlayTagType.SelfAndOtherEvoAddCemetery;
|
|
case "selfAndOtherEvoHeal":
|
|
return AIPlayTagType.SelfAndOtherEvoHeal;
|
|
case "selfAndOtherEvoTokenDraw":
|
|
return AIPlayTagType.SelfAndOtherEvoTokenDraw;
|
|
case "attackKiller":
|
|
return AIPlayTagType.AttackKiller;
|
|
case "lastwordEvo":
|
|
return AIPlayTagType.LastwordEvo;
|
|
case "lastwordRemoveSkill":
|
|
return AIPlayTagType.LastwordRemoveSkill;
|
|
case "lastwordAddCemetery":
|
|
return AIPlayTagType.LastwordAddCemetery;
|
|
case "lastwordDamageClip":
|
|
return AIPlayTagType.LastwordDamageClip;
|
|
case "lastwordShield":
|
|
return AIPlayTagType.LastwordShield;
|
|
case "evolveToOther":
|
|
return AIPlayTagType.EvolveToOther;
|
|
case "playShield":
|
|
return AIPlayTagType.PlayShield;
|
|
case "fanfareShield":
|
|
return AIPlayTagType.FanfareShield;
|
|
case "playDamageCut":
|
|
return AIPlayTagType.PlayDamageCut;
|
|
case "fanfareDamageCut":
|
|
return AIPlayTagType.FanfareDamageCut;
|
|
case "playDamageClip":
|
|
return AIPlayTagType.PlayDamageClip;
|
|
case "fanfareDamageClip":
|
|
return AIPlayTagType.FanfareDamageClip;
|
|
case "otherPlayRecoverPp":
|
|
return AIPlayTagType.OtherPlayRecoverPp;
|
|
case "attackShield":
|
|
return AIPlayTagType.AttackShield;
|
|
case "clashShield":
|
|
return AIPlayTagType.ClashShield;
|
|
case "attackDamageClip":
|
|
return AIPlayTagType.AttackDamageClip;
|
|
case "clashDamageClip":
|
|
return AIPlayTagType.ClashDamageClip;
|
|
case "clashRemoveTag":
|
|
return AIPlayTagType.ClashRemoveTag;
|
|
case "otherLeaveDamage":
|
|
return AIPlayTagType.OtherLeaveDamage;
|
|
case "otherLeaveToken":
|
|
return AIPlayTagType.OtherLeaveToken;
|
|
case "turnEndRemoveTag":
|
|
return AIPlayTagType.TurnEndRemoveTag;
|
|
case "otherPlayAttachTag":
|
|
return AIPlayTagType.OtherPlayAttachTag;
|
|
case "buffBonus":
|
|
return AIPlayTagType.BuffBonus;
|
|
case "necromanceDamage":
|
|
return AIPlayTagType.NecromanceDamage;
|
|
case "necromanceHeal":
|
|
return AIPlayTagType.NecromanceHeal;
|
|
case "fanfareRemoveGuard":
|
|
return AIPlayTagType.FanfareRemoveGuard;
|
|
case "attackRemoveTag":
|
|
return AIPlayTagType.AttackRemoveTag;
|
|
case "forceImmediateAttack":
|
|
return AIPlayTagType.ForceImmediateAttack;
|
|
case "stack":
|
|
return AIPlayTagType.Stack;
|
|
case "evoAddStack":
|
|
return AIPlayTagType.EvoAddStack;
|
|
case "fusionMetamorphose":
|
|
return AIPlayTagType.FusionMetamorphose;
|
|
case "lastwordSubtractCountdown":
|
|
return AIPlayTagType.LastwordSubtractCountdown;
|
|
case "attackSetStatus":
|
|
return AIPlayTagType.AttackSetStatus;
|
|
case "playAddDeck":
|
|
return AIPlayTagType.PlayAddDeck;
|
|
case "fanfareAddDeck":
|
|
return AIPlayTagType.FanfareAddDeck;
|
|
case "attackAddDeck":
|
|
return AIPlayTagType.AttackAddDeck;
|
|
case "breakRecoverPp":
|
|
return AIPlayTagType.BreakRecoverPp;
|
|
case "choiceBrave":
|
|
return AIPlayTagType.ChoiceBrave;
|
|
default:
|
|
if (!string.IsNullOrEmpty(word))
|
|
{
|
|
AIConsoleUtility.LogError("AICardData Unknown tag : " + word);
|
|
}
|
|
return AIPlayTagType.None;
|
|
}
|
|
}
|
|
}
|