Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[DL] [AUTORSKI] Kwadratowa-Masakra


Rekomendowane odpowiedzi

Opublikowano

Plugin Wymaga Pluginu Vault

Witajcie,

Dzisiaj napisałem kolejny plugin, na Kwadratową Masakre. Plugin posiada wbudowany Format-Chatu.

Nie wymagane jest pośrednictwo innych pluginów. Plugin jest stworzony dla ludzi którzy nagrywają flilmy na YT itp.

Zalecane jest nie korzystanie z PermissionsEX lub innych pluginow zarzadzajacych czatem, ponieważ może to wywoływać

błędy w pluginie i nie chciane CRASHE.

61096646268861951448.png

Config Myśle że jest dość prosty, ale omówie go :)

 maxZycia: 3
  dodajeZycie:
    item: 264
    ilosc: 1
    ileMaDodac: 1
  ileZycNaStart: 3
  chat:  
      prefix: '&3[ &9{LIVES}&3 ]&r'
messages:
  brakZyc: $6Niestety nie posiadasz juz wicej zyc !

 

 

MaxZycia - Maksymalna Ilosc Żyć

dodajeZycie - tutaj nie wpisujemy nic ;)

item: ID itemu

Ilosc: Ilosc Itemu @up

ile ma dodac: Ile ma dodac zyc

chat: tutaj mozemy zformatowac chat ;)

prefix: wpisujemy np. '&3[ &9{LIVES}&3 ]&r'

No i w messages mamy "brakZyc", Tutaj wpisujemy wiadomosc ktora bedzie nam sie pokazywać gdy gracz nie bedzie juz posiadał żyć

i bedzie wyrzucany z serwera ;)

-------------------------------------------------------------------------------------------------------------------------

Plugin narazie nie posiada komendy: /ozyw ;)

-----------------------------------------------------------------------

Jak dodac liczbe żyć na czacie ?

Jak to już wyżej podałem, potrzebny jest nam plugin Vault... i pluginy od chatu np. EssentialsChat i PermissionsEX

I z pluginow to na tyle teraz konfiguracja prefixu ;)

Wchodzimy w config pluginu Kwadratowa Masakra i szukamy linijki

chat:
  prefix: (...)

i w miejsce (...) wpisujemy np.

prefix: '&4[&9 {LIVES} &4]&r'

Download:

http://speedy.sh/VAfYw/Kwadratowa-Masakra.jar

Skan:

https://www.virustotal.com/pl/file/0993e7bf4e70038d49cc7e5765780fd344d52235289412e80ca541e4ca61624f/analysis/1365264236/

V 1.1

Usunięto bug z żyćmi!

v 1.2

Kolejne bugi ;)

V 1.3

Dodano komende: /ozyw <nick>

+ ustawienie prefixu

-----------------------------------------------------------------------------------------------

Plugin w trakcje rozwoju !

Pomogłem daj like, nie buj się ;)

Zapraszam na mój serwer: 178.32.71.241:25565

Survival + Gildie + FreeBuild (Dzialki)

 

Opublikowano

@REF

Pomogłem daj like, nie buj się ;)

Zapraszam na mój serwer: 178.32.71.241:25565

Survival + Gildie + FreeBuild (Dzialki)

 

Opublikowano

W sumie to plugin nie jest taki zły, przynajmniej nie wrzucasz pierwszego lepszego syfu jaki zrobisz, za to u mnie duży +.

Jak chcesz się nauczyć, więcej, to przeglądaj sobie pluginy, na github-ie, dużo jest tam surce codów, od znanych pluginów.

Jeżeli, potrzebujesz jakieś pomocy możesz mi na pw napisać, jak będę wiedział to ci odpowiem ;)

//gif w sygnie

Opublikowano

Nigdy nie udostępniłem żadnej rzeczy w internecie która jest syfem robionym 10 min ;). A jak czegos nie wiem to mi podp. grzegorz2047 ;)

Pomogłem daj like, nie buj się ;)

Zapraszam na mój serwer: 178.32.71.241:25565

Survival + Gildie + FreeBuild (Dzialki)

 

Opublikowano

Nie mówię, że wrzucasz syf, wręcz zaprzeczam, to, bo widzę, że jestem początkujący, jeżeli tak nie jest to sory, bo dużo takich ludzi którzy zaczynają w programowaniu nie koniecznie nawet pluginów, wrzucają syf, a ty wrzucasz coś przydatnego. Pozdro 600 ;x

 

Zrób tak, żeby był kompatybilny z wszystkich plug. na prefixy, bo to dosłownie minutka.

//gif w sygnie

Opublikowano

@up

"Plugin w trakcje rozwoju" ;)

Aktualizacja 1.2

@add

Wiem że chwila, ale z Vault ;). A z vault cos mi nie wychodzi ;d



@ADD

 

Plugin można zobaczyć na:

s59.mineserv.eu:27521

Pomogłem daj like, nie buj się ;)

Zapraszam na mój serwer: 178.32.71.241:25565

Survival + Gildie + FreeBuild (Dzialki)

 

Opublikowano

Dodano, kompatybilnosc z permissionsEX itp. i EssentialsChat ;)



Wymagany: VAULT !



@add

Aktualizacja 1.3

Dodano komende /ozyw

Pomogłem daj like, nie buj się ;)

Zapraszam na mój serwer: 178.32.71.241:25565

Survival + Gildie + FreeBuild (Dzialki)

 

Opublikowano

ref

Pomogłem daj like, nie buj się ;)

Zapraszam na mój serwer: 178.32.71.241:25565

Survival + Gildie + FreeBuild (Dzialki)

 

Opublikowano

ref

Pomogłem daj like, nie buj się ;)

Zapraszam na mój serwer: 178.32.71.241:25565

Survival + Gildie + FreeBuild (Dzialki)

 

Opublikowano

No no, godzinka pracy nad pluginem - moim zdaniem.

Ale (Wiem, że plugin w trakcie rozwoju)- ale, jest już wiele pluginów tego typu nawet z ulepszeniami (ban w sekundach, w configu, lista banów w pliku tekstowym, ostateczne pożegnanie, więcej komend, deszcz i grzmoty po śmierci, banowanie przy walce i wiele więcej).

Przykładowo:

Plugin GHard grzegorz'a2047 http://dev.bukkit.org/server-mods/ghardplugin/

Plugin LifeMC BlueMond'a http://dev.bukkit.org/server-mods/lifemc/

Plugin SMP_HardCore Xdemonic'a http://dev.bukkit.org/server-mods/beta-smp_hardcore/

Plugin HardcoreMC bradmyers12 http://dev.bukkit.org/server-mods/hardcoremc-24-1-1-r4/

Plugin tradycyjny awlawlawl'a Hardcore http://dev.bukkit.org/server-mods/hardcore/

I wiele więcej..

Więc moim zdaniem nie ma aż takiej potrzeby robienia takich samych pluginów.

Trzeba być kreatywnym i wymyślić coś własnego, a nie "małpować" po sławnych osobach i innych projektach.

Opublikowano

No no, godzinka pracy nad pluginem - moim zdaniem.

Ale (Wiem, że plugin w trakcie rozwoju)- ale, jest już wiele pluginów tego typu nawet z ulepszeniami (ban w sekundach, w configu, lista banów w pliku tekstowym, ostateczne pożegnanie, więcej komend, deszcz i grzmoty po śmierci, banowanie przy walce i wiele więcej).

Przykładowo:

Plugin GHard grzegorz'a2047 http://dev.bukkit.org/server-mods/ghardplugin/

Plugin LifeMC BlueMond'a http://dev.bukkit.org/server-mods/lifemc/

Plugin SMP_HardCore Xdemonic'a http://dev.bukkit.org/server-mods/beta-smp_hardcore/

Plugin HardcoreMC bradmyers12 http://dev.bukkit.org/server-mods/hardcoremc-24-1-1-r4/

Plugin tradycyjny awlawlawl'a Hardcore http://dev.bukkit.org/server-mods/hardcore/

I wiele więcej..

Więc moim zdaniem nie ma aż takiej potrzeby robienia takich samych pluginów.

Trzeba być kreatywnym i wymyślić coś własnego, a nie "małpować" po sławnych osobach i innych projektach.

Nie chodzi o małpowanie, Tylko o nauke nowych rzeczy ;).

Pomogłem daj like, nie buj się ;)

Zapraszam na mój serwer: 178.32.71.241:25565

Survival + Gildie + FreeBuild (Dzialki)

 

Opublikowano

Podałbyś kod źródłowy pluginu? Chciałbym go troszeczkę przerobić na własny użytek.

| Pijawka I | Pijawka II | Pijawka III | MPC User I | MPC User II | MPC User III | MPC Member | MPC Member II | ProUser | MPC Member III | MPC Team | Postmaker | Postwriter |


 

Opublikowano

Plugin sypie, gdy na serwerze jest mChatSite. Obojętnie jaką komendę z pluginu wpiszę, sypie.

  • 1 miesiąc temu...
Opublikowano

Podałbyś kod źródłowy pluginu? Chciałbym go troszeczkę przerobić na własny użytek.

package pl.akalik.main;

import net.milkbowl.vault.chat.Chat;

import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.entity.PlayerDeathEvent;
import org.bukkit.event.player.PlayerChatEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerKickEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.RegisteredServiceProvider;
import org.bukkit.plugin.java.JavaPlugin;

@SuppressWarnings("deprecation")
public class main extends JavaPlugin implements Listener{

    public static Chat chat = null;


    private boolean setupChat()
    {
        RegisteredServiceProvider<Chat> chatProvider = getServer().getServicesManager().getRegistration(net.milkbowl.vault.chat.Chat.class);
        if (chatProvider != null) {
            chat = chatProvider.getProvider();
        }

        return (chat != null);
    }
    
    private Plugin p = Bukkit.getPluginManager().getPlugin("Vault");
	
	public void onEnable(){
		if (!(p == null)) {
			setupChat();
		}
		getLogger().info("Zostal wlaczony !");
		this.getServer().getPluginManager().registerEvents(this, this);
		
		if (!(this.getConfig().isConfigurationSection("config"))) {
			this.getConfig().set("config.maxZycia", 3);
			this.getConfig().set("config.dodajeZycie.item", 264);
			this.getConfig().set("config.dodajeZycie.ilosc", 1);
			this.getConfig().set("config.dodajeZycie.ileMaDodac", 1);
			this.getConfig().set("config.ileZycNaStart", 3);
			this.getConfig().set("config.chat.prefix", "&4[&3 {LIVES} &4] ");
			this.saveConfig();
		}
		if (!(this.getConfig().isConfigurationSection("messages"))) {
			this.getConfig().set("messages.brakZyc", ChatColor.GOLD+"Niestety nie posiadasz juz wicej zyc !");
			this.saveConfig();
		}
	}
	
	public int maxzycia () {
		int zycia = this.getConfig().getInt("config.maxZycia");
		return zycia;
	}
	public int przedmiot () {
		int id = this.getConfig().getInt("config.dodajeZycie.item");
		return id;
	}
	public int przedmiotIle () {
		int ilosc = this.getConfig().getInt("config.dodajeZycie.ilosc");
		return ilosc;
	}
	public int start () {
		int i = this.getConfig().getInt("config.ileZycNaStart");
		return i;
	}
	public String msgBrakZyc () {
		String message;
		message = this.getConfig().getString("messages.brakZyc").replace("$","§");
		return message;
	}
	public int stan(String nick){
		int stan = this.getConfig().getInt("zycia."+nick+".stan");
		return stan;
	}
	public int ileDodac () {
		int ile = this.getConfig().getInt("config.dodajeZycie.ileMaDodac");
		return ile;
	}
	
	@EventHandler(priority = EventPriority.NORMAL)
	public void deathEvent (PlayerDeathEvent p) {
		
		Player player = p.getEntity();
		String nick = player.getName();
		
		int stan = stan(player.getName()); 
		int nowyStan  = stan-1;
		
		this.getConfig().set("zycia."+nick+".stan", nowyStan);
		this.saveConfig();
		
		if (nowyStan <= maxzycia()) {
			player.sendMessage(ChatColor.GOLD+"Uwazaj, Pozostalo ci "+nowyStan+" zycia");
		}
		
		if (nowyStan <= 0) {
			player.kickPlayer(msgBrakZyc());
		}
	}

	public String prefix (String nick) {
		
		int pkt = stan(nick);
		
		String prefix = this.getConfig().getString("config.chat.prefix").replace("{LIVES}", String.valueOf(pkt)).replaceAll("&", "§");
		
		
		return prefix;
	}
	
	@EventHandler
	public void chat (PlayerChatEvent p) {
		if (!(p == null)) {
			chat.setPlayerPrefix(p.getPlayer(), prefix(p.getPlayer().getName()));
		}
		if (p == null) {
			p.setFormat(prefix(p.getPlayer().getName()+" "+p.getPlayer().getName()+": "+p.getMessage()));
		}
	}
	
	@EventHandler(priority = EventPriority.NORMAL)
	public void joinEvent (PlayerJoinEvent p) {
		
		Player player = p.getPlayer();
		String nick = player.getName();
		
		if (!(this.getConfig().isConfigurationSection("zycia."+nick))) {
			this.getConfig().set("zycia."+nick+".stan", start());
			this.saveConfig();
			getLogger().info("Nowy gracz: "+nick);
		}
		
		p.setJoinMessage(ChatColor.YELLOW+nick+" dolaczyl do gry !");
		
		player.sendMessage(ChatColor.RED+"-----------------------------------");
		player.sendMessage(ChatColor.GOLD+"Witaj "+nick+", masz jeszcze "+stan(nick)+" zycia");
		player.sendMessage(ChatColor.RED+"-----------------------------------");
		
		if (stan(nick) <= 0) {
			p.setJoinMessage(null);
			player.kickPlayer(msgBrakZyc());
		}
		
		
		
	}
	
	@EventHandler(priority = EventPriority.HIGH)
	public void eatItemEvent (PlayerInteractEvent p) {
		
		Player player = p.getPlayer();
		String nick = player.getName();
		ItemStack item = new ItemStack(przedmiot(), przedmiotIle());
		
		if (p.getAction() == Action.RIGHT_CLICK_AIR || p.getAction() == Action.RIGHT_CLICK_BLOCK) {
			
			int max = maxzycia()-1;
			
			
			if (player.getItemInHand().getTypeId() == przedmiot()) {
				if (stan(nick) <= max) {
					if (player.getItemInHand().getAmount() >= przedmiotIle()) {
						
						player.getInventory().removeItem(item);
						
						int stan = stan(nick);
						int nowyStan = stan+ileDodac();
	
						this.getConfig().set("zycia."+nick+".stan", nowyStan);
						this.saveConfig();
						
						player.sendMessage(ChatColor.AQUA+"Dodales sobie "+ileDodac()+" zycie/zyc");
					
					}
				}
				else {
					player.sendMessage(ChatColor.GOLD+"Masz juz maksymalna ilosc zyc !");
				}

			}
			
			
			
		}
		
	}
	@EventHandler
	public void leave (PlayerKickEvent p) {
		p.setLeaveMessage(null);
	}

	@Override
	public boolean onCommand(CommandSender sender, Command command,String cmd, String[] args) {

		Player player = (Player) sender;
		
		if (cmd.equalsIgnoreCase("ozyw")) {
			
			if (args.length == 1) {
				
				int nick0 = Integer.parseInt(args[0]);
				
				int spr = this.getConfig().getInt("zycia."+nick0+".stan");
				
				if (this.getConfig().isConfigurationSection("zycia."+nick0)){
					
					if (spr <= 0) {
						
						this.getConfig().set("zycia."+nick0+".stan", 1);
						this.saveConfig();
						
						this.getServer().broadcastMessage(ChatColor.AQUA+"Gracz "+player.getName()+", ozywil gracza o nicku: "+nick0);
						
					}
					if (spr >= 1) {
						player.sendMessage(ChatColor.RED+"Ten gracz ma zycia.. dlaczego chcesz go ozywic  ?");
					}
					
					
				}
				if (!(this.getConfig().isConfigurationSection("zycia."+nick0))){
					player.sendMessage(ChatColor.RED+"Taki gracz nie istnieje ! :(");
				}
				
			}
			
		}
		
		
		return false;
	}
	
	
	
	
	
}

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...