// ==UserScript==
// @name IdlePixelMobile
// @namespace com.evolsoulx.idlepixel.mobile
// @version 1.0.7
// @description A plugin to add mobile styling to idle-pixel.com
// @author evolsoulx
// @license MIT
// @grant GM_addStyle
// @match *://idle-pixel.com/login/play*
// @require https://greasyfork.org/scripts/441206-idlepixel/code/IdlePixel+.js
// ==/UserScript==
(function() {
'use strict';
var viewport = document.querySelector("meta[name=viewport]");
if(viewport){viewport.setAttribute('content', 'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0');}
else{var metaTag=document.createElement('meta');
metaTag.name = "viewport"
metaTag.content = "width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
document.getElementsByTagName('head')[0].appendChild(metaTag);
}
var mobileCSS = `
@media only screen and (max-width: 1000px) {
body {}
/*reworking panel grid layout to be vertical*/
#panels {
background-color: lightblue !important;
}
.top-bar {
grid-column-start: 1 !important;
grid-column-end: span 2 !important;
grid-row-start: 1 !important;
grid-row-end: span 1 !important;
}
#menu-bar {
grid-column-start: 1 !important;
grid-column-end: span 2 !important;
grid-row-start: 2 !important;
grid-row-end: span 1 !important;
}
#panels {
grid-column-start: 1 !important;
grid-column-end: span 2 !important;
grid-row-start: 3 !important;
grid-row-end: span 1 !important;
}
/*Menu rework*/
.left-menu-item {
margin-bottom: 3px;
display: inline-block;
}
.hover.hover-menu-bar-item.left-menu-item {
width: 90px;
height: 90px;
display: inline-block;
border: 1px solid rgb(66, 66, 66);
background-color: #54bcce;
border-radius: 5pt;
color: #F1F8F0;
margin-bottom: 15px;
text-align;
center;
}
.hover.hover-menu-bar-item.left-menu-item img {
width: 100%;
height: 100%;
}
.color-light-red,
.color-yellow,
.color-silver {
display: block;
text-align: center;
font-size: .9em;
}
div[data-tooltip*=menu-bar-oil] .color-silver,
#menu-bar-oil-in,
#menu-bar-oil-out {
display: inline;
}
#menu-bar-buttons u {
color: #F1F8F0;
display: block;
width: 100%;
background-color: #0099A2;
padding: 0px 10px;
margin: 5px 0px;
font-weight: bold;
text-decoration: none;
border: 1px none rgb(66, 66, 66);
border-radius: 5pt;
}
.hover.hover-menu-bar-item.left-menu-item span:nth-of-type(1),
#menu-bar-buttons hr,
#menu-bar-buttons br {
white-space: nowrap;
overflow: hidden;
display: none;
}
#menu-bar-buttons>hr:nth-child(26) {
display: block;
}
.hover.hover-menu-bar-item.left-menu-item[onclick*=quests],
.hover.hover-menu-bar-item.left-menu-item[onclick*=shop],
.hover.hover-menu-bar-item.left-menu-item[onclick*=player-market],
.hover.hover-menu-bar-item.left-menu-item[onclick*=donor-shop],
.hover.hover-menu-bar-item.left-menu-item[onclick*=achievements] {
white-space: nowrap;
overflow: hidden;
}
/*rework notifications*/
#notifications-area div[id*=notification] {
width: 100%;
}
#ui-tweaks-notification-oil-full span {
display: inline-block;
}
#panels {
padding: 3px 0px;
}
.notifications-area {
margin: 0px;
padding: 0px;
}
/*quick fix for modals*/
.modal
{
top:0px !important;
overflow-x: hidden;
overflow-y: auto;
}
}
`;
if (typeof GM_addStyle != "undefined") {
GM_addStyle(mobileCSS);
console.log('gm_addstyle');
} else if (typeof PRO_addStyle != "undefined") {
PRO_addStyle(mobileCSS);
console.log('PRO_addStyle');
} else if (typeof addStyle != "undefined") {
addStyle(mobileCSS);
console.log('addStyle');
} else {
var node = document.createElement("style");
node.type = "text/css";
node.appendChild(document.createTextNode(mobileCSS));
var heads = document.getElementsByTagName("head");
if (heads.length > 0) {
heads[0].appendChild(node);
} else {
// no head yet, stick it whereever
document.documentElement.appendChild(node);
}
console.log('oldschool');
}
class MobilePlugin extends IdlePixelPlusPlugin {
constructor() {
super("mobile", {
about: {
name: GM_info.script.name,
version: GM_info.script.version,
author: GM_info.script.author,
description: GM_info.script.description,
grant: GM_info.script.grant
},
config: [{
type: "label",
label: "Is this a mobile script?"
},
{
id: "MyCheckbox",
label: "Yes / No",
type: "boolean",
default: true
}
]
});
}
onConfigsChanged() {
}
onLogin() {
console.log("MobilePlugin.onLogin " + mobileCSS);
}
onMessageReceived(data) {
// Will spam the console, uncomment if you want to see it
//console.log("SamplePlugin.onMessageReceived: ", data);
}
onVariableSet(key, valueBefore, valueAfter) {
// Will spam the console, uncomment if you want to see it
//console.log("SamplePlugin.onVariableSet", key, valueBefore, valueAfter);
}
onChat(data) {
// Could spam the console, uncomment if you want to see it
//console.log("SamplePlugin.onChat", data);
}
onPanelChanged(panelBefore, panelAfter) {
console.log("MobilePlugin.onPanelChanged", panelBefore, panelAfter);
}
onCombatStart() {
console.log("MobilePlugin.onCombatStart");
}
onCombatEnd() {
console.log("MobilePlugin.onCombatEnd");
}
}
const plugin = new MobilePlugin();
IdlePixelPlus.registerPlugin(plugin);
})();