mirror of
https://github.com/PikaMug/Quests.git
synced 2025-02-16 20:41:20 +01:00
Unstable
This commit is contained in:
parent
7bce096fc9
commit
088bdf99f1
@ -85,8 +85,6 @@ public class NpcListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
break;
|
||||
|
||||
}
|
||||
|
@ -41,6 +41,8 @@ public class PlayerListener implements Listener {
|
||||
@EventHandler
|
||||
public void onPlayerInteract(PlayerInteractEvent evt) {
|
||||
|
||||
if (plugin.checkQuester(evt.getPlayer().getName()) == false) {
|
||||
|
||||
if (evt.getAction().equals(Action.RIGHT_CLICK_BLOCK)) {
|
||||
|
||||
final Quester quester = plugin.getQuester(evt.getPlayer().getName());
|
||||
@ -100,9 +102,13 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onBlockDamage(BlockDamageEvent evt) {
|
||||
|
||||
if (plugin.checkQuester(evt.getPlayer().getName()) == false) {
|
||||
|
||||
Quester quester = plugin.getQuester(evt.getPlayer().getName());
|
||||
if (quester.hasObjective("damageBlock")) {
|
||||
|
||||
@ -112,10 +118,12 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.HIGHEST)
|
||||
public void onBlockPlace(BlockPlaceEvent evt) {
|
||||
|
||||
if (evt.getPlayer().getName().toLowerCase().contains("_computercraft_") == false && evt.getPlayer().getName().toLowerCase().contains("_buildcraft_") == false && evt.getPlayer().getName().toLowerCase().contains("_redpower_") == false && evt.getPlayer().getName().toLowerCase().contains("_buildcraft_") == false && evt.getPlayer().getName().toLowerCase().contains("(buildcraft)") == false) {
|
||||
if (plugin.checkQuester(evt.getPlayer().getName()) == false) {
|
||||
|
||||
Quester quester = plugin.getQuester(evt.getPlayer().getName());
|
||||
if (quester.hasObjective("placeBlock")) {
|
||||
@ -133,6 +141,8 @@ public class PlayerListener implements Listener {
|
||||
@EventHandler(priority = EventPriority.HIGHEST)
|
||||
public void onBlockBreak(BlockBreakEvent evt) {
|
||||
|
||||
if (plugin.checkQuester(evt.getPlayer().getName()) == false) {
|
||||
|
||||
boolean canOpen = true;
|
||||
|
||||
if (canOpen == true) {
|
||||
@ -172,9 +182,13 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onPlayerPickupItem(PlayerPickupItemEvent evt) {
|
||||
|
||||
if (plugin.checkQuester(evt.getPlayer().getName()) == false) {
|
||||
|
||||
Quester quester = plugin.getQuester(evt.getPlayer().getName());
|
||||
if (quester.hasObjective("collectItem")) {
|
||||
|
||||
@ -184,9 +198,13 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onPlayerShearEntity(PlayerShearEntityEvent evt) {
|
||||
|
||||
if (plugin.checkQuester(evt.getPlayer().getName()) == false) {
|
||||
|
||||
Quester quester = plugin.getQuester(evt.getPlayer().getName());
|
||||
if (evt.getEntity().getType().equals(EntityType.SHEEP) && quester.hasObjective("shearSheep")) {
|
||||
|
||||
@ -197,12 +215,16 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onEntityTame(EntityTameEvent evt) {
|
||||
|
||||
if (evt.getOwner() instanceof Player) {
|
||||
|
||||
Player p = (Player) evt.getOwner();
|
||||
if (plugin.checkQuester(p.getName()) == false) {
|
||||
|
||||
Quester quester = plugin.getQuester(p.getName());
|
||||
if (quester.hasObjective("tameMob")) {
|
||||
|
||||
@ -214,9 +236,13 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onEnchantItem(EnchantItemEvent evt) {
|
||||
|
||||
if (plugin.checkQuester(evt.getEnchanter().getName()) == false) {
|
||||
|
||||
Quester quester = plugin.getQuester(evt.getEnchanter().getName());
|
||||
if (quester.hasObjective("enchantItem")) {
|
||||
|
||||
@ -230,12 +256,16 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onCraftItem(CraftItemEvent evt) {
|
||||
|
||||
if (evt.getWhoClicked() instanceof Player) {
|
||||
|
||||
Player p = (Player) evt.getWhoClicked();
|
||||
if (plugin.checkQuester(p.getName()) == false) {
|
||||
|
||||
Quester quester = plugin.getQuester(p.getName());
|
||||
if (quester.hasObjective("craftItem")) {
|
||||
|
||||
@ -247,11 +277,15 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onInventoryClose(InventoryCloseEvent evt) {
|
||||
|
||||
if (evt.getPlayer() instanceof Player) {
|
||||
|
||||
if (plugin.checkQuester(evt.getPlayer().getName()) == false) {
|
||||
|
||||
Quester quester = plugin.getQuester(((Player) evt.getPlayer()).getName());
|
||||
if (quester.holdingQuestItemFromStorage) {
|
||||
quester.collectItem(evt.getView().getCursor());
|
||||
@ -261,6 +295,8 @@ public class PlayerListener implements Listener {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
/*
|
||||
*
|
||||
* CRAFTING (Player)
|
||||
@ -336,12 +372,17 @@ public class PlayerListener implements Listener {
|
||||
public void onInventoryClick(InventoryClickEvent evt) {
|
||||
|
||||
Player player = null;
|
||||
if(evt.getWhoClicked() instanceof Player)
|
||||
if (evt.getWhoClicked() instanceof Player) {
|
||||
player = (Player) evt.getWhoClicked();
|
||||
}
|
||||
|
||||
if (player != null) {
|
||||
|
||||
if (plugin.checkQuester(player.getName()) == false) {
|
||||
|
||||
if (evt.isShiftClick() == false) {
|
||||
|
||||
if (player != null && evt.getCursor() != null && evt.getCurrentItem() == null) {
|
||||
if (evt.getCursor() != null && evt.getCurrentItem() == null) {
|
||||
|
||||
Quester quester = plugin.getQuester(evt.getWhoClicked().getName());
|
||||
if (quester.currentQuest != null) {
|
||||
@ -367,7 +408,7 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
} else if (player != null && evt.getCursor() != null && evt.getCurrentItem() != null) {
|
||||
} else if (evt.getCursor() != null && evt.getCurrentItem() != null) {
|
||||
|
||||
Quester quester = plugin.getQuester(evt.getWhoClicked().getName());
|
||||
if (quester.currentQuest != null) {
|
||||
@ -426,8 +467,9 @@ public class PlayerListener implements Listener {
|
||||
|
||||
//Item in clicked slot is a quest item, cursor is not
|
||||
String s = Quester.checkPlacement(evt.getInventory(), evt.getRawSlot());
|
||||
if(s != null)
|
||||
if (s != null) {
|
||||
quester.holdingQuestItemFromStorage = true;
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
@ -451,7 +493,7 @@ public class PlayerListener implements Listener {
|
||||
|
||||
} else {
|
||||
|
||||
if(player != null && evt.getCurrentItem() != null){
|
||||
if (evt.getCurrentItem() != null) {
|
||||
|
||||
Quester quester = plugin.getQuester(evt.getWhoClicked().getName());
|
||||
Material mat = evt.getCurrentItem().getType();
|
||||
@ -504,6 +546,10 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onEntityDeath(EntityDeathEvent evt) {
|
||||
|
||||
@ -585,6 +631,8 @@ public class PlayerListener implements Listener {
|
||||
if (p.getShooter() instanceof Player) {
|
||||
|
||||
Player player = (Player) p.getShooter();
|
||||
if (plugin.checkQuester(player.getName()) == false) {
|
||||
|
||||
boolean okay = true;
|
||||
|
||||
if (plugin.citizens != null) {
|
||||
@ -604,9 +652,14 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
} else if (damager instanceof Player) {
|
||||
|
||||
Player player = (Player) damager;
|
||||
|
||||
if (plugin.checkQuester(player.getName()) == false) {
|
||||
|
||||
boolean okay = true;
|
||||
|
||||
if (plugin.citizens != null) {
|
||||
@ -625,6 +678,8 @@ public class PlayerListener implements Listener {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@ -637,6 +692,8 @@ public class PlayerListener implements Listener {
|
||||
public void onPlayerFish(PlayerFishEvent evt) {
|
||||
|
||||
Player player = evt.getPlayer();
|
||||
if(plugin.checkQuester(player.getName()) == false){
|
||||
|
||||
Quester quester = plugin.getQuester(player.getName());
|
||||
if (quester.hasObjective("catchFish") && evt.getState().equals(State.CAUGHT_FISH)) {
|
||||
quester.catchFish();
|
||||
@ -644,9 +701,13 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onPlayerDropItem(PlayerDropItemEvent evt) {
|
||||
|
||||
if(plugin.checkQuester(evt.getPlayer().getName()) == false){
|
||||
|
||||
Quester quester = plugin.getQuester(evt.getPlayer().getName());
|
||||
if (quester.currentQuest != null) {
|
||||
|
||||
@ -661,9 +722,13 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onPlayerJoin(PlayerJoinEvent evt) {
|
||||
|
||||
if(plugin.checkQuester(evt.getPlayer().getName()) == false){
|
||||
|
||||
Quester quester = new Quester(plugin);
|
||||
quester.name = evt.getPlayer().getName();
|
||||
if (new File(plugin.getDataFolder(), "data/" + quester.name + ".yml").exists()) {
|
||||
@ -694,18 +759,26 @@ public class PlayerListener implements Listener {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onPlayerQuit(PlayerQuitEvent evt) {
|
||||
|
||||
if(plugin.checkQuester(evt.getPlayer().getName()) == false){
|
||||
|
||||
Quester quester = plugin.getQuester(evt.getPlayer().getName());
|
||||
quester.saveData();
|
||||
plugin.questers.remove(quester.name);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onPlayerMove(PlayerMoveEvent evt) {
|
||||
|
||||
if(plugin.checkQuester(evt.getPlayer().getName()) == false){
|
||||
|
||||
boolean isPlayer = true;
|
||||
if (plugin.getServer().getPluginManager().getPlugin("Citizens") != null) {
|
||||
if (plugin.citizens.getNPCRegistry().isNPC(evt.getPlayer())) {
|
||||
@ -726,4 +799,6 @@ public class PlayerListener implements Listener {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -1887,6 +1887,8 @@ public class Quester {
|
||||
|
||||
}
|
||||
|
||||
if(currentStage.)
|
||||
|
||||
|
||||
} else {
|
||||
|
||||
@ -2554,6 +2556,12 @@ public class Quester {
|
||||
|
||||
}
|
||||
|
||||
if(data.contains("stage-delay")){
|
||||
|
||||
delayTimeLeft = data.getLong("stage-delay");
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return true;
|
||||
@ -2562,44 +2570,12 @@ public class Quester {
|
||||
|
||||
public void startStageTimer(){
|
||||
|
||||
if(delayTimeLeft > -1){
|
||||
if(delayTimeLeft > -1)
|
||||
plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new StageTimer(this), delayTimeLeft*50);
|
||||
else
|
||||
plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new StageTimer(this), currentStage.delay);
|
||||
|
||||
delayStartTime = System.currentTimeMillis();
|
||||
plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable(){
|
||||
|
||||
@Override
|
||||
public void run(){
|
||||
|
||||
if(delayOver){
|
||||
currentQuest.nextStage(Quester.this);
|
||||
}
|
||||
|
||||
delayOver = true;
|
||||
|
||||
}
|
||||
|
||||
}, delayTimeLeft*50);
|
||||
|
||||
|
||||
}else{
|
||||
|
||||
delayStartTime = System.currentTimeMillis();
|
||||
plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable(){
|
||||
|
||||
@Override
|
||||
public void run(){
|
||||
|
||||
if(delayOver){
|
||||
currentQuest.nextStage(Quester.this);
|
||||
}
|
||||
|
||||
delayOver = true;
|
||||
|
||||
}
|
||||
|
||||
}, currentStage.delay);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -2610,6 +2586,8 @@ public class Quester {
|
||||
else
|
||||
delayTimeLeft = currentStage.delay - (System.currentTimeMillis() - delayStartTime);
|
||||
|
||||
delayOver = false;
|
||||
|
||||
}
|
||||
|
||||
public void checkQuest() {
|
||||
|
@ -1272,7 +1272,7 @@ public class Quests extends JavaPlugin implements ConversationAbandonedListener
|
||||
quester = new Quester(this);
|
||||
quester.name = player;
|
||||
if (quester.loadData() == false) {
|
||||
throw new NullPointerException("[Quests] Quester not found for player \"" + player + "\"");
|
||||
log.severe("[Quests] Quester not found for player \"" + player + "\". Consider adding them to the Quester blacklist.");
|
||||
} else {
|
||||
if (debug == true) {
|
||||
log.log(Level.INFO, "[Quests] Manual data retrieval succeeded for player \"" + player + "\"");
|
||||
|
24
src/me/blackvein/quests/StageTimer.java
Normal file
24
src/me/blackvein/quests/StageTimer.java
Normal file
@ -0,0 +1,24 @@
|
||||
package me.blackvein.quests;
|
||||
|
||||
public class StageTimer implements Runnable{
|
||||
|
||||
Quester quester;
|
||||
|
||||
public StageTimer(Quester q){
|
||||
|
||||
quester = q;
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run(){
|
||||
|
||||
if(quester.delayOver){
|
||||
quester.currentQuest.nextStage(quester);
|
||||
}
|
||||
|
||||
quester.delayOver = true;
|
||||
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user