balance: increase skill values and stats across multiple cards
- Adjusted skill effect values (strike, pierce, counter, heal, etc.) to be ~20-50% higher per rarity/level - Updated unit attack/health stats for several cards (e.g., Hive Queen, Carapace units) to match new power curve - Improved draft UX in alternating mode by auto-scrolling to current section and caching section positions for smoother tween-based navigation
This commit is contained in:
parent
8b963d270e
commit
05ea5a1515
222
data/cards.json
222
data/cards.json
|
|
@ -393,7 +393,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "strike",
|
"name": "strike",
|
||||||
"value": 4,
|
"value": 6,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -406,7 +406,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "strike",
|
"name": "strike",
|
||||||
"value": 6,
|
"value": 9,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -419,7 +419,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "strike",
|
"name": "strike",
|
||||||
"value": 10,
|
"value": 14,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -456,7 +456,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "pierce",
|
"name": "pierce",
|
||||||
"value": 2,
|
"value": 3,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -469,7 +469,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "pierce",
|
"name": "pierce",
|
||||||
"value": 2,
|
"value": 4,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -482,7 +482,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "pierce",
|
"name": "pierce",
|
||||||
"value": 3,
|
"value": 8,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -495,7 +495,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "pierce",
|
"name": "pierce",
|
||||||
"value": 5,
|
"value": 12,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -532,7 +532,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "counter",
|
"name": "counter",
|
||||||
"value": 3,
|
"value": 4,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -545,7 +545,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "counter",
|
"name": "counter",
|
||||||
"value": 5,
|
"value": 6,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -558,7 +558,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "counter",
|
"name": "counter",
|
||||||
"value": 7,
|
"value": 9,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -571,7 +571,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "counter",
|
"name": "counter",
|
||||||
"value": 10,
|
"value": 12,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -595,7 +595,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "heal",
|
"name": "heal",
|
||||||
"value": 2,
|
"value": 3,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -608,7 +608,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "heal",
|
"name": "heal",
|
||||||
"value": 3,
|
"value": 4,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -621,7 +621,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "heal",
|
"name": "heal",
|
||||||
"value": 5,
|
"value": 7,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -634,7 +634,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "heal",
|
"name": "heal",
|
||||||
"value": 7,
|
"value": 10,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -647,7 +647,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "heal",
|
"name": "heal",
|
||||||
"value": 10,
|
"value": 14,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -697,7 +697,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "legion",
|
"name": "legion",
|
||||||
"value": 3,
|
"value": 4,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -710,7 +710,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "legion",
|
"name": "legion",
|
||||||
"value": 4,
|
"value": 5,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -723,7 +723,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "legion",
|
"name": "legion",
|
||||||
"value": 5,
|
"value": 7,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -773,7 +773,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "protect",
|
"name": "protect",
|
||||||
"value": 5,
|
"value": 6,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -786,7 +786,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "protect",
|
"name": "protect",
|
||||||
"value": 7,
|
"value": 9,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -799,7 +799,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "protect",
|
"name": "protect",
|
||||||
"value": 10,
|
"value": 12,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -816,23 +816,10 @@
|
||||||
"rarity": "rare",
|
"rarity": "rare",
|
||||||
"levels": [
|
"levels": [
|
||||||
{
|
{
|
||||||
"attack": 7,
|
"attack": 8,
|
||||||
"health": 12,
|
"health": 12,
|
||||||
"armor": 0,
|
"armor": 0,
|
||||||
"delay": 1,
|
"delay": 1,
|
||||||
"skills": [
|
|
||||||
{
|
|
||||||
"name": "pierce",
|
|
||||||
"value": 3,
|
|
||||||
"trigger": "preAttack"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"attack": 11,
|
|
||||||
"health": 18,
|
|
||||||
"armor": 0,
|
|
||||||
"delay": 1,
|
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "pierce",
|
"name": "pierce",
|
||||||
|
|
@ -842,22 +829,9 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"attack": 16,
|
"attack": 18,
|
||||||
"health": 27,
|
"health": 18,
|
||||||
"armor": 1,
|
"armor": 0,
|
||||||
"delay": 1,
|
|
||||||
"skills": [
|
|
||||||
{
|
|
||||||
"name": "pierce",
|
|
||||||
"value": 7,
|
|
||||||
"trigger": "preAttack"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"attack": 24,
|
|
||||||
"health": 41,
|
|
||||||
"armor": 1,
|
|
||||||
"delay": 1,
|
"delay": 1,
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
|
|
@ -868,14 +842,40 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"attack": 35,
|
"attack": 24,
|
||||||
|
"health": 27,
|
||||||
|
"armor": 1,
|
||||||
|
"delay": 1,
|
||||||
|
"skills": [
|
||||||
|
{
|
||||||
|
"name": "pierce",
|
||||||
|
"value": 17,
|
||||||
|
"trigger": "preAttack"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"attack": 32,
|
||||||
|
"health": 41,
|
||||||
|
"armor": 1,
|
||||||
|
"delay": 1,
|
||||||
|
"skills": [
|
||||||
|
{
|
||||||
|
"name": "pierce",
|
||||||
|
"value": 20,
|
||||||
|
"trigger": "preAttack"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"attack": 45,
|
||||||
"health": 61,
|
"health": 61,
|
||||||
"armor": 2,
|
"armor": 2,
|
||||||
"delay": 1,
|
"delay": 1,
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "pierce",
|
"name": "pierce",
|
||||||
"value": 15,
|
"value": 30,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -912,7 +912,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "mortar",
|
"name": "mortar",
|
||||||
"value": 9,
|
"value": 12,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -925,7 +925,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "mortar",
|
"name": "mortar",
|
||||||
"value": 14,
|
"value": 24,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -938,7 +938,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "mortar",
|
"name": "mortar",
|
||||||
"value": 20,
|
"value": 40,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -951,7 +951,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "mortar",
|
"name": "mortar",
|
||||||
"value": 30,
|
"value": 55,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2365,7 +2365,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "berserk",
|
"name": "berserk",
|
||||||
"value": 2,
|
"value": 4,
|
||||||
"trigger": "on_attack"
|
"trigger": "on_attack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2378,7 +2378,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "berserk",
|
"name": "berserk",
|
||||||
"value": 3,
|
"value": 6,
|
||||||
"trigger": "on_attack"
|
"trigger": "on_attack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2391,7 +2391,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "berserk",
|
"name": "berserk",
|
||||||
"value": 5,
|
"value": 10,
|
||||||
"trigger": "on_attack"
|
"trigger": "on_attack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2504,7 +2504,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "siege",
|
"name": "siege",
|
||||||
"value": 3,
|
"value": 4,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2517,7 +2517,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "siege",
|
"name": "siege",
|
||||||
"value": 5,
|
"value": 8,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2530,7 +2530,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "siege",
|
"name": "siege",
|
||||||
"value": 7,
|
"value": 14,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2543,7 +2543,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "siege",
|
"name": "siege",
|
||||||
"value": 10,
|
"value": 25,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2669,7 +2669,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "weaken",
|
"name": "weaken",
|
||||||
"value": 2,
|
"value": 4,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2682,7 +2682,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "weaken",
|
"name": "weaken",
|
||||||
"value": 3,
|
"value": 8,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2695,7 +2695,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "weaken",
|
"name": "weaken",
|
||||||
"value": 5,
|
"value": 15,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2833,7 +2833,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "enfeeble",
|
"name": "enfeeble",
|
||||||
"value": 3,
|
"value": 5,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2846,7 +2846,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "enfeeble",
|
"name": "enfeeble",
|
||||||
"value": 5,
|
"value": 8,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2859,7 +2859,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "enfeeble",
|
"name": "enfeeble",
|
||||||
"value": 7,
|
"value": 12,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2872,7 +2872,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "enfeeble",
|
"name": "enfeeble",
|
||||||
"value": 10,
|
"value": 18,
|
||||||
"trigger": "preBattle"
|
"trigger": "preBattle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2922,7 +2922,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "swipe",
|
"name": "swipe",
|
||||||
"value": 2,
|
"value": 4,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2935,7 +2935,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "swipe",
|
"name": "swipe",
|
||||||
"value": 3,
|
"value": 6,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -2948,7 +2948,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "swipe",
|
"name": "swipe",
|
||||||
"value": 5,
|
"value": 10,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -3008,7 +3008,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "pierce",
|
"name": "pierce",
|
||||||
"value": 2,
|
"value": 4,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
@ -3026,7 +3026,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "pierce",
|
"name": "pierce",
|
||||||
"value": 3,
|
"value": 8,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
@ -3044,7 +3044,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "pierce",
|
"name": "pierce",
|
||||||
"value": 5,
|
"value": 16,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
@ -6323,7 +6323,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "hive_link",
|
"name": "hive_link",
|
||||||
"value": 10,
|
"value": 12,
|
||||||
"trigger": "passive"
|
"trigger": "passive"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6360,7 +6360,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "carapace",
|
"name": "carapace",
|
||||||
"value": 1,
|
"value": 2,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6373,7 +6373,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "carapace",
|
"name": "carapace",
|
||||||
"value": 1,
|
"value": 3,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6386,7 +6386,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "carapace",
|
"name": "carapace",
|
||||||
"value": 2,
|
"value": 6,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6399,7 +6399,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "carapace",
|
"name": "carapace",
|
||||||
"value": 2,
|
"value": 10,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6423,7 +6423,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "venom",
|
"name": "venom",
|
||||||
"value": 1,
|
"value": 2,
|
||||||
"trigger": "on_attack"
|
"trigger": "on_attack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6436,7 +6436,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "venom",
|
"name": "venom",
|
||||||
"value": 2,
|
"value": 4,
|
||||||
"trigger": "on_attack"
|
"trigger": "on_attack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6449,7 +6449,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "venom",
|
"name": "venom",
|
||||||
"value": 3,
|
"value": 6,
|
||||||
"trigger": "on_attack"
|
"trigger": "on_attack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6462,7 +6462,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "venom",
|
"name": "venom",
|
||||||
"value": 4,
|
"value": 8,
|
||||||
"trigger": "on_attack"
|
"trigger": "on_attack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6475,7 +6475,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "venom",
|
"name": "venom",
|
||||||
"value": 5,
|
"value": 10,
|
||||||
"trigger": "on_attack"
|
"trigger": "on_attack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6525,7 +6525,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "burrow",
|
"name": "burrow",
|
||||||
"value": 2,
|
"value": 3,
|
||||||
"trigger": "passive"
|
"trigger": "passive"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6538,7 +6538,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "burrow",
|
"name": "burrow",
|
||||||
"value": 3,
|
"value": 4,
|
||||||
"trigger": "passive"
|
"trigger": "passive"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6551,7 +6551,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "burrow",
|
"name": "burrow",
|
||||||
"value": 3,
|
"value": 5,
|
||||||
"trigger": "passive"
|
"trigger": "passive"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6568,7 +6568,7 @@
|
||||||
"rarity": "common",
|
"rarity": "common",
|
||||||
"levels": [
|
"levels": [
|
||||||
{
|
{
|
||||||
"attack": 3,
|
"attack": 4,
|
||||||
"health": 13,
|
"health": 13,
|
||||||
"armor": 2,
|
"armor": 2,
|
||||||
"delay": 0,
|
"delay": 0,
|
||||||
|
|
@ -6580,7 +6580,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"attack": 5,
|
"attack": 7,
|
||||||
"health": 20,
|
"health": 20,
|
||||||
"armor": 3,
|
"armor": 3,
|
||||||
"delay": 0,
|
"delay": 0,
|
||||||
|
|
@ -6592,7 +6592,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"attack": 7,
|
"attack": 10,
|
||||||
"health": 29,
|
"health": 29,
|
||||||
"armor": 4,
|
"armor": 4,
|
||||||
"delay": 0,
|
"delay": 0,
|
||||||
|
|
@ -6604,7 +6604,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"attack": 10,
|
"attack": 18,
|
||||||
"health": 44,
|
"health": 44,
|
||||||
"armor": 6,
|
"armor": 6,
|
||||||
"delay": 0,
|
"delay": 0,
|
||||||
|
|
@ -6616,7 +6616,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"attack": 15,
|
"attack": 24,
|
||||||
"health": 66,
|
"health": 66,
|
||||||
"armor": 9,
|
"armor": 9,
|
||||||
"delay": 0,
|
"delay": 0,
|
||||||
|
|
@ -6664,7 +6664,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "counter",
|
"name": "counter",
|
||||||
"value": 3,
|
"value": 4,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
@ -6682,12 +6682,12 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "counter",
|
"name": "counter",
|
||||||
"value": 5,
|
"value": 8,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "carapace",
|
"name": "carapace",
|
||||||
"value": 1,
|
"value": 2,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6700,12 +6700,12 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "counter",
|
"name": "counter",
|
||||||
"value": 7,
|
"value": 10,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "carapace",
|
"name": "carapace",
|
||||||
"value": 2,
|
"value": 3,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6718,12 +6718,12 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "counter",
|
"name": "counter",
|
||||||
"value": 10,
|
"value": 15,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "carapace",
|
"name": "carapace",
|
||||||
"value": 2,
|
"value": 4,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6853,7 +6853,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "swarm",
|
"name": "swarm",
|
||||||
"value": 1,
|
"value": 2,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6871,7 +6871,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "swarm",
|
"name": "swarm",
|
||||||
"value": 2,
|
"value": 3,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6889,7 +6889,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "swarm",
|
"name": "swarm",
|
||||||
"value": 3,
|
"value": 4,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6907,7 +6907,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "swarm",
|
"name": "swarm",
|
||||||
"value": 5,
|
"value": 7,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -6925,7 +6925,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "swarm",
|
"name": "swarm",
|
||||||
"value": 7,
|
"value": 10,
|
||||||
"trigger": "preAttack"
|
"trigger": "preAttack"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -7182,7 +7182,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "carapace",
|
"name": "carapace",
|
||||||
"value": 2,
|
"value": 4,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
@ -7200,7 +7200,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "carapace",
|
"name": "carapace",
|
||||||
"value": 3,
|
"value": 5,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
@ -7218,7 +7218,7 @@
|
||||||
"skills": [
|
"skills": [
|
||||||
{
|
{
|
||||||
"name": "carapace",
|
"name": "carapace",
|
||||||
"value": 3,
|
"value": 7,
|
||||||
"trigger": "on_defend"
|
"trigger": "on_defend"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -76,6 +76,9 @@ export class SkirmishDraftScene extends Phaser.Scene {
|
||||||
this.aiRemainingPicks = { legendary: 0, epic: 0, rare: 0, common: 0 };
|
this.aiRemainingPicks = { legendary: 0, epic: 0, rare: 0, common: 0 };
|
||||||
this.bannerGroup = [];
|
this.bannerGroup = [];
|
||||||
this.SCROLL_TOP = 80;
|
this.SCROLL_TOP = 80;
|
||||||
|
this.sectionYPositions = {};
|
||||||
|
this._lastScrolledSection = null;
|
||||||
|
this.scrollTween = null;
|
||||||
|
|
||||||
this._renderStatusBanner();
|
this._renderStatusBanner();
|
||||||
this._renderCardGrid();
|
this._renderCardGrid();
|
||||||
|
|
@ -226,9 +229,14 @@ export class SkirmishDraftScene extends Phaser.Scene {
|
||||||
Commanders: '#ffd700', Legendary: '#ffaa00', Epic: '#bb66ff', Rare: '#6699ff', Common: '#999999'
|
Commanders: '#ffd700', Legendary: '#ffaa00', Epic: '#bb66ff', Rare: '#6699ff', Common: '#999999'
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (this.isAlternatingDraft) this.sectionYPositions = {};
|
||||||
|
|
||||||
for (const section of sections) {
|
for (const section of sections) {
|
||||||
if (section.cards.length === 0) continue;
|
if (section.cards.length === 0) continue;
|
||||||
|
|
||||||
|
const sectionKey = section.costKey || 'commanders';
|
||||||
|
const sectionTopY = cursorY;
|
||||||
|
|
||||||
const sectionLabel = this.add.text(this.GRID_LEFT, cursorY, section.label, {
|
const sectionLabel = this.add.text(this.GRID_LEFT, cursorY, section.label, {
|
||||||
fontSize: '18px', color: rarityColors[section.label] || '#d4af37', fontFamily: 'Audiowide'
|
fontSize: '18px', color: rarityColors[section.label] || '#d4af37', fontFamily: 'Audiowide'
|
||||||
});
|
});
|
||||||
|
|
@ -410,6 +418,9 @@ export class SkirmishDraftScene extends Phaser.Scene {
|
||||||
|
|
||||||
const rows = Math.ceil(section.cards.length / this.COLS);
|
const rows = Math.ceil(section.cards.length / this.COLS);
|
||||||
cursorY = startY + rows * this.CELL_H + 10;
|
cursorY = startY + rows * this.CELL_H + 10;
|
||||||
|
if (this.isAlternatingDraft) {
|
||||||
|
this.sectionYPositions[sectionKey] = { top: sectionTopY, height: 30 + rows * this.CELL_H };
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Scrolling bounds
|
// Scrolling bounds
|
||||||
|
|
@ -427,6 +438,32 @@ export class SkirmishDraftScene extends Phaser.Scene {
|
||||||
this.scrollContainer.setMask(new Phaser.Display.Masks.GeometryMask(this, maskShape));
|
this.scrollContainer.setMask(new Phaser.Display.Masks.GeometryMask(this, maskShape));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_scrollToActiveSection() {
|
||||||
|
if (!this.isAlternatingDraft) return;
|
||||||
|
const key = (this.draftState === 'PLAYER_COMMANDER' || this.draftState === 'AI_COMMANDER')
|
||||||
|
? 'commanders'
|
||||||
|
: (this.currentPhaseRarity || null);
|
||||||
|
if (!key || key === this._lastScrolledSection) return;
|
||||||
|
this._lastScrolledSection = key;
|
||||||
|
|
||||||
|
const info = this.sectionYPositions[key];
|
||||||
|
if (!info) return;
|
||||||
|
|
||||||
|
const visibleH = this.SCROLL_BOTTOM - this.SCROLL_TOP;
|
||||||
|
const sectionCenterY = info.top + info.height / 2;
|
||||||
|
const targetScrollY = Phaser.Math.Clamp(sectionCenterY - visibleH / 2, 0, this.maxScrollY);
|
||||||
|
|
||||||
|
if (this.scrollTween) { this.scrollTween.stop(); this.scrollTween = null; }
|
||||||
|
this.scrollTween = this.tweens.add({
|
||||||
|
targets: this,
|
||||||
|
scrollY: targetScrollY,
|
||||||
|
duration: 450,
|
||||||
|
ease: 'Cubic.easeInOut',
|
||||||
|
onUpdate: () => { if (this.scrollContainer) this.scrollContainer.y = -this.scrollY; },
|
||||||
|
onComplete: () => { this.scrollTween = null; }
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
_setupScrolling() {
|
_setupScrolling() {
|
||||||
this.input.on('wheel', (pointer, gameObjects, deltaX, deltaY) => {
|
this.input.on('wheel', (pointer, gameObjects, deltaX, deltaY) => {
|
||||||
if (pointer.x > 1320) return;
|
if (pointer.x > 1320) return;
|
||||||
|
|
@ -1058,6 +1095,7 @@ export class SkirmishDraftScene extends Phaser.Scene {
|
||||||
this._renderStatusBanner();
|
this._renderStatusBanner();
|
||||||
this._renderCardGrid();
|
this._renderCardGrid();
|
||||||
this._renderDualDeckPanel();
|
this._renderDualDeckPanel();
|
||||||
|
this._scrollToActiveSection();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1066,6 +1104,7 @@ export class SkirmishDraftScene extends Phaser.Scene {
|
||||||
this._renderStatusBanner();
|
this._renderStatusBanner();
|
||||||
this._renderCardGrid();
|
this._renderCardGrid();
|
||||||
this._renderDualDeckPanel();
|
this._renderDualDeckPanel();
|
||||||
|
this._scrollToActiveSection();
|
||||||
|
|
||||||
this.time.delayedCall(1500, () => {
|
this.time.delayedCall(1500, () => {
|
||||||
if (!this.scene.isActive()) return;
|
if (!this.scene.isActive()) return;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue