mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-20 11:45:51 +00:00
Optimized researching progress
This commit is contained in:
parent
02ee0f1ce4
commit
3c385770e1
@ -35,6 +35,9 @@ import org.bukkit.entity.Player;
|
||||
* @since 4.0
|
||||
*/
|
||||
public class Research {
|
||||
|
||||
private static final int[] research_progress = {23, 44, 57, 92};
|
||||
|
||||
/**
|
||||
* Whether researching is enabled or not;
|
||||
* @since 4.0
|
||||
@ -255,55 +258,27 @@ public class Research {
|
||||
cfg.setValue("researches." + research, true);
|
||||
cfg.save();
|
||||
Messages.local.sendTranslation(p, "messages.unlocked", true, new Variable("%research%", getName()));
|
||||
if(SlimefunStartup.getCfg().getBoolean("options.research-give-fireworks")) FireworkShow.launchRandom(p, 1);
|
||||
}
|
||||
else if (!researching.contains(p.getUniqueId())){
|
||||
if (SlimefunStartup.getCfg().getBoolean("options.research-give-fireworks"))
|
||||
FireworkShow.launchRandom(p, 1);
|
||||
} else if (!researching.contains(p.getUniqueId())){
|
||||
researching.add(p.getUniqueId());
|
||||
Messages.local.sendTranslation(p, "messages.research.start", true, new Variable("%research%", getName()));
|
||||
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
for (int i = 1; i < research_progress.length + 1; i++) {
|
||||
int j = i;
|
||||
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, () -> {
|
||||
p.playSound(p.getLocation(), Sound.ENTITY_BAT_TAKEOFF, 0.7F, 1F);
|
||||
Messages.local.sendTranslation(p, "messages.research.progress", true, new Variable("%research%", getName()), new Variable("%progress%", "23%"));
|
||||
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
p.playSound(p.getLocation(), Sound.ENTITY_BAT_TAKEOFF, 0.7F, 1F);
|
||||
Messages.local.sendTranslation(p, "messages.research.progress", true, new Variable("%research%", getName()), new Variable("%progress%", "44%"));
|
||||
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
p.playSound(p.getLocation(), Sound.ENTITY_BAT_TAKEOFF, 0.7F, 1F);
|
||||
Messages.local.sendTranslation(p, "messages.research.progress", true, new Variable("%research%", getName()), new Variable("%progress%", "57%"));
|
||||
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
p.playSound(p.getLocation(), Sound.ENTITY_BAT_TAKEOFF, 0.7F, 1F);
|
||||
Messages.local.sendTranslation(p, "messages.research.progress", true, new Variable("%research%", getName()), new Variable("%progress%", "92%"));
|
||||
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Config cfg = new Config(new File("data-storage/Slimefun/Players/" + p.getUniqueId() + ".yml"));
|
||||
cfg.setValue("researches." + research, true);
|
||||
cfg.save();
|
||||
Messages.local.sendTranslation(p, "messages.unlocked", true, new Variable("%research%", getName()));
|
||||
if(SlimefunStartup.getCfg().getBoolean("options.research-unlock-fireworks")) FireworkShow.launchRandom(p, 1);
|
||||
researching.remove(p.getUniqueId());
|
||||
}
|
||||
}, 20L);
|
||||
}
|
||||
}, 20L);
|
||||
}
|
||||
}, 20L);
|
||||
}
|
||||
}, 20L);
|
||||
}
|
||||
}, 20L);
|
||||
Messages.local.sendTranslation(p, "messages.research.progress", true, new Variable("%research%", getName()), new Variable("%progress%", research_progress[j - 1] + "%"));
|
||||
}, i*20L);
|
||||
}
|
||||
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, () -> {
|
||||
Config cfg = new Config(new File("data-storage/Slimefun/Players/" + p.getUniqueId() + ".yml"));
|
||||
cfg.setValue("researches." + research, true);
|
||||
cfg.save();
|
||||
Messages.local.sendTranslation(p, "messages.unlocked", true, new Variable("%research%", getName()));
|
||||
if (SlimefunStartup.getCfg().getBoolean("options.research-unlock-fireworks"))
|
||||
FireworkShow.launchRandom(p, 1);
|
||||
researching.remove(p.getUniqueId());
|
||||
}, (research_progress.length + 1)*20L);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user