mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-30 00:56:47 +01:00
WIP improvement - do not pull
This commit is contained in:
parent
7d963508ee
commit
4d16c0163c
@ -8,9 +8,11 @@ import java.io.FileWriter;
|
|||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Calendar;
|
import java.util.Calendar;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.GregorianCalendar;
|
import java.util.GregorianCalendar;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.Color;
|
import org.bukkit.Color;
|
||||||
@ -26,6 +28,7 @@ import com.gmail.nossr50.mcMMO;
|
|||||||
|
|
||||||
public final class HolidayManager {
|
public final class HolidayManager {
|
||||||
public static ArrayList<String> hasCelebrated;
|
public static ArrayList<String> hasCelebrated;
|
||||||
|
private static final Random rand = new Random();
|
||||||
|
|
||||||
private HolidayManager() {}
|
private HolidayManager() {}
|
||||||
|
|
||||||
@ -96,7 +99,7 @@ public final class HolidayManager {
|
|||||||
sender.sendMessage(ChatColor.BLUE + "nossr50's work and all the devs, here's a firework show!");
|
sender.sendMessage(ChatColor.BLUE + "nossr50's work and all the devs, here's a firework show!");
|
||||||
final int firework_amount = 10;
|
final int firework_amount = 10;
|
||||||
for (int i = 0; i < firework_amount; i++) {
|
for (int i = 0; i < firework_amount; i++) {
|
||||||
int delay = (int) (Math.random() * 3 * 20) + 4;
|
int delay = (int) (rand.nextDouble() * 3 * 20) + 4;
|
||||||
mcMMO.p.getServer().getScheduler().runTaskLater(mcMMO.p, new Runnable() {
|
mcMMO.p.getServer().getScheduler().runTaskLater(mcMMO.p, new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
@ -106,6 +109,48 @@ public final class HolidayManager {
|
|||||||
}
|
}
|
||||||
hasCelebrated.add(sender.getName());
|
hasCelebrated.add(sender.getName());
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
sender.sendMessage(ChatColor.BLUE + "Happy 2 Year Anniversary! In honor of all of");
|
||||||
|
sender.sendMessage(ChatColor.BLUE + "nossr50's work and all the devs, here's a firework show!");
|
||||||
|
/*
|
||||||
|
* Credit: http://www.geocities.com/spunk1111/
|
||||||
|
* (good luck finding that in 3 years heh)
|
||||||
|
* .''. . *''* :_\/_: .
|
||||||
|
* :_\/_: _\(/_ .:.*_\/_* : /\ : .'.:.'.
|
||||||
|
* .''.: /\ : /)\ ':'* /\ * : '..'. -=:o:=-
|
||||||
|
* :_\/_:'.:::. ' *''* * '.\'/.'_\(/_ '.':'.'
|
||||||
|
* : /\ : ::::: *_\/_* -= o =- /)\ '
|
||||||
|
* '..' ':::' * /\ * .'/.\'. ' *
|
||||||
|
* * *..* : *
|
||||||
|
* * * *
|
||||||
|
* * * *
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Color map
|
||||||
|
* AAAA D GGGG JJJJJJ K
|
||||||
|
* AAAAAA DDDDD EEEGGGGGG JJJJJJ KKKKKKK
|
||||||
|
* BBBBAAAAAA DDD EEEGGGGGG I JJJJJ KKKKKKK
|
||||||
|
* BBBBBBACCCCC D FFFF G IIIIIIIHHHHH KKKKKKK
|
||||||
|
* BBBBBB CCCCC FFFFFF IIIIIII HHH K
|
||||||
|
* BBBB CCCCC FFFFFF IIIIIII H k
|
||||||
|
* b FFFF I k
|
||||||
|
* b i k
|
||||||
|
* b i k
|
||||||
|
*/
|
||||||
|
ChatColor colorA = chatcolorchoose();
|
||||||
|
ChatColor colorB = chatcolorchoose();
|
||||||
|
ChatColor colorC = chatcolorchoose();
|
||||||
|
ChatColor colorD = chatcolorchoose();
|
||||||
|
ChatColor colorE = chatcolorchoose();
|
||||||
|
ChatColor colorF = chatcolorchoose();
|
||||||
|
ChatColor colorG = chatcolorchoose();
|
||||||
|
ChatColor colorH = chatcolorchoose();
|
||||||
|
ChatColor colorI = chatcolorchoose();
|
||||||
|
ChatColor colorJ = chatcolorchoose();
|
||||||
|
ChatColor colorK = chatcolorchoose();
|
||||||
|
sender.sendMessage(String.format(" %1$s.''. %4$s. %7$s*''* %10$s:_\/_: %11$s.", colorA, colorB, colorC, colorD, colorE, colorF, colorG, colorH, colorI, colorJ, colorK));
|
||||||
|
sender.sendMessage(String.format(" %1$s:_\/_: %4$s_\(/_ %5$s.:.%7$s*_\/_* %10$s: /\ : %11$s.'.:.'.")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -114,8 +159,10 @@ public final class HolidayManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static void spawnFireworks(Player player) {
|
private static void spawnFireworks(Player player) {
|
||||||
int power = (int) (Math.random() * 3) + 1;
|
int power = (int) (rand.nextDouble() * 3) + 1;
|
||||||
int type = (int) (Math.random() * 5) + 1;
|
int type = (int) (rand.nextDouble() * 5) + 1;
|
||||||
|
double varX = rand.nextGaussian() * 3;
|
||||||
|
double varZ = rand.nextGaussian() * 3;
|
||||||
|
|
||||||
Type typen;
|
Type typen;
|
||||||
switch (type) {
|
switch (type) {
|
||||||
@ -139,9 +186,9 @@ public final class HolidayManager {
|
|||||||
typen = Type.BALL;
|
typen = Type.BALL;
|
||||||
}
|
}
|
||||||
|
|
||||||
Firework fireworks = (Firework) player.getWorld().spawnEntity(player.getLocation(), EntityType.FIREWORK);
|
Firework fireworks = (Firework) player.getWorld().spawnEntity(player.getLocation().add(varX, 0, varZ), EntityType.FIREWORK);
|
||||||
FireworkMeta fireworkmeta = fireworks.getFireworkMeta();
|
FireworkMeta fireworkmeta = fireworks.getFireworkMeta();
|
||||||
FireworkEffect effect = FireworkEffect.builder().flicker(Misc.getRandom().nextBoolean()).withColor(colorchoose()).withFade(colorchoose()).with(typen).trail(Misc.getRandom().nextBoolean()).build();
|
FireworkEffect effect = FireworkEffect.builder().flicker(rand.nextBoolean()).withColor(colorchoose()).withFade(colorchoose()).with(typen).trail(rand.nextBoolean()).build();
|
||||||
fireworkmeta.addEffect(effect);
|
fireworkmeta.addEffect(effect);
|
||||||
fireworkmeta.setPower(power);
|
fireworkmeta.setPower(power);
|
||||||
fireworks.setFireworkMeta(fireworkmeta);
|
fireworks.setFireworkMeta(fireworkmeta);
|
||||||
@ -149,10 +196,23 @@ public final class HolidayManager {
|
|||||||
|
|
||||||
private static List<Color> colorchoose() {
|
private static List<Color> colorchoose() {
|
||||||
// Thanks Zomis and Tejpbit for the help with this function!
|
// Thanks Zomis and Tejpbit for the help with this function!
|
||||||
|
List<Color> acolors = Collections.shuffle(allcolors);
|
||||||
|
|
||||||
int numberofcolors = Misc.getRandom().nextInt(17) + 1;
|
int numberofcolors = rand.nextInt(acolors.size());
|
||||||
|
List<Color> choosencolors = acolors.subList(0, numberofcolors);
|
||||||
|
|
||||||
List<Color> allcolors = new ArrayList<Color>();
|
return choosencolors.clone(); // don't let caller modify allcolors
|
||||||
|
}
|
||||||
|
|
||||||
|
private static Color chatcolorchoose() {
|
||||||
|
return allchatcolors.get(rand.nextInt(allchatcolors.size());
|
||||||
|
}
|
||||||
|
|
||||||
|
private static List<Color> allcolors; // do not modify
|
||||||
|
private static List<ChatColor> allchatcolors;
|
||||||
|
|
||||||
|
static {
|
||||||
|
allcolors = new ArrayList<Color>();
|
||||||
allcolors.add(Color.AQUA);
|
allcolors.add(Color.AQUA);
|
||||||
allcolors.add(Color.BLACK);
|
allcolors.add(Color.BLACK);
|
||||||
allcolors.add(Color.BLUE);
|
allcolors.add(Color.BLUE);
|
||||||
@ -170,12 +230,22 @@ public final class HolidayManager {
|
|||||||
allcolors.add(Color.TEAL);
|
allcolors.add(Color.TEAL);
|
||||||
allcolors.add(Color.WHITE);
|
allcolors.add(Color.WHITE);
|
||||||
allcolors.add(Color.YELLOW);
|
allcolors.add(Color.YELLOW);
|
||||||
|
allchatcolors = new ArrayList<ChatColor>();
|
||||||
List<Color> choosencolors = new ArrayList<Color>();
|
allchatcolors(ChatColor.AQUA);
|
||||||
|
allchatcolors(ChatColor.BLACK);
|
||||||
for (int i = 0; i < numberofcolors; i++) {
|
allchatcolors(ChatColor.BLUE);
|
||||||
choosencolors.add(allcolors.remove(Misc.getRandom().nextInt(allcolors.size())));
|
allchatcolors(ChatColor.DARK_AQUA);
|
||||||
}
|
allchatcolors(ChatColor.DARK_BLUE);
|
||||||
return choosencolors;
|
allchatcolors(ChatColor.DARK_GRAY);
|
||||||
|
allchatcolors(ChatColor.DARK_GREEN);
|
||||||
|
allchatcolors(ChatColor.DARK_PURPLE);
|
||||||
|
allchatcolors(ChatColor.DARK_RED);
|
||||||
|
allchatcolors(ChatColor.GOLD);
|
||||||
|
allchatcolors(ChatColor.GRAY);
|
||||||
|
allchatcolors(ChatColor.GREEN);
|
||||||
|
allchatcolors(ChatColor.LIGHT_PURPLE);
|
||||||
|
allchatcolors(ChatColor.RED);
|
||||||
|
allchatcolors(ChatColor.WHITE);
|
||||||
|
allchatcolors(ChatColor.YELLOW);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user