@q @program cmd-@aup 1 99999 d i ( cmd-@aup v1.0 Jessy @ FurryMUCK 10/99 This utility provides an @AUP command, that allows players to explicitly indicate that they have read and agree to abide by the terms of your MUCK's Acceptable Use Policy. The program simply accepts user input from the keyboard, asks for confirmation that the user has read and agrees to abide by the terms of the AUP, and -- if the user enters "yes" -- sets the restricted property ~aup to a values of "yes". You may wish to @lock important commands and exits to this property. For example: @lock mail=~aup:yes. INSTALLATION: @Set this program Wizard and link a global action with a name such as @AUP to it. The program's #help option will include information on how to access the AUP file, if it is configured. To configure, set the @aupfile property on the trigger to a string that gives instructions on how to read the AUP. For ex: @set @aup=@aupfile:To read GenericMUCK's AUP file, type `news aup'. USAGE: Type the command name, and -- if you agree to abide by your MUCK's Acceptable Use Policy -- enter "yes" at the confirmation prompt. Cmd-@aup may be freely ported. Please comment any changes. ) (2345678901234567890123456789012345678901234567890123456789012345678901) $define tell me @ swap notify $enddef : DoHelp ( -- ) (* show help screen *) " " tell prog name " (#" strcat prog intostr strcat ")" strcat tell " " tell "The " command @ strcat " command is used to indicate that " strcat "you have read and agree to abide by the terms of the MUCK's " "Acceptable Use Policy." strcat strcat tell " " tell trig "@aupfile" getpropstr dup if tell " " tell else pop then "Once you have read the AUP, type " command @ strcat " and " strcat "enter \"yes\" at the prompts if you agree to abide by the policy's " "terms." strcat strcat tell ; : main "me" match me ! (* make sure I'm me *) dup if (* check: user wants help? *) "#help" over stringpfx if DoHelp exit then then ">> AUP Confirmation:" tell (* confirm: has read? *) ">> Have you read Acceptable Use Policy? (y/n)" tell read "yes" swap stringpfx not if ">> Aborted." tell exit then (* confirm: agrees? *) ">> Do you agree to abide by the policy's terms? (y/n)" tell read "yes" swap stringpfx not if ">> Aborted." tell exit then (* set record prop *) me @ "~aup" "yes" setprop (* notify *) ">> Recorded. Thank you, and welcome to the MUCK." Tell ; . c q @set cmd-@aup=w @act @aup=#0 @link @aup=cmd-@aup