remove auth from tutorial triggers, game.construct highlight based on time_control
This commit is contained in:
parent
f51c28a713
commit
ed5575eee8
@ -15,7 +15,7 @@ const addState = connect(
|
||||
ws,
|
||||
game,
|
||||
|
||||
authenticated,
|
||||
instance,
|
||||
activeSkill,
|
||||
animFocus,
|
||||
resolution,
|
||||
@ -30,7 +30,7 @@ const addState = connect(
|
||||
|
||||
return {
|
||||
game,
|
||||
authenticated,
|
||||
instance,
|
||||
activeSkill,
|
||||
animFocus,
|
||||
resolution,
|
||||
@ -54,7 +54,7 @@ class GameConstruct extends preact.Component {
|
||||
render() {
|
||||
const {
|
||||
// Changing state variables
|
||||
authenticated,
|
||||
instance,
|
||||
game,
|
||||
activeSkill,
|
||||
animFocus,
|
||||
@ -81,7 +81,9 @@ class GameConstruct extends preact.Component {
|
||||
const unfocus = animFocus && !animFocus.includes(construct.id) ? 'unfocus' : '';
|
||||
|
||||
const targeted = game.stack.find(c => c.target === construct.id);
|
||||
const highlight = !authenticated && !targeted && activeSkill ? 'highlight' : '';
|
||||
|
||||
const firstRoundTutorial = instance && instance.time_control === 'Practice' && !game.resolutions.length;
|
||||
const highlight = firstRoundTutorial && !targeted && activeSkill ? 'highlight' : '';
|
||||
|
||||
const crypSkills = player
|
||||
? <div class="skills"> {range(0, 3).map(j => <SkillBtn key={j} construct={construct} i={j} />)} </div>
|
||||
|
||||
@ -10,6 +10,7 @@ const addState = connect(
|
||||
game,
|
||||
account,
|
||||
authenticated,
|
||||
instance,
|
||||
chatShow,
|
||||
animating,
|
||||
} = state;
|
||||
@ -35,6 +36,7 @@ const addState = connect(
|
||||
game,
|
||||
account,
|
||||
authenticated,
|
||||
instance,
|
||||
chatShow,
|
||||
sendAbandon,
|
||||
sendGameSkillClear,
|
||||
@ -68,6 +70,7 @@ function GameCtrlBtns(args) {
|
||||
account,
|
||||
chatShow,
|
||||
authenticated,
|
||||
instance,
|
||||
|
||||
getInstanceState,
|
||||
sendGameSkillClear,
|
||||
@ -86,7 +89,8 @@ function GameCtrlBtns(args) {
|
||||
quit();
|
||||
}
|
||||
|
||||
const noTargets = !authenticated && game.stack.length === 0;
|
||||
const firstRoundTutorial = instance && instance.time_control === 'Practice' && !game.resolutions.length;
|
||||
const noTargets = firstRoundTutorial && game.stack.length === 0;
|
||||
|
||||
const readyBtn = <button disabled={animating || noTargets} class="ready" onClick={() => sendReady()}>Ready</button>;
|
||||
const quitBtn = <button disabled={animating} class="quit" onClick={quitClick}>Back</button>;
|
||||
|
||||
@ -50,7 +50,7 @@ function InstanceCtrlBtns(args) {
|
||||
} = args;
|
||||
|
||||
const finished = instance && instance.phase === 'Finished';
|
||||
const tutorialDisable = instance.time_control === 'Practice' && tutorial;
|
||||
const tutorialDisable = instance.time_control === 'Practice' && tutorial && tutorial < 8;
|
||||
return (
|
||||
<div class="instance-ctrl-btns">
|
||||
<button disabled={!account.subscribed} onClick={() => setChatShow(!chatShow)}>Chat</button>
|
||||
|
||||
@ -44,15 +44,14 @@ class TargetSvg extends Component {
|
||||
animating,
|
||||
game,
|
||||
gameEffectInfo,
|
||||
authenticated,
|
||||
} = props;
|
||||
const { width, height } = state;
|
||||
|
||||
if (!game) return false; // game will be null when battle ends
|
||||
if (game.phase === 'Finished') return false; // Clear everything if its over (in case of abandon)
|
||||
|
||||
// First time joining game phase
|
||||
if (!authenticated && game.stack.length === 0) {
|
||||
// First round of a game
|
||||
if (!game.resolutions.length && game.stack.length === 0) {
|
||||
return (
|
||||
<div class="resolving-skill">
|
||||
<h2><b>Select a skill</b> from each construct, <b>click a target</b> for that skill and then click <b>READY</b>.</h2>
|
||||
|
||||
@ -14,7 +14,7 @@ const addState = connect(
|
||||
} = state;
|
||||
|
||||
return {
|
||||
promptRegister: tutorial === 99, // see events
|
||||
promptRegister: !tutorial,
|
||||
};
|
||||
},
|
||||
);
|
||||
|
||||
@ -180,7 +180,8 @@ function registerEvents(store) {
|
||||
setPvp(false);
|
||||
const player = v.players.find(p => p.id === account.id);
|
||||
store.dispatch(actions.setPlayer(player));
|
||||
if (tutorial && v.time_control === 'Practice') tutorialVbox(player, store, tutorial);
|
||||
|
||||
if (tutorial && v.rounds.length === 1 && v.time_control === 'Practice') tutorialVbox(player, store, tutorial);
|
||||
|
||||
if (v.phase === 'Finished') {
|
||||
ws.sendAccountInstances();
|
||||
@ -211,7 +212,7 @@ function registerEvents(store) {
|
||||
}
|
||||
|
||||
function promptRegister() {
|
||||
store.dispatch(actions.setTutorial(99));
|
||||
store.dispatch(actions.setTutorial(null));
|
||||
store.dispatch(actions.setInstance(null));
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user