feat: add prestige system and skill upgrades with comprehensive documentation
Build and Publish Mana Loop Docker Image / build-and-publish (push) Failing after 5m57s
Build and Publish Mana Loop Docker Image / build-and-publish (push) Failing after 5m57s
This commit is contained in:
@@ -7,7 +7,7 @@ import { Badge } from '@/components/ui/badge';
|
||||
import { ScrollArea } from '@/components/ui/scroll-area';
|
||||
import { Separator } from '@/components/ui/separator';
|
||||
import { TooltipProvider, Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip';
|
||||
import { BookOpen, ChevronUp, ChevronDown, RotateCcw, X, Mountain, Skull, Zap, Wind, Shield } from 'lucide-react';
|
||||
import { BookOpen, ChevronUp, ChevronDown, RotateCcw, X, Mountain, Skull, Zap, Wind, Shield, Heart, ShieldCheck } from 'lucide-react';
|
||||
import type { ActivityLogEntry } from '@/lib/game/types';
|
||||
import type { GameStore } from '@/lib/game/store';
|
||||
import { ELEMENTS, GUARDIANS, SPELLS_DEF, SKILLS_DEF, ROOM_TYPE_LABELS } from '@/lib/game/constants';
|
||||
@@ -232,6 +232,32 @@ export function SpireTab({ store, simpleMode = false }: SpireTabProps) {
|
||||
</TooltipContent>
|
||||
</Tooltip>
|
||||
)}
|
||||
{primaryEnemy.healthRegen > 0 && (
|
||||
<Tooltip>
|
||||
<TooltipTrigger>
|
||||
<Badge variant="outline" className="text-xs py-0">
|
||||
<Heart className="w-3 h-3 mr-1 text-green-400" />
|
||||
{(primaryEnemy.healthRegen * 100).toFixed(1)}% Regen
|
||||
</Badge>
|
||||
</TooltipTrigger>
|
||||
<TooltipContent>
|
||||
<p>Regenerates {(primaryEnemy.healthRegen * 100).toFixed(1)}% of max HP per tick</p>
|
||||
</TooltipContent>
|
||||
</Tooltip>
|
||||
)}
|
||||
{primaryEnemy.barrier > 0 && (
|
||||
<Tooltip>
|
||||
<TooltipTrigger>
|
||||
<Badge variant="outline" className="text-xs py-0">
|
||||
<ShieldCheck className="w-3 h-3 mr-1 text-blue-400" />
|
||||
{(primaryEnemy.barrier * 100).toFixed(0)}% Barrier
|
||||
</Badge>
|
||||
</TooltipTrigger>
|
||||
<TooltipContent>
|
||||
<p>Has a barrier absorbing {(primaryEnemy.barrier * 100).toFixed(0)}% of max HP before HP takes damage</p>
|
||||
</TooltipContent>
|
||||
</Tooltip>
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
@@ -264,6 +290,27 @@ export function SpireTab({ store, simpleMode = false }: SpireTabProps) {
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
{/* Show enemy properties for swarm enemies */}
|
||||
<div className="flex flex-wrap gap-1 mt-1">
|
||||
{enemy.armor > 0 && (
|
||||
<Badge variant="outline" className="text-xs py-0">
|
||||
<Shield className="w-2 h-2 mr-1" />
|
||||
{(enemy.armor * 100).toFixed(0)}% Armor
|
||||
</Badge>
|
||||
)}
|
||||
{enemy.healthRegen > 0 && (
|
||||
<Badge variant="outline" className="text-xs py-0">
|
||||
<Heart className="w-2 h-2 mr-1 text-green-400" />
|
||||
{(enemy.healthRegen * 100).toFixed(1)}% Regen
|
||||
</Badge>
|
||||
)}
|
||||
{enemy.barrier > 0 && (
|
||||
<Badge variant="outline" className="text-xs py-0">
|
||||
<ShieldCheck className="w-2 h-2 mr-1 text-blue-400" />
|
||||
{(enemy.barrier * 100).toFixed(0)}% Barrier
|
||||
</Badge>
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user