Freezer - Make people unable to move Version: 1.1 CraftBukkit 928 Commands: Commands (Move your mouse to reveal the content) Commands (open) Commands (close) /freeze - Freeze someone Instructions: Drag the .jar into your plugins folder. Permissions: Permissions (Move your mouse to reveal the content) Permissions (open) Permissions (close) freezer.freeze - Access to /freeze freezer.nofreeze - People with that permission can't be frozen. Download: Click here Source code: Click here Changelog: v1.1 - Frozen players can no longer modify the world v1.0 - First release Signature: If you want to help Freezer to get popular then add this code to your signature: Code: [URL=http://forums.bukkit.org/threads/admn-fun-freezer-v1-0-make-people-unable-to-move-860.20956/][IMG]http://img823.imageshack.us/img823/9675/freezersignature.png[/IMG][/URL] Download freezer by clicking on the image.
Prevents moving in every way, good job, but what about a possibility to unfreeze someone (without restarting the server)? Have fun, Addi
Nope, he is not. Freezer message is just showing again in the same way and he still can't move (and of course he is still shown in the frozen-players-list). Checking plugins conflicts right now... maybe wait a minute before replying again. €1: Doesn't seem to stand in conflict with other plugins (tested on empty server), checking conflict with local mods now. €2: Except some lags when moving very fast by zombe's fly mod, there do not seem to be any problems, so I looked into your source code. First thing I noticed was that you were right, an else state is missing after "frozen.remove". So you should change this Code: } Message(t, "You have been frozen!"); Message(player, "You froze " + t.getDisplayName() + "!"); log.info("[Freezer] " + t.getDisplayName() + " has been frozen by " + player.getDisplayName() + "!"); frozen.put(t.getDisplayName(), t); return true; into this Code: } else { Message(t, "You have been frozen!"); Message(player, "You froze " + t.getDisplayName() + "!"); log.info("[Freezer] " + t.getDisplayName() + " has been frozen by " + player.getDisplayName() + "!"); frozen.put(t.getDisplayName(), t); return true; } But the missing else should actually have resulted in getting thawed and getting frozen again instantly, showing both messages. As the "You have been thawed!"-message wasn't shown (using freeze twice on the same player, "You have been frozen!" was shown twice) I guess either the frozen-state is broken, or the .get method is not returning the correct state. €3: Guess I found the mistake. In the part that should actually thaw the frozen player, you wrote player.getDisplayName, but it has to be t.getDisplayName because "player" is the one executing the command, "t" is the one you actually freeze or thaw.
I bet it's just a missing else statement. I'll look into it now. I fixed it now it works fine. EDIT by Moderator: merged posts, please use the edit button instead of double posting.
It was the else statement I had to use else if (!frozen.contains(t.getDisplayName()) (Yes I'm using an arraylist now)
Love it - Although i'd like it if you can /freeze eastonch but then make him invul to damage, just so, we can freeze players & make then invincable, also, making them unable to attack. That would be more epic.
onEntityDamage or? This happens if i use event.setCancelled(true); Code: 11:46:06 [SEVERE] Could not pass event ENTITY_DAMAGE to Freezer java.lang.ClassCastException: org.bukkit.craftbukkit.entity.CraftSheep cannot be cast to org.bukkit.entity.Player at com.bukkit.Baummann.Freezer.FreezerEntityListener.onEntityDamage(FreezerEntityListener.java:15) at org.bukkit.plugin.java.JavaPluginLoader$51.execute(JavaPluginLoader.java:598) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310) at net.minecraft.server.EntityLiving.a(EntityLiving.java:493) at net.minecraft.server.Entity.a(Entity.java:647) at net.minecraft.server.Entity.move(Entity.java:520) at net.minecraft.server.EntityLiving.a(EntityLiving.java:589) at net.minecraft.server.EntityLiving.u(EntityLiving.java:711) at net.minecraft.server.EntityLiving.o_(EntityLiving.java:231) at net.minecraft.server.World.entityJoinedWorld(World.java:1114) at net.minecraft.server.WorldServer.entityJoinedWorld(WorldServer.java:62) at net.minecraft.server.World.playerJoinedWorld(World.java:1096) at net.minecraft.server.World.cleanUp(World.java:1073) at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:395) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:309) at net.minecraft.server.ThreadServerApplication.run(SourceFile:422) Yes, I am using an EntityListener. Added. EDIT by Moderator: merged posts, please use the edit button instead of double posting.
i don't get this plugin to work with permissions when i add the freezer.freeze to the admin group and im admin i can't use it it says you don't have permission anybody knows why ?
Can you make a permissions node like freezer.autofreeze, making the group with that permission to automatically freeze upon joining? It's useful for the default group.
/freeze again Use - '*' as permission it gives your admins permission to everything. EDIT by Moderator: merged posts, please use the edit button instead of double posting.
Is it at all possible you could do a Code: /freeze all command where it freezes everyone in the world and stops teleportation?
Great, I love it, very simple and lightweight. One note I'd like to see: Put the version number in the startup text.
nice plugin, maybe can you make a /freezeall command to freeze all players witout the nofreeze permission ? the permission can be freezer.freezeall
any chance of a combat branch? Like using an iron sword will freeze someone, if hit again they will unfreeze...but if not touched their will be like a 10 sec thaw time? thanks!
Hello Baummann, Could you do a small change for me? Would it be possible to freeze players for e.g. 5 minutes when they die?