カードの効果onに関する考察 - aharalabMeiji/fireplaceAharaLab GitHub Wiki

基本形

   GameAction.on(TargetedAction``)

実例

  • (一度だけ)呪文を唱えるとカードに魔法(enchantment)「NEW1_012o」が張り付く

     class NEW1_012:
         """Mana Wyrm"""
         events = OWN_SPELL_PLAY.on(Buff(SELF, "NEW1_012o"))
    
  • (秘策)相手が呪文を唱えると、カードの中身が明らかにされ、相手のカードの呪文を打ち消す。

     class EX1_287:
         """Counterspell"""
         secret = Play(OPPONENT, SPELL).on(
             Reveal(SELF), Counter(Play.CARD)
         )
    
  • (秘策)敵キャラがこちらのヒーローを攻撃すると、カードの中身が明らかにされ、相手のキャラ全員に2ポイントヒット。

     class EX1_610:
         """Explosive Trap"""
         secret = Attack(ENEMY_CHARACTERS, FRIENDLY_HERO).on(
             Reveal(SELF), Hit(ENEMY_CHARACTERS, 2)
         )
    
  • 味方の獣が死ぬ度にenchantment「EX1_531e」の効果が得られる。

     class EX1_531:
         """Scavenging Hyena"""
         events = Death(FRIENDLY + BEAST).on(Buff(SELF, "EX1_531e"))
    
  • 全ての自分の手札の秘策カードのコストを0にして、自分が秘策をプレイするとその効果は消える。(=一度限り、秘策のコストが0になる。)

     class EX1_612o:
     	update = Refresh(FRIENDLY_HAND + SECRET, {GameTag.COST: SET(0)})
     	events = Play(CONTROLLER, SECRET).on(Destroy(SELF))
    
  • ターンがはじまるごとに、相手のランダムなキャラに2ポイントヒット

     class EX1_102:
     	"""Demolisher"""
     	events = OWN_TURN_BEGIN.on(Hit(RANDOM_ENEMY_CHARACTER, 2))
    
  • ターンエンドごとに、ランダム(敵味方関係なし)なミニオンに+1/+1与える。

     class Mekka3:
     	"""Emboldener 3000"""
     	events = OWN_TURN_END.on(Buff(RANDOM_MINION, "Mekka3e"))
     Mekka3e = buff(+1, +1)
    
  • (秘策)味方のミニオンが死ぬと、(フィールドがいっぱいでない限り)カードの素性を明らかにし、死んだばかりのミニオンを召喚し、その体力を1とする。

     class EX1_136:
     	"""Redemption"""
     	secret = Death(FRIENDLY + MINION).on(FULL_BOARD | (
     		Reveal(SELF),
     		Summon(CONTROLLER, Copy(Death.ENTITY)).then(SetCurrentHealth(Summon.CARD, 1))
     	))
    
  • ミニオンを召喚するたびにenchantment「NEW1_036e」をそのカードに張り付ける

     class NEW1_036e2:
     	events = Summon(CONTROLLER, MINION).on(Buff(Summon.CARD, "NEW1_036e"))