ResidenceSigns
ResidenceSigns
Version 2.10.0 is out now!
(Download may be delayed due to approval time)
Instead of making your players use "/res market rent Town.HouseName", allow your players to right click signs to rent and buy land, or put down signs to set up renting or selling with the Residence mod.
Language Change
If you want to have ResidenceSigns translated into your native language, copy/paste the template found here, change the statements that are in quotes to your native language, and PM it back to me!
Current Features
- Placing a [Rent] or [ForSale] sign on a residence that is already set up for rent or sale will automatically fill in all other information.
- [Rent] signs allow you to setup a residence for rent using "Price/Days/AutoRenew [t/f]?" on the third line and an optional residence full name on the second.
- Right clicking a [Rent] sign will attempt to rent the house in your name.
- Right clicking a [Rented] sign that is rented will unrent the house for you.
- When someone rents a house using a sign, the bottom line of the sign will change from "Available" to the renter's name.
- [ForSale] signs allow you to sell a residence for "Price" on the second line and an optional residence full name on the third.
- Right clicking a [ForSale] sign will attempt to buy the residence.
- When someone buys the residence, the bottom line of the sign will change from "Available" to "Sold".
- Sign text should update if there are any differences in info whenever someone right clicks.
- Owners of Residence can break the sign to remove it from the Market/Rentable.
- Picks up Residence Events and automatically updates Residence Signs accordingly.
- You can change the default Language by changing the Language config option and having the correct .yml file in the Language Folder.
- Residence name is optional on the third line. By default, wherever cuboid the sign is located in, it will try to use that residence.
- Multiple signs can used for one Residence.
Planned Features
- Code Cleanup.
- Suggestions from players.
Better Sign Storing and control.
Different Language Alternatives.
Adding Permissions.
Change Log ===
Version 2.10.0: 5/12/2013
- Fixed major bug with some signs popping off upon server restarts.
- Made sign creation prices more '$' friendly.
- Updated to CB 1.5.2-R0.1.
Version 2.9: 8/26/2012
- Fully reworked auto updater system. This should all ALL NPE's when interacting with signs.
- Fixed remaining CME's in auto updater system, signs will now automatically change the instant Residence changes the Residences' status.
- NO MORE SIGNS AUTO REMOVING THEMSELVES DUE TO THE ABOVE BUGS!
Version 2.8: 8/22/2012
- Hopefully a permanent fix for the CME NPE issue occurring on the auto update system.
- Fixed simple display when creating Rent Signs, the AutoRent on the sign will now say "true" instead of "t".
Version 2.7: 8/22/2012
- New Auto-Update Feature. Signs will now auto update the names listed on the Signs when changed using /res rename Command.
- Fixed a bad save variable of ForSale Residences to the signs.yml.
- Added more experimental features to the sign load in system. If a sign fails to load for any reason, ResidenceSigns will try to regenerate the sign with all the proper information.
- Old code cleanup.
Version 2.6: 8/20/2012
- Added experimental safe checks for on Sign Interactions when Residence was throwing NPEs to the Signs, will remove Signs if this occurs.
- Attempt to fix Signs not loading in properly after a restart or two.
- Make sure you are using Residence v2.6.5. This should fix all other remaining NPEs being thrown on attempts to grab variables from Residence itself.
- Updated to CB1.3.2-R2.0
Version 2.5: 7/31/2012
- Fixed the issue with the NullPointerErrors spamming on the automatic sign update system. For some reason occassionally blocks were calling an NPE when trying to acquire their State. The sign will now remove itself from the Plugin.
- NOTE: This will not as of this moment remove the ACTUAL sign as its pulling an NPE for the block, I will have a fix for this in a later update.
- Fixed the issue with sometimes ResSigns calling NPE's when trying to acquire the Residences AutoRepeat variable. Thank you Bekvon for fixing this.
- NOTE: This MAY require the Dev version of Residence as the fix is not actually live but implemented in their current Dev build.
- Added the "Sold" variable for the Alternative Language System.
- NOTE: YOU WILL NEED TO DELETE YOUR LANGUAGE FOLDER! Stop Server, Delete Language Folder, Start Server, Allow ResSigns To Regenerate All Language ymls. If not done in this Order, you WILL get Errors.
- Updated to CB1.2.5-R5.
Version 2.4.1 : 6/26/2012
- Fix NPE with alternative Language System. For some reason the Brazilian translation file was lost, re-added.
- Added Polish locale for alternative Language System.
Version 2.4 : 6/25/2012
- Changed the task that updates signs to run more effectively, as faster.
- Tweaked the loading in and saving of signs to hopefully keep the signs.yml more effective.
- Switched a few variables that should hopefully help fix issues with false set reatables to work correctly with the Signs as well as fix any NPEs that were still occuring.
Version 2.3 : 6/4/2012
- Fixed a check for players trying to unrent Residences when their name was too long to fit on the sign, method now checks Renting Players' Name. Sorry!
- Tweaked the auto sign refresh feature to be slightly more effective with the Residence Rent_Expire Timers.
- Updated to 1.2.5-R3.0
Version 2.2 : 5/5/2012
- *NEW* Added a reload command to quickly reload your config.yml.
- /rs reload.
- Fixed a bug where on RENT_EXPIRE, Rent Signs would display the Residence as Available regardless of status, and would need to be manually updated.
- Added Spanish.yml to the default alternative language system.
Version 2.1 : 5/2/2012
- Fixed issue where certain sign creation exceptions weren’t getting saved into the signs.yml.
- *NEW*Added finally the ability to call and set Residences as false for Auto-Renew Rentable on sign creations! YAY! (Testing on this feature is appreciated to make sure I got the write call methods from Residence since they were recently added).
Version 2.0 : 5/1/2012
- *NEW* Totally revamped the way ResidenceSigns handles the signs by using some flat yml files to also store Sign data(signs.yml). This new feature allows for much better sign control when Events get thrown from Residence. It is highly advised to not touch this file for any reason.
- *NEW* ResidenceSigns should now automatically update upon Residence Events occuring, either by "/" commands or if rent expires and player can't afford or the autorefresh is set to false.
- NOTE: Not every exception has been added just yet as I was quite excited to get this release out to all of you!
- *New*Added New config.yml node for Unrenting on Sign Right-Click. NOW STOP QQing ABOUT IT! :P
- Readjusted the temporary fix to the sign by changing it to left-click updates. By left-clicking the sign if it is rented but not displaying that, it will update, and vice versa if not rented but says it is, will fix as well.
- Added German.yml to default written languages for the Alternative Language system.
- Added smoother components to the conversion methods, if you have still yet to convert to v1.4+.
- Adjusted Config.yml Handler to even better recognize Out of Date Config.yml, and to update it.
- Adjusted the LanguageManager to better handle writing new alternative language.yml's.
- Massive Code Cleanup, a few methods combined for more effective code.
Permissions!
ResidenceSigns now has Permissions support via Vault!
- rs.admin - This node gives the player permission to place/break ForSale and Rent signs regardless of ownership. Defaulted to OP.
Reporting Bugs/Issues
When Reporting An Issue, Please Do The Following
- Your Craftbukkit version.
- Current version of ResidenceSigns.
- Describe the exact situation in which the issue occured (listing all applicable info, names, what sign reads, etc etc)
- Copy/Paste the error from the Console Log.
Installation and Help
- Drop ResidenceSigns.jar into /plugins directory.
- Enjoy!
- Wiki Page Now with pictures!
Donations
Happy with my work? Want to help out? Just glad to see this plugin back?
Feel Free To Donate!
This plugin is based off of the old ResidenceSigns plugin originally written by Karnedge(giving credit where due) but all the code was redone by scratch.
I'm sorry, I was talking about signs :P Signs are "Schild" in German, so I messed up and called them shields... my fault. It was 5am :(
I've changed the comment so other people don't get confused, too...
Edit:
Once again talking about that renewable-issue:
I don't really understand why you actually need the getRenewable method from residence.
The problem occurs when you unrent the residence by touching the sign - in other words, you already know the location of the sign (or even the reference to the sign-object) and can easily retrieve its text. I don't know much about Bukkit's API, but I do know that there are methods to get the sign's text: http://jd.bukkit.org/apidocs/org/bukkit/block/Sign.html
If the sign has set the flag to "false", it should still be present in the 2nd line... So actually, this information is available without much effort during the unrent-operation.
Excuse me if something's wrong, as I said, I don't really know much about the API... thats just what I figured in a few minutes :)
@Turt1zzle
I don't know what these shields are that you are referencing, if you could be more clear as to what a shield is, that would be helpful.
As far as the rentable "flag" on the sign, defaultly it is false if u set it to false, but the fact that it switches to true when unrented is not a bug. This is because there is actually no getRenewable method from Residence, I have messaged bekvon asking for it and he said he'd get around to it, but due to the way the sign works its hard to get the variable from the sign, so until the get method is implemented from Residence itself, this will remain setting to true. But I will update this as soon as the method becomes available.
As far as making signs automatically update, why would you not use the signs to perform these actions anyways? Simply destroying the sign pulls a Residence from the Market, making it unrentable. I have been looking to implement this feature for the minimal use it has. I can simply store all signs in a HashMap inside a HashMap, but I have not done so because of the amount of effort vs. the very minimal use of it was not really pointful on my part, with time better spent coding the baseline of my newest plugin =P.
EDIT: Still not sure what shields are, but found the issue with creation, just a misplace ! in a check. rs.admin should work in the version im uploading now.
Hey there,
I have 2 bug reports so far:
- The Permission-Node rs.admin is buggy. If I have it, I cannot create signs for other player's residences, but I can break them. If I don't have it, its the other way round.
- The Renew-Rentable-Flag in the sign has no effect. If its set to "false", the residence will also have the flag set to "false", but people can still click the sign to unrent the residence and it will become "true" anyway.
I hope you can fix that soon, since you did not provide your source code :P
Also, I wonder if the following is possible: Could the sign post be updated automatically when the residence's status changes? (from rentable to not-rentable or the other way round)
I mean, you could store the location of the signs for each residence in a HashMap for example (on creating them).
Edit: That would of course mean that there needs to be a new status, [Not Rentable] :)
@Cheollyeon
I am not sharing source code just yet but I have been working on a Language system for my plugins. If you PM me, provide me the language you need, I can get you a list of all Strings that need translations and I can get that implemented for you as soon as I can =)
Do you share the source code? please I need to change the language
@Llamageddon
been meaning to update wiki, just been so busy coding my new plugin, that I just haven't had time. But if upon downloading new versions you read the changelog for it, you would know that the lines had shifted =P
Hmm, I have suddenly lost the ability to put a residence on the market using a sign. It registers fine if it is already on the market via /res commands. Any idea what I am doing wrong, I followed the wiki tutorial to the letter, tried leaving the second line blank and putting in the name. It is probably linked to my Residence permissions setting or something but I checked I was the owner. Just posting here in case anyone else has had this problem or might be able to enlighten me. It worked fine when I was using v1.2.
Edit: Mystery solved; the second and third lines for renting are the other way round now, so 2nd line is rent details: 1/1/true and 3rd line is property name or blank. This makes much more sense to my way of thinking but you should update the wiki so other people don't bother you with the same problem ;).
@mcheaven
I wont be adding any money returns options of any of that shenanigans. ResidenceSigns simply takes Residence commands and makes them easier by turning them into sign commands. If you don't want annoyed players, tell them to stop clicking everything.
as far as the Max Rents issue, ResSigns only attempts to rent, and changes the sign on successful rent from Residence. All commands are still filtered through Residences limitations.
If you right click on an [rent] sign of an residence you already rent you unrent it (option for that please) but you dont get your money back if you unrent? so please add an option like "Rightklick_unrenting: false or true" :) my users are really annyoing theyre right clicking on every sign... twice.. (and I noticed the limits for my players arent working (max rents) but idk if its your plugin or residence..(other limits in residence are working) )
hhmmm do you know what would be awesome? an command to teleport to nearest residence (sign), which is for rent (or for sale)
@MP5KU
This provides me literally no information. Also, ResidenceSigns does not use any Economy, all the Economy transactions are handled through Residence.
Edit: This is probably the Residence message telling you you don't have Economy enabled in it's config.yml.
ya, that good ^-^
All i get is econmy not enabled? Wtf is wrong? Im ysing Iconomy Is that supported? i also have vault?
@zona13pita
Bug, fixed, still new to the new config shit.
Download this .jar, delete your config.yml, and reload your server. This will fix the Exception.
ResidenceSigns
Normal??:>>>>>2012-03-24 21:22:36 [INFO] Threw Exception
@silentnight18
Yay! I didn't mean to make a big deal about that issue I was having, fixing it with a new release is the best kind of fix ;) .
Version 1.3 Now Live!
Here is a direct download link to the .jar while the file for the project is waiting to be approved, because I know how much you guys don't like to wait :P
ResidenceSigns v1.3
Version 1.3: 3/24/2012
@Llamageddon
this issue should resolve itself in the next version, which will hopefully be out today.
I have found an odd bug. Can't tell you if it is from the latest update because I only just tried this. I wanted to test remove buy/rent status from a property by removing the sign. I walk into my residence get the message "Welcome Llamageddon to A, owned by Llamageddon." go to remove the sign and get the message "ResidenceSigns: You Are Not The Owner Of This Residence.", sign beaks and turns blank but stays there and property is still for rent.
I checked my logs and I did have an error with residence signs about 10 mins before, I think it was caused by me doing weird things with defining subzones and deleting residences but not sure, it definitely wasn't caused when I tried to destroy the sign, I get no server log errors when I do that. Will post error details in a ticket in-case it is related. (I have restarted server and reloaded plugins since and had no new errors though still have the sign destroy bug mentioned above).
@mcheaven
I am still tinkering around with the permissions for /rsadmin. I should have this feature working soon don't worry!
hm I guess /rsadmin isnt working? The Chat just shows /rsadmin in white if you write /rsadmin :D I need the command for allowing my mods to remove [rent] signs from residences they dont own..