Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name JustInTime
- // @version 1.0.3
- // @author Allure149
- // @include *://www.leitstellenspiel.de/*
- // @include *://www.missionchief.com/*
- // @include *://www.meldkamerspel.com/*
- // @grant none
- // ==/UserScript==
- /* global $ */
- (function() {
- 'use strict';
- if (localStorage.getItem("jit_own_missions") === null) {
- localStorage.jit_own_missions = true;
- localStorage.jit_car_ids = "30,32";
- }
- let car_ids = localStorage.jit_car_ids.split(","); // HLF 20, FuStW
- let eigene_einsaetze = localStorage.jit_own_missions; // eigene_einsaetze = false wenn ausschliesslich Verbandseinsaetze geprueft werden sollen
- $("#group_max_distance").after('<div><button type="button" class="btn btn-default btn-xs" data-toggle="modal" data-target="#jit_options">JIT Optionen</button><div class="modal fade" id="jit_options" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true" style="display: none;"><div class="modal-dialog" role="document"><div class="modal-content"><div class="modal-header"><h5 class="modal-title" id="exampleModalLabel">JustInTime Optionen</h5><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button></div><div class="modal-body"><div class="form-check"><input class="form-check-input" type="checkbox" value="" id="jit_own_missions" name="jit_own_missions"><label class="form-check-label" for="jit_own_missions"> Eigene Einsätze einbeziehen?</label></div><div class="form-group"><label for="jit_car_ids">IDs:</label><input type="text" name="jit_car_ids" id="jit_car_ids" class="form-control"></div><div class="modal-footer"></div><button type="button" class="btn btn-secondary" data-dismiss="modal">Schließen</button><button type="button" id="jit_save" class="btn btn-primary">Speichern</button></div></div></div></div></div>');
- if(eigene_einsaetze == "true") $("#jit_own_missions").prop("checked", true);
- else $("#jit_own_missions").prop("checked", false);
- $("#jit_car_ids").val(localStorage.jit_car_ids);
- $("#jit_save").on("click", function(){
- localStorage.jit_own_missions = $("#jit_own_missions").is(":checked");
- localStorage.jit_car_ids = $("#jit_car_ids").val();
- $("#jit_options").modal("toggle");
- });
- const mission_verband = $("#missionH1").text().trim().startsWith("[Verband]") ? true : false;
- const mission_id = $("#mission_reply_mission_id").val();
- let mission_time = $(".mission_header_info").find("#mission_countdown_" + mission_id).text().split(":").map(function(x){ return parseInt(x,10) });
- let mission_secs = (mission_time.length == 2) ? (mission_time[0] * 60) + mission_time[1] : (mission_time[0] * 3600) + (mission_time[1] * 60) + mission_time[2];
- let vehicle_type_id = 0; // aktuell gefiltertes Fahrzeug
- let car_id = 0; // != 0 wenn korrektes Fahrzeug gefunden wurde
- let car_secs = 0;
- let found = false;
- let state = "danger";
- let time_remain = 0;
- let end_text = "";
- if (!window.location.href.match(/(missions\/\d+$)|(einsaetze\/\d+$)/g)) return false;
- if(eigene_einsaetze == "false" && !mission_verband) return false;
- $("#vehicle_show_table_body_all > tr").each(function(){
- vehicle_type_id = $(this).find("td:nth-child(3)").attr("vehicle_type_id");
- car_secs = $(this).find("td:nth-child(4)").attr("timevalue");
- time_remain = mission_secs - car_secs;
- found = false;
- $.each(car_ids, function(i,e){
- if(e == vehicle_type_id) {
- car_id = vehicle_type_id;
- return false;
- }
- });
- if(car_id != 0) {
- if(time_remain > 60) {
- state = "success";
- } else if(time_remain <= 60 && time_remain > 0) {
- state = "warning";
- } else if(time_remain < 0){
- state = "danger";
- end_text = "Zeitfenster überschritten!";
- }
- found = true;
- return false;
- } else {
- state = "danger";
- end_text = "Kein Fahrzeug gefunden!";
- }
- if(found) return false;
- });
- if(isNaN(mission_secs)) {
- end_text = "Einsatz hat noch nicht begonnen.";
- state = "warning";
- }
- console.log("mission_id: " + mission_id);
- console.log("mission_time: " + mission_time);
- console.log("mission_secs: " + mission_secs);
- console.log("car_secs: " + car_secs);
- console.log("vehicle_type_id: " + car_id);
- console.log("time_remain: " + time_remain);
- $("#missionH1").after("<div id='mission_countdown_remaining' class='alert alert-" + state + "' style='float:right; padding: 2px 5px; margin:0'></div>");
- if(time_remain > 0) missionCountdown(time_remain, 'remaining');
- else $("#mission_countdown_remaining").text(end_text);
- })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement