Spaces:
Sleeping
Sleeping
File size: 1,548 Bytes
463f868 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | import numpy as np
from engine.game.player_state import PlayerState
from engine.game.serializer import get_card_modifiers
from engine.models.ability import Effect, EffectType
from engine.models.card import LiveCard, MemberCard
# Mock DBs
member_db = {
101: MemberCard(
card_id=101,
card_no="M-01",
name="Member A",
cost=1,
blades=1,
hearts=np.array([1, 0, 0, 0, 0, 0, 0]),
blade_hearts=np.array([0, 0, 0, 0, 0, 0, 0]),
img_path="a.png",
)
}
live_db = {
201: LiveCard(
card_id=201,
card_no="L-01",
name="Live A",
score=1,
required_hearts=np.array([0, 0, 0, 0, 0, 0, 1]),
img_path="l.png",
)
}
p = PlayerState(player_id=0)
p.continuous_effects.append(
{
"effect": Effect(EffectType.REDUCE_HEART_REQ, value=1, params={"color": "any"}),
"target_slot": -1,
"expiry": "TURN_END",
}
)
print(f"Debug: continuous_effects length = {len(p.continuous_effects)}")
for i, ce in enumerate(p.continuous_effects):
print(f"Debug: ce[{i}] = {ce}")
eff = ce["effect"]
print(f"Debug: eff.effect_type = {eff.effect_type} (type: {type(eff.effect_type)})")
print(f"Debug: EffectType.REDUCE_HEART_REQ = {EffectType.REDUCE_HEART_REQ}")
live_mods = get_card_modifiers(p, -1, 201, member_db, live_db)
print("Live Modifiers:", live_mods)
if not live_mods:
print("FAILURE: live_mods is empty")
else:
print("SUCCESS: live_mods found")
|