filter tasks

This commit is contained in:
Bart van der Braak 2019-04-25 14:48:06 +02:00
parent c7c02b4bd1
commit eedd66d763
6 changed files with 351 additions and 65 deletions

50
data/chaeldar.csv Normal file
View file

@ -0,0 +1,50 @@
monster;slayer_req;slayer_req
Aberrant spectres;60;8
Abyssal demons;85;12
Aviansies;1;9
Banshees;15;5
Basilisks;40;7
Black demons;1;10
Bloodvelds;50;8
Blue dragons;1;8
Brine rats;47;7
Bronze dragons;1;11
Cave crawlers;10;5
Cave horrors;58;10
Cave krakens;87;12
Cave slimes;17;6
Cockatrices;25;6
Dagannoths;1;11
Dust devils;65;9
Elves;1;8
Fever spiders;42;7
Fire giants;1;12
Fossil Island Wyverns;66;7
Gargoyles;75;11
Greater demons1;9
Harpie Bug Swarms;33;6
Hellhounds;1;9
Infernal Mages;45;7
Iron dragons;1;12
Jellies;52;10
Jungle horrors;1;10
Kalphites;1;11
Kurasks;70;12
Lesser demons;1;9
Lizardmen;1;8
Lizards;22;5
Mogres;32;6
Molanisks;39;6
Mutated zygomites;57;7
Nechryaels;80;12
Pyrefiends;30;6
Rockslugs;20;5
Shadow warriors;1;8
Skeletal Wyverns;72;7
Spiritual creatures;63;12
Steel dragon;1;9
Trolls;1;11
Turoth;55;10
TzHaar;1;8
Wall beasts;35;6
Wyrms;62;6
Can't render this file because it has a wrong number of fields in line 24.

247
data/chaeldar.json Normal file
View file

@ -0,0 +1,247 @@
[
{
"monster": "Aberrant spectres",
"slayer_req": 60,
"taskweight": 8
},
{
"monster": "Abyssal demons",
"slayer_req": 85,
"taskweight": 12
},
{
"monster": "Aviansies",
"slayer_req": 1,
"taskweight": 9
},
{
"monster": "Banshees",
"slayer_req": 15,
"taskweight": 5
},
{
"monster": "Basilisks",
"slayer_req": 40,
"taskweight": 7
},
{
"monster": "Black demons",
"slayer_req": 1,
"taskweight": 10
},
{
"monster": "Bloodvelds",
"slayer_req": 50,
"taskweight": 8
},
{
"monster": "Blue dragons",
"slayer_req": 1,
"taskweight": 8
},
{
"monster": "Brine rats",
"slayer_req": 47,
"taskweight": 7
},
{
"monster": "Bronze dragons",
"slayer_req": 1,
"taskweight": 11
},
{
"monster": "Cave crawlers",
"slayer_req": 10,
"taskweight": 5
},
{
"monster": "Cave horrors",
"slayer_req": 58,
"taskweight": 10
},
{
"monster": "Cave krakens",
"slayer_req": 87,
"taskweight": 12
},
{
"monster": "Cave slimes",
"slayer_req": 17,
"taskweight": 6
},
{
"monster": "Cockatrices",
"slayer_req": 25,
"taskweight": 6
},
{
"monster": "Dagannoths",
"slayer_req": 1,
"taskweight": 11
},
{
"monster": "Dust devils",
"slayer_req": 65,
"taskweight": 9
},
{
"monster": "Elves",
"slayer_req": 1,
"taskweight": 8
},
{
"monster": "Fever spiders",
"slayer_req": 42,
"taskweight": 7
},
{
"monster": "Fire giants",
"slayer_req": 1,
"taskweight": 12
},
{
"monster": "Fossil Island Wyverns",
"slayer_req": 66,
"taskweight": 7
},
{
"monster": "Gargoyles",
"slayer_req": 75,
"taskweight": 11
},
{
"monster": "Greater demons1",
"slayer_req": 9,
"taskweight": ""
},
{
"monster": "Harpie Bug Swarms",
"slayer_req": 33,
"taskweight": 6
},
{
"monster": "Hellhounds",
"slayer_req": 1,
"taskweight": 9
},
{
"monster": "Infernal Mages",
"slayer_req": 45,
"taskweight": 7
},
{
"monster": "Iron dragons",
"slayer_req": 1,
"taskweight": 12
},
{
"monster": "Jellies",
"slayer_req": 52,
"taskweight": 10
},
{
"monster": "Jungle horrors",
"slayer_req": 1,
"taskweight": 10
},
{
"monster": "Kalphites",
"slayer_req": 1,
"taskweight": 11
},
{
"monster": "Kurasks",
"slayer_req": 70,
"taskweight": 12
},
{
"monster": "Lesser demons",
"slayer_req": 1,
"taskweight": 9
},
{
"monster": "Lizardmen",
"slayer_req": 1,
"taskweight": 8
},
{
"monster": "Lizards",
"slayer_req": 22,
"taskweight": 5
},
{
"monster": "Mogres",
"slayer_req": 32,
"taskweight": 6
},
{
"monster": "Molanisks",
"slayer_req": 39,
"taskweight": 6
},
{
"monster": "Mutated zygomites",
"slayer_req": 57,
"taskweight": 7
},
{
"monster": "Nechryaels",
"slayer_req": 80,
"taskweight": 12
},
{
"monster": "Pyrefiends",
"slayer_req": 30,
"taskweight": 6
},
{
"monster": "Rockslugs",
"slayer_req": 20,
"taskweight": 5
},
{
"monster": "Shadow warriors",
"slayer_req": 1,
"taskweight": 8
},
{
"monster": "Skeletal Wyverns",
"slayer_req": 72,
"taskweight": 7
},
{
"monster": "Spiritual creatures",
"slayer_req": 63,
"taskweight": 12
},
{
"monster": "Steel dragon",
"slayer_req": 1,
"taskweight": 9
},
{
"monster": "Trolls",
"slayer_req": 1,
"taskweight": 11
},
{
"monster": "Turoth",
"slayer_req": 55,
"taskweight": 10
},
{
"monster": "TzHaar",
"slayer_req": 1,
"taskweight": 8
},
{
"monster": "Wall beasts",
"slayer_req": 35,
"taskweight": 6
},
{
"monster": "Wyrms",
"slayer_req": 62,
"taskweight": 6
}
]

View file

@ -1,126 +1,126 @@
[ [
{ {
"monster": "Ankou", "monster": "Ankous",
"taskweight": 6, "taskweight": 6,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Aviansie", "monster": "Aviansies",
"taskweight": 7, "taskweight": 7,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Bandit", "monster": "Bandits",
"taskweight": 4, "taskweight": 4,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Bear", "monster": "Bears",
"taskweight": 6, "taskweight": 6,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Black demon", "monster": "Black demons",
"taskweight": 7, "taskweight": 7,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Black dragon", "monster": "Black dragons",
"taskweight": 4, "taskweight": 4,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Chaos druid", "monster": "Chaos druids",
"taskweight": 5, "taskweight": 5,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Dark warrior", "monster": "Dark warriors",
"taskweight": 4, "taskweight": 4,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Earth warrior", "monster": "Earth warriors",
"taskweight": 6, "taskweight": 6,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Ent", "monster": "Ents",
"taskweight": 5, "taskweight": 5,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Fire giant", "monster": "Fire giants",
"taskweight": 7, "taskweight": 7,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Greater demon", "monster": "Greater demons",
"taskweight": 8, "taskweight": 8,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Green dragon", "monster": "Green dragons",
"taskweight": 4, "taskweight": 4,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Hellhound", "monster": "Hellhounds",
"taskweight": 7, "taskweight": 7,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Ice giant", "monster": "Ice giants",
"taskweight": 6, "taskweight": 6,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Ice warrior", "monster": "Ice warriors",
"taskweight": 7, "taskweight": 7,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Lava dragon", "monster": "Lava dragons",
"taskweight": 3, "taskweight": 3,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Lesser demon", "monster": "Lesser demons",
"taskweight": 6, "taskweight": 6,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Magic axe", "monster": "Magic axes",
"taskweight": 7, "taskweight": 7,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Mammoth", "monster": "Mammoths",
"taskweight": 6, "taskweight": 6,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Revenant", "monster": "Revenants",
"taskweight": 5, "taskweight": 5,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Rogue", "monster": "Rogues",
"taskweight": 5, "taskweight": 5,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Scorpion", "monster": "Scorpions",
"taskweight": 6, "taskweight": 6,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Skeleton", "monster": "Skeletons",
"taskweight": 5, "taskweight": 5,
"slayer_req": 1 "slayer_req": 1
}, },
{ {
"monster": "Spider", "monster": "Spiders",
"taskweight": 6, "taskweight": 6,
"slayer_req": 1 "slayer_req": 1
}, },

View file

@ -85,7 +85,7 @@
}, },
{ {
"id": 14, "id": 14,
"monster": "Catablepon", "monster": "Catablepons",
"slayer_req": 1, "slayer_req": 1,
"masters": 2 "masters": 2
}, },
@ -127,7 +127,7 @@
}, },
{ {
"id": 21, "id": 21,
"monster": "Crawling Hands", "monster": "Crawling hands",
"slayer_req": 5, "slayer_req": 5,
"masters": "1, 2, 4" "masters": "1, 2, 4"
}, },
@ -169,7 +169,7 @@
}, },
{ {
"id": 28, "id": 28,
"monster": "Earth Warriors", "monster": "Earth warriors",
"slayer_req": 1, "slayer_req": 1,
"masters": 3 "masters": 3
}, },
@ -193,7 +193,7 @@
}, },
{ {
"id": 32, "id": 32,
"monster": "Flesh Crawlers", "monster": "Flesh crawlers",
"slayer_req": 1, "slayer_req": 1,
"masters": 2 "masters": 2
}, },

View file

@ -4,8 +4,8 @@
<title>Slayer Calc</title> <title>Slayer Calc</title>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/datatables.min.css"> <link rel="stylesheet" type="text/css" href="css/datatables.min.css">
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/style.css"> <link rel="stylesheet" type="text/css" href="css/style.css">
<script type="text/javascript" src="js/jquery-3.3.1.min.js"></script> <script type="text/javascript" src="js/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="js/bootstrap.min.js"></script> <script type="text/javascript" src="js/bootstrap.min.js"></script>
@ -21,6 +21,12 @@
</div> </div>
<div class="container"> <div class="container">
<ul class="nav nav-pills nav-justified">
<li class="active"><a href="#">Krystilia</a></li>
<li><a href="#">Menu 1</a></li>
<li><a href="#">Menu 2</a></li>
<li><a href="#">Menu 3</a></li>
</ul>
<div class="row"> <div class="row">
<div class="col"> <div class="col">
<h3>Slayer settings</h3> <h3>Slayer settings</h3>
@ -69,10 +75,10 @@
<input type="submit" value="Apply changes" onclick="applyChanges('krystilia')"> <input type="submit" value="Apply changes" onclick="applyChanges('krystilia')">
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col"> <div class="col">
<h3>Krystilia</h3> <h3>Krystilia</h3>
<p>Krystilia is a Slayer master found in Edgeville's jail north-east of the bank. When spoken to, she expresses her love for magic and the Wilderness, and claims the guards locked her in the cell for trouble-making.</p>
<table id="master" class="display nowrap" width="100%"> <table id="master" class="display nowrap" width="100%">
<thead> <thead>
<tr> <tr>
@ -82,16 +88,7 @@
</tr> </tr>
</thead> </thead>
<tfoot>
<tr>
<th>Monster</th>
<th>Task weight</th>
<th>Chance</th>
</tr>
</tfoot>
<tbody> <tbody>
</tbody> </tbody>
</table> </table>
</div> </div>

View file

@ -1,29 +1,12 @@
jQuery.fn.dataTable.Api.register( 'sum()', function ( ) {
return this.flatten().reduce( function ( a, b ) {
if ( typeof a === 'string' ) {
a = a.replace(/[^\d.-]/g, '') * 1;
}
if ( typeof b === 'string' ) {
b = b.replace(/[^\d.-]/g, '') * 1;
}
return a + b;
}, 0 );
} );
function setBlocklists() { function setBlocklists() {
$.getJSON( "data/monsters.json", function( data ) { $.getJSON( "data/monsters.json", {format: "json"}, function( data ) {
var content = ''; var content = '';
console.log(data)
for (i = 0; i < data.length; i++) { for (i = 0; i < data.length; i++) {
console.log(data[i].monster)
content += '<option value="'+data[i].monster+'">'+data[i].monster+'</option>' content += '<option value="'+data[i].monster+'">'+data[i].monster+'</option>'
} }
console.log(content)
$( ".blocktask" ).each(function( index ) { $( ".blocktask" ).each(function( index ) {
$(this).append(content) $(this).append(content)
}); });
@ -31,8 +14,11 @@ function setBlocklists() {
}) })
} }
$(document).ready(function() { $(document).ready(function() {
setBlocklists(); setBlocklists();
applyChanges('krystilia');
}); });
function filterTasks(data) { function filterTasks(data) {
@ -87,12 +73,19 @@ function filterTasks(data) {
// Task blocks // Task blocks
$( ".blocktask" ).each(function( index ) {
if ($(this).val().toUpperCase() == data[i].monster.toUpperCase()) {
index_list.push(i)
}
});
} }
for (var i in index_list) {
console.log(index_list,data) data.splice(i, 1)
console.log(i)
}
console.log(data)
return data return data
} }
@ -106,10 +99,9 @@ function sumWeights(data) {
var table; var table;
function deleteOldDataTable(table) { function deleteOldDataTable() {
if ( $.fn.dataTable.isDataTable( '#master' ) ) { table = $('#master').DataTable()
table.destroy(); table.destroy();
}
} }
function applyChanges(master) { function applyChanges(master) {