diff --git a/src/css/screenshots.scss b/src/css/screenshots.scss
index 55d580c..737b4e5 100644
--- a/src/css/screenshots.scss
+++ b/src/css/screenshots.scss
@@ -45,6 +45,11 @@
transform: scale(1.5) rotate(-1.4deg);
}
+ .salmon-run-gear .merchandise-box {
+ width: 300px;
+ transform: scale(1.4);
+ }
+
.new-weapon {
transform: scale(1.25);
}
diff --git a/src/js/components/screenshots/ScreenshotHelper.vue b/src/js/components/screenshots/ScreenshotHelper.vue
index 7fe0d16..659e781 100644
--- a/src/js/components/screenshots/ScreenshotHelper.vue
+++ b/src/js/components/screenshots/ScreenshotHelper.vue
@@ -26,6 +26,14 @@
+
+
+
+ Salmon Run Gear
+
+
+
+
@@ -82,6 +90,10 @@ export default {
if (this.coopSchedules)
return this.coopSchedules.details[0];
},
+ salmonRunGear() {
+ if (this.timeline)
+ return this.timeline.coop.reward_gear;
+ },
newWeaponAvailability() {
if (this.timeline && this.timeline.weapon_availability && this.timeline.weapon_availability.availabilities) {
return this.timeline.weapon_availability.availabilities[0];
diff --git a/src/js/components/screenshots/salmonrun/SalmonRunGear.vue b/src/js/components/screenshots/salmonrun/SalmonRunGear.vue
new file mode 100644
index 0000000..dfcede6
--- /dev/null
+++ b/src/js/components/screenshots/salmonrun/SalmonRunGear.vue
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/js/screenshots.js b/src/js/screenshots.js
index c0c0fc3..d614af0 100644
--- a/src/js/screenshots.js
+++ b/src/js/screenshots.js
@@ -14,6 +14,7 @@ import ScreenshotHelper from './components/screenshots/ScreenshotHelper.vue';
import Schedules from './components/screenshots/schedules/Schedules.vue';
import SplatNetGear from './components/screenshots/splatnetgear/SplatNetGear.vue';
import SalmonRun from './components/screenshots/salmonrun/SalmonRun.vue';
+import SalmonRunGear from './components/screenshots/salmonrun/SalmonRunGear.vue';
import NewWeapon from './components/screenshots/newweapon/NewWeapon.vue';
import Splatfest from './components/screenshots/splatfest/Splatfest.vue';
const routes = [
@@ -21,6 +22,7 @@ const routes = [
{ path: '/schedules/:startTime', component: Schedules, props: true },
{ path: '/splatNetGear/:startTime/:endTime', component: SplatNetGear, props: true },
{ path: '/salmonRun/:startTime', component: SalmonRun, props: true },
+ { path: '/salmonRunGear/:now', component: SalmonRunGear, props: true },
{ path: '/newWeapon/:releaseTime', component: NewWeapon, props: true },
{ path: '/splatfest/:region/:startTime', component: Splatfest, props: true },
];
diff --git a/src/updater/screenshots.js b/src/updater/screenshots.js
index 68c7b13..64625e1 100644
--- a/src/updater/screenshots.js
+++ b/src/updater/screenshots.js
@@ -60,6 +60,13 @@ function captureSalmonRunScreenshot(startTime) {
return captureScreenshot({ url });
}
+function captureSalmonRunGearScreenshot(startTime) {
+ let url = new URL(htmlUrl);
+ url.hash = `/salmonRunGear/${startTime}`;
+
+ return captureScreenshot({ url });
+}
+
function captureNewWeaponScreenshot(releaseTime) {
let url = new URL(htmlUrl);
url.hash = `/newWeapon/${releaseTime}`;
@@ -78,6 +85,7 @@ module.exports = {
captureScheduleScreenshot,
captureGearScreenshot,
captureSalmonRunScreenshot,
+ captureSalmonRunGearScreenshot,
captureNewWeaponScreenshot,
captureSplatfestScreenshot,
}
diff --git a/src/updater/twitter.js b/src/updater/twitter.js
index c75795c..a2c027b 100644
--- a/src/updater/twitter.js
+++ b/src/updater/twitter.js
@@ -3,6 +3,7 @@ const { canTweet } = require('./twitter/client');
const ScheduleTweet = require('./twitter/ScheduleTweet');
const GearTweet = require('./twitter/GearTweet');
const SalmonRunTweet = require('./twitter/SalmonRunTweet');
+const SalmonRunGearTweet = require('./twitter/SalmonRunGearTweet');
const NewWeaponTweet = require('./twitter/NewWeaponTweet');
const NewStageTweet = require('./twitter/NewStageTweet');
const SplatfestTweet = require('./twitter/SplatfestTweet');
@@ -11,6 +12,7 @@ let tweets = [
new ScheduleTweet,
new GearTweet,
new SalmonRunTweet,
+ new SalmonRunGearTweet,
new NewWeaponTweet,
new NewStageTweet,
new SplatfestTweet('na'),
diff --git a/src/updater/twitter/SalmonRunGearTweet.js b/src/updater/twitter/SalmonRunGearTweet.js
new file mode 100644
index 0000000..607b57b
--- /dev/null
+++ b/src/updater/twitter/SalmonRunGearTweet.js
@@ -0,0 +1,35 @@
+const TwitterPostBase = require('./TwitterPostBase');
+const { captureSalmonRunGearScreenshot } = require('../screenshots');
+const { readData } = require('../utilities');
+const moment = require('moment-timezone');
+
+class SalmonRunTweet extends TwitterPostBase {
+ getKey() { return 'salmonrungear'; }
+ getName() { return 'Salmon Run Gear'; }
+
+ getRewardGear() {
+ let timeline = readData('timeline.json');
+ return timeline.coop && timeline.coop.reward_gear;
+ }
+
+ getData() {
+ let rewardGear = this.getRewardGear();
+ if (rewardGear.available_time == this.getDataTime())
+ return rewardGear;
+ }
+
+ getTestData() {
+ return this.getRewardGear();
+ }
+
+ getImage(data) {
+ return captureSalmonRunGearScreenshot(data.available_time);
+ }
+
+ getText(data) {
+ let monthName = moment.unix(data.available_time).tz('UTC').format('MMMM');
+ return `Next month's Salmon Run reward gear has been posted! ${monthName}'s gear is the ${data.gear.name}. #salmonrun #splatoon2`;
+ }
+}
+
+module.exports = SalmonRunTweet;