Merge tag '1.8.1' into develop

1.8.1
This commit is contained in:
Mashy 2019-11-09 13:53:40 +10:00
commit dffb4e7221
21 changed files with 61 additions and 71 deletions

View File

@ -1 +1 @@
1.8.0
1.8.1

View File

@ -1,6 +1,6 @@
{
"name": "mnml-client",
"version": "1.8.0",
"version": "1.8.1",
"description": "",
"main": "index.js",
"scripts": {

View File

@ -1,14 +1,3 @@
require('./assets/styles/styles.less');
require('./assets/styles/menu.less');
require('./assets/styles/nav.less');
require('./assets/styles/footer.less');
require('./assets/styles/account.less');
require('./assets/styles/controls.less');
require('./assets/styles/instance.less');
require('./assets/styles/vbox.less');
require('./assets/styles/game.less');
require('./assets/styles/player.less');
require('./assets/styles/styles.mobile.less');
require('./assets/styles/instance.mobile.less');
require('./src/animations.test.jsx');

View File

@ -1,5 +1,3 @@
@import 'colours.less';
.account {
grid-template-columns: 1fr 1fr 1fr 1fr;

View File

@ -140,7 +140,7 @@ svg {
}
}
button {
button, button:hover, button:active {
&.blue {
border-color: @blue;
}
@ -150,6 +150,16 @@ button {
&.green {
border-color: @green;
}
&.red-border {
border-color: @red;
}
&.blue-border {
border-color: @blue;
}
&.green-border {
border-color: @green;
}
}
@keyframes rgb {
@ -184,9 +194,9 @@ button {
@keyframes target-ko {
0% {
opacity: 100%;
opacity: 1;
}
100% {
opacity: 20%;
opacity: 0.2;
}
}
}

View File

@ -1,5 +1,3 @@
@import 'colours.less';
aside {
grid-area: ctrl;
display: grid;

View File

@ -1,6 +1,3 @@
@import 'colours.less';
/* GAME */
.game {
overflow: hidden;
// display: grid;

View File

@ -1,5 +1,3 @@
@import 'colours.less';
.instance {
overflow: hidden;
display: grid;

View File

@ -1,5 +1,3 @@
@import 'colours.less';
// tablet / ipad
@media (max-width: 1100px) {
.instance {

View File

@ -1,5 +1,3 @@
@import 'colours.less';
.menu {
height: 100%;
display: grid;

View File

@ -1,5 +1,3 @@
@import 'colours.less';
.player-box {
display: grid;
overflow: hidden;

View File

@ -1,4 +1,15 @@
@import 'colours.less';
@import 'account.less';
@import 'menu.less';
@import 'nav.less';
@import 'footer.less';
@import 'controls.less';
@import 'instance.less';
@import 'vbox.less';
@import 'game.less';
@import 'player.less';
@import 'styles.mobile.less';
@import 'instance.mobile.less';
html body {
margin: 0;

View File

@ -1,5 +1,3 @@
@import 'colours.less';
.vbox {
margin-bottom: 2em;

View File

@ -1,15 +1,4 @@
require('./assets/styles/styles.less');
require('./assets/styles/account.less');
require('./assets/styles/menu.less');
require('./assets/styles/nav.less');
require('./assets/styles/footer.less');
require('./assets/styles/controls.less');
require('./assets/styles/instance.less');
require('./assets/styles/vbox.less');
require('./assets/styles/game.less');
require('./assets/styles/player.less');
require('./assets/styles/styles.mobile.less');
require('./assets/styles/instance.mobile.less');
// kick it off
require('./src/app');

View File

@ -1,6 +1,6 @@
{
"name": "mnml-client",
"version": "1.8.0",
"version": "1.8.1",
"description": "",
"main": "index.js",
"scripts": {

View File

@ -30,46 +30,54 @@ function createSocket(store) {
if (animating) return false;
store.dispatch(actions.setAnimating(true));
// stop fetching the game state til animations are done
return eachSeries(newRes, (r, cb) => {
if (['Disable', 'TargetKo'].includes(r.event[0])) return cb();
// convert server enum into anims keywords
// todo make serersideonly
const sequence = animations.getSequence(r);
const timeout = animations.getTime(sequence);
const anims = animations.getObjects(r, sequence, game, account);
const text = animations.getText(r, sequence);
if (!r.event) return cb();
const timeout = animations.getTime(r.stages);
const anims = animations.getObjects(r, game, account);
const text = animations.getText(r);
store.dispatch(actions.setAnimFocus(animations.getFocusTargets(r, game)));
if (anims.animSkill) store.dispatch(actions.setAnimSkill(anims.animSkill));
if (sequence.includes('START_SKILL') && anims.animSource) store.dispatch(actions.setAnimSource(anims.animSource));
if (sequence.includes('END_SKILL') && anims.animTarget) {
if (r.stages.includes('START_SKILL') && anims.animSource) {
store.dispatch(actions.setAnimSource(anims.animSource));
}
if (r.stages.includes('END_SKILL') && anims.animTarget) {
store.dispatch(actions.setAnimTarget(anims.animTarget));
if (!['Banish', 'Invert'].includes(removeTier(anims.animTarget.skill))) store.dispatch(actions.setAnimCb(cb));
if (animations.isCbAnim(anims.animSkill)) store.dispatch(actions.setAnimCb(cb));
}
if (sequence.includes('POST_SKILL' && text)) {
if (r.stages.includes('POST_SKILL') && text) {
// timeout to prevent text classes from being added too soon
setTimeout(
() => store.dispatch(actions.setAnimText(text)),
timeout - TIMES.POST_SKILL_DURATION_MS
);
if (timeout === TIMES.POST_SKILL_DURATION_MS) {
store.dispatch(actions.setAnimText(text));
} else {
setTimeout(
() => store.dispatch(actions.setAnimText(text)),
timeout - TIMES.POST_SKILL_DURATION_MS
);
}
}
return setTimeout(() => {
store.dispatch(actions.setAnimSkill(null));
store.dispatch(actions.setAnimSource(null));
store.dispatch(actions.setAnimTarget(null));
store.dispatch(actions.setAnimText(null));
store.dispatch(actions.setAnimFocus([]));
if (!sequence.includes('END_SKILL')
|| ['Banish', 'Invert'].includes(removeTier(anims.animTarget.skill))) return cb();
return true;
if (r.stages.includes('END_SKILL') && animations.isCbAnim(anims.animSkill)) return true;
return cb();
}, timeout);
}, err => {
if (err) return console.error(err);
// clear animation state
store.dispatch(actions.setAnimSkill(null));
store.dispatch(actions.setAnimSource(null));
store.dispatch(actions.setAnimTarget(null));
store.dispatch(actions.setAnimText(null));
store.dispatch(actions.setAnimating(false));
store.dispatch(actions.setGameEffectInfo(null));
store.dispatch(actions.setSkip(false));
// set the game state so resolutions don't fire twice

View File

@ -20,6 +20,7 @@ function projectile(x, y, radius, colour) {
cy={y}
r={radius}
fill={colour}
stroke="none"
filter={colour === '#a52a2a' ? 'url(#chaosRedFilter)' : 'url(#chaosBlueFilter)'}
/>
);

View File

@ -20,6 +20,7 @@ function projectile(x, y, radius, colour) {
<circle
cx={x}
cy={y}
stroke="none"
r={radius}
fill={colour}
/>
@ -28,7 +29,7 @@ function projectile(x, y, radius, colour) {
function sword(colour) {
return (
<polygon points='150,150 100,75, 150,300, 200,75' fill={colour} id="sword" filter="url(#slayFilter)"></polygon>
<polygon points='150,150 100,75, 150,300, 200,75' stroke="none" fill={colour} id="sword" filter="url(#slayFilter)"></polygon>
);
}

View File

@ -4,7 +4,6 @@ const { connect } = require('preact-redux');
const Main = require('./main');
// const Nav = require('./nav');
const Controls = require('./controls');
const Footer = require('./footer');
const addState = connect(
({ game, instance }) => ({ game, instance })
@ -24,7 +23,6 @@ function Mnml(args) {
<div id="mnml">
<Main />
<Controls />
<Footer />
<div id="rotate" class={rotateClass} >
</div>
</div>

2
ops/package.json Executable file → Normal file
View File

@ -1,6 +1,6 @@
{
"name": "mnml-ops",
"version": "1.8.0",
"version": "1.8.1",
"description": "",
"main": "index.js",
"scripts": {

View File

@ -1,6 +1,6 @@
[package]
name = "mnml"
version = "1.8.0"
version = "1.8.1"
authors = ["ntr <ntr@smokestack.io>"]
[dependencies]