123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197 |
- //Bored Mathematicians Quests
- event.load("entity_click");
- event.load("snuvi_click");
- event.load("player_move");
- Overworld = world.get("world");
- Jan_inv = inv.new("222222222", text.new("Quests: Jan"));
- quest_book = item.create("ENCHANTED_BOOK", 1, "§fBored Mathematician...", "§f...with some hyperbolic fun.");
- inv.setItem(Jan_inv, 0, quest_book);
- quest_book2 = item.create("ENCHANTED_BOOK", 1, "§fBored Mathematician...", "§f...with some hypobolic fun.");
- inv.setItem(Jan_inv, 1, quest_book2);
- quest_book3 = item.create("ENCHANTED_BOOK", 1, "§fBored Mathematician...", "§f...with a different kind of afk loop.");
- inv.setItem(Jan_inv, 2, quest_book3);
- red = event.addMoveData(loc.new(Overworld, 220.5,53,-57), loc.new(Overworld, 222.8,55,-58), 5, -1);
- orange = event.addMoveData(loc.new(Overworld, 223,50,-58), loc.new(Overworld, 222,52,-59.5), 5, -1);
- blue = event.addMoveData(loc.new(Overworld, 226,50,-55), loc.new(Overworld, 228,52,-56), 5, -1);
- green = event.addMoveData(loc.new(Overworld, 220.5,53,-55), loc.new(Overworld, 222.5,55,-56), 5, -1);
- end = event.addMoveData(loc.new(Overworld, 226,53,-55), loc.new(Overworld, 228,55,-56), 5, -1);
- end2 = event.addMoveData(loc.new(Overworld, 217.5,46,-63), loc.new(Overworld, 216,48,-64), 5, -1);
- //224.5, -56.5 mid coords
- red2_1 = event.addMoveData(loc.new(Overworld, 220.5,41,-63), loc.new(Overworld, 218,43,-65), 5, -1);
- blue2_1 = event.addMoveData(loc.new(Overworld, 222.5,46,-62), loc.new(Overworld, 224,47,-65), 5, -1);
- yellow2_1 = event.addMoveData(loc.new(Overworld, 220,46,-61), loc.new(Overworld, 218,47,-59), 5, -1);
- red2_2 = event.addMoveData(loc.new(Overworld, 222.5,36,-62), loc.new(Overworld, 224,38,-64), 5, -1);
- blue2_2 = event.addMoveData(loc.new(Overworld, 222.5,41,-61), loc.new(Overworld, 224,43,-59), 5, -1);
- yellow2_2 = event.addMoveData(loc.new(Overworld, 222.5,36,-61), loc.new(Overworld, 218,38,-59), 5, -1);
- loop = event.addMoveData(loc.new(Overworld, 230,25,-69), loc.new(Overworld, 233,27,-72), 5, -1);
- Hyperbolic_start = loc.new(Overworld, 227, 53, -57.5);
- Hypobolic_start = loc.new(Overworld, 219.5, 46, -63.5);
- Loop_start = loc.new(Overworld, 231.5, 38.5, -70.5);
- player_back_pos = map.new();
- //----------------------------------------------------
- @wait
- wait();
- if(event == "entity_click"){
- if(entity.getType(entity) != "human") {
- goto("wait");
- }
- human_name = human.getName(entity);
- if(human_name == "§9Jan") {
- if(player.isSneaking(player)){
- inv.open(Jan_inv, player);
- goto("wait");
- }
- }
- goto("wait");
- }
- if(event == "snuvi_click"){
- if(click != "LEFT" && click != "RIGHT"){
- goto("wait");
- }
- item = inv.getItem(inv, inv_slot);
- item.removeFlag(item, "HIDE_DESTROYS");
- title_string = string.text(inv_title);
- if(title_string == "Quests: Jan") {
- map.add(player_back_pos, player.getuuid(player), entity.getLocation(player));
- if(inv_slot == 0){
- entity.teleport(player, Hyperbolic_start);
- msg(player, text.new("[§9SirTerence7§f] it's called a Hyperbolic plane."));
- }
- elseif(inv_slot == 1){
- entity.teleport(player, Hypobolic_start);
- msg(player, text.new("[§9SirTerence7§f] it's called spherical-geometry"));
- msg(player, text.new("[§9SirTerence7§f] though I prefer calling it a Hypobolic plane."));
- }
- elseif(inv_slot == 2){
- entity.teleport(player, Loop_start);
- msg(player, text.new("[§9SirTerence7§f] falling endlessly into the abyss..."));
- value = 0;
- }
- }
- goto("wait");
- }
- if(event == "player_move"){
- player_loc = entity.getLocation(player);
- if(id == red){
- entity.teleport(player, loc.mod(player_loc, 0, -3, 0));
- }
- elseif(id == orange){
- entity.teleport(player, loc.mod(player_loc, 0, 3, 0));
- }
- elseif(id == blue){
- relative_X = loc.getX(player_loc) - 224.5;
- relative_Z = loc.getZ(player_loc) + 56.5;
- yaw = loc.getYaw(player_loc);
- yaw -= 90;
- if(yaw <= 180){
- yaw += 180;
- }
- loc.setYaw(player_loc, yaw);
- entity.teleport(player, loc.new(Overworld, 224.5-relative_Z, loc.getY(player_loc)+3, -56.5+relative_X, yaw, loc.getPitch(player_loc)));
- }
- elseif(id == green){
- relative_X = loc.getX(player_loc) - 224.5;
- relative_Z = loc.getZ(player_loc) + 56.5;
- yaw = loc.getYaw(player_loc);
- yaw -= 90;
- if(yaw <= 180){
- yaw += 360;
- }
- loc.setYaw(player_loc, yaw);
- entity.teleport(player, loc.new(Overworld, 224.5+relative_Z, loc.getY(player_loc)-3, -56.5-relative_X, yaw, loc.getPitch(player_loc)));
- }
- elseif(id == end || id == end2){
- uuid = player.getuuid(player);
- if(map.contains(player_back_pos, uuid)){
- entity.teleport(player, map.remove(player_back_pos, uuid));
- msg(player, text.new("[§9SirTerence7§f] welcome back"));
- }
- }
- elseif(id == yellow2_1){
- entity.teleport(player, loc.mod(player_loc, 0, -5, 0));
- }
- elseif(id == red2_1){
- entity.teleport(player, loc.mod(player_loc, 0, 5, 0));
- }
- elseif(id == blue2_2){
- entity.teleport(player, loc.mod(player_loc, 0, -5, 0));
- }
- elseif(id == yellow2_2){
- entity.teleport(player, loc.mod(player_loc, 0, 5, 0));
- }
- elseif(id == blue2_1){
- relative_X = loc.getX(player_loc) - 221.5;
- relative_Z = loc.getZ(player_loc) + 61.5;
- yaw = loc.getYaw(player_loc);
- yaw -= 90;
- if(yaw <= 180){
- yaw += 180;
- }
- loc.setYaw(player_loc, yaw);
- entity.teleport(player, loc.new(Overworld, 221.5-relative_Z, loc.getY(player_loc)-10, -61.5+relative_X, yaw, loc.getPitch(player_loc)));
- }
- elseif(id == red2_2){
- relative_X = loc.getX(player_loc) - 221.5;
- relative_Z = loc.getZ(player_loc) + 61.5;
- yaw = loc.getYaw(player_loc);
- yaw -= 90;
- if(yaw <= 180){
- yaw += 360;
- }
- loc.setYaw(player_loc, yaw);
- entity.teleport(player, loc.new(Overworld, 221.5+relative_Z, loc.getY(player_loc)+10, -61.5-relative_X, yaw, loc.getPitch(player_loc)));
- }
- elseif(id == loop){
- if(value == null){
- goto("wait");
- }
- if(value++ > 50){
- uuid = player.getuuid(player);
- if(map.contains(player_back_pos, uuid)){
- entity.setMotion(player, 0, 0, 0);
- back_loc = map.remove(player_back_pos, uuid);
- loc.setY(back_loc, loc.getY(back_loc)-0.25);
- entity.teleport(player, back_loc);
- entity.setMotion(player, 0, 0.5, 0);
- msg(player, text.new("[§9SirTerence7§f] welcome back"));
- }
- }
- else{
- motion_array = entity.getMotion(player);
- loc.setY(player_loc, 38.5);
- entity.teleport(player, player_loc);
- entity.setMotion(player, motion_array[0], -math.abs(motion_array[1])-3*value/20, motion_array[2]);
- }
- }
- goto("wait");
- }
- goto("wait");
- //----------------------------------------------------
- function item.create(material, amount, name, lore){
- itemstack = item.new(material.get(material), amount);
- if(name != null){
- item.setName(itemstack, text.new(name));
- }
- if(lore != null){
- if(string.class(lore) == "String"){
- lore_list = list.new();
- list.add(lore_list, text.new(lore));
- item.setLore(itemstack, lore_list);
- }else{
- item.setLore(itemstack, lore);
- }
- }
- return(itemstack);
- }
|