Sueta

iPvP | control iPvP in your server

1.0

iPvP control , Good for UHC Servers!, control with Java API and Commands!

·Plugin


Plugin iPvP is a simple iPvP Checker , iPvP means when a player are trying to place LAVA or FNS other player , and your PVP is not enabled , if some one trying to do that , then this plugin will execute an event, but for now this plugin can only cancel it(can be configured) , but they have a lot of API for developers! if you are not a developer , you can give me some suggestion! maybe i can code it!

  • Check if a player trying to put lava or FNS under other players
  • Commands to enable/disable! (good for skript!)
  • send a Message if they trying to iPvP
  • API for event handler and setups!
  • List for uncheckedPlayers!
  • 100% support on discord!
  • 100% Customizable
  • Supported Spigot 1.7 1.8 1.9 1.10 1.11 1.12!


Permissions:
- iPvP.admin (All Command's Permission)

Commands:

- /ipvp setenabled <true/false> (enable/disable the checker)
- /ipvp setchecklava <true/false> (enable/disable check lava)
- /ipvp setcheckFNS <true/false> (enable/disable check FNS)
- /ipvp setRadius <number> (set checker's radius)
- /ipvp setUnChecked <Player> (add a player in to Victim uncheck list)
- /ipvp setDamagerUnChecked <Player> (add a player in to Damager uncheck list)
- /ipvp removeUnChecked <Player> (remove a player from Victim uncheck list)
- /ipvp removeDamagerUnChecked <Player> (remove a player from Damager uncheck list)


- Config.yml -

config.yml
checkUpdates: false

use-command-reply: false
checkiPvP:
  enabled: true
  check-lava: true
  check-fns: true
  skip-damagerKillHesSelf: false
  radius: 3

- Language.yml -

language.yml
# PlaceHolders: <damager> , <getDamager>
# if you wanna dont show that message, just set the value to false
# Example: damager: false

iPvP:
  LavaCancelled:
    damager: '&ciPvP has been cancelled!'
    getdamager: false
  FNSCancelled:
    damager: '&ciPvP has been cancelled!'
    getdamager: false


APIs
package me;


import java.util.ArrayList;

import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.block.Block;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerBucketEmptyEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.plugin.java.JavaPlugin;

import me.leegod.ipvp.api.FNSiPvPEvent;
import me.leegod.ipvp.api.LavaiPvPEvent;
import me.leegod.ipvp.api.iPvPapi;

public class main extends JavaPlugin implements Listener {
   
    //boolean plugin is enabled
    boolean enabled = iPvPapi.getEnabled();
   
    //boolean lava checker
    boolean checklava = iPvPapi.getCheckLava();
   
    //boolean FNS checker
    boolean checkFNS = iPvPapi.getCheckFNS();
   
    //get checker's radius
    int radius = iPvPapi.getRadius();
   
    //get Victim unchecked ArrayList
    ArrayList<Player> unchecked = iPvPapi.getUnCheckedArrayList();
   
    //get Damager unchecked ArrayList
    ArrayList<Player> damagerunchecked = iPvPapi.getUnCheckedDamagerArrayList();

    public void onEnable() {
        Bukkit.getPluginManager().registerEvents(this, this);
       
       
        //----setup----
       
        //set enabled for the plugin
        iPvPapi.setEnabled(false);
       
        //set lava checker
        iPvPapi.setCheckLava(true);
       
        //set FNS Checker
        iPvPapi.setCheckFNS(true);
       
        //set Checker's radius
        iPvPapi.setRadius(6);
    }
   
    //Event - if a player trying to use FNS do iPvP
    @EventHandler
    public void onPlayerFNSiPvP(FNSiPvPEvent e) {
        Player Damager = e.getDamager();
        Player Victim = e.getVictim();
        Location PlacedLocation = e.getLocationClicked();
        Block ClickedBlock = e.getClickedBlocked();
        PlayerInteractEvent Event = e.getInteractEvent();
       
    }
   
    //Event - if a player trying to use Lava to iPvP
    @EventHandler
    public void onPlayerLavaiPvP(LavaiPvPEvent e) {
        Player Damager = e.getDamager();
        Player Victim = e.getVictim();
        Location PlacedLocation = e.getLocationBucketPlaced();
        Block ClickedBlock = e.getBucketPlacedBlocked();
        PlayerBucketEmptyEvent Event = e.getBucketEmptyEvent();
       
    }
   
   


}

Events:
- FNSiPvPEvent
- LavaiPvPEvent

gets:
- iPvPapi.getEnabled() [Boolean]
- iPvPapi.getCheckLava() [Boolean]
- iPvPapi.getCheckFNS() [Boolean]
- iPvPapi.getRadius() [int]
- iPvPapi.getUnCheckedArrayList() [ArrayList<Player>]
- iPvPapi.getDamagerUnCheckedArrayList() [ArrayList<Player>]

set:
- iPvPapi.setEnabled(Boolean)
- iPvPapi.setCheckLava(Boolean)
- iPvPapi.setCheckFNS(Boolean)
- iPvPapi.setRadius(int)


YouTube


1. Download and put "iPvP.jar" in to "ServerFolder/plugins"
2. Start to load up all files
3. setup all configuration
(Developer) 4. use this plugin's api in to whatever your plugins
5. Enjoy!


Discord: LeeGod#9863
Discord Group: Click me!

- FINAL -
Thanks for watching my new project!
Sorry for my bad english :(
See you next time ;)

Similar projects

Plugin →