Skip to content
This repository has been archived by the owner on Dec 1, 2024. It is now read-only.

Commit

Permalink
feat: Added memy starting messages
Browse files Browse the repository at this point in the history
  • Loading branch information
TheOptimisticFactory committed Apr 19, 2020
1 parent de17128 commit db9645f
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 6 deletions.
39 changes: 36 additions & 3 deletions src/main/java/fr/leomelki/loupgarou/MainLg.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import java.lang.reflect.Constructor;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.concurrent.ThreadLocalRandom;
import java.util.HashMap;
import java.util.List;

Expand Down Expand Up @@ -85,12 +86,13 @@
import lombok.Getter;
import lombok.Setter;

public class MainLg extends JavaPlugin{
public class MainLg extends JavaPlugin {
private static MainLg instance;
@Getter private HashMap<String, Constructor<? extends Role>> roles = new HashMap<String, Constructor<? extends Role>>();
@Getter private static String prefix = ""/*"§7[§9Loup-Garou§7] "*/;

@Getter @Setter private LGGame currentGame;//Because for now, only one game will be playable on one server (flemme)
private static List<String> startingMemes;

@Override
public void onEnable() {
Expand All @@ -99,6 +101,26 @@ public void onEnable() {
if(!new File(getDataFolder(), "config.yml").exists()) {//Créer la config
FileConfiguration config = getConfig();
config.set("spawns", new ArrayList<List<Double>>());
config.set("startingMemes", new ArrayList<String>(Arrays.asList(
"Appuyez sur §bALT+F4§f pour débloquer un skin unique. Cette offre expirera dans 20 minutes.",
"Appuyez sur §bF§f pour présenter vos condoléances",
"Brossez-vous les dents après chaque repas. Surtout si vous êtes un §bloup-garou§f.",
"Connaissez-vous le jeu gratuit §bPath Of Exile§f ?",
"Contrairement aux idées reçues, même vos §bmeilleurs amis§f n'auront aucun scrupule à vous immoler ou vous jetter sous un bus à la première occasion",
"J'ai vu, je sais qui c'est, mais je ne dirai rien. Surtout pas à vous.",
"La §bsorcière§f ne vous sauvera pas : elle ne vous aime pas et ne vous a jamais aimé.",
"La sauce barbecue est la meilleure pour vos grillades. Ce message est sponsorisé par votre §bpyromane§f local.",
"Les loup-garous tue toujours les mecs §ben face d'eux§f. Sauf quand ils ne le font pas.",
"Mangez 5 fruits et légumes par jour. Si vous êtes loup-garou, ajoutez un villagois.",
"Ne dévoilez pas votre innocence trop vite, vous risqueriez de vos faire §bdévorer très fort§f",
"Pour déconner, le serveur tuera automatiquement la §b1ère personne qui votera§f.",
"Quelle différence y a t il entre le §bbon et le mauvais chasseur§f ? Bon y faut expliquer tu vois y'a le §bmauvais chasseur§f, y voit un truc qui bouge y tire, y tire. Le §bbon chasseur§f y voit un truc y tire mais c'est un bon chasseur. Voilà c'est ça on ne peut pas les confondre.",
"Si vous mourrez en tant que §bchasseur§f, un §b360 no-scope§f est la plus belle façon d'éliminer quelqu'un qui vous ne pouvez pas piffer",
"Un bon §bfaucheur§f est un faucheur mort. Lui, et la moitié de votre village en un coup",
"Visitez §bpathofexile.com§f, vous ne remercierez plus tard.",
"Vous aussi pouvez avoir une vie aussi trépidente que §bl'Inspecteur Derrick§f en endossant le rôle du §bdétective§f",
"Vous risquez de finir en §bsandwich§f pour loup-garou. Pas très vegan tout ça.."
)));
for(String role : roles.keySet())//Nombre de participant pour chaque rôle
config.set("role."+role, 1);
saveConfig();
Expand Down Expand Up @@ -394,11 +416,22 @@ private List<String> getStartingList(String startsWith, String... list){
return returnlist;
}
public void loadConfig() {
final FileConfiguration config = getConfig();
int players = 0;
for(String role : roles.keySet())
players += getConfig().getInt("role."+role);

for(String role : roles.keySet()) {
players += config.getInt("role." + role);
}
startingMemes = config.getStringList("startingMemes");
currentGame = new LGGame(players);
}

public String getRandomStartingMeme() {
return (startingMemes.size() > 0)
? "§6N'oubliez pas: §f" + startingMemes.get(ThreadLocalRandom.current().nextInt(startingMemes.size()))
: null;
}

@Override
public void onDisable() {
ProtocolLibrary.getProtocolManager().removePacketListeners(this);
Expand Down
10 changes: 7 additions & 3 deletions src/main/java/fr/leomelki/loupgarou/classes/LGGame.java
Original file line number Diff line number Diff line change
Expand Up @@ -272,10 +272,15 @@ public void updateStart() {
if(!isStarted())
if(inGame.size() == maxPlayers) {//Il faut que la partie soit totalement remplie pour qu'elle démarre car sinon, tous les rôles ne seraient pas distribués
for(LGPlayer lgp : getInGame()) {
final String meme = MainLg.getInstance().getRandomStartingMeme();
CustomScoreboard scoreboard = new CustomScoreboard("§7"/*[§9Loup-Garou§7]*/, lgp);
scoreboard.getLine(0).setDisplayName("§6La partie va démarrer...");
lgp.setScoreboard(scoreboard);
if (meme != null) {
lgp.sendMessage(meme);
}
}

if(startingTask == null) {
startingTask = new BukkitRunnable() {
int timeLeft = 5+1;
Expand Down Expand Up @@ -332,18 +337,17 @@ public void start() {

new BukkitRunnable() {
int timeLeft = 5*2;
int actualRole = getRoles().size();
int actualRole = getRoles().size();
@Override
public void run() {
if(--timeLeft == 0) {
cancel();
_start();
return;
}

if(timeLeft == 5*2-1) {
for(LGPlayer lgp : getInGame()) {
lgp.sendMessage("§8Plugin développé par : §e§lLeomelki§8.\n§8Projet organisé par : §e§lShytoos§8.\n");
lgp.sendTitle("", "§8§8Plugin LoupGarou par §e§lLeomelki§8 & §e§lShytoos", 40);
lgp.getPlayer().getInventory().clear();
lgp.getPlayer().updateInventory();
}
Expand Down

0 comments on commit db9645f

Please sign in to comment.