const preact = require('preact');

const SOURCE_DURATION_MS = 1000; // Time for SOURCE ONLY
const TARGET_DELAY_MS = 500; // Used for Source + Target
const TARGET_DURATION_MS = 1500; // Time for TARGET ONLY
const POST_SKILL_DURATION_MS = 1300; // Time for all POST
const SOURCE_AND_TARGET_TOTAL_DURATION = TARGET_DELAY_MS + TARGET_DURATION_MS; // SOURCE + TARGET time

module.exports = {
    TIMES: {
        SOURCE_DURATION_MS,
        TARGET_DELAY_MS,
        TARGET_DURATION_MS,
        POST_SKILL_DURATION_MS,
        SOURCE_AND_TARGET_TOTAL_DURATION,
    },

    COLOURS: {
        GREEN: '#1FF01F',
        RED: '#a52a2a',
        BLUE: '#3050f8',
        WHITE: '#f5f5f5', // whitesmoke
        PURPLE: '#9355b5', // 6lack - that far cover
    },

    INFO: {
        store: {
            item: 'STORE',
            description: <p>Contains items that are available to buy.<br />
                The store is refilled every round.<br />Click <b>REFILL</b> to purchase a refill for 2 bits. </p>,
        },
        stash: {
            item: 'STASH',
            description: <p>Holds <b>ITEMS</b><br /><b>ITEMS</b> carry over each round.</p>,
        },
        bits: {
            item: 'BITS',
            description: <p>Currency to buy items.<br />At the beginning of each round you receive 30 bits.</p>,
        },
        ready: {
            item: 'READY',
            description: 'Ends the VBOX PHASE. If your opponent is also ready the GAME PHASE begins.',
        },
        lobbyReady: {
            item: 'READY',
            description: 'Ready for the game to begin. When all players are ready the first VBOX PHASE begins.',
        },
        Refund: {
            item: 'Refund',
            description: 'Refund the listed cost of a single selected item from the stash.',
        },
        refill: {
            item: 'REFILL',
            description: 'Refill the VBOX with new items.',
        },
        constructSkills: {
            item: 'SKILLS',
            description: 'Skills are used by constructs in the game phase.\nBase skills can be bought from the VBOX.\nEquip skills from the stash. Double-click to unequip.',
        },
        constructSpecs: {
            item: 'SPECS',
            description: 'Specialisations increase the stats of a construct.\nIncreased effect when your team meets the colour threshold.\nDouble-click to unequip.',
        },
        powerStat: {
            item: 'POWER',
            description: 'Power determines the damage and healing of your construct skills.\nRed power RedPower is used by red skills.\nGreen power GreenPower is used by green skills.\nBlue power BluePower is used by blue skills.\nCombine coloured POWER specs to increase specific construct power.',
        },
        lifeStat: {
            item: 'LIFE',
            description: 'The life of your construct.\nWhen your construct reaches 0 GreenLife it is knocked out.\nRed life RedLife mitigates red damage.\nBlue life BlueLife mitigates blue damage.\nCombine coloured LIFE specs to increase specific construct life.',
        },
        speedStat: {
            item: 'SPEED',
            description: 'Speed determines the order in which skills resolve.\nThe initial delay of skills is reduced by 1 turn for every 250 speed.\nCombine SPEED specs to increase speed.',
        },
    },
};
