/[projects]/miscJava/bukkit-minecraft-plugins/HoerupUtils/src/main/java/dk/thoerup/bukkit/hoeruputils/secretdoor/DoorOpenListener.java
ViewVC logotype

Diff of /miscJava/bukkit-minecraft-plugins/HoerupUtils/src/main/java/dk/thoerup/bukkit/hoeruputils/secretdoor/DoorOpenListener.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1912 by torben, Sun Jan 13 13:05:16 2013 UTC revision 1945 by torben, Thu Mar 21 19:09:02 2013 UTC
# Line 1  Line 1 
1  package dk.thoerup.bukkit.hoeruputils.secretdoor;  package dk.thoerup.bukkit.hoeruputils.secretdoor;
2    
3    
4  import org.bukkit.Effect;  import org.bukkit.Effect;
5  import org.bukkit.Location;  import org.bukkit.Location;
6  import org.bukkit.Material;  import org.bukkit.Material;
# Line 14  import org.bukkit.plugin.Plugin; Line 15  import org.bukkit.plugin.Plugin;
15    
16    
17    
18    
19  public class DoorOpenListener implements Listener{  public class DoorOpenListener implements Listener{
20                    
21          private DoorStorage store;          private DoorStorage store;
# Line 49  public class DoorOpenListener implements Line 51  public class DoorOpenListener implements
51                          return;                          return;
52                  }                  }
53    
54                  openDoor(door, player);                  openDoor(door, player,false );
55    
56          }          }
57                    
58          private void openDoor(final Door door, Player player) {          private void openDoor(final Door door, Player player, boolean longDelay ) {
59                  final World world = player.getWorld();                            final World world = player.getWorld();          
60                    
61                  //final Location loc = event.getClickedBlock().getLocation();                  //final Location loc = event.getClickedBlock().getLocation();
62                  final Location loc = door.getLeftUpper();                  final Location loc = door.getLeftUpper();
63    
# Line 68  public class DoorOpenListener implements Line 71  public class DoorOpenListener implements
71                                  world.playEffect( loc, Effect.DOOR_TOGGLE, 0);                                  world.playEffect( loc, Effect.DOOR_TOGGLE, 0);
72                          }                          }
73                  };                  };
74                    
75                    int delay = (longDelay == true) ? 8*20 : 4*20;
76    
77                  player.getServer().getScheduler().scheduleSyncDelayedTask(plugin, doorCloser, 4*20);                              player.getServer().getScheduler().scheduleSyncDelayedTask(plugin, doorCloser, delay);
78                    
79          }          }
80                    
81            
82            @EventHandler
83          public void onPlayerChat(AsyncPlayerChatEvent evt) {          public void onPlayerChat(AsyncPlayerChatEvent evt) {
84                  if (evt.isCancelled())                  if (evt.isCancelled())
85                          return;                          return;
86                  Runnable r = new DooOpenOnChat( evt );  
87                  plugin.getServer().getScheduler().runTask(plugin, r); //force sync handling og this                  String parts[] = evt.getMessage().split(" ");
88                    if (parts.length == 1) {                        
89                            Runnable r = new DooOpenOnChat( evt );
90                            r.run();
91                            //plugin.getServer().getScheduler().runTask(plugin, r); //force sync handling of this
92                    }
93                    
94          }          }
95                    
96          class DooOpenOnChat implements Runnable {          class DooOpenOnChat implements Runnable {
# Line 84  public class DoorOpenListener implements Line 98  public class DoorOpenListener implements
98                  public DooOpenOnChat(AsyncPlayerChatEvent evt) {                  public DooOpenOnChat(AsyncPlayerChatEvent evt) {
99                          this.evt = evt;                                          this.evt = evt;                
100                  }                  }
101                    
102    
103                  @Override                  @Override
104                  public void run() {                  public void run() {
# Line 104  public class DoorOpenListener implements Line 119  public class DoorOpenListener implements
119                                  return;                                  return;
120                          }                                                }                      
121                                                    
122                          if (door.getPassword().equals(  evt.getMessage() )); {                          if (door.getPassword().equals(  evt.getMessage() )) {
123                                  openDoor(door, p);                                  openDoor(door, p, true);
124                                  evt.setCancelled(true);                                  evt.setCancelled(true);
125                          }                          }
126                  }                  }              
                   
127          }          }
128  }  }

Legend:
Removed from v.1912  
changed lines
  Added in v.1945

  ViewVC Help
Powered by ViewVC 1.1.20