您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Super secret project
// ==UserScript== // @name DC_trop_ouha // @author Ladoria // @version 0.1 // @namespace DC_custom // @description Super secret project // @match http://www.dreadcast.net/Main // @grant none // ==/UserScript== var pokereuils = []; var pokedoll = null; var map_pos = null; var main_char_pos = null; var style = '<style>/*circle on map*/#dc_sensors_overlay {position: absolute; left: 3px; top: 3px;}/*circle + tooltip to show*/#dc_sensors_tooltips {position: absolute; left: 3px; top: 3px; width: 525px; height: 525px;border: 1px solid #86898a; /*because fuck it*/overflow: hidden;}#dc_sensors_tooltips .dc_pokereuil {display: none;}.dc_pokereuil { margin: -3px 0 0 -3px;position: absolute;z-index: 1000;}.dc_pokereuil .circle {background: url(http://image.noelshack.com/fichiers/2016/47/1479820995-overlay-circle.png) no-repeat;background-size: 25px 25px;width: 25px;height: 25px;position: absolute;top: 0px;left: 0px;cursor: pointer;}/*#dc_sensors_overlay .dc_pokereuil:hover > .circle_background {display: block;}#dc_sensors_tooltips .dc_pokereuil:hover {display: block;}#dc_sensors_tooltips .dc_pokereuil:hover > .tooltip {display: block;}*/.circle_background {display: none;width: 25px;height: 25px;position: absolute;top: 0px;left: 0px;}.circle_right {background: url(http://image.noelshack.com/fichiers/2016/49/1480962666-overlay-circle-right.png) no-repeat;background-size: 25px 25px;}.circle_left {display: none;background: url(http://image.noelshack.com/fichiers/2016/49/1480963031-overlay-circle-left.png) no-repeat;background-size: 25px 25px;}.dc_pokereuil .tooltip {display: block; position: absolute;top: 0px;left: 25px;height: 25px;background: url(../../../images/fr/design/box7_fond_0.png);padding-right: 2px;}.dc_pokereuil .tooltip.overlay_left{left: auto;right: 0px;}.dc_pokereuil .tooltip .infos { margin: 0 0 0 3px;}.dc_pokereuil .text {font-size: 12px;line-height: initial;margin: 0 1px 0 1px;color: #41e4ee;cursor: pointer;}.dc_pokereuil .border_y {background: url(http://image.noelshack.com/fichiers/2016/49/1480979103-overlay-border-y.png);height: 100%; width: 2px;position: absolute;top: 0px;}.dc_pokereuil .border_right {right: -2px;}.dc_pokereuil .border_left {left: -2px;}.dc_pokereuil .border_x {/*background: url(http://image.noelshack.com/fichiers/2016/49/1480978567-overlay-y-dart.png);*/height: 100%; height: 2px;position: absolute;}.dc_pokereuil .border_top {top: -2px;}.dc_pokereuil .border_bottom {bottom: -2px;}#dc_secret {position: absolute;top: 150px;left: 525px;width: 150px;}#dc_secret .image {margin: -3px;cursor: pointer;}#dc_secret .interieur {margin: 7px;}#dc_secret .message {position: absolute;top: 38px; left: 15px;}#dc_secret .fakeToolTip .deco1 {left: 20px;}#dc_secret .secondToolTip {position: relative;margin-top: 6px;top: 0px;left: 0px;}#dc_secret .secondToolTip .deco1 {display: none;}</style>'; var Doll = function(character) { this.character = character; this.activated = false; this.fakeTooltipId = 0; this.toggleDoll = function () { this.activated = !this.activated; if(true == this.activated) { this.showDoll(); } else this.hideDoll(); return; }; this.updateDoll = function(character) { this.character = character; this.destroy(); this.putHtmlDoll(); }; this.showDoll = function () { $('#dc_secret').fadeTo(300, 1, function() { $('#dc_secret').show(); }); this.activated = true; }; this.hideDoll = function () { $('#dc_secret').fadeTo(300, 0, function() { $('#dc_secret').hide(); }); this.activated = false; }; this.putHtmlDoll = function () { $('#zone_infoBoxFixed').append('<div id="dc_secret" class="zone_conteneurs_displayed"><div class="conteneur ui-draggable"><div class="titreConteneur">' + this.character.name + '</div><div class="conteneur_content"><div class="fond1"></div><div class="fond2"></div><div class="fond3"></div><div class="fond4"></div><div class="fond5"></div><div class="fond6"></div><div class="fond7"></div><div class="fond8"></div><div id="doll" class="objects"><div class="interieur info_objet"><img class="image" src="' + this.character.silhouette + '"><div class="notThere member"></div></div></div><div class="close link"></div></div></div></div>'); $('#dc_secret').draggable(); $('#dc_secret .close').on('click', function() { pokedoll.hideDoll(); }); $('#dc_secret .image').on('click', function() { pokedoll.showMessage('Aaaaaaaaaaah !!!'); }); }; this.destroy = function () { $('#dc_secret').remove(); }; this.showMessage = function (message) { var tooltipId = this.fakeTooltipId; // variable range issue this.fakeTooltipId++; $('#dc_secret .conteneur_content').append('<div id="' + tooltipId + '" class="message fakeToolTip"><div class="deco1"></div><span>' + message + '</span></div>'); // fadeTo 1 -> temporize -> fadeTo 0 -> remove. $('#dc_secret #' + tooltipId).fadeTo(300, 1, function() { setTimeout( function() { $('#dc_secret #' + tooltipId).fadeTo(300, 0, function() { $('#dc_secret #' + tooltipId).remove()}); } ,1000) }); } } var Character = function(name, silhouette, positions) { this.name = name; this.silhouette = silhouette; if (null !== positions) this.positions = positions; else this.positions = []; this.equals = function(character) { if (this.name == character.name) return true; return false; }; this.addPosition = function(position) { for (var i = 0; i < this.positions.length; i++) { if (true === positions[i].equals(position)) return; } positions.push(position); }; this.isWatched = function () { for (var i = 0; i < pokereuils.length; i++) { if (pokereuils[i].equals(this)) return true; } return false; }; }; Character.getCharacter = function (name) { for (var i = 0; i < pokereuils.length; i++) { if (name == pokereuils[i].name) return pokereuils[i]; } return null; }; var Position = function(x, y, timestamp) { this.x = x; this.y = y; if ('undefined' !== timestamp) this.timestamp = timestamp; else this.timestamp = Date.now(); this.equals = function(position) { if ( this.x == position.x && this.y == position.y) return true; return false; }; this.isVisible = function() { if ( Math.abs(this.x - map_pos.x) > 20 || Math.abs(this.y - map_pos.y) > 20) return false; return true; }; }; function update_char(character) { for (var i = 0; i < pokereuils.length; i++) { if (character.name == pokereuils[i].name) { pokereuils[i] = character; return; } } } function update_map_pos() { var posX = parseInt(/[0-9]+/.exec($('#carte_fond').css('background-position-x'))) / 25; var posY = parseInt(/[0-9]+/.exec($('#carte_fond').css('background-position-y'))) / 25; map_pos = new Position(posX,posY); posX += 10; posY += 10; main_char_pos = new Position(posX,posY); } function char_pos(overlay_id) { return new Position(map_pos.x + parseInt(/([0-9]+)_([0-9]+)/.exec(overlay_id)[1]), map_pos.y + parseInt(/([0-9]+)_([0-9]+)/.exec(overlay_id)[2])); } function is_overflowed_x(id) { var tooltip = $('#' + id + '_overlay .tooltip'); var posX = parseInt(/[0-9]+/.exec($('#' + id +'_overlay').css('top'))) + parseInt(/[0-9]+/.exec(tooltip.css('top'))); var heightX = parseInt(/[0-9]+/.exec(tooltip.css('height'))); if (posX + heightX < $('#dc_sensors_tooltips').width()) return false; return true; } function show_overlay() { //console.log('-------------------------------\n overlay'); for (var i = 0; i < pokereuils.length; i++) { //console.log(pokereuils[i].name + ', ' + (i+1) + '/' + pokereuils.length); for (var j = 0; j < pokereuils[i].positions.length; j++) { //console.log(pokereuils[i].positions[j].x + ':' + pokereuils[i].positions[j].y + ', ' + (j+1) + '/' + pokereuils[i].positions.length); var id = pokereuils[i].positions[j].x + '_' + pokereuils[i].positions[j].y; //console.log(pokereuils[i].positions[j]); if (false === pokereuils[i].positions[j].isVisible()) { $('#' + id).hide(); return; } if (0 === $('#' + id).length) { $('#dc_sensors_overlay').append('<div id="' + id + '" class="dc_pokereuil"><div class="circle_background circle_right"></div><div class="circle"></div></div>'); $('#dc_sensors_tooltips').append('<div id="' + id + '_overlay" class="dc_pokereuil"><div class="tooltip"><div class="infos"></div><div class="border_y border_right"></div><div class="border_x border_top"></div><div class="border_x border_bottom"></div></div></div>'); $('#' + id).on('mouseenter', function () { $('#' + $(this).attr('id') + ' .circle_background').show() $('#' + $(this).attr('id') + '_overlay').show(); console.log('show ' + $(this).attr('id') + '_overlay'); }); $('#' + id + '_overlay').on('mouseleave', function () { $(this).hide(); $('#' + /(.*)_overlay/.exec($(this).attr('id'))[1] + ' .circle_background').hide(); console.log('hide: ' + $(this).attr('id')); }); } $('#' + id).css({ 'top' : ((pokereuils[i].positions[j].y - map_pos.y) * 25), 'left' : ((pokereuils[i].positions[j].x - map_pos.x) * 25)}); $('#' + id + '_overlay').css({ 'top' : ((pokereuils[i].positions[j].y - map_pos.y) * 25), 'left' : ((pokereuils[i].positions[j].x - map_pos.x) * 25)}); if(true === is_overflowed_x(id)) { $('#' + id + '_overlay .tooltip').removeClass('overlay_right'); $('#' + id + '_overlay .tooltip').addClass('overlay_left'); $('#' + id + '_overlay .tooltip .border_y').removeClass('border_right'); $('#' + id + '_overlay .tooltip .border_y').addClass('border_left'); $('#' + id + ' .circle_background').removeClass('circle_right'); $('#' + id + ' .circle_background').addClass('circle_left'); } var found = false; $('#' + id + '_overlay .text').each( function() { if (true === new RegExp(pokereuils[i].name,'gi').test($(this).html())) found = true; }); if (false === found) { $('#' + id + '_overlay .infos').append('<span class="text">' + pokereuils[i].name + '</span>'); } $('#' + id).show(); } } //console.log('-------------------------------'); // because fuck it, for now $('.dc_pokereuil .text').off('click'); $('.dc_pokereuil .text').on('click', function() { pokedoll.updateDoll(Character.getCharacter($(this).html())); }); } function hide_overlay() { $('.dc_sensors_last_seen').hide(); } $(document).ajaxComplete( function(a,b,c) { // A chaque refresh, même invisible. if(/(Check|Move)/.test(c.url)) { // Durant certains refresh, dont le combat. //console.log('time: ' + new Date(Date.now()).getHours() + ':' + new Date(Date.now()).getMinutes() + ':' + new Date(Date.now()).getSeconds()); update_map_pos(); show_overlay(); } }); $(document).ready( function() { $('head').append(style); $('#dc_secret .conteneur').draggable(); $('#carte').after('<div id="dc_sensors_tooltips"></div>'); $('#carte').append('<div id="dc_sensors_overlay"></div>'); pokedoll = new Doll(null); }); console.log('DC - Secret started'); // debug var debug_char = new Character('Yonbaïke_01', 'http://image.noelshack.com/fichiers/2016/12/1458784579-yon.png', []); debug_char.addPosition(new Position(61, 37)); pokereuils.push(debug_char); var debug_char = new Character('Yonbaïke_02', 'http://image.noelshack.com/fichiers/2016/12/1458784579-yon.png', []); debug_char.addPosition(new Position(61, 37)); pokereuils.push(debug_char); var debug_char = new Character('Yonbaïke_03', 'http://image.noelshack.com/fichiers/2016/12/1458784579-yon.png', []); debug_char.addPosition(new Position(64, 38)); pokereuils.push(debug_char);
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址