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
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
public class Research {
|
public class Research {
|
||||||
|
|
||||||
|
private static final int[] research_progress = {23, 44, 57, 92};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether researching is enabled or not;
|
* Whether researching is enabled or not;
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
@ -255,55 +258,27 @@ public class Research {
|
|||||||
cfg.setValue("researches." + research, true);
|
cfg.setValue("researches." + research, true);
|
||||||
cfg.save();
|
cfg.save();
|
||||||
Messages.local.sendTranslation(p, "messages.unlocked", true, new Variable("%research%", getName()));
|
Messages.local.sendTranslation(p, "messages.unlocked", true, new Variable("%research%", getName()));
|
||||||
if(SlimefunStartup.getCfg().getBoolean("options.research-give-fireworks")) FireworkShow.launchRandom(p, 1);
|
if (SlimefunStartup.getCfg().getBoolean("options.research-give-fireworks"))
|
||||||
}
|
FireworkShow.launchRandom(p, 1);
|
||||||
else if (!researching.contains(p.getUniqueId())){
|
} else if (!researching.contains(p.getUniqueId())){
|
||||||
researching.add(p.getUniqueId());
|
researching.add(p.getUniqueId());
|
||||||
Messages.local.sendTranslation(p, "messages.research.start", true, new Variable("%research%", getName()));
|
Messages.local.sendTranslation(p, "messages.research.start", true, new Variable("%research%", getName()));
|
||||||
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, new Runnable() {
|
for (int i = 1; i < research_progress.length + 1; i++) {
|
||||||
|
int j = i;
|
||||||
@Override
|
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, () -> {
|
||||||
public void run() {
|
|
||||||
p.playSound(p.getLocation(), Sound.ENTITY_BAT_TAKEOFF, 0.7F, 1F);
|
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%"));
|
Messages.local.sendTranslation(p, "messages.research.progress", true, new Variable("%research%", getName()), new Variable("%progress%", research_progress[j - 1] + "%"));
|
||||||
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, new Runnable() {
|
}, i*20L);
|
||||||
|
}
|
||||||
@Override
|
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, () -> {
|
||||||
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"));
|
Config cfg = new Config(new File("data-storage/Slimefun/Players/" + p.getUniqueId() + ".yml"));
|
||||||
cfg.setValue("researches." + research, true);
|
cfg.setValue("researches." + research, true);
|
||||||
cfg.save();
|
cfg.save();
|
||||||
Messages.local.sendTranslation(p, "messages.unlocked", true, new Variable("%research%", getName()));
|
Messages.local.sendTranslation(p, "messages.unlocked", true, new Variable("%research%", getName()));
|
||||||
if(SlimefunStartup.getCfg().getBoolean("options.research-unlock-fireworks")) FireworkShow.launchRandom(p, 1);
|
if (SlimefunStartup.getCfg().getBoolean("options.research-unlock-fireworks"))
|
||||||
|
FireworkShow.launchRandom(p, 1);
|
||||||
researching.remove(p.getUniqueId());
|
researching.remove(p.getUniqueId());
|
||||||
}
|
}, (research_progress.length + 1)*20L);
|
||||||
}, 20L);
|
|
||||||
}
|
|
||||||
}, 20L);
|
|
||||||
}
|
|
||||||
}, 20L);
|
|
||||||
}
|
|
||||||
}, 20L);
|
|
||||||
}
|
|
||||||
}, 20L);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user