wip team select back in

This commit is contained in:
Mashy 2019-07-26 14:00:01 +10:00
parent a3a2cf9852
commit 61fa990a15
7 changed files with 30 additions and 41 deletions

View File

@ -426,6 +426,10 @@ header {
justify-content: center;
}
.spawn-btn.menu-construct.selected {
color: whitesmoke;
}
.spawn-btn.menu-construct:hover {
border: 1px solid whitesmoke;
}
@ -437,7 +441,7 @@ header {
}
.spawn-btn button {
flex: 1;
flex: 1 1 100%;
margin: 0.5em 1em;
padding: 0 0.5em;
}

View File

@ -4,6 +4,7 @@ const { Elements, injectStripe } = require('react-stripe-elements');
const { saw } = require('./shapes');
const { postData } = require('./../utils');
const actions = require('../actions');
function pingColour(ping) {
if (ping < 100) return 'forestgreen';
@ -67,6 +68,7 @@ const addState = connect(
ping,
} = state;
function logout() {
postData('/logout').then(() => window.location.reload(true));
}
@ -77,6 +79,14 @@ const addState = connect(
logout,
};
},
function receiveDispatch(dispatch) {
function selectConstructs() {
return dispatch(actions.setNav('team'));
}
return {
selectConstructs,
};
}
);
@ -85,6 +95,7 @@ function AccountStatus(args) {
account,
ping,
logout,
selectConstructs,
} = args;
if (!account) return null;
@ -100,6 +111,7 @@ function AccountStatus(args) {
<Elements>
<StripeBitsBtn account={account} />
</Elements>
<button onClick={() => selectConstructs()}>Constructs </button>
<button onClick={() => logout()}>Logout</button>
</div>
);

View File

@ -4,7 +4,7 @@ const { connect } = require('preact-redux');
const Vbox = require('./vbox.component');
const InfoContainer = require('./info.container');
const InstanceConstructsContainer = require('./instance.constructs');
const EquipmentContainer = require('./instance.equip');
// const EquipmentContainer = require('./instance.equip');
const ScoreBoard = require('./scoreboard');
const actions = require('../actions');

View File

@ -24,24 +24,18 @@ class SpawnButton extends Component {
}
enable() {
this.setState({ enabled: true });
this.setState({ enabled: !this.state.enabled });
}
render() {
const selected = this.state.enabled ? 'selected' : '';
return (
<div
key={this.props.i}
class="menu-construct spawn-btn"
class={`menu-construct spawn-btn ${selected}`}
onClick={() => this.enable()} >
<h2>+</h2>
<input
class="login-input"
type="text"
disabled={!this.state.enabled}
value={this.state.value}
placeholder="name"
onInput={this.handleInput}
/>
<h1>+</h1>
<br />
<button
class="login-btn"
disabled={!this.state.enabled}
@ -49,6 +43,7 @@ class SpawnButton extends Component {
type="submit">
spawn
</button>
<h1>¤50</h1>
</div>
);
}

View File

@ -12,22 +12,16 @@ const idSort = stringSort('id');
const addState = connect(
function receiveState(state) {
const { ws, constructs, team, constructDeleteId } = state;
const { ws, constructs, team } = state;
function sendConstructSpawn(name) {
return ws.sendConstructSpawn(name);
}
function sendConstructDelete(id) {
return ws.sendConstructDelete(id);
}
return {
constructs,
constructDeleteId,
team,
sendConstructSpawn,
sendConstructDelete,
};
},
@ -37,13 +31,8 @@ const addState = connect(
dispatch(actions.setTeam(constructIds));
}
function setDeleteId(id) {
dispatch(actions.setConstructDeleteId(id));
}
return {
setTeam,
setDeleteId,
};
}
);
@ -52,13 +41,8 @@ function Team(args) {
const {
constructs,
team,
constructDeleteId,
setTeam,
sendConstructSpawn,
sendConstructDelete,
setDeleteId,
} = args;
if (!constructs) return <div></div>;
@ -86,11 +70,6 @@ function Team(args) {
const borderColour = selected ? COLOURS[colour] : '#000000';
function deleteClick(e) {
e.stopPropagation();
if (constructDeleteId === construct.id) return sendConstructDelete(construct.id);
return setDeleteId(construct.id);
}
// <button disabled={true} ></button>
return (
@ -101,9 +80,8 @@ function Team(args) {
onClick={() => selectConstruct(construct.id)} >
<div class="controls">
<h2>
{constructDeleteId === construct.id ? 'Confirm delete...' : construct.name}
{construct.name}
</h2>
<button onClick={e => deleteClick(e)} >&#10060;</button>
</div>
<ConstructAvatar construct={construct} />
</div>
@ -113,10 +91,10 @@ function Team(args) {
const spawnButtonsNum = (3 - constructs.length % 3);
const spawnButtons = range(spawnButtonsNum)
.map(i => <SpawnButton key={constructs.length + i} spawn={name => sendConstructSpawn(name)} />);
.map(i => <SpawnButton key={constructs.length + i} spawn={() => sendConstructSpawn()} />);
return (
<main class="team" onClick={() => setDeleteId(null)}>
<main class="team">
{constructPanels}
{spawnButtons}
</main>

View File

@ -242,7 +242,7 @@ function Vbox(args) {
class='vbox-btn'
onMouseOver={e => hoverInfo(e, 'refill')}
onClick={() => sendVboxDiscard()}>
refill - 5b
refill - 2b
</button>
</div>
);

View File

@ -12,7 +12,7 @@ use vbox::{Vbox};
use item::{Item, ItemEffect};
use effect::{Effect};
const DISCARD_COST: u16 = 5;
const DISCARD_COST: u16 = 2;
#[derive(Debug,Clone,Serialize,Deserialize)]
pub struct Player {