fix team stuff

This commit is contained in:
ntr 2019-05-30 13:34:05 +10:00
parent 6fffddd15c
commit dc6de694da
5 changed files with 63 additions and 14 deletions

View File

@ -361,16 +361,16 @@ header {
grid-template-areas: grid-template-areas:
"top" "top"
"list"; "team";
} }
.menu-constructs .list { .constructs-list {
margin-top: 0.5em; margin-top: 0.5em;
grid-area: list; grid-area: team;
display: grid; display: grid;
grid-template-columns: repeat(3, 1fr); grid-template-columns: repeat(3, 1fr);
grid-auto-rows: 1fr; /*grid-auto-rows: 1fr;*/
grid-gap: 0.5em; grid-gap: 0.5em;
} }
@ -425,7 +425,26 @@ header {
/* INSTANCE LIST */ /* INSTANCE LIST */
.menu-instances {
display: grid;
grid-template-areas:
"team"
"list"
"create";
grid-template-columns: 1fr;
grid-template-rows: 1fr 1fr 1fr;
}
.menu-instances .construct-list {
grid-area: team;
grid-auto-columns: 1fr;
grid-gap: 0.5em;
}
.menu-instance-list { .menu-instance-list {
grid-area: list;
flex: 1; flex: 1;
order: 99; order: 99;
flex-flow: row wrap; flex-flow: row wrap;
@ -446,6 +465,7 @@ header {
} }
.create-form { .create-form {
grid-area: create;
flex: 1; flex: 1;
display: flex; display: flex;

View File

@ -28,6 +28,10 @@
transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out;
} }
main {
overflow-x: hidden;
}
#toggle-nav { display: none; } #toggle-nav { display: none; }
#toggle-nav-label { #toggle-nav-label {

View File

@ -1,10 +1,12 @@
const { connect } = require('react-redux'); const { connect } = require('react-redux');
const preact = require('preact'); const preact = require('preact');
const { NULL_UUID } = require('./../utils'); const { stringSort, NULL_UUID, COLOURS, constructAvatar } = require('./../utils');
const actions = require('./../actions'); const actions = require('./../actions');
const InstanceCreateForm = require('./instance.create.form'); const InstanceCreateForm = require('./instance.create.form');
const idSort = stringSort('id');
const addState = connect( const addState = connect(
function receiveState(state) { function receiveState(state) {
const { ws, constructs, team, instances, account } = state; const { ws, constructs, team, instances, account } = state;
@ -40,6 +42,7 @@ function List(args) {
const { const {
account, account,
team, team,
constructs,
sendInstanceState, sendInstanceState,
sendInstanceJoin, sendInstanceJoin,
sendInstanceList, sendInstanceList,
@ -93,8 +96,29 @@ function List(args) {
); );
} }
const constructPanels = constructs
.filter(c => team.includes(c.id))
.sort(idSort)
.map(construct => {
const colour = team.indexOf(construct.id);
const selected = colour > -1;
return (
<div
key={construct.id}
className="menu-construct" >
{constructAvatar(construct.name, construct.id)}
<h2>{construct.name}</h2>
</div>
);
});
return ( return (
<main className="menu"> <main className="menu-instances">
<div className="construct-list">
{constructPanels}
</div>
{instanceList()} {instanceList()}
</main> </main>
); );

View File

@ -3,18 +3,12 @@ const { connect } = require('react-redux');
const range = require('lodash/range'); const range = require('lodash/range');
const actions = require('./../actions'); const actions = require('./../actions');
const { NULL_UUID } = require('./../utils'); const { COLOURS } = require('./../utils');
const { stringSort, constructAvatar } = require('./../utils'); const { stringSort, constructAvatar } = require('./../utils');
const SpawnButton = require('./spawn.button'); const SpawnButton = require('./spawn.button');
const idSort = stringSort('id'); const idSort = stringSort('id');
const COLOURS = [
'#a52a2a',
'#1FF01F',
'#3498db',
];
const addState = connect( const addState = connect(
function receiveState(state) { function receiveState(state) {
const { ws, constructs, team, account } = state; const { ws, constructs, team, account } = state;
@ -118,7 +112,7 @@ function Team(args) {
return ( return (
<main className="menu-constructs"> <main className="menu-constructs">
{header} {header}
<div className="list"> <div className="constructs-list">
{constructPanels} {constructPanels}
{spawnButtons} {spawnButtons}
</div> </div>

View File

@ -448,6 +448,12 @@ function convertItem(v) {
// return; // return;
} }
const COLOURS = [
'#a52a2a',
'#1FF01F',
'#3498db',
];
module.exports = { module.exports = {
animateConstruct, animateConstruct,
stringSort, stringSort,
@ -464,4 +470,5 @@ module.exports = {
resoConstructHealth, resoConstructHealth,
NULL_UUID, NULL_UUID,
STATS, STATS,
COLOURS,
}; };