styles and vbox sort
This commit is contained in:
parent
cc5c02099f
commit
5dbf348327
@ -22,7 +22,7 @@ button, input {
|
|||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
|
|
||||||
/*the transitions */
|
/*the transitions */
|
||||||
transition-property: box-shadow;
|
transition-property: all;
|
||||||
transition-duration: 0.5s;
|
transition-duration: 0.5s;
|
||||||
transition-delay: 0;
|
transition-delay: 0;
|
||||||
transition-timing-function: ease;
|
transition-timing-function: ease;
|
||||||
@ -34,6 +34,10 @@ button:hover, button:focus {
|
|||||||
border-color: whitesmoke;
|
border-color: whitesmoke;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
button.right[disabled]:hover, button.left[disabled]:hover {
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
button.right:hover, button.right:focus {
|
button.right:hover, button.right:focus {
|
||||||
box-shadow: inset -0.5em 0 0 0 whitesmoke;
|
box-shadow: inset -0.5em 0 0 0 whitesmoke;
|
||||||
}
|
}
|
||||||
@ -66,6 +70,11 @@ button.left:hover, button.left:focus {
|
|||||||
margin: 0.5em;
|
margin: 0.5em;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border: 1px solid black;
|
border: 1px solid black;
|
||||||
|
|
||||||
|
transition-property: border;
|
||||||
|
transition-duration: 0.5s;
|
||||||
|
transition-delay: 0;
|
||||||
|
transition-timing-function: ease;
|
||||||
}
|
}
|
||||||
|
|
||||||
.background {
|
.background {
|
||||||
@ -182,10 +191,6 @@ button.left:hover, button.left:focus {
|
|||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
}
|
}
|
||||||
|
|
||||||
.vbox-table td div {
|
|
||||||
border: 1px solid whitesmoke;
|
|
||||||
}
|
|
||||||
|
|
||||||
.spacer {
|
.spacer {
|
||||||
min-width: 100%;
|
min-width: 100%;
|
||||||
}
|
}
|
||||||
|
|||||||
51
html-client/src/components/game.container.jsx
Normal file
51
html-client/src/components/game.container.jsx
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
const { connect } = require('preact-redux');
|
||||||
|
|
||||||
|
const actions = require('../actions');
|
||||||
|
|
||||||
|
const Game = require('./game.component');
|
||||||
|
|
||||||
|
const addState = connect(
|
||||||
|
function receiveState(state) {
|
||||||
|
const { ws, game, account, activeSkill, activeIncoming } = state;
|
||||||
|
|
||||||
|
function selectSkillTarget(targetCrypId) {
|
||||||
|
if (activeSkill) {
|
||||||
|
return ws.sendGameSkill(game.id, activeSkill.crypId, targetCrypId, activeSkill.skill);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// intercept self casting skills
|
||||||
|
if (activeSkill && activeSkill.skill.self_targeting) {
|
||||||
|
ws.sendGameSkill(game.id, activeSkill.crypId, null, activeSkill.skill.skill);
|
||||||
|
}
|
||||||
|
|
||||||
|
function selectIncomingTarget(crypId) {
|
||||||
|
if (activeIncoming) {
|
||||||
|
return ws.sendGameTarget(game.id, crypId, activeIncoming);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return { game, account, activeSkill, activeIncoming, selectSkillTarget, selectIncomingTarget };
|
||||||
|
},
|
||||||
|
|
||||||
|
function receiveDispatch(dispatch) {
|
||||||
|
function setActiveSkill(crypId, skill) {
|
||||||
|
dispatch(actions.setActiveSkill(crypId, skill));
|
||||||
|
}
|
||||||
|
|
||||||
|
function setActiveIncoming(skillId) {
|
||||||
|
dispatch(actions.setActiveIncoming(skillId));
|
||||||
|
}
|
||||||
|
|
||||||
|
function quit() {
|
||||||
|
dispatch(actions.setGame(null));
|
||||||
|
}
|
||||||
|
|
||||||
|
return { setActiveSkill, setActiveIncoming, quit };
|
||||||
|
}
|
||||||
|
|
||||||
|
);
|
||||||
|
|
||||||
|
module.exports = addState(Game);
|
||||||
@ -13,7 +13,7 @@ function Cryp(cryp, sendVboxApply, setInfo) {
|
|||||||
? cryp.skills[i].skill
|
? cryp.skills[i].skill
|
||||||
: (<span> </span>);
|
: (<span> </span>);
|
||||||
|
|
||||||
return <button key={i} className="cryp-skill-btn" onClick={() => setInfo('item', s)}>{s}</button>;
|
return <button key={i} className="cryp-skill-btn right" onClick={() => setInfo('item', s)}>{s}</button>;
|
||||||
});
|
});
|
||||||
|
|
||||||
// needed for ondrop to fire
|
// needed for ondrop to fire
|
||||||
|
|||||||
@ -151,7 +151,7 @@ function Vbox(args) {
|
|||||||
<button
|
<button
|
||||||
className="instance-btn instance-ui-btn vbox-btn"
|
className="instance-btn instance-ui-btn vbox-btn"
|
||||||
onClick={() => sendVboxCombine()}>
|
onClick={() => sendVboxCombine()}>
|
||||||
repurpose
|
refine
|
||||||
</button>
|
</button>
|
||||||
{combinerElement}
|
{combinerElement}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -118,7 +118,10 @@ pub fn player_create(tx: &mut Transaction, player: Player, account: &Account) ->
|
|||||||
return Ok(player);
|
return Ok(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn player_update(tx: &mut Transaction, player: Player, ignore_phase: bool) -> Result<Player, Error> {
|
pub fn player_update(tx: &mut Transaction, mut player: Player, ignore_phase: bool) -> Result<Player, Error> {
|
||||||
|
// sort vbox for niceness
|
||||||
|
player.vbox.bound.sort_unstable();
|
||||||
|
|
||||||
// update the instance this player is associated with
|
// update the instance this player is associated with
|
||||||
// if not a global player
|
// if not a global player
|
||||||
if player.instance != Uuid::nil() {
|
if player.instance != Uuid::nil() {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user