Shadow Government Lib

Plugin for best experience Shadow Government.

当前为 2015-09-12 提交的版本,查看 最新版本

此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.gf.qytechs.cn/scripts/12383/73926/Shadow%20Government%20Lib.js

  1. // ==UserScript==
  2. // @name Shadow Government Lib
  3. // @version 0.11
  4. // @namespace localhost
  5. // @author EnterBrain
  6. // @description Plugin for best experience Shadow Government.
  7. // @icon http://firepic.org/images/2015-08/31/ktizhlzyzxz4.png
  8. // @icon64 http://firepic.org/images/2015-08/31/8gwmu0w58oy5.png
  9. // @match http://*.e-sim.org/*
  10. // @grant all
  11. // ==/UserScript==
  12.  
  13. if($("section.top-bar-section > ul.foundation-right").length==1){
  14. /*---Initialization parameters---*/
  15. var localUrl = new String( window.location );
  16. var URLBattle = "battle.html?id=";
  17. var URLSettings = "editCitizen.html?Settings";
  18. var URLShadowGovernment = "editCitizen.html?ShadowGovernment";
  19. var URLMotivation = "newCitizenStatistics.html";
  20. var style;
  21. /*---Initialization parameters---*/
  22.  
  23. /*---Initialization menu---*/
  24. $('<a class="button foundation-style" title="Shadow Government Settings" href="editCitizen.html?Settings"><i class="icon-star"></i>SG Settings</a><br>').insertBefore($(".foundation-right.hidden-overflow > div:first > a:last"));
  25. $('<a class="button foundation-style" title="Shadow Government Main" href="editCitizen.html?ShadowGovernment"><i class="icon-star"></i>SG Main</a><br>').insertBefore($(".foundation-right.hidden-overflow > div:first > a:last"));
  26. /* var menuTop = $(".top-bar-section > .foundation-left");
  27. $('<li id="ShadowGovernmentMenu" class="has-dropdown"><a id="ShadowGovernmentMenuHref" href="#"><i class="icon-star"></i>Shadow Government</a><ul id="ShadowGovernmentMenuDropdown" class="dropdown"></ul></li><li class="divider"></li>').appendTo(menuTop);
  28. $('<li class="title back js-generated"><h5><a href="#">« Back</a></h5></li>').appendTo("#ShadowGovernmentMenuDropdown");
  29. $('<li><a href="editCitizen.html?Settings"><i class="icon-tools"></i>Settings</a></li>').appendTo("#ShadowGovernmentMenuDropdown");
  30. $('<li><a href="#"><i class="icon-tools"></i>Blank</a></li>').appendTo("#ShadowGovernmentMenuDropdown");
  31. $('#navigationCountry > i.icon-flag-2').removeClass('icon-flag-2').addClass('icon-flag'); */
  32. /*---Initialization menu---*/
  33.  
  34. function SGChecked(flag){
  35. if(flag){
  36. return "checked";
  37. } else {
  38. return "";
  39. }
  40. }
  41.  
  42. /*---On Settings Page---*/
  43. if (localUrl.indexOf( URLSettings, 0 ) >= 0){
  44. var wrapperSettings = $("#userMenu + script + div");
  45. wrapperSettings.attr("id","WrapperMainConfig");
  46. wrapperSettings.empty();
  47. $('<center><h1>Shadow Government Settings</h1></center><p style="clear: both"></p><br>').appendTo(wrapperSettings);
  48. $('<div id="SettingsSpectator" class="testDivblue" style="width:100%;"><h3 id="SettingsSpectatorTittle">Settings Spectator</h3></div>').appendTo(wrapperSettings);
  49. $('<div id="SettingsMotivator" class="testDivblue" style="width:100%;"><h3 id="SettingsMotivatorTittle">Settings Motivator</h3></div>').appendTo(wrapperSettings);
  50. $('<div id="SettingsDemoralizator" class="testDivblue" style="width:100%;"><h3 id="SettingsDemoralizatorTittle">Settings Demoralizator</h3></div>').appendTo(wrapperSettings);
  51. $('<b title="default value: 7000, ultra speed value: 1750">SGTimerSpectator: </b><input id="SGTimerSpectatorText" name="SGTimerSpectatorText" type="text" value="'+$.jStorage.get('SGTimerSpectator', 7000)+'" autocomplete="off"><input id="SGTimerSpectatorSubmit" value="Change" type="button"><br>').appendTo("#SettingsSpectator");
  52. $('<b title="default value: 1">SGFakeUserID: </b><input id="SGFakeUserIDText" name="SGFakeUserIDText" type="text" value="'+$.jStorage.get('SGFakeUserID', 1)+'" autocomplete="off"><input id="SGFakeUserIDSubmit" value="Change" type="button"><br>').appendTo("#SettingsSpectator");
  53. $('<b title="default value: 1">SGFakeCitizenshipID: </b><input id="SGFakeCitizenshipIDText" name="SGFakeCitizenshipIDText" type="text" value="'+$.jStorage.get('SGFakeCitizenshipID', 1)+'" autocomplete="off"><input id="SGFakeCitizenshipIDSubmit" value="Change" type="button"><br>').appendTo("#SettingsSpectator");
  54. $('<b title="default value: true">SGSpectatorMode: </b><input class="SGSpectatorModeRadio" type="radio" name="SGSpectatorMode" value="true" '+SGChecked($.jStorage.get('SGSpectatorMode', true))+'> True <input class="SGSpectatorModeRadio" type="radio" name="SGSpectatorMode" value="false" '+SGChecked(!$.jStorage.get('SGSpectatorMode', true))+'>False<br>').appendTo("#SettingsSpectator");
  55. $('<b title="default value: true">SGMotivationMode: </b><input class="SGMotivationModeRadio" type="radio" name="SGMotivationMode" value="true" '+SGChecked($.jStorage.get('SGMotivationMode', true))+'> True <input class="SGMotivationModeRadio" type="radio" name="SGMotivationMode" value="false" '+SGChecked(!$.jStorage.get('SGMotivationMode', true))+'>False<br>').appendTo("#SettingsMotivator");
  56. $('<b title="default value: 10000">SGDemoralizatorTimerSpectator: </b><input id="SGDemoralizatorTimerSpectatorText" name="SGDemoralizatorTimerSpectatorText" type="text" value="'+$.jStorage.get('SGDemoralizatorTimerSpectator', 10000)+'" autocomplete="off"><input id="SGDemoralizatorTimerSpectatorSubmit" value="Change" type="button"><br>').appendTo("#SettingsDemoralizator");
  57. $('<b title="default value: 10">SGDemoralizatorFakeUserIDCount: </b><input id="SGDemoralizatorFakeUserIDCountText" name="SGDemoralizatorFakeUserIDCountText" type="text" value="'+$.jStorage.get('SGDemoralizatorFakeUserIDCount', 10)+'" autocomplete="off"><input id="SGDemoralizatorFakeUserIDCountSubmit" value="Change" type="button"><br>').appendTo("#SettingsDemoralizator");
  58. $('<b title="default value: 2">SGDemoralizatorFakeCitizenshipID: </b><input id="SGDemoralizatorFakeCitizenshipIDText" name="SGDemoralizatorFakeCitizenshipIDText" type="text" value="'+$.jStorage.get('SGDemoralizatorFakeCitizenshipID', 2)+'" autocomplete="off"><input id="SGDemoralizatorFakeCitizenshipIDSubmit" value="Change" type="button"><br>').appendTo("#SettingsDemoralizator");
  59. $('<b title="default value: false">SGDemoralizatorMode: </b><input class="SGDemoralizatorModeRadio" type="radio" name="SGDemoralizatorMode" value="true" '+SGChecked($.jStorage.get('SGDemoralizatorMode', false))+'> True <input class="SGDemoralizatorModeRadio" type="radio" name="SGDemoralizatorMode" value="false" '+SGChecked(!$.jStorage.get('SGDemoralizatorMode', false))+'>False<br>').appendTo("#SettingsDemoralizator");
  60. $('#SGTimerSpectatorSubmit').click(function(){
  61. $.jStorage.set('SGTimerSpectator', $('#SGTimerSpectatorText').val());
  62. });
  63. $('#SGFakeUserIDSubmit').click(function(){
  64. $.jStorage.set('SGFakeUserID', $('#SGFakeUserIDText').val());
  65. });
  66. $('#SGFakeCitizenshipIDSubmit').click(function(){
  67. $.jStorage.set('SGFakeCitizenshipID', $('#SGFakeCitizenshipIDText').val());
  68. });
  69. $('.SGSpectatorModeRadio').click(function(){
  70. if ($(this).val()==="true"){
  71. $.jStorage.set('SGSpectatorMode', true);
  72. } else {
  73. $.jStorage.set('SGSpectatorMode', false);
  74. }
  75. });
  76. $('.SGMotivationModeRadio').click(function(){
  77. if ($(this).val()==="true"){
  78. $.jStorage.set('SGMotivationMode', true);
  79. } else {
  80. $.jStorage.set('SGMotivationMode', false);
  81. }
  82. });
  83. $('#SGDemoralizatorTimerSpectatorSubmit').click(function(){
  84. $.jStorage.set('SGDemoralizatorTimerSpectator', $('#SGDemoralizatorTimerSpectatorText').val());
  85. });
  86. $('#SGDemoralizatorFakeUserIDCountSubmit').click(function(){
  87. $.jStorage.set('SGDemoralizatorFakeUserIDCount', $('#SGDemoralizatorFakeUserIDCountText').val());
  88. });
  89. $('#SGDemoralizatorFakeCitizenshipIDSubmit').click(function(){
  90. $.jStorage.set('SGDemoralizatorFakeCitizenshipID', $('#SGDemoralizatorFakeCitizenshipIDText').val());
  91. });
  92. $('.SGDemoralizatorModeRadio').click(function(){
  93. if ($(this).val()==="true"){
  94. $.jStorage.set('SGDemoralizatorMode', true);
  95. } else {
  96. $.jStorage.set('SGDemoralizatorMode', false);
  97. }
  98. });
  99. $('<p style="clear: both"></p><br>').appendTo(wrapperSettings);
  100. }
  101. /*---On Settings Page---*/
  102. /*---On Shadow Government Page---*/
  103. if (localUrl.indexOf( URLShadowGovernment, 0 ) >= 0){
  104. var wrapperSG = $("#userMenu + script + div");
  105. wrapperSG.attr("id","WrapperMainConfig");
  106. wrapperSG.empty();
  107. $('<center><h1>Shadow Government Blank</h1></center><p style="clear: both"></p><br>').appendTo(wrapperSG);
  108. }
  109. /*---On Shadow Government Page---*/
  110. /*---On Battle Page---*/
  111. if (localUrl.indexOf( URLBattle, 0 ) >= 0){
  112. /*---Отключаем стилями картинки в окне сообщения боя---*/
  113. var stringCSS = '.fightsprite.critical1,.fightsprite.critical0,.fightsprite.critical2,.fightsprite.critical3,.fightsprite.normal1,.fightsprite.normal0,.fightsprite.normal2,.fightsprite.normal3,.fightsprite.miss,.fightsprite.toofast {\n display:none;\n}\n\n';
  114. stringCSS += '.fightsprite.critical1 + br,.fightsprite.critical0 + br,.fightsprite.critical2 + br,.fightsprite.critical3 + br,.fightsprite.normal1 + br,.fightsprite.normal0 + br,.fightsprite.normal2 + br,.fightsprite.normal3 + br,.fightsprite.miss + br,.fightsprite.toofast + br {\n display:none;\n}\n\n';
  115. style = document.createElement( "style" );
  116. style.type = "text/css";
  117. style.textContent = stringCSS;
  118. document.body.appendChild( style );
  119. style = undefined;
  120. /*---Отключаем стилями картинки в окне сообщения боя---*/
  121.  
  122. /*---Отключаем модальные окна на странице боя---*/
  123. window.picoModal=function() {
  124. return true;
  125. }
  126. /*---Отключаем модальные окна на странице боя---*/
  127. /*---Минимизируем заголовок боя---*/
  128. $("#battleHeaderImage").remove();
  129. $("#mainFight").css({"margin-top": "0px", "margin-bottom": ".4em",});
  130. $("#mainFight .fightFont").removeClass("fightFont").addClass("fightFontSG");
  131. $("#mainFight .fightFontSG").css({"text-shadow": "0 0 2px black",});
  132. /*---Минимизируем заголовок боя---*/
  133.  
  134. /*---Минимизируем списки топ3/топ10 по урону на странице боя---*/
  135. $("#battleStats").show();
  136. $("#battleStats").append('<div class="foundation-style small-10 columns SpectatorsBattleStatsElements"><div class="foundation-style small-5 columns"><b>Total defenders online:</b><i id="totaldefenders" style="display: inline;">0</i> <a style="font-size: 11px; display: none;" href="" id="defendersLink">Show details</a> <a style="font-size: 11px;" href="" id="defendersLinkHide">Hide details</a> <br><div align="center" id="defendersMenu" style="font-size: 11px; text-align: center; padding: 1em; margin: auto; display: block;">No one <br> </div></div><div class="foundation-style small-5 columns"><b>Total attackers online:</b><i id="totalattackers" style="display: inline;">0</i> <a style="font-size: 11px; display: none;" href="" id="attackersLink">Show details</a> <a style="font-size: 11px; display: inline;" href="" id="attackersLinkHide">Hide details</a> <br><div align="center" id="attackersMenu" style="font-size: 11px; text-align: center; padding: 1em; margin: auto; display: block;">No one <br> </div></div>');
  137. $("#battleStats").append('<div class="foundation-style small-10 columns SpectatorsBattleStatsElements"><b>Total spectators online:</b><i id="totalspectators" style="display: inline;">0</i> <a style="font-size: 11px; display: none;" href="" id="spectatorsLink">Show details</a> <a style="font-size: 11px;" href="" id="spectatorsLinkHide">Hide details</a> <br><div align="center" id="spectatorsMenu" style="font-size: 11px; text-align: center; padding: 1em; margin: auto; display: block;">No one <br> </div> </div>');
  138. $('#spectatorsLink').click(function () { $('#spectatorsLink').fadeOut('fast', function () { $('#spectatorsLinkHide').fadeIn('fast'); $('#spectatorsMenu').fadeIn('fast'); }); return false; });
  139. $('#spectatorsLinkHide').click(function () { $('#spectatorsLinkHide').fadeOut('fast', function () { $('#spectatorsLink').fadeIn('fast'); $('#spectatorsMenu').fadeOut('fast'); }); return false; });
  140.  
  141. $('#attackersLink').click(function () { $('#attackersLink').fadeOut('fast', function () { $('#attackersLinkHide').fadeIn('fast'); $('#attackersMenu').fadeIn('fast'); }); return false; });
  142. $('#attackersLinkHide').click(function () { $('#attackersLinkHide').fadeOut('fast', function () { $('#attackersLink').fadeIn('fast'); $('#attackersMenu').fadeOut('fast'); }); return false; });
  143.  
  144. $('#defendersLink').click(function () { $('#defendersLink').fadeOut('fast', function () { $('#defendersLinkHide').fadeIn('fast'); $('#defendersMenu').fadeIn('fast'); }); return false; });
  145. $('#defendersLinkHide').click(function () { $('#defendersLinkHide').fadeOut('fast', function () { $('#defendersLink').fadeIn('fast'); $('#defendersMenu').fadeOut('fast'); }); return false; });
  146. $("#battleSelectable:first + #battleSelectable div.small-10:first").remove();
  147. $('<div id="wrapperBattleStatsButtons" class="foundation-style small-10 columns" style="margin-bottom:.4em;"></div>').insertBefore($("#battleSelectable:first + #battleSelectable div.small-4:first"));
  148. $('<div id="showTop3BattleStats" style="padding-bottom:.4em;padding-top:.4em;margin:.4em .4em 0 .4em;" class="foundation-style button"> Show Top 3 </div>').appendTo($("#wrapperBattleStatsButtons"));
  149. $('<div id="showTop10BattleStats" style="padding-bottom:.4em;padding-top:.4em;margin:.4em .4em 0 .4em;" class="foundation-style button"> Show Top 10 </div>').appendTo($("#wrapperBattleStatsButtons"));
  150. $('<div id="showRecentActionsBattleStats" style="padding-bottom:.4em;padding-top:.4em;margin:.4em .4em 0 .4em;" class="foundation-style button"> Recent Actions </div>').appendTo($("#wrapperBattleStatsButtons"));
  151. $('<div id="showSpectatorsBattleStats" style="padding-bottom:.4em;padding-top:.4em;margin:.4em .4em 0 .4em;" class="foundation-style button"> Spectators </div>').appendTo($("#wrapperBattleStatsButtons"));
  152.  
  153. $("#wrapperBattleStatsButtons + div.small-4, #wrapperBattleStatsButtons + div.small-4 + div.small-2, #wrapperBattleStatsButtons + div.small-4 + div.small-2 + div.small-4").addClass("Top3BattleStatsElements");
  154. $("#battleStats > div.small-10:first").addClass("Top10BattleStatsElements");
  155. $(".Top10BattleStatsElements + div.small-10").addClass("RecentActionsBattleStatsElements");
  156. //$(".RecentActionsBattleStatsElements + div.small-10, .RecentActionsBattleStatsElements + div.small-10 + div.small-10").addClass("SpectatorsBattleStatsElements");
  157.  
  158. $(".Top3BattleStatsElements").css('display', $.jStorage.get('SGTop3BattleStatsElements', "none"));
  159. $("#showTop3BattleStats").click(function () {
  160. $(".Top3BattleStatsElements").toggle("fast", function () {
  161. $.jStorage.set('SGTop3BattleStatsElements', $(".Top3BattleStatsElements").css('display'));
  162. });
  163. });
  164. $(".Top10BattleStatsElements").css('display', $.jStorage.get('SGTop10BattleStatsElements', "none"));
  165. $("#showTop10BattleStats").click(function () {
  166. $(".Top10BattleStatsElements").toggle("fast", function () {
  167. $.jStorage.set('SGTop10BattleStatsElements', $(".Top10BattleStatsElements").css('display'));
  168. });
  169. });
  170. $(".RecentActionsBattleStatsElements").css('display', $.jStorage.get('SGRecentActionsBattleStatsElements', "none"));
  171. $("#showRecentActionsBattleStats").click(function () {
  172. $(".RecentActionsBattleStatsElements").toggle("fast", function () {
  173. $.jStorage.set('SGRecentActionsBattleStatsElements', $(".RecentActionsBattleStatsElements").css('display'));
  174. });
  175. });
  176. $(".SpectatorsBattleStatsElements").css('display', $.jStorage.get('SGSpectatorsBattleStatsElements', "none"));
  177. $("#showSpectatorsBattleStats").click(function () {
  178. $(".SpectatorsBattleStatsElements").toggle("fast", function () {
  179. $.jStorage.set('SGSpectatorsBattleStatsElements', $(".SpectatorsBattleStatsElements").css('display'));
  180. });
  181. });
  182. /*---Минимизируем списки топ3/топ10 по урону на странице боя---*/
  183.  
  184. /*---Формируем блок сообщений боя---*/
  185. $('#fightStatus').show().css({'width':'initial',}).removeClass("testDivblue").addClass("fightContainer");
  186. $('#fightResponse').hide().addClass("foundation-style small-10 columns");
  187. $('#fightResponse > div').addClass("testDivblue");
  188.  
  189.  
  190. //$('<div id="statusDiv" ><b>Status Action </b></div>').insertBefore($("#fightResponse"));
  191. $('<div id="wrapperStatusActionButtons" class="foundation-style small-10 columns" style="margin-bottom:.4em;"></div>').insertBefore($("#fightResponse"));
  192. $('<div id="SGShowStatusAction" style="padding-bottom:.4em;padding-top:.4em;margin:.4em .4em 0 .4em;" class="foundation-style button"> Show Status Action </div>').appendTo($("#wrapperStatusActionButtons"));
  193. $("#fightResponse").css('display', $.jStorage.get('SGShowStatusActionButton', "none"));
  194. $("#SGShowStatusAction").click(function () {
  195. $("#fightResponse").toggle("fast", function () {
  196. $.jStorage.set('SGShowStatusActionButton', $("#fightResponse").css('display'));
  197. });
  198. });
  199. /* $('#statusDiv > b').css({'font-size': '14px', 'color': '#f2f2f2', 'text-shadow': '0 0 1px black,0 1px 1px black,0 -1px 1px #333'});
  200. $('<a style="font-size: 11px; display: inline;" href="" id="statusLink">Show details</a>').appendTo($("#statusDiv"));
  201. $('<a style="font-size: 11px; display: none;" href="" id="statusLinkHide">Hide details</a>').appendTo($("#statusDiv"));
  202.  
  203. $('#statusLink').click(function () {
  204. $('#statusLink').fadeOut('fast', function () {
  205. $('#statusLinkHide').fadeIn('fast');
  206. $('#fightResponse').fadeIn('fast');
  207. });
  208. return false;
  209. });
  210. $('#statusLinkHide').click(function () {
  211. $('#statusLinkHide').fadeOut('fast', function () {
  212. $('#statusLink').fadeIn('fast');
  213. $('#fightResponse').fadeOut('fast');
  214. });
  215. return false;
  216. }); */
  217. /*---Формируем блок сообщений боя---*/
  218. /*---Спектатор---*/
  219. //var SGSpectatorMode = $.jStorage.get('SGSpectatorMode', 1);
  220. if($.jStorage.get('SGSpectatorMode', true)){
  221. var SGTimerSpectator = $.jStorage.get('SGTimerSpectator', 7000); // Кд отправки запросов данных 1 секунда = 1000 миллисекунд.
  222.  
  223. function sendUpdateRequestSpectator() {
  224. if (!hasFocus)
  225. return;
  226. var FakeUserID = $.jStorage.get('SGFakeUserID', 1); // Айди фейкового пользователя.
  227. var FakeCitizenshipID = $.jStorage.get('SGFakeCitizenshipID', 1); // Айди гражданства фейкового пользователя.
  228. var dataString = 'id=' + $("#battleRoundId").val() + "&at="+FakeUserID+"&ci="+FakeCitizenshipID+"&premium=1";
  229. $.ajax({
  230. type: "GET",
  231. url: "battleScore.html",
  232. data: dataString,
  233. dataType: "json",
  234. success: function(msg) {
  235. updateStatus(msg.attackerScore, msg.defenderScore, msg.remainingTimeInSeconds, msg.percentAttackers);
  236. updateBattleHeros(msg.topAttackers, msg.topDefenders);
  237. updateTop10(msg.top10Attackers, msg.top10Defenders);
  238. updateBattleMonitor(msg);
  239. //updatePlace(msg.yourPlace);
  240. //updateTotalDamage(msg.totalPlayerDamage);
  241. for (var i = 0; i < msg.recentAttackers.length; i++) {
  242. if (msg.recentAttackers[i].id == latestAttackerId) {
  243. msg.recentAttackers = msg.recentAttackers.slice(0, i);
  244. break;
  245. }
  246. }
  247. for (var i = 0; i < msg.recentDefenders.length; i++) {
  248. if (msg.recentDefenders[i].id == latestDefenderId) {
  249. msg.recentDefenders = msg.recentDefenders.slice(0, i);
  250. break;
  251. }
  252. }
  253. if (msg.recentAttackers.length != 0) {
  254. latestAttackerId = msg.recentAttackers[0].id;
  255. attackerHits = msg.recentAttackers;
  256. }
  257. if (msg.recentDefenders.length != 0) {
  258. latestDefenderId = msg.recentDefenders[0].id;
  259. defenderHits = msg.recentDefenders;
  260. }
  261. }
  262. });
  263. }
  264. var intervalID = window.setInterval(sendUpdateRequestSpectator, SGTimerSpectator);
  265. continueThread = false;
  266. }
  267. /*---Спектатор---*/
  268. /*---Фейк Спектатор Деморализатор---*/
  269. if($.jStorage.get('SGDemoralizatorMode', false)){
  270. var SGDemoralizatorFakeUserIDCount = $.jStorage.get('SGDemoralizatorFakeUserIDCount', 10);
  271. var SGDemoralizatorFakeCitizenshipID = $.jStorage.get('SGDemoralizatorFakeCitizenshipID', 2);
  272. var SGDemoralizatorTimerSpectator = $.jStorage.get('SGDemoralizatorTimerSpectator', 10000);
  273.  
  274. function sendUpdateRequestSpectatorFake(UserID,CitizenshipID) {
  275. var dataString = 'id=' + $("#battleRoundId").val() + "&at="+UserID+"&ci="+CitizenshipID+"&premium=1";
  276. $.ajax({
  277. type: "GET",
  278. url: "battleScore.html",
  279. data: dataString,
  280. dataType: "json"
  281. });
  282. }
  283.  
  284. function FakeSpectators(){
  285. n = 0;
  286. while (n < SGDemoralizatorFakeUserIDCount) {
  287. setTimeout(sendUpdateRequestSpectatorFake, (n+1)*(SGDemoralizatorTimerSpectator/SGDemoralizatorFakeUserIDCount), (n+1), SGDemoralizatorFakeCitizenshipID);
  288. n++;
  289. }
  290. }
  291.  
  292. window.setInterval(FakeSpectators, SGDemoralizatorTimerSpectator);
  293. }
  294. /*---Фейк Спектатор Деморализатор---*/
  295. }
  296. /*---On Battle Page---*/
  297.  
  298. /*---On Motivation Page---*/
  299. if (localUrl.indexOf( URLMotivation, 0 ) >= 0){
  300. //var SGMotivationMode = $.jStorage.get('SGMotivationMode', 1);
  301. if($.jStorage.get('SGMotivationMode', true)){
  302. var CurrentDay = /\d+/gim.exec($("#userMenu div div.panel.callout b:eq(2)").html());
  303. var CurrentDay = parseInt(CurrentDay[0]);
  304. var tmpMotivateCountToday = {day: CurrentDay,count: 0};
  305. var MotivateCountToday = JSON.parse($.jStorage.get('SGMotivateCountToday', JSON.stringify(tmpMotivateCountToday)));
  306. //console.log(MotivateCountToday);
  307. if (MotivateCountToday.day != tmpMotivateCountToday.day){
  308. MotivateCountToday = tmpMotivateCountToday;
  309. $.jStorage.set('SGMotivateCountToday', JSON.stringify(MotivateCountToday));
  310. }
  311.  
  312. $(".dataTable ul.button.foundation-center.foundation-style-group li a.foundation-style.button.small.help i.icon-cupcake").parent().parent().toggle();
  313. $("<span>Today motivate count: <b id=\"countMotivationToday\">0</b><span>").insertAfter("#newCitizenStatsForm");
  314. $("#countMotivationToday").html(MotivateCountToday.count);
  315.  
  316. $( "table.dataTable tr" ).each(function( index, element ) {
  317. if ($(this).children("td").children("i.icon-uniF478").length>0){
  318. var MotivateUserID = $(this).children("td:first").children(".profileLink").attr("href").replace("profile.html?id=","");
  319. if ($(this).children("td:eq(4)").children("i.icon-uniF478").length==1){
  320. $(this).children("td:eq(4)").empty();
  321. $(this).children("td:eq(4)").append('<i id="motivate-weapons-'+MotivateUserID+'" style="cursor: pointer; color: #000; font-size: 1.25em; text-shadow: 0 0 0" class="motivate-element motivate-weapons icon-tank" value="'+MotivateUserID+'"></i>');
  322. }
  323. if ($(this).children("td:eq(5)").children("i.icon-uniF478").length==1){
  324. $(this).children("td:eq(5)").empty();
  325. $(this).children("td:eq(5)").append('<i id="motivate-breads-'+MotivateUserID+'" style="cursor: pointer; color: #000; font-size: 1.25em; text-shadow: 0 0 0" class="motivate-element motivate-breads icon-bread" value="'+MotivateUserID+'"></i>');
  326. }
  327. if ($(this).children("td:eq(6)").children("i.icon-uniF478").length==1){
  328. $(this).children("td:eq(6)").empty();
  329. $(this).children("td:eq(6)").append('<i id="motivate-gifts-'+MotivateUserID+'" style="cursor: pointer; color: #000; font-size: 1.25em; text-shadow: 0 0 0" class="motivate-element motivate-gifts icon-gift" value="'+MotivateUserID+'"></i>');
  330. }
  331. }
  332. return true;
  333. });
  334.  
  335. function motivateResponse (jqXHR, timeout, message) {
  336. var dataString = /type=(\d)&id=(\d+)/gim.exec($(this)[0].data);
  337. var idType = parseInt(dataString[1]);
  338. var idUser = parseInt(dataString[2]);
  339. var arrType = ["none","weapons","breads","gifts"]
  340. var messageResponse = "";
  341. if (messageResponse = /&citizenMessage=(\S+)/gim.exec(jqXHR.getResponseHeader("TM-finalURLdhdg"))){
  342. if (messageResponse[1]=="SUCCESFULLY_MOTIVATED"){
  343. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  344. parentTDw.empty();
  345. parentTDw.append('<i title="Мотивация прошла успешно" style="color: #0c0; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF479"></i>');
  346. MotivateCountToday.count = MotivateCountToday.count+1;
  347. $.jStorage.set('SGMotivateCountToday', JSON.stringify(MotivateCountToday));
  348. $("#countMotivationToday").html(MotivateCountToday.count);
  349. } else {
  350. $("#motivate-"+arrType[idType]+"-"+idUser).attr("title","Ошибка: "+messageResponse[1]);
  351. }
  352. } else if(/Вы отправили слишком много мотиваций сегодня/gim.exec(jqXHR.responseText)){
  353. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  354. parentTDw.empty();
  355. parentTDw.append('<i title="Вы отправили слишком много мотиваций сегодня" style="color: #c00; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF478"></i>');
  356. MotivateCountToday.count = 5;
  357. $.jStorage.set('SGMotivateCountToday', JSON.stringify(MotivateCountToday));
  358. $("#countMotivationToday").html(MotivateCountToday.count);
  359. } else if(/Вы уже отправляли комплект этому гражданину сегодня/gim.exec(jqXHR.responseText)){
  360. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  361. parentTDw.empty();
  362. parentTDw.append('<i title="Вы уже отправляли комплект этому гражданину сегодня" style="color: #c00; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF478"></i>');
  363. } else if(/Этот гражданин получил слишком много мотиваций сегодня/gim.exec(jqXHR.responseText)){
  364. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  365. parentTDw.empty();
  366. parentTDw.append('<i title="Этот гражданин получил слишком много мотиваций сегодня" style="color: #c00; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF478"></i>');
  367. } else if(/Этот гражданин получил все виды мотивационных комплектов сегодня/gim.exec(jqXHR.responseText)){
  368. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  369. parentTDw.empty();
  370. parentTDw.append('<i title="Этот гражданин получил все виды мотивационных комплектов сегодня" style="color: #c00; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF478"></i>');
  371. } else if(/У вас не достаточно предметов/gim.exec(jqXHR.responseText)){
  372. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  373. parentTDw.empty();
  374. parentTDw.append('<i title="У вас не достаточно предметов" style="color: #c00; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF478"></i>');
  375. }
  376. }
  377.  
  378. $(".motivate-element").click(function(){
  379. var typeMotivate = 0;
  380. if ($(this).hasClass("motivate-weapons")){
  381. typeMotivate = 1;
  382. } else if ($(this).hasClass("motivate-breads")){
  383. typeMotivate = 2;
  384. } else if ($(this).hasClass("motivate-gifts")){
  385. typeMotivate = 3;
  386. }
  387. var parentTD = $(this).parent();
  388. var userID = $(this).attr("value");
  389. var dataString = "type="+typeMotivate+"&id="+userID;
  390. $.ajax({
  391. type: "POST",
  392. url: "motivateCitizen.html?id="+userID,
  393. data: dataString,
  394. dataType: "json",
  395. error: motivateResponse
  396. });
  397. });
  398.  
  399. $(".motivate-element").hover(function() {
  400. $(this).css("color", "#999");
  401. }, function() {
  402. $(this).css("color", "#000");
  403. });
  404. }
  405. }
  406. /*---On Motivation Page---*/
  407. }

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址