2017-08-01 18:52:49 +00:00
|
|
|
|
<template lang="pug">
|
2017-07-25 14:24:40 +00:00
|
|
|
|
.row
|
2017-07-31 19:54:52 +00:00
|
|
|
|
modify-inventory
|
2017-07-25 14:24:40 +00:00
|
|
|
|
footer.container-fluid
|
|
|
|
|
|
.row
|
|
|
|
|
|
.col-2
|
2017-07-31 19:54:52 +00:00
|
|
|
|
h3
|
|
|
|
|
|
a(href='https://itunes.apple.com/us/app/habitica/id994882113?ls=1&mt=8', target='_blank') iOS App
|
|
|
|
|
|
h3
|
|
|
|
|
|
a(href='https://play.google.com/store/apps/details?id=com.habitrpg.android.habitica', target='_blank') Android App
|
2017-07-25 14:24:40 +00:00
|
|
|
|
.col-2
|
|
|
|
|
|
h3 Company
|
|
|
|
|
|
ul
|
2017-07-31 19:54:52 +00:00
|
|
|
|
li
|
|
|
|
|
|
a(href='/static/features') How it Works
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='https://habitica.wordpress.com/') Blog
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='http://blog.habitrpg.com/') Tumblr
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='/static/faq') FAQ
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='/static/old-news') News
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='/static/merch') Merchandise
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='/static/press-kit') Press Kit
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='/static/contact') Contact Us
|
2017-07-25 14:24:40 +00:00
|
|
|
|
.col-2
|
|
|
|
|
|
h3 Community
|
|
|
|
|
|
ul
|
2017-07-31 19:54:52 +00:00
|
|
|
|
li
|
|
|
|
|
|
a(href='/static/community-guidelines') Community Guidelines
|
|
|
|
|
|
li
|
|
|
|
|
|
router-link(to='/groups/a29da26b-37de-4a71-b0c6-48e72a900dac') Submit a Bug
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='https://trello.com/c/odmhIqyW/440-read-first-table-of-contents', target='_blank') Request a Feature
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='http://habitica.wikia.com/wiki/Extensions,_Add-Ons,_and_Customizations', target='_blank') Add-Ons & Extensions
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='http://habitica.wikia.com/wiki/Special:Forum', target='_blank') Forum
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='https://www.kickstarter.com/projects/lefnire/habitrpg-mobile', target='_blank') Kickstarter
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='https://www.facebook.com/Habitica', target='_blank') Facebook
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='https://www.reddit.com/r/habitrpg/', target='_blank') Reddit
|
2017-07-25 14:24:40 +00:00
|
|
|
|
.col-6
|
|
|
|
|
|
.row
|
|
|
|
|
|
.col-6
|
|
|
|
|
|
h3 Developers
|
|
|
|
|
|
ul
|
2017-07-31 19:54:52 +00:00
|
|
|
|
li
|
|
|
|
|
|
a(href='/apidoc', target='_blank') APIv3
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='http://data.habitrpg.com/?uuid=', target='_blank') Data Display Tool
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='http://habitica.wikia.com/wiki/Guidance_for_Blacksmiths', target='_blank') Guidance for Blacksmiths
|
|
|
|
|
|
li
|
|
|
|
|
|
a(href='http://devs.habitica.com/', target='_blank') The Forge - Developer Blog
|
2017-07-25 14:24:40 +00:00
|
|
|
|
.col-6
|
|
|
|
|
|
h3 Social
|
2017-07-31 19:54:52 +00:00
|
|
|
|
.social-circle
|
2017-08-07 20:26:17 +00:00
|
|
|
|
a(href='https://twitter.com/habitica', target='_blank')
|
|
|
|
|
|
.social-icon.svg-icon(v-html='icons.twitter')
|
2017-07-31 19:54:52 +00:00
|
|
|
|
.social-circle
|
2017-08-07 20:26:17 +00:00
|
|
|
|
a(href='https://www.instagram.com/habitica/', target='_blank')
|
|
|
|
|
|
.social-icon.svg-icon(v-html='icons.instagram')
|
2017-07-31 19:54:52 +00:00
|
|
|
|
.social-circle
|
2017-08-07 20:26:17 +00:00
|
|
|
|
a(href='https://www.facebook.com/Habitica', target='_blank')
|
|
|
|
|
|
.social-icon.facebook.svg-icon(v-html='icons.facebook')
|
2017-07-25 14:24:40 +00:00
|
|
|
|
.row
|
|
|
|
|
|
.col-10
|
|
|
|
|
|
| We’re an open source project that depends on our users for support. The money you donate helps us keep the servers running, maintain a small staff, develop new features, and provide incentives for our volunteers.
|
|
|
|
|
|
.col-2
|
|
|
|
|
|
button.btn.btn-primary Donate
|
|
|
|
|
|
.row
|
|
|
|
|
|
hr.col-12
|
|
|
|
|
|
.row
|
|
|
|
|
|
.col-4
|
|
|
|
|
|
| © 2017 Habitica. All rights reserved.
|
2017-08-07 20:26:17 +00:00
|
|
|
|
.debug.float-left(v-if='!IS_PRODUCTION')
|
|
|
|
|
|
button.btn.btn-primary(@click='debugMenuShown = !debugMenuShown') Toggle Debug Menu
|
|
|
|
|
|
.debug-group(v-if='debugMenuShown')
|
|
|
|
|
|
a.btn.btn-default(@click='setHealthLow()') Health = 1
|
|
|
|
|
|
a.btn.btn-default(@click='addMissedDay(1)') +1 Missed Day
|
|
|
|
|
|
a.btn.btn-default(@click='addMissedDay(2)') +2 Missed Days
|
|
|
|
|
|
a.btn.btn-default(@click='addMissedDay(8)') +8 Missed Days
|
|
|
|
|
|
a.btn.btn-default(@click='addMissedDay(32)') +32 Missed Days
|
|
|
|
|
|
a.btn.btn-default(@click='addTenGems()') +10 Gems
|
|
|
|
|
|
a.btn.btn-default(@click='addHourglass()') +1 Mystic Hourglass
|
|
|
|
|
|
a.btn.btn-default(@click='addGold()') +500GP
|
|
|
|
|
|
a.btn.btn-default(@click='plusTenHealth()') + 10HP
|
|
|
|
|
|
a.btn.btn-default(@click='addMana()') +MP
|
|
|
|
|
|
a.btn.btn-default(@click='addLevelsAndGold()') +Exp +GP +MP
|
|
|
|
|
|
a.btn.btn-default(@click='addOneLevel()') +1 Level
|
|
|
|
|
|
a.btn.btn-default(@click='addQuestProgress()' tooltip="+1000 to boss quests. 300 items to collection quests") Quest Progress Up
|
|
|
|
|
|
a.btn.btn-default(@click='makeAdmin()') Make Admin
|
|
|
|
|
|
a.btn.btn-default(@click='openModifyInventoryModal()') Modify Inventory
|
2017-07-25 14:24:40 +00:00
|
|
|
|
.col-4.text-center
|
|
|
|
|
|
.logo.svg-icon(v-html='icons.gryphon')
|
|
|
|
|
|
.col-4.text-right
|
|
|
|
|
|
span Privacy Policy
|
|
|
|
|
|
span Terms of Use
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
2017-08-07 20:26:17 +00:00
|
|
|
|
<style lang="scss" scoped>
|
2017-07-25 14:24:40 +00:00
|
|
|
|
footer {
|
|
|
|
|
|
background-color: #e1e0e3;
|
|
|
|
|
|
height: 376px;
|
|
|
|
|
|
padding-left: 6em;
|
|
|
|
|
|
padding-right: 6em;
|
|
|
|
|
|
padding-top: 3em;
|
|
|
|
|
|
margin: 0;
|
|
|
|
|
|
color: #878190;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
h3 {
|
|
|
|
|
|
color: #878190;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
ul {
|
|
|
|
|
|
padding-left: 0;
|
|
|
|
|
|
list-style-type: none;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
li {
|
|
|
|
|
|
margin-bottom: .5em;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.social-circle {
|
|
|
|
|
|
width: 40px;
|
|
|
|
|
|
height: 40px;
|
|
|
|
|
|
border-radius: 50%;
|
|
|
|
|
|
background-color: #c3c0c7;
|
|
|
|
|
|
display: inline-block;
|
|
|
|
|
|
margin-right: 1em;
|
2017-08-07 20:26:17 +00:00
|
|
|
|
|
|
|
|
|
|
.social-icon {
|
|
|
|
|
|
color: #e1e0e3;
|
|
|
|
|
|
width: 16px;
|
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
|
margin-top: 1em;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.svg-icon.facebook svg {
|
|
|
|
|
|
height: 20px;
|
|
|
|
|
|
}
|
2017-07-25 14:24:40 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.logo.svg-icon {
|
|
|
|
|
|
width: 24px;
|
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
|
color: #c3c0c7;
|
|
|
|
|
|
}
|
2017-08-07 20:26:17 +00:00
|
|
|
|
|
|
|
|
|
|
.debug-group {
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
background: #fff;
|
|
|
|
|
|
top: -300px;
|
|
|
|
|
|
border-radius: 2px;
|
|
|
|
|
|
padding: 2em;
|
|
|
|
|
|
}
|
2017-07-25 14:24:40 +00:00
|
|
|
|
</style>
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
2017-07-31 19:54:52 +00:00
|
|
|
|
import axios from 'axios';
|
|
|
|
|
|
import moment from 'moment';
|
|
|
|
|
|
import { mapState } from 'client/libs/store';
|
2017-08-07 20:26:17 +00:00
|
|
|
|
|
2017-07-25 14:24:40 +00:00
|
|
|
|
import gryphon from 'assets/svg/gryphon.svg';
|
2017-08-07 20:26:17 +00:00
|
|
|
|
import twitter from 'assets/svg/twitter.svg';
|
|
|
|
|
|
import facebook from 'assets/svg/facebook.svg';
|
|
|
|
|
|
import instagram from 'assets/svg/instagram.svg';
|
2017-07-25 14:24:40 +00:00
|
|
|
|
|
2017-07-31 19:54:52 +00:00
|
|
|
|
import modifyInventory from './modifyInventory';
|
|
|
|
|
|
|
2017-08-07 20:26:17 +00:00
|
|
|
|
const IS_PRODUCTION = process.env.NODE_ENV === 'production'; // eslint-disable-line no-process-env
|
2017-07-25 14:24:40 +00:00
|
|
|
|
|
|
|
|
|
|
export default {
|
2017-07-31 19:54:52 +00:00
|
|
|
|
components: {
|
|
|
|
|
|
modifyInventory,
|
|
|
|
|
|
},
|
2017-07-25 14:24:40 +00:00
|
|
|
|
data () {
|
|
|
|
|
|
return {
|
|
|
|
|
|
icons: Object.freeze({
|
|
|
|
|
|
gryphon,
|
2017-08-07 20:26:17 +00:00
|
|
|
|
twitter,
|
|
|
|
|
|
facebook,
|
|
|
|
|
|
instagram,
|
2017-07-25 14:24:40 +00:00
|
|
|
|
}),
|
2017-08-07 20:26:17 +00:00
|
|
|
|
debugMenuShown: false,
|
|
|
|
|
|
IS_PRODUCTION,
|
2017-07-25 14:24:40 +00:00
|
|
|
|
};
|
|
|
|
|
|
},
|
2017-07-31 19:54:52 +00:00
|
|
|
|
computed: {
|
|
|
|
|
|
...mapState({user: 'user.data'}),
|
|
|
|
|
|
},
|
2017-07-25 14:24:40 +00:00
|
|
|
|
methods: {
|
2017-08-01 18:52:49 +00:00
|
|
|
|
plusTenHealth () {
|
|
|
|
|
|
this.$store.dispatch('user:set', {
|
|
|
|
|
|
'stats.hp': this.user.stats.hp += 10,
|
|
|
|
|
|
});
|
|
|
|
|
|
},
|
2017-07-31 19:54:52 +00:00
|
|
|
|
setHealthLow () {
|
|
|
|
|
|
this.$store.dispatch('user:set', {
|
|
|
|
|
|
'stats.hp': 1,
|
|
|
|
|
|
});
|
|
|
|
|
|
},
|
|
|
|
|
|
async addMissedDay (numberOfDays) {
|
|
|
|
|
|
if (!confirm(`Are you sure you want to reset the day by ${numberOfDays} day(s)?`)) return;
|
|
|
|
|
|
|
|
|
|
|
|
let date = moment(this.user.lastCron).subtract(numberOfDays, 'days').toDate();
|
|
|
|
|
|
|
|
|
|
|
|
await axios.post('/api/v3/debug/set-cron', {
|
|
|
|
|
|
lastCron: date,
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
// @TODO: Notification.text('-' + numberOfDays + ' day(s), remember to refresh');
|
|
|
|
|
|
// @TODO: Sync user?
|
|
|
|
|
|
},
|
|
|
|
|
|
async addTenGems () {
|
|
|
|
|
|
await axios.post('/api/v3/debug/add-ten-gems');
|
|
|
|
|
|
// @TODO: Notification.text('+10 Gems!');
|
|
|
|
|
|
this.user.balance += 2.5;
|
|
|
|
|
|
},
|
|
|
|
|
|
async addHourglass () {
|
|
|
|
|
|
await axios.post('/api/v3/debug/add-hourglass');
|
|
|
|
|
|
// @TODO: Sync?
|
|
|
|
|
|
},
|
|
|
|
|
|
addGold () {
|
|
|
|
|
|
this.$store.dispatch('user:set', {
|
|
|
|
|
|
'stats.gp': this.user.stats.gp + 500,
|
|
|
|
|
|
});
|
|
|
|
|
|
},
|
|
|
|
|
|
addMana () {
|
|
|
|
|
|
this.$store.dispatch('user:set', {
|
|
|
|
|
|
'stats.mp': this.user.stats.mp + 500,
|
|
|
|
|
|
});
|
|
|
|
|
|
},
|
|
|
|
|
|
addLevelsAndGold () {
|
|
|
|
|
|
this.$store.dispatch('user:set', {
|
|
|
|
|
|
'stats.exp': this.user.stats.exp + 10000,
|
|
|
|
|
|
'stats.gp': this.user.stats.gp + 10000,
|
|
|
|
|
|
'stats.mp': this.user.stats.mp + 10000,
|
|
|
|
|
|
});
|
|
|
|
|
|
},
|
|
|
|
|
|
addOneLevel () {
|
|
|
|
|
|
// @TODO: Name these variables better
|
|
|
|
|
|
let exp = 0;
|
|
|
|
|
|
let five = 10 * this.user.stats.lvl;
|
|
|
|
|
|
let four = Math.pow(this.user.stats.lvl, 2) * 0.25;
|
|
|
|
|
|
let three = four + five + 139.75;
|
|
|
|
|
|
let two = three / 10;
|
|
|
|
|
|
let one = Math.round(two) * 10;
|
|
|
|
|
|
exp = this.user.stats.exp + one;
|
|
|
|
|
|
|
|
|
|
|
|
this.$store.dispatch('user:set', {
|
|
|
|
|
|
'stats.exp': exp,
|
|
|
|
|
|
});
|
|
|
|
|
|
},
|
|
|
|
|
|
async addQuestProgress () {
|
|
|
|
|
|
await axios.post('/api/v3/debug/quest-progress');
|
|
|
|
|
|
|
|
|
|
|
|
// @TODO: Notification.text('Quest progress increased');
|
|
|
|
|
|
// @TODO: User.sync();
|
|
|
|
|
|
},
|
|
|
|
|
|
async makeAdmin () {
|
|
|
|
|
|
await axios.post('/api/v3/debug/make-admin');
|
|
|
|
|
|
|
|
|
|
|
|
// @TODO: Notification.text('You are now an admin! Go to the Hall of Heroes to change your contributor level.');
|
|
|
|
|
|
// @TODO: sync()
|
|
|
|
|
|
},
|
|
|
|
|
|
openModifyInventoryModal () {
|
|
|
|
|
|
this.$root.$emit('show::modal', 'modify-inventory');
|
|
|
|
|
|
},
|
2017-07-25 14:24:40 +00:00
|
|
|
|
},
|
|
|
|
|
|
};
|
|
|
|
|
|
</script>
|