diff --git a/src/App.js b/src/App.js index 1f85f9e..def7de2 100644 --- a/src/App.js +++ b/src/App.js @@ -131,7 +131,7 @@ export default class App extends Component { localStorage.removeItem('darkMode'); } - initGame(seed, language, customwords) { + initGame(seed, language, customWords) { let colors = [ 'red', 'red', @@ -164,7 +164,14 @@ export default class App extends Component { ]; colors = shuffleSeed.shuffle(colors, seed); - const words = customwords != null ? customwords : language === 'eng' ? wordList.english : wordList.dutch; + insertParam("seed", seed); + if (customWords != null) { + insertParam("words", customWords); + } + if (window.location.href.includes("&words=")) { + customWords = window.location.href.split("&words=")[1].split(','); + } + const words = customWords != null ? customWords : language === 'eng' ? wordList.english : wordList.dutch; const cards = shuffleSeed .shuffle(words, seed) .slice(0, 25) @@ -172,6 +179,7 @@ export default class App extends Component { const state = { seed, cards, spymaster: false, inverted: false, redScore: 0, blueScore: 0, words: words}; const score = this.calculateScore(state); state.redScore = score.redScore; + state.url = window.location.href; state.blueScore = score.blueScore; state.language = language; return state; @@ -277,6 +285,7 @@ export default class App extends Component { spymaster, language, darkMode, + url, } = this.state; const cardComponents = cards.map((card, i) => ( + language={language} + url = {url}/> +
+ {i18n[this.props.language].game_url_click}: +
); diff --git a/src/i18n.js b/src/i18n.js index 2c9492c..78cf2b1 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -16,8 +16,10 @@ export default { official_rules: 'Official rules', instructions_link: 'https://czechgames.com/files/rules/codenames-rules-en.pdf', - use_custom_words: 'use custom words (at least 25!)', - custom_words_placeholder: 'paste here your own words, seperated by a comma: tree, couch, clock, ...' + use_custom_words: 'Use custom words (at least 25!)', + custom_words_placeholder: 'Paste here your own words, seperated by a comma: tree, couch, clock, ...', + game_url_click: 'Click the button to share the game with other players', + copy_clipboard: 'Copy link' } , @@ -38,7 +40,9 @@ export default { official_rules: 'Officiƫle regels', instructions_link: 'https://czechgames.com/files/rules/codenames-rules-nl.pdf', - use_custom_words: 'kies zelf je woorden (minstens 25!)', - custom_words_placeholder: 'plak hier je zelfgekozen woorden, gescheiden door een komma: boom, zetel, klok, ...' + use_custom_words: 'Kies zelf je woorden (minstens 25!)', + custom_words_placeholder: 'Plak hier je zelfgekozen woorden, gescheiden door een komma: boom, zetel, klok, ...', + game_url_click: 'Klik op de knop het spel te delen met andere spelers', + copy_clipboard: 'Link kopiƫren' }, };