// A seperate list for components, so they're easy to recall // Done as object, so it can be added to different rooms with components = NEW component? const component = { // Entity Stuff //item : [], //itemCount : 0, // Card Stuff cardData : {}, cardFace : {}, cardStatus : { tapped : {}, attacking : {}, inspected : {}, }, cardAttack : {}, cardColours : {}, // Replace with colour colour : { white : {}, // entityId, amountOfColour blue : {}, red : {}, }, cardManaColour : {}, cardEffect : {}, // TODO: Split this into effect, trigger, step, targets. cardCost : {}, cardSprite : {}, // id, position in spritesheet [0,4] e.g. //cardPlayer = {}, // Deck Stuff? deckIn : {}, deckData : {}, // UI (so users know what's been targetted) selected : {}, selectable : {}, // Effect (break it up?) effect : {}, effectTrigger : {}, // etc, etc. // Board Elements // loop component.shield for shield items boardElement : {}, // Replace with following realDeck : {}, inDeck : {}, hand : {}, board : {}, shield : {}, mana : {}, grave : {}, void : {}, // listPosition : {}, // position (clientside) // size (clientside) // Passives // component.passive.flight ? passive : { flight : {}, reach : {}, taunt : {}, }, type : { unit : {}, spell : {}, token : {}, }, classes : { orc : {}, human : {}, spirit : {}, }, }; // For front-end // position, size // These should be used as such (Not 100% as yet) // For onBoard()... for player()... for passive.flight()... // Check the board, items belonging to playerX, for flight passive? module.exports = { component }