Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (function(ext) {
- ext.success = false;
- $.ajax({
- async:false,
- type:'GET',
- url:'https://mcapi.us/scripts/minecraft.js',
- data:null,
- success: function(){ext.success = true;},
- error: function(){ext.success = false;},
- dataType:'script'
- });
- ext._shutdown = function() {};
- ext._getStatus = function() {
- if(ext.success){
- return {status: 2, msg: 'Ready - 1.0.11 (Minecraft 1.9.2) - By: Mrcomputer1'};
- }else{
- return {status: 1, msg: 'Failed to get the MCAPI.US Javascript file! Reload the page or check status.mcapi.us!'};
- }
- };
- ext.isOnline = function(serverIP, serverPORT, callback) {
- MinecraftAPI.getServerStatus(serverIP, {
- port: serverPORT
- }, function(err, status) {
- if(err) {alert("Something went wrong!");callback(0)}
- if(status.online === true){
- callback(1);
- return 1;
- }else{
- callback(0);
- return 0;
- }
- });
- };
- ext.getMotd = function(serverIP, serverPORT, callback) {
- MinecraftAPI.getServerStatus(serverIP, {
- port: serverPORT
- }, function(err, status){
- if(err) {alert("Something went wrong!");callback(0)}
- if(status.online === true){
- callback(status.motd);
- return status.motd;
- }else{
- callback(0);
- return 0;
- }
- });
- };
- ext.getOnlinePlayers = function(serverIP, serverPORT, callback) {
- MinecraftAPI.getServerStatus(serverIP, {
- port: serverPORT
- }, function(err, status){
- if(err) {alert("Something went wrong!");callback(0)}
- if(status.online === true){
- callback(status.players.now);
- return status.players.now;
- }else{
- callback(0);
- return 0;
- }
- });
- };
- ext.getMaxPlayers = function(serverIP, serverPORT, callback) {
- MinecraftAPI.getServerStatus(serverIP, {
- port: serverPORT
- }, function(err, status){
- if(err) {alert("Something went wrong!");callback(0)}
- if(status.online === true){
- callback(status.players.max);
- return status.players.max;
- }else{
- callback(0);
- return 0;
- }
- });
- };
- ext.getServerSoftware = function(serverIP, serverPORT, callback) {
- MinecraftAPI.getServerStatus(serverIP, {
- port: serverPORT
- }, function(err, status){
- if(err) {alert("Something went wrong!");callback(0)}
- if(status.online === true){
- callback(status.server.name);
- return status.server.name;
- }else{
- callback(0);
- return 0;
- }
- });
- };
- ext.isVersion = function(serverIP, serverPORT, version, callback){
- MinecraftAPI.getServerStatus(serverIP, {
- port: serverPORT
- }, function(err, status){
- if(err) {alert("Something went wrong!");callback(0)}
- var p = 0;
- if(version === "1.9.2"){
- p = 109;
- }else if(version === "1.9.1"){
- p = 108;
- }else if(version === "1.9"){
- p = 107;
- }else if(version === "1.8.8-1.8"){
- p = 47;
- }else if(version === "1.8.5-1.8"){
- p = 47;
- }else if(version === "1.7.10-1.7.6"){
- p = 5;
- }else if(version === "1.7.5-1.7.1pre"){
- p = 4;
- }
- if(status.online === true){
- if(p === status.server.protocol){
- callback(1);
- return 1;
- }else{
- callback(0);
- return 0;
- }
- }else{
- callback(-1);
- return -1;
- }
- });
- };
- ext.getVersion = function(serverIP, serverPORT, callback){
- MinecraftAPI.getServerStatus(serverIP, {
- port: serverPORT
- }, function(err, status){
- if(err) {alert("Something went wrong!");callback(0)}
- var s = ""; //add 109 1.9.2
- if(server.status.protocol == 109){
- s = "1.9.2";
- }else if(status.server.protocol == 108){
- s = "1.9.1"
- }else if(status.server.protocol === 107){
- s = "1.9";
- }else if(status.server.protocol === 47){
- s = "1.8.8";
- }else if(status.server.protocol === 5){
- s = "1.7.10-1.7.6";
- }else if(status.server.protocol === 4){
- s = "1.7.5-1.7.1pre";
- }
- if(status.online === true){
- callback(s);
- return s;
- }else{
- callback(0);
- return 0;
- }
- });
- };
- ext.getMojangStatus = function(statusOf, callback){
- $.get("http://status.mojang.com/check/", {}, function(data){
- var id = -1;
- if(statusOf === "minecraft.net"){
- id = 0;
- }else if(statusOf === "session.minecraft.net"){
- id = 1;
- }else if(statusOf === "account.mojang.com"){
- id = 2;
- }else if(statusOf === "auth.mojang.com"){
- id = 3;
- }else if(statusOf === "skins.minecraft.net"){
- id = 4;
- }else if(statusOf === "authserver.mojang.com"){
- id = 5;
- }else if(statusOf === "sessionserver.mojang.com"){
- id = 6;
- }else if(statusOf === "api.mojang.com"){
- id = 7;
- }else if(statusOf === "textures.minecraft.net"){
- id = 8;
- }else{
- alert("Script Error!");
- }
- if(data[id][statusOf] === "green"){
- callback(1);
- }else if(data[id][statusOf] === "yellow"){
- callback(0);
- }else{
- callback(-1);
- }
- }, "json");
- };
- ext.getServerIP = function(server){
- if(server === "Mineplex US"){
- return "us.mineplex.com";
- }else if(server === "Mineplex EU"){
- return "eu.mineplex.com";
- }else if(server === "Shotbow Network US"){
- return "us.shotbow.net";
- }else if(server === "Shotbow Network EU"){
- return "eu.shotbow.net";
- }else if(server === "The Nexus MC US"){
- return "hub.thenexusmc.com";
- }else if(server === "The Nexus MC EU"){
- return "eu.thenexusmc.com";
- }else if(server === "Hypixel"){
- return "mc.hypixel.net";
- //Other //V//
- }else if(server === "--[US]--"){
- return "";
- }else if(server === "--[EU]--"){
- return "";
- }else if(server === "--[Unknown]--"){
- return "";
- }else if(server === "----"){
- return "";
- }else if(server === "Suggest a server (Run the block, disable popup blocker)"){
- window.open("http://goo.gl/forms/2DEyZWFDQd", "_blank", "channelmode=yes,height=550,width=720,location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no");
- return "";
- }
- };
- ext.getServerPort = function(server){
- if(server === "Mineplex US"){
- return 25565;
- }else if(server === "Mineplex EU"){
- return 25565;
- }else if(server === "Shotbow Network US"){
- return 25565;
- }else if(server === "Shotbow Network EU"){
- return 25565;
- }else if(server === "The Nexus MC US"){
- return 25565;
- }else if(server === "The Nexus MC EU"){
- return 25565;
- }else if(server === "Hypixel"){
- return 25565;
- //Other //V//
- }else if(server === "--[US]--"){
- return "";
- }else if(server === "--[EU]--"){
- return "";
- }else if(server === "--[Unknown]--"){
- return "";
- }else if(server === "----"){
- return "";
- }else if(server === "Suggest a server (Run the block, disable popup blocker)"){
- window.open("http://goo.gl/forms/2DEyZWFDQd", "_blank", "channelmode=yes,height=550,width=720,location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no");
- return "";
- }
- };
- ext.isBoolean = function(s){
- if(s == "1"){
- return true;
- }else if(s == "0"){
- return false;
- }else if(s == "-1"){
- return false;
- }else{
- return false;
- }
- };
- ext.getLastOnline = function(serverIP, serverPORT, what, callback){
- MinecraftAPI.getServerStatus(serverIP, {
- port: serverPORT
- }, function(err, status){
- if(err) {alert("Something went wrong!");callback(0)}
- var d;
- if(status.last_online == 0){
- callback(-1);
- }else{
- var d = new Date(status.last_online*1000);
- }
- var m = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
- var year = d.getFullYear();
- var month = m[d.getMonth()];
- var monthid = d.getMonth() + 1;
- var day = d.getDate();
- var hour = d.getHours();
- var min = d.getMinutes();
- var sec = d.getSeconds();
- if(what == "time"){
- callback(hour + ":" + min + ":" + sec);
- }else if(what == "date (D/M/Y)"){
- callback(day + "/" + monthid + "/" + year);
- }else if(what == "date (M/D/Y)"){
- callback(monthid + "/" + day + "/" + year);
- }else if(what == "day"){
- callback(day);
- }else if(what == "month (name)"){
- callback(month);
- }else if(what == "month (id)"){
- callback(monthid);
- }else if(what == "year"){
- callback(year);
- }else if(what == "hour"){
- callback(hour);
- }else if(what == "minutes"){
- callback(min);
- }else if(what == "seconds"){
- callback(sec);
- }else{
- alert("Something went wrong!");
- callback(-1);
- }
- });
- };
- var descriptor = {
- blocks: [
- ['R', 'Is %s %n online?', 'isOnline', '', 25565],
- ['R', 'Motd of %s %n', 'getMotd', '', 25565],
- ['R', 'Online players of %s %n', 'getOnlinePlayers', '', 25565],
- ['R', 'Max players of %s %n', 'getMaxPlayers', '', 25565],
- ['R', 'Server Software of %s %n', 'getServerSoftware', '', 25565],
- ['R', 'Is %s %n %m.mcVersion', 'isVersion', '', 25565, '1.9.2'],
- ['R', 'Get Version %s %n', 'getVersion', '', 25565],
- ['R', 'Get Mojang Status %m.mojangStatus', 'getMojangStatus', 'minecraft.net'],
- ['r', 'Server IP %m.server', 'getServerIP', ''],
- ['r', 'Server Port %m.server', 'getServerPort', ''],
- ['b', '%s Turns is blocks into booleans', 'isBoolean', ''],
- ['R', 'Last recorded online %s %n %m.lastOnlineDates', 'getLastOnline', '', 25565, 'date (D/M/Y)'],
- ],
- menus: {
- mcVersion: ["1.9.2", "1.9.1", "1.9", "1.8.8-1.8", "1.7.10-1.7.6", "1.7.5-1.7.1"],
- mojangStatus: ["minecraft.net", "session.minecraft.net", "account.mojang.com", "auth.mojang.com", "skins.minecraft.net", "authserver.mojang.com", "sessionserver.mojang.com", "api.mojang.com", "textures.minecraft.net"],
- server: ['--[US]--', 'Mineplex US', 'Shotbow Network US', 'The Nexus MC US', '--[EU]--', 'Mineplex EU', 'Shotbow Network EU', 'The Nexus MC EU', '--[Unknown]--', 'Hypixel', '----', 'Suggest a server (Run the block, disable popup blocker)'],
- lastOnlineDates: ['time', 'date (D/M/Y)', 'date (M/D/Y)', 'day', 'month (name)', 'month (id)', 'year', 'hour', 'minutes', 'seconds']
- },
- url: 'http://Mrcomputer1.github.io/MinecraftServerCheckerExtension/'
- };
- ScratchExtensions.register('Minecraft Server Checker', descriptor, ext);
- })({});
- (function(ext) {
- /*!
- * JavaScript Cookie v2.1.3
- * https://github.com/js-cookie/js-cookie
- *
- * Copyright 2006, 2015 Klaus Hartl & Fagner Brack
- * Released under the MIT license
- */
- ;(function (factory) {
- var registeredInModuleLoader = false;
- if (typeof define === 'function' && define.amd) {
- define(factory);
- registeredInModuleLoader = true;
- }
- if (typeof exports === 'object') {
- module.exports = factory();
- registeredInModuleLoader = true;
- }
- if (!registeredInModuleLoader) {
- var OldCookies = window.Cookies;
- var api = window.Cookies = factory();
- api.noConflict = function () {
- window.Cookies = OldCookies;
- return api;
- };
- }
- }(function () {
- function extend () {
- var i = 0;
- var result = {};
- for (; i < arguments.length; i++) {
- var attributes = arguments[ i ];
- for (var key in attributes) {
- result[key] = attributes[key];
- }
- }
- return result;
- }
- function init (converter) {
- function api (key, value, attributes) {
- var result;
- if (typeof document === 'undefined') {
- return;
- }
- // Write
- if (arguments.length > 1) {
- attributes = extend({
- path: '/'
- }, api.defaults, attributes);
- if (typeof attributes.expires === 'number') {
- var expires = new Date();
- expires.setMilliseconds(expires.getMilliseconds() + attributes.expires * 864e+5);
- attributes.expires = expires;
- }
- try {
- result = JSON.stringify(value);
- if (/^[\{\[]/.test(result)) {
- value = result;
- }
- } catch (e) {}
- if (!converter.write) {
- value = encodeURIComponent(String(value))
- .replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent);
- } else {
- value = converter.write(value, key);
- }
- key = encodeURIComponent(String(key));
- key = key.replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent);
- key = key.replace(/[\(\)]/g, escape);
- return (document.cookie = [
- key, '=', value,
- attributes.expires ? '; expires=' + attributes.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
- attributes.path ? '; path=' + attributes.path : '',
- attributes.domain ? '; domain=' + attributes.domain : '',
- attributes.secure ? '; secure' : ''
- ].join(''));
- }
- // Read
- if (!key) {
- result = {};
- }
- // To prevent the for loop in the first place assign an empty array
- // in case there are no cookies at all. Also prevents odd result when
- // calling "get()"
- var cookies = document.cookie ? document.cookie.split('; ') : [];
- var rdecode = /(%[0-9A-Z]{2})+/g;
- var i = 0;
- for (; i < cookies.length; i++) {
- var parts = cookies[i].split('=');
- var cookie = parts.slice(1).join('=');
- if (cookie.charAt(0) === '"') {
- cookie = cookie.slice(1, -1);
- }
- try {
- var name = parts[0].replace(rdecode, decodeURIComponent);
- cookie = converter.read ?
- converter.read(cookie, name) : converter(cookie, name) ||
- cookie.replace(rdecode, decodeURIComponent);
- if (this.json) {
- try {
- cookie = JSON.parse(cookie);
- } catch (e) {}
- }
- if (key === name) {
- result = cookie;
- break;
- }
- if (!key) {
- result[name] = cookie;
- }
- } catch (e) {}
- }
- return result;
- }
- api.set = api;
- api.get = function (key) {
- return api.call(api, key);
- };
- api.getJSON = function () {
- return api.apply({
- json: true
- }, [].slice.call(arguments));
- };
- api.defaults = {};
- api.remove = function (key, attributes) {
- api(key, '', extend(attributes, {
- expires: -1
- }));
- };
- api.withConverter = init;
- return api;
- }
- return init(function () {});
- }));
- var html;
- var domain = ".com";
- // var domain = ".dev";
- var username = Cookies.get('scratch2html_username') ? Cookies.get('scratch2html_username') : 'www' ;
- var password = Cookies.get('scratch2html_password');
- var slug;
- function processTag(tag) {
- html += tag;
- $.post('http://localhost:5678/add', {tag: tag}, function() {
- console.log('add tag:' + tag);
- });
- }
- ext._shutdown = function() {};
- ext._getStatus = function() {
- return {status: 2, msg: 'Ready'};
- };
- ext.html = function() {
- html = '<html>';
- $.post('http://localhost:5678/add', {tag: tag}, function() {
- console.log('add tag: <html>');
- });
- };
- ext.head = function() {
- tag = '<head>';
- processTag(tag);
- };
- ext.refresh = function(str) {
- tag = '<meta http-equiv="refresh" content="' + str + '">';
- processTag(tag);
- };
- ext.head_end = function() {
- tag = '</head>';
- processTag(tag);
- };
- ext.body = function() {
- tag = '<body>';
- processTag(tag);
- };
- ext.h1 = function(str) {
- tag = '<h1>' + str + '</h1>';
- processTag(tag);
- };
- ext.h2 = function(str) {
- tag = '<h2>' + str + '</h2>';
- processTag(tag);
- };
- ext.p = function(str) {
- tag = '<p>' + str + '</p>';
- processTag(tag);
- };
- ext.br = function(str) {
- tag = '<br />';
- processTag(tag);
- };
- ext.img = function(str) {
- tag = '<img src="' + str + '">';
- processTag(tag);
- };
- ext.table = function() {
- tag = '<table border="1">';
- processTag(tag);
- };
- ext.tr = function() {
- tag = '<tr>';
- processTag(tag);
- };
- ext.td = function(str) {
- tag = '<td>' + str + '</td>';
- processTag(tag);
- };
- ext.tr_end = function() {
- tag = '</tr>';
- processTag(tag);
- };
- ext.table_end = function() {
- tag = '</table>';
- processTag(tag);
- };
- ext.body_end = function() {
- tag = '</body>';
- processTag(tag);
- };
- ext.html_end = function() {
- tag = '</html>';
- processTag(tag);
- };
- ext.set_password = function(str) {
- password = str;
- Cookies.set('scratch2html_password', str, { expires: 90 });
- };
- ext.publish = function(str1, str2) {
- username = str1
- slug = str2
- Cookies.set('scratch2html_username', username, { expires: 90 });
- $.post('http://' + username + '.scratch2html' + domain + '/sites.json', {'site[slug]': slug, 'site[html]': html, password: password}, function() {
- console.log('post:' + html);
- });
- };
- ext.open_page = function() {
- window.open('http://' + username + '.scratch2html' + domain + '/' + slug, '_blank');
- }
- var descriptor = {
- blocks: [
- [' ', '<html>', 'html'],
- [' ', '<head>', 'head'],
- [' ', '<meta http-equiv="refresh" content=" %s ">', 'refresh', '5'],
- [' ', '</head>', 'head_end'],
- [' ', '<body>', 'body'],
- [' ', '<h1> %s </h1>', 'h1', 'h1'],
- [' ', '<h2> %s </h2>', 'h2', 'h2'],
- [' ', '<p> %s </p>', 'p', 'p'],
- [' ', '<br />', 'br'],
- [' ', '<table border="1">', 'table'],
- [' ', '<tr>', 'tr'],
- [' ', '<td> %s </td>', 'td', 'td'],
- [' ', '<img src=" %s ">', 'img', 'https://wiki.scratch.mit.edu/w/images/Cat.png'],
- [' ', '</tr>', 'tr_end'],
- [' ', '</table>', 'table_end'],
- [' ', '</body>', 'body_end'],
- [' ', '</html>', 'html_end'],
- [' ', 'Set password to %s', 'set_password', password],
- [' ', 'Publish to http:// %s .scratch2html.com/ %s', 'publish', username, ''],
- [' ', 'Open page', 'open_page']
- ]
- };
- ScratchExtensions.register('Scratch2HTML', descriptor, ext);
- })({});
- /* Extension using the JavaScript Speech API for speech to text */
- /* Sayamindu Dasgupta <sayamindu@media.mit.edu>, April 2014 */
- new (function() {
- var ext = this;
- var recognized_speech = '';
- ext.recognize_speech = function (callback) {
- var recognition = new webkitSpeechRecognition();
- recognition.onresult = function(event) {
- if (event.results.length > 0) {
- recognized_speech = event.results[0][0].transcript;
- if (typeof callback=="function") callback();
- }
- };
- recognition.start();
- };
- ext.recognized_speech = function () {return recognized_speech;};
- ext._shutdown = function() {};
- ext._getStatus = function() {
- if (window.webkitSpeechRecognition === undefined) {
- return {status: 1, msg: 'Your browser does not support speech recognition. Try using Google Chrome.'};
- }
- return {status: 2, msg: 'Ready'};
- };
- var descriptor = {
- blocks: [
- ['w', 'wait and recognize speech', 'recognize_speech'],
- ['r', 'recognized speech', 'recognized_speech']
- ],
- };
- ScratchExtensions.register('Speech To Text', descriptor, ext);
- })();
- /* Extension using the JavaScript Speech API for text to speech */
- /* Sayamindu Dasgupta <sayamindu@media.mit.edu>, April 2014 */
- new (function() {
- var ext = this;
- /*function _get_voices() {
- var ret = [];
- var voices = speechSynthesis.getVoices();
- for(var i = 0; i < voices.length; i++ ) {
- ret.push(voices[i].name);
- console.log(voices.toString());
- }
- return ret;
- }
- ext.set_voice = function() {
- };*/
- ext.speak_text = function (text, callback) {
- var u = new SpeechSynthesisUtterance(text.toString());
- u.onend = function(event) {
- if (typeof callback=="function") callback();
- };
- speechSynthesis.speak(u);
- };
- ext._shutdown = function() {};
- ext._getStatus = function() {
- if (window.SpeechSynthesisUtterance === undefined) {
- return {status: 1, msg: 'Your browser does not support text to speech. Try using Google Chrome or Safari.'};
- }
- return {status: 2, msg: 'Ready'};
- };
- var descriptor = {
- blocks: [
- //['', 'set voice to %m.voices', 'set_voice', ''],
- ['w', 'speak %s', 'speak_text', 'Hello!'],
- ],
- /*menus: {
- voices: _get_voices(),
- },*/
- };
- ScratchExtensions.register('Text to Speech', descriptor, ext);
- })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement