Description
❄ Frostbite Shield ❄ <-- item title, aqua/blue, centered, diamond symbols
Glacial Relic <-- subtitle, aqua italic, no symbol
❄ Frostbite <-- ability name, aqua, snowflake icon prefix
> 25% chance on hit <-- bullet lines in white/light gray starting with >
> Stuns attacker with Slowness (5s)
> Applies Frostbite overlay
> Cooldown: 20s
❄ Glacial Circle <-- second ability name, aqua, snowflake prefix
> Double Shift to unleash
> Summons a 15-block ice ring
> Pulls enemies to the center
> Traps with Slowness & Freeze (10s)
> Cooldown: 60s
Rules:
- Item title uses &b (aqua) with ❄ on both sides
- Subtitle is &3&o (dark aqua italic)
- Ability headers use &b with ❄ prefix
- All bullet > lines use &f (white) with highlighted values in &b (aqua)
- Cooldown lines always show as "> Cooldown: Xs" — when on cooldown replace with "> Cooldown: &bXs remaining"
- Update ONLY the specific cooldown line index — never rebuild full lore (prevents flickering)
- Empty line between each section for spacing (matches reference format exactly)
Command — /frostbite shield
Command: /frostbite shield [player]
Permission: frostbite.give (op-only)
- Give to [player] or self, offhand first then inventory
- Notify giver and receiver with aqua chat messages
- Play ENTITY_PLAYER_LEVELUP to receiver
- Tab-complete online player names
Passive — "Frostbite" (25% chance)
Trigger: Shield in offhand, hit by enemy player.
- If on cooldown: do nothing
- If not on cooldown: roll Math.random() < 0.25
Fail = nothing, no cooldown started
Success = apply effects + start 20s cooldown
Effects on attacker:
- Slowness 3 for 5s
- Max freeze ticks (setFreezeTicks) for frostbite screen overlay
- BLOCK_POWDER_SNOW_STEP sound pitch 1.5 at attacker
- 20 SNOWFLAKE particles around attacker
- Actionbar to attacker ONLY: "&b❄ &fYou've been frostbitten. Chill out."
- Actionbar to holder: "&b❄ &fFrostbite proc!"
Cooldown: update only the Frostbite cooldown line index every second using stored end timestamp.
Restore line to "> Cooldown: 20s" when done. Never rebuild full lore.
Active — "Glacial Circle" (double sneak)
Trigger: Two sneaks within 600ms, shield in offhand, not on cooldown.
- First sneak: record timestamp SILENTLY — no sound, no message, nothing
- Second sneak within 600ms: activate
- No feedback until successful activation
Circle spawns at caster's location at activation — FIXED, does not follow player.
Store center as final Location at activation time. Never update it.
Visuals (every 4 ticks for 10 seconds):
- 360-degree ring at fixed center: x=cx+15cos(a), z=cz+15sin(a), every 5 degrees
- SNOWFLAKE + SPELL_WITCH + END_ROD particles on ring
- 5 SNOWFLAKE particles at center each tick
Activation sounds (once):
- BLOCK_ANVIL_LAND pitch 2.0
- ENTITY_ELDER_GUARDIAN_CURSE pitch 1.8
- BLOCK_BEACON_ACTIVATE pitch 1.5
Pull mechanic (every 10 ticks for 10 seconds):
- Check enemy players within 15 blocks of FIXED center
- Normalize vector from enemy toward center, setVelocity(direction * 0.35)
- Refresh: Slowness 3 (10s), max freeze ticks, SLOW_FALLING (10s)
- 5 SNOWFLAKE particles on them each check
- Actionbar to trapped enemies: "&b❄ &fYou're trapped in the Glacial Circle!"
- No title. No subtitle. Actionbar only.
After 10 seconds:
- BLOCK_GLASS_BREAK pitch 0.5 at center, 80 SNOWFLAKE burst at center
- Start 60s cooldown, update only active cooldown lore line index each second
- Restore line when done