Added ::rules command so players can check the rules
This commit is contained in:
@@ -32,19 +32,28 @@ object RulesAndInfo {
|
|||||||
{
|
{
|
||||||
if(getAttribute(player, "rules:confirmed", false) || !getAttribute(player, "tutorial:complete", false))
|
if(getAttribute(player, "rules:confirmed", false) || !getAttribute(player, "tutorial:complete", false))
|
||||||
return
|
return
|
||||||
var ln = 1
|
|
||||||
val pin = getAttribute(player, "rules:pin", RandomFunction.random(1000,9999))
|
val pin = getAttribute(player, "rules:pin", RandomFunction.random(1000,9999))
|
||||||
setAttribute(player, "/save:rules:pin", pin)
|
setAttribute(player, "/save:rules:pin", pin)
|
||||||
for(line in INFO) setInterfaceText(player, INFO[ln - 1], 384, ln++)
|
|
||||||
setInterfaceText(player, SEPARATOR, 384, ln++)
|
var ln = setBaseRulesAndInfo(player);
|
||||||
val newIndex = ln
|
|
||||||
for(line in RULES) setInterfaceText(player, RULES[ln - newIndex], 384, ln++)
|
|
||||||
setInterfaceText(player, "<col=ffffff>If you agree to the above, type ::confirmrules $pin", 384, ln++)
|
setInterfaceText(player, "<col=ffffff>If you agree to the above, type ::confirmrules $pin", 384, ln++)
|
||||||
setInterfaceText(player, "", 384, ln)
|
setInterfaceText(player, "", 384, ln)
|
||||||
player.packetDispatch.sendInterfaceConfig(384, 17, true)
|
player.packetDispatch.sendInterfaceConfig(384, 17, true)
|
||||||
openInterface(player, 384)
|
openInterface(player, 384)
|
||||||
player.lock()
|
player.lock()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@JvmStatic
|
||||||
|
fun setBaseRulesAndInfo(player: Player): Int {
|
||||||
|
var ln = 1
|
||||||
|
for(line in INFO) setInterfaceText(player, INFO[ln - 1], 384, ln++)
|
||||||
|
setInterfaceText(player, SEPARATOR, 384, ln++)
|
||||||
|
val newIndex = ln
|
||||||
|
for(line in RULES) setInterfaceText(player, RULES[ln - newIndex], 384, ln++)
|
||||||
|
setInterfaceText(player, "", 384, ln)
|
||||||
|
return ln
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class RulesListener : InterfaceListener
|
class RulesListener : InterfaceListener
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ import rs09.game.content.ame.RandomEventManager
|
|||||||
import rs09.game.content.ame.RandomEvents
|
import rs09.game.content.ame.RandomEvents
|
||||||
import rs09.game.content.quest.members.anma.AnmaCutscene
|
import rs09.game.content.quest.members.anma.AnmaCutscene
|
||||||
import rs09.game.ge.GrandExchange
|
import rs09.game.ge.GrandExchange
|
||||||
|
import rs09.game.interaction.inter.RulesAndInfo
|
||||||
import rs09.game.node.entity.state.newsys.states.FarmingState
|
import rs09.game.node.entity.state.newsys.states.FarmingState
|
||||||
import rs09.game.system.SystemLogger
|
import rs09.game.system.SystemLogger
|
||||||
import rs09.game.system.command.CommandMapping
|
import rs09.game.system.command.CommandMapping
|
||||||
@@ -638,6 +639,12 @@ class MiscCommandSet : CommandSet(Privilege.ADMIN){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
define("rules", Privilege.STANDARD, "", "Shows the rules."){ player, _ ->
|
||||||
|
RulesAndInfo.setBaseRulesAndInfo(player);
|
||||||
|
player.packetDispatch.sendInterfaceConfig(384, 17, true)
|
||||||
|
openInterface(player, 384)
|
||||||
|
}
|
||||||
|
|
||||||
define("confirmrules", Privilege.STANDARD) { player, args ->
|
define("confirmrules", Privilege.STANDARD) { player, args ->
|
||||||
if(getAttribute(player,"rules:confirmed", false))
|
if(getAttribute(player,"rules:confirmed", false))
|
||||||
reject(player, "You have already confirmed the rules.")
|
reject(player, "You have already confirmed the rules.")
|
||||||
|
|||||||
Reference in New Issue
Block a user