import React, { useState } from 'react'; import { AlertCircle, ChevronRight, RotateCcw } from 'lucide-react'; const CYOADomainExpansionCreator = () => { const [step, setStep] = useState(0); const [choices, setChoices] = useState({}); const [showResult, setShowResult] = useState(false); const steps = [ { question: "What emotion fuels your Domain Expansion?", options: ["Tranquility", "Rage", "Fear", "Joy", "Sorrow"], }, { question: "In what environment does your Domain manifest?", options: { Tranquility: ["Zen Garden", "Misty Mountain", "Starry Void"], Rage: ["Volcanic Wasteland", "Stormy Battlefield", "Inferno"], Fear: ["Dark Labyrinth", "Haunted Forest", "Bottomless Abyss"], Joy: ["Carnival", "Sunlit Meadow", "Crystal Palace"], Sorrow: ["Ruined City", "Eternal Twilight", "Desolate Beach"], }, }, { question: "What is your Domain's sure-hit effect?", options: { "Zen Garden": ["Mind Reading", "Forced Meditation", "Energy Drain", "Temporal Stasis", "Reality Alteration", "Sensory Deprivation"], "Misty Mountain": ["Disorientation", "Slow Petrification", "Truth Compulsion", "Ethereal Binding", "Memory Fog", "Gravity Inversion"], "Starry Void": ["Gravity Manipulation", "Time Dilation", "Cosmic Radiation", "Spatial Distortion", "Void Consumption", "Celestial Judgment"], "Volcanic Wasteland": ["Constant Burning", "Ash Suffocation", "Magma Eruption", "Tectonic Shift", "Pyroclastic Flow", "Heat Mirage"], "Stormy Battlefield": ["Lightning Strikes", "Wind Slashes", "Deafening Thunder", "Tornado Formation", "Electrostatic Paralysis", "Atmospheric Pressure Crush"], "Inferno": ["Soul Burning", "Hellfire Chains", "Demonic Possession", "Brimstone Rain", "Infernal Transformation", "Sin Manifestation"], "Dark Labyrinth": ["Eternal Lost", "Phobia Manifestation", "Shadow Consumption", "Spatial Loop", "Nightmare Projection", "Isolation Madness"], "Haunted Forest": ["Living Vines", "Spectral Haunting", "Nature's Wrath", "Parasitic Infestation", "Whisper-Induced Paranoia", "Primal Fear Awakening"], "Bottomless Abyss": ["Falling Sensation", "Void Absorption", "Crushing Pressure", "Gravitational Singularity", "Existential Dread", "Dimensional Fracture"], "Carnival": ["Forced Laughter", "Vertigo Inducement", "Reality Distortion", "Emotional Rollercoaster", "Metamorphosis Roulette", "Sensory Overload"], "Sunlit Meadow": ["Blinding Light", "Pollen Intoxication", "Rapid Plant Growth", "Solar Flare Burst", "Life Force Siphon", "Photosynthetic Parasitism"], "Crystal Palace": ["Fragmentation", "Reflection Attacks", "Prismatic Confusion", "Crystal Entombment", "Kaleidoscopic Illusions", "Shattered Reality"], "Ruined City": ["Decaying Touch", "Phantom Pain", "Memory Erasure", "Temporal Decay", "Structural Collapse", "Echoes of the Past"], "Eternal Twilight": ["Energy Sapping", "Emotion Manipulation", "Light/Dark Reversal", "Perpetual Fatigue", "Shadow Puppetry", "Twilight Banishment"], "Desolate Beach": ["Quicksand Traps", "Salt Corrosion", "Tidal Wave Summon", "Dehydration Acceleration", "Mirage Manipulation", "Abyssal Current Pull"], }, }, { question: "Does your Domain have a special property? (Optional)", options: ["No special property", "Open Barrier", "Fastest Activation", "Advantage in Domain Clash", "Binding Vow Enhancement", "Information Overload"], }, { question: "What is your Domain's drawback?", options: ["Massive Energy Drain", "Physical Strain", "Mental Instability", "Temporary Blindness", "Cursed Energy Reversal"], }, ]; const handleChoice = (choice) => { setChoices({ ...choices, [step]: choice }); if (step < steps.length - 1) { setStep(step + 1); } else { setShowResult(true); } }; const resetCreator = () => { setStep(0); setChoices({}); setShowResult(false); }; const currentOptions = step === 0 || step === 3 || step === 4 ? steps[step].options : steps[step].options[choices[step - 1]] || []; const generateDescription = () => { const [emotion, environment, sureHit, specialProperty, drawback] = Object.values(choices); const descriptions = { emotion: { Tranquility: "a profound sense of calm washes over you, stilling the chaos of the world around you", Rage: "an uncontrollable fury ignites within you, your anger manifesting as palpable waves of heat", Fear: "a chilling dread seeps into your very being, your deepest terrors clawing at the edges of reality", Joy: "an overwhelming euphoria lifts your spirits, filling the air with an almost tangible sense of delight", Sorrow: "a deep melancholy weighs heavy on your heart, the world around you seeming to dim in response", }, environment: { "Zen Garden": "a serene garden materializes, complete with carefully raked sand patterns, tranquil ponds, and softly chiming wind bells. The air is filled with the subtle scent of blooming cherry blossoms", "Misty Mountain": "a mysterious mountain shrouded in swirling mists forms around you. Ancient, gnarled trees emerge from the fog, their branches reaching out like grasping fingers", "Starry Void": "an endless expanse of stars and cosmic phenomena stretches out in all directions. Nebulae paint the void in vibrant hues, while distant galaxies spiral lazily in the vast emptiness", "Volcanic Wasteland": "a hellish landscape of bubbling lava and ash-filled air erupts into existence. The ground cracks and shifts beneath your feet, revealing glimpses of the molten core below", "Stormy Battlefield": "a chaotic warzone appears, with dark storm clouds and flashing lightning overhead. The air crackles with electricity, and the wind howls like a thousand screaming souls", "Inferno": "flames engulf the area, transforming it into a nightmarish realm of eternal fire. The very air seems to burn, and the ground is a maze of smoldering coals and rivers of lava", "Dark Labyrinth": "an ever-shifting maze of shadowy corridors manifests, promising only confusion and despair. Walls move silently, creating new paths and dead ends with each passing moment", "Haunted Forest": "a dense, foreboding forest materializes, filled with twisted trees and eerie whispers. Shadows flit between the gnarled trunks, and eyes seem to watch from every direction", "Bottomless Abyss": "an impossibly deep chasm opens up, its depths shrouded in impenetrable darkness. The edges crumble constantly, threatening to pull everything into its endless void", "Carnival": "a whimsical yet unsettling carnival springs to life, complete with eerie music and bizarre attractions. Distorted mirrors reflect impossible images, and the air is thick with the scent of cotton candy and dread", "Sunlit Meadow": "a vibrant meadow bathed in warm sunlight unfolds, teeming with colorful flora. Butterflies dance on the breeze, and the grass sways gently in a wind that seems to whisper secrets", "Crystal Palace": "a dazzling palace of refracted light and sharp edges crystallizes around you. Every surface gleams with prismatic brilliance, creating a disorienting kaleidoscope of color and reflection", "Ruined City": "the decaying remnants of a once-great city emerge, telling tales of lost glory. Crumbling skyscrapers loom overhead, while the streets are choked with debris and the echoes of forgotten lives", "Eternal Twilight": "a world forever caught between day and night materializes, bathed in an otherworldly glow. The sky is a canvas of perpetual sunset, casting long shadows that seem to move of their own accord", "Desolate Beach": "a vast, empty shoreline appears, its barren sands stretching as far as the eye can see. The ocean is unnaturally still, reflecting the sky like a perfect mirror, broken only by the occasional ripple of something lurking beneath", }, specialProperty: { "No special property": "", "Open Barrier": "Your Domain's barrier is open, allowing its effects to extend beyond its boundaries and potentially affect a wider area", "Fastest Activation": "Your Domain can be deployed almost instantaneously, giving you a significant advantage in surprise attacks", "Advantage in Domain Clash": "Your Domain is particularly resilient, granting you an edge when clashing with opposing Domains", "Binding Vow Enhancement": "A self-imposed Binding Vow amplifies your Domain's power at the cost of increased risk to yourself", "Information Overload": "Your Domain overwhelms opponents with a flood of sensory information, potentially paralyzing them", }, drawback: { "Massive Energy Drain": "maintaining your Domain rapidly depletes your cursed energy, limiting the time you can keep it active", "Physical Strain": "your body bears the brunt of your Domain's power, causing intense pain and potential long-term damage", "Mental Instability": "the strain of controlling your Domain erodes your sanity, making it difficult to distinguish reality from illusion", "Temporary Blindness": "using your Domain temporarily robs you of your sight, leaving you vulnerable once it dissipates", "Cursed Energy Reversal": "your Domain occasionally backfires, turning your own cursed energy against you in unpredictable and dangerous ways", }, }; let specialPropertyDescription = descriptions.specialProperty[specialProperty]; let specialPropertySentence = specialPropertyDescription ? `Additionally, ${specialPropertyDescription.toLowerCase()}.` : ""; return `As you activate your Domain Expansion, ${descriptions.emotion[emotion]}. In an instant, ${descriptions.environment[environment]}. Within this realm, your sure-hit effect of ${sureHit.toLowerCase()} becomes an inescapable reality for your opponents, warping the very fabric of your Domain to ensure its success. ${specialPropertySentence} However, be wary of your Domain's drawback: ${descriptions.drawback[drawback]}. This Domain Expansion is a reflection of your innermost self, a manifestation of your strength and vulnerabilities alike, capable of turning the tide of any battle – if you can master its power.`; }; return (

Create Your Domain Expansion

{!showResult ? (

{steps[step].question}

{currentOptions.map((option, index) => ( ))}
) : (

Your Domain Expansion

{generateDescription()}

Emotion: {choices[0]}

Environment: {choices[1]}

Sure-Hit Effect: {choices[2]}

Special Property: {choices[3]}

Drawback: {choices[4]}

)}

Note: This is a fictional creation tool. In Jujutsu Kaisen, Domain Expansions are extremely rare and powerful techniques that typically take years to develop.

); }; export default CYOADomainExpansionCreator;