mirror of
https://github.com/kihashi/stardew_community_checklist.git
synced 2025-10-19 08:03:17 +00:00
Updated the user_data array to store the position from item.bundles.
All of the associated check, get, and set methods have been updated. I have no idea if these are as performant or not.
This commit is contained in:
parent
5f1bf11187
commit
0fcaa42214
24
index.html
24
index.html
@ -163,11 +163,11 @@
|
|||||||
<div class="content">
|
<div class="content">
|
||||||
<p class="control">
|
<p class="control">
|
||||||
<a class="button is-fullwidth" v-for="bundle_id in item.bundles"
|
<a class="button is-fullwidth" v-for="bundle_id in item.bundles"
|
||||||
v-on:click="toggleItemInBundle(bundle_id, item.id)"
|
v-on:click="toggleItemInBundle(bundle_id, item.id, $index)"
|
||||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'is-success' : 'is-danger']">
|
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'is-success' : 'is-danger']">
|
||||||
<span class="icon">
|
<span class="icon">
|
||||||
<i class="fa"
|
<i class="fa"
|
||||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||||
</span>
|
</span>
|
||||||
<span>{{ static.bundles[bundle_id].name }}</span>
|
<span>{{ static.bundles[bundle_id].name }}</span>
|
||||||
</a>
|
</a>
|
||||||
@ -237,11 +237,11 @@
|
|||||||
<div class="content">
|
<div class="content">
|
||||||
<p class="control">
|
<p class="control">
|
||||||
<a class="button is-danger is-fullwidth" v-for="bundle_id in item.bundles"
|
<a class="button is-danger is-fullwidth" v-for="bundle_id in item.bundles"
|
||||||
v-on:click="toggleItemInBundle(bundle_id, item.id)"
|
v-on:click="toggleItemInBundle(bundle_id, item.id, $index)"
|
||||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'is-success' : 'is-danger']">
|
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'is-success' : 'is-danger']">
|
||||||
<span class="icon">
|
<span class="icon">
|
||||||
<i class="fa"
|
<i class="fa"
|
||||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||||
</span>
|
</span>
|
||||||
<span>{{ static.bundles[bundle_id].name }}</span>
|
<span>{{ static.bundles[bundle_id].name }}</span>
|
||||||
</a>
|
</a>
|
||||||
@ -312,11 +312,11 @@
|
|||||||
<div class="content">
|
<div class="content">
|
||||||
<p class="control">
|
<p class="control">
|
||||||
<a class="button is-danger is-fullwidth" v-for="bundle_id in item.bundles"
|
<a class="button is-danger is-fullwidth" v-for="bundle_id in item.bundles"
|
||||||
v-on:click="toggleItemInBundle(bundle_id, item.id)"
|
v-on:click="toggleItemInBundle(bundle_id, item.id, $index)"
|
||||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'is-success' : 'is-danger']">
|
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'is-success' : 'is-danger']">
|
||||||
<span class="icon">
|
<span class="icon">
|
||||||
<i class="fa"
|
<i class="fa"
|
||||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||||
</span>
|
</span>
|
||||||
<span>{{ static.bundles[bundle_id].name }}</span>
|
<span>{{ static.bundles[bundle_id].name }}</span>
|
||||||
</a>
|
</a>
|
||||||
@ -389,11 +389,11 @@
|
|||||||
<div class="content">
|
<div class="content">
|
||||||
<p class="control">
|
<p class="control">
|
||||||
<a class="button is-danger is-fullwidth" v-for="bundle_id in item.bundles"
|
<a class="button is-danger is-fullwidth" v-for="bundle_id in item.bundles"
|
||||||
v-on:click="toggleItemInBundle(bundle_id, item.id)"
|
v-on:click="toggleItemInBundle(bundle_id, item.id, $index)"
|
||||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'is-success' : 'is-danger']">
|
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'is-success' : 'is-danger']">
|
||||||
<span class="icon">
|
<span class="icon">
|
||||||
<i class="fa"
|
<i class="fa"
|
||||||
v-bind:class="[isItemInBundle(bundle_id, item.id) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
v-bind:class="[isItemInBundle(bundle_id, item.id, $index) ? 'fa-check-square-o' : 'fa-square-o']"></i>
|
||||||
</span>
|
</span>
|
||||||
<span>{{ static.bundles[bundle_id].name }}</span>
|
<span>{{ static.bundles[bundle_id].name }}</span>
|
||||||
</a>
|
</a>
|
||||||
|
|||||||
28
main.js
28
main.js
@ -70,23 +70,31 @@ var v = new Vue({
|
|||||||
change_skill: function(new_skill){
|
change_skill: function(new_skill){
|
||||||
this.active_skill = new_skill;
|
this.active_skill = new_skill;
|
||||||
},
|
},
|
||||||
addItemToBundle: function(bundleId, itemId){
|
addItemToBundle: function(bundleId, itemId, itemPosition){
|
||||||
this.user_data[bundleId].push(itemId);
|
this.user_data[bundleId].push({item: itemId, position: itemPosition});
|
||||||
},
|
},
|
||||||
removeItemFromBundle: function(bundleId, itemId){
|
removeItemFromBundle: function(bundleId, itemId, itemPosition){
|
||||||
i = this.user_data[bundleId].indexOf(itemId);
|
console.log("Removing item from bundle" + bundleId + " | " + itemId + " | " + itemPosition);
|
||||||
|
for(i = 0; i < this.user_data[bundleId].length; i++){
|
||||||
|
if(this.user_data[bundleId][i].item === itemId && this.user_data[bundleId][i].position === itemPosition){
|
||||||
|
console.log("Found a match with: ");
|
||||||
|
console.log(this.user_data[bundleId][i]);
|
||||||
this.user_data[bundleId].splice(i, 1);
|
this.user_data[bundleId].splice(i, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
toggleItemInBundle: function(bundleId, itemId){
|
toggleItemInBundle: function(bundleId, itemId, itemPosition){
|
||||||
if(this.isItemInBundle(bundleId, itemId)){
|
if(this.isItemInBundle(bundleId, itemId, itemPosition)){
|
||||||
this.removeItemFromBundle(bundleId, itemId);
|
this.removeItemFromBundle(bundleId, itemId, itemPosition);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
this.addItemToBundle(bundleId, itemId);
|
this.addItemToBundle(bundleId, itemId, itemPosition);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
isItemInBundle: function(bundleId, itemId){
|
isItemInBundle: function(bundleId, itemId, itemPosition){
|
||||||
if(this.user_data[bundleId].indexOf(itemId) > -1){
|
if(this.user_data[bundleId].filter(function(element){
|
||||||
|
return element.item === itemId && element.position === itemPosition;
|
||||||
|
}).length > 0){
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user