diff --git a/client/assets/styles/styles.less b/client/assets/styles/styles.less index b22ee13d..5e6c3982 100644 --- a/client/assets/styles/styles.less +++ b/client/assets/styles/styles.less @@ -283,6 +283,7 @@ header { } border: none; + border-radius: 0; } } diff --git a/client/src/actions.jsx b/client/src/actions.jsx index 311d444b..a49d8278 100644 --- a/client/src/actions.jsx +++ b/client/src/actions.jsx @@ -1,4 +1,5 @@ export const setAccount = value => ({ type: 'SET_ACCOUNT', value }); +export const setAuthenticated = value => ({ type: 'SET_AUTHENTICATED', value }); export const setAnimating = value => ({ type: 'SET_ANIMATING', value }); export const setAnimFocus = value => ({ type: 'SET_ANIM_FOCUS', value }); diff --git a/client/src/components/guest.top.jsx b/client/src/components/guest.top.jsx new file mode 100644 index 00000000..f356356c --- /dev/null +++ b/client/src/components/guest.top.jsx @@ -0,0 +1,138 @@ +// const { connect } = require('preact-redux'); +const preact = require('preact'); +const { connect } = require('preact-redux'); + +const { errorToast, infoToast } = require('../utils'); +const actions = require('./../actions'); + +const VERSION = process.env.npm_package_version; + +const Welcome = require('./welcome'); + +const addState = connect( + function receiveState(state) { + const { + ws, + account, + instances, + invite, + pvp, + } = state; + + function sendInstanceState(id) { + ws.sendInstanceState(id); + } + + function sendInstancePractice() { + ws.sendInstancePractice(); + } + + function sendInstanceQueue() { + ws.sendInstanceQueue(); + } + + function sendInstanceInvite() { + ws.sendInstanceInvite(); + } + + function sendInstanceLeave() { + ws.sendInstanceLeave(); + } + + return { + account, + instances, + invite, + pvp, + + sendInstanceState, + sendInstanceQueue, + sendInstancePractice, + sendInstanceInvite, + sendInstanceLeave, + }; + }, + + function receiveDispatch(dispatch) { + function setMtxActive(mtx) { + dispatch(actions.setConstructRename(null)); + dispatch(actions.setMtxActive(mtx)); + return true; + } + + function setNav(place) { + return dispatch(actions.setNav(place)); + } + + return { + setMtxActive, + setNav, + }; + } +); + +function Play(args) { + const { + account, + instances, + invite, + pvp, + + sendInstanceState, + sendInstanceQueue, + sendInstancePractice, + sendInstanceInvite, + sendInstanceLeave, + + setNav, + } = args; + + const news = ( +
MNML is a turn-based 1v1 strategy game in an abstract setting.
+
+ Build a unique team of 3 constructs from a range of skills and specialisations.
+ Outplay your opponent in multiple rounds by adapting to an always shifting meta.
+ Simple rules, complex interactions and unique mechanics.
+
Welcome to mnml.
- -MNML is a turn-based 1v1 strategy game in an abstract setting.
-
- Build a unique team of 3 constructs from a range of skills and specialisations.
- Outplay your opponent in multiple rounds by adapting to an always shifting meta.
- Simple rules, complex interactions and unique mechanics.
-
Free to play, no pay to win. Register to start playing.