37d3ec002d
Implemented ::ifaces commmand Implemented ::pohstorableitems command to fetch all storable items Implemented storing books in house POH now included in item checks
136 lines
6.4 KiB
Kotlin
136 lines
6.4 KiB
Kotlin
package content.global.handlers.item.book
|
|
|
|
import content.global.handlers.iface.BookInterface
|
|
import content.global.handlers.iface.BookLine
|
|
import content.global.handlers.iface.Page
|
|
import content.global.handlers.iface.PageSet
|
|
import core.api.setAttribute
|
|
import core.api.storeBookInHouse
|
|
import core.game.interaction.IntType
|
|
import core.game.interaction.InteractionListener
|
|
import core.game.node.entity.player.Player
|
|
import core.game.world.GameWorld
|
|
import org.rs09.consts.Items
|
|
|
|
/**
|
|
* Security Book
|
|
* https://www.youtube.com/watch?v=yXyRUXYafO0
|
|
* @author ovenbreado
|
|
*/
|
|
class SecurityBookPlugin : InteractionListener {
|
|
companion object {
|
|
private const val BLUE = "<col=08088A>"
|
|
private val TITLE = "" + GameWorld.settings!!.name + " Account Security"
|
|
private val CONTENTS = arrayOf(
|
|
PageSet(
|
|
Page(
|
|
BookLine("Chapters", 38),
|
|
BookLine("<h1>" + BLUE + "Password Tips</col></h1>", 40),
|
|
BookLine("<h1>" + BLUE + "Recovery Questions</col></h1>", 41),
|
|
BookLine("<h1>" + BLUE + "Other Security Tips</col></h1>", 42),
|
|
BookLine("<h1>" + BLUE + "Stringhold of Security</col></h1>", 43)
|
|
),
|
|
Page(
|
|
BookLine("<h1>" + BLUE + "Password Tips</col></h1>", 53),
|
|
BookLine("A good password should be", 54),
|
|
BookLine("easily remembered by", 55),
|
|
BookLine("yourself but not easily", 56),
|
|
BookLine("guessed by anyone else.", 57),
|
|
BookLine("Choose a password that has", 59),
|
|
BookLine("both letters and numbers in", 60),
|
|
BookLine("it for the best security but", 61),
|
|
BookLine("don't make it so hard that", 62),
|
|
BookLine("you'll forget it!", 63),
|
|
BookLine("Never write your password", 65),
|
|
BookLine("down or leave it in a text file", 66),
|
|
BookLine("on your computer, someone", 67)
|
|
)
|
|
),
|
|
PageSet(
|
|
Page(
|
|
BookLine("could find it easily!", 38),
|
|
BookLine("Never tell anyone your", 40),
|
|
BookLine("password in " + GameWorld.settings!!.name + ", not", 41),
|
|
BookLine("even a Moderator of any", 42),
|
|
BookLine("kind.", 43)
|
|
),
|
|
Page(
|
|
BookLine("<h1>" + BLUE + "Recovery Questions</col></h1>", 53),
|
|
BookLine("Ideally your recovery", 54),
|
|
BookLine("questions should be easily", 55),
|
|
BookLine("remembered by you but not", 56),
|
|
BookLine("guessable by anyone who", 57),
|
|
BookLine("may know you or given", 58),
|
|
BookLine("away in conversation. Choose", 59),
|
|
BookLine("things that do not change,", 60),
|
|
BookLine("like dates or names but don't", 61),
|
|
BookLine("choose obvious ones like your", 62),
|
|
BookLine("birthday and your sister or", 63),
|
|
BookLine("bother's name because lots", 64),
|
|
BookLine("of people will know that.", 65)
|
|
)
|
|
),
|
|
PageSet(
|
|
Page(
|
|
BookLine("<h1>" + BLUE + "Recovery Questions</col></h1>", 38),
|
|
BookLine("Bear in mind that recovery", 39),
|
|
BookLine("questions will take 14 days to", 40),
|
|
BookLine("become active after you have", 41),
|
|
BookLine("applied for them to be", 42),
|
|
BookLine("changed. This is to protect", 43),
|
|
BookLine("your account from hijackers", 44),
|
|
BookLine("who may change them.", 45),
|
|
BookLine("Never give your password to", 47),
|
|
BookLine("ANYONE. This includes", 48),
|
|
BookLine("your friends, family, and", 49),
|
|
BookLine("moderators in game.", 50),
|
|
BookLine("Never leave your account", 52)
|
|
),
|
|
Page(
|
|
BookLine("logged on if you are away", 53),
|
|
BookLine("from the computer, it only", 54),
|
|
BookLine("takes 5 seconds to steal your", 55),
|
|
BookLine("account!", 56)
|
|
)
|
|
),
|
|
PageSet(
|
|
Page(
|
|
BookLine("<h1>" + BLUE + "Stronghold of Security</col></h1>", 38),
|
|
BookLine("Location: The Stronghold of", 39),
|
|
BookLine("Security, as we call it, is", 40),
|
|
BookLine("located under the village filled", 41),
|
|
BookLine("with Barbarians. It was", 42),
|
|
BookLine("found after they moved their", 43),
|
|
BookLine("mining operations and a", 44),
|
|
BookLine("miner fell through. The", 45),
|
|
BookLine("Stronghold contains many", 46),
|
|
BookLine("challenges. Both for those", 47),
|
|
BookLine("who enjoy combat and those", 48),
|
|
BookLine("who enjoy challenges of the", 49),
|
|
BookLine("mind. This book will be very", 50),
|
|
BookLine("useful to you in your travels", 51),
|
|
BookLine("there.", 52)
|
|
),
|
|
Page(
|
|
BookLine("You can find the Stronghold", 53),
|
|
BookLine("of Security by looking for a", 54),
|
|
BookLine("hole in Barbarian Village.", 55),
|
|
BookLine("Be sure to take your combat", 56),
|
|
BookLine("equipment though!", 57)
|
|
)
|
|
)
|
|
)
|
|
private fun display(player: Player, pageNum: Int, buttonID: Int) : Boolean {
|
|
BookInterface.pageSetup(player, BookInterface.FANCY_BOOK_2_27, TITLE, CONTENTS)
|
|
return true
|
|
}
|
|
}
|
|
|
|
override fun defineListeners() {
|
|
on(Items.SECURITY_BOOK_9003, IntType.ITEM, "read") { player, node ->
|
|
BookInterface.openBook(player, BookInterface.FANCY_BOOK_2_27, ::display)
|
|
storeBookInHouse(player, node)
|
|
return@on true
|
|
}
|
|
}
|
|
} |