// ==UserScript==
// @name The West - Market best bids
// @namespace TomRobert
// @author Esperiano (updated by Tom Robert)
// @description Market utility for highlighting the best bids!
// @include http*://*.the-west.*/game.php*
// @version 0.4.5
// @grant none
// @downloadURL none
// ==/UserScript==
TWMBB_inject = function () {
var twmbbjs = document.createElement('script');
twmbbjs.setAttribute('type', 'text/javascript');
twmbbjs.setAttribute('language', 'javascript');
twmbbjs.innerHTML = '(' + (function () {
var twmbb = {
version: '0.4.5',
name: 'Market best bids',
author: 'Esperiano (updated by Tom Robert)',
minGame: '2.05',
maxGame: Game.version.toString(),
website: 'https://greasyfork.org/scripts/7391',
updateUrl: 'http://pastebin.com/raw.php?i=uNZEAP31',
};
var twmbbApi = TheWestApi.register('TWMBB', twmbb.name, twmbb.minGame, twmbb.maxGame, twmbb.author, twmbb.website);
twmbbApi.setGui('
Market utility for highlighting the best bids.
Green – Bid is lower than the purchase price.
Black - Bid is equal to the purchase price.
Blue – Bid is between 100% and 200% of the purchase price.
Red – Bid is more than 200% of the purchase price.
The sold item will always have the color of the lowest bid!
' + twmbb.name + ' v' + twmbb.version +
'
Contact:
');
for (var i = 0; i < 185205; i++) {
var item = ItemManager.getByBaseId(i);
if (item !== undefined && localStorage.getItem('mbb_' + i) !== undefined) {
localStorage.setItem('mbb_' + i, item.name + ',' + item.price);
}
}
$('#windows').on('DOMNodeInserted', function (e) {
var element = e.target;
if ($(element).is('div[class*=\'marketOffersData\']')) {
var price_original;
var bid_original = $(element).children() [4]; //Auktionspreis
var purchase_original = $(element).children() [3]; //Sofortkauf
var qty = $(element).children() [2].textContent; //Anzahl Verkaufsstücke
var name_original = $(element).children() [1]; //Name des Verkaufsgegenstandes
for (var key in localStorage) {
if (typeof key === 'string' && key.indexOf('mbb_') === 0) {
var index = key.split('_') [1];
if (localStorage.getItem('mbb_' + index).split(',') [0] === name_original.textContent) {
price_original = localStorage.getItem('mbb_' + index).split(',') [1];
}
}
}
if (purchase_original.textContent) {
var purchase = purchase_original.textContent.replace('$', '');
purchase = purchase.replace(/\./g, '');
purchase = purchase.replace(/\,/g, ''); //'$', Punkte und Kommas entfernen
var price_purchase = purchase / qty;
if (price_purchase < price_original) {
purchase_original.style.color = 'green';
if (!bid_original.textContent) {
name_original.style.color = 'green';
}
}
if ((price_purchase > price_original) && (price_purchase <= price_original * 2)) {
purchase_original.style.color = 'blue';
if (!bid_original.textContent) {
name_original.style.color = 'blue';
}
}
if (price_purchase > price_original * 2) {
purchase_original.style.color = 'red';
if (!bid_original.textContent) {
name_original.style.color = 'red';
}
}
}
if (bid_original.textContent) {
var bid = bid_original.textContent.replace('$', '');
bid = bid.replace(/\./g, '');
bid = bid.replace(/\,/g, ''); //'$', Punkte und Kommas entfernen
var price_bid = bid / qty;
if (price_bid < price_original) {
bid_original.style.color = 'green';
name_original.style.color = 'green';
}
if ((price_bid > price_original) && (price_bid <= price_original * 2)) {
bid_original.style.color = 'blue';
name_original.style.color = 'blue';
}
if (price_bid > price_original * 2) {
name_original.style.color = 'red';
bid_original.style.color = 'red';
}
}
}
});
twmbb.Updater = function () {
$.getScript(twmbb.updateUrl);
};
twmbbcompareVersions = function (actualVersion) {
if (actualVersion > twmbb.version) {
var updateMessage = new west.gui.Dialog('Update: ' + twmbb.name, 'A new version of the script is available: v' + actualVersion, west.gui.Dialog.SYS_WARNING).addButton('Update', function () {
updateMessage.hide();
location.href = twmbb.website + '/code.user.js';
}).addButton('Cancel', function () {
}).show();
}
};
twmbb.Updater();
}).toString() + ')();';
document.body.appendChild(twmbbjs);
};
if (location.href.indexOf('.the-west.') != - 1 && location.href.indexOf('game.php') != - 1)
setTimeout(TWMBB_inject, 2500, false);