function popup_and_wait_ok(message) args = {MESSAGE=message} notif_response = nil show_notification("GenericAlertOK", args, "notif_response") while not notif_response do sleep(0.2) end local response = notif_response return response end function demo_environment() popup_and_wait_ok("Change Environment") run_ui_command("World.EnvSettings", "midnight") sleep(2) run_ui_command("World.EnvSettings", "sunrise") sleep(2) run_ui_command("World.EnvSettings", "noon") sleep(2) end function demo_rez() for x=-1,1,1 do for y=-1,1,1 do rez_prim2({x,y,-1},1) end end end function demo_avatar() popup_and_wait_ok("Change Avatar") local dest = {10,10,0} move_by(dest, "autopilot_response") while not autopilot_response do sleep(0.2) end local response = autopilot_response if response == 1 then sleep(1) demo_rez() sleep(2) end wear_by_name("Greg") run_ui_command("Avatar.ResetSelfSkeletonAndAnimations") sleep(8) wear_by_name("Petrol Sue") sleep(8) run_ui_command("Self.ToggleSitStand") sleep(2) run_ui_command("Self.ToggleSitStand") sleep(2) --run_ui_command("View.ZoomOut") run_ui_command("EditShape") sleep(6) close_floater("appearance") end function demo_ui() -- adding items to 'Build' menu -- popup_and_wait_ok("Extend UI") popup_and_wait_ok("UI interaction") open_floater("inventory") open_floater("preferences") open_floater("nearby_chat") nearby_chat_send("Hello World!") sleep(5) close_all_floaters() notif_response = nil args = {MESSAGE="Customize the UI now?"} show_notification("GenericAlertYesCancel", args, "notif_response") while not notif_response do sleep(0.2) end if notif_response ~= 0 then popup_and_wait_ok("Exiting") return end menu_name = "BuildTools" add_menu_separator(menu_name) params = {name="user_sit", label="Sit!"} params["function"]="Self.ToggleSitStand" add_menu_item(menu_name, params) params = {name="user_midnight",label="Set night",parameter="midnight"} params["function"] = "World.EnvSettings" add_menu_item(menu_name, params) -- adding new custom menu new_menu_name = "user_menu" params = {name=new_menu_name,label="My Secret Menu",tear_off="true"} add_menu(params) -- adding new item to the new menu params = {name="user_debug",label="Console", parameter="debug"} params["function"] = "Advanced.ToggleConsole" add_menu_item(new_menu_name, params) -- adding new branch new_branch = "user_floaters" params = {name=new_branch, label="Open Floater",tear_off="true"} add_branch(new_menu_name, params) -- adding items to the branch params = {name="user_permissions",label="Default permissions", parameter="perms_default"} params["function"] = "Floater.ToggleOrBringToFront" add_menu_item(new_branch, params) params = {name="user_beacons",label="Beacons", parameter="beacons"} params["function"] = "Floater.ToggleOrBringToFront" add_menu_item(new_branch, params) sleep(5) end function call_once_func() demo_environment() demo_avatar() demo_ui() end