Editor's Note: This week's horoscope is late. It was delivered on time by our esteemed Gae; however, RL is RL. Enjoy! HOROSCOPE from 28th November to 4th December 2022 by Gae Malaparte for The Cyber Society ------------------- This week, the star sign is Libra. In total success mode! Aries Back to the roots If there's one thing that sets you apart, Aries, it's your fearlessness. Always trusting in your lucky star, you have the knack of taking serious risks and getting away with it, without burning your wings. You are thirsty for the ideal, hungry for the new and this is just the right time, because the stars speak of escapes, hopes and joy. Take advantage of the windfall, especially since the next few weeks are going to be exceptional. Excited as a flea at low tide, you can't stand still. You need action, projects to make it happen. Mercury and Venus in Sagittarius are talking about nothing else! You're brooding because the year's balance
Advanced Title Maker was a 1st scripted product that I created about 10 years ago. It was selling well. I am open sourcing it for educational purposes.
\O .. O/
integer SetText = FALSE;
vector TextColor =<0 .0="" 1.0="">;
vector colortext = <1 .0="" 0.0="" 1.0="">;
string textsay ="";
list MENU = ["PRIVATE","PUBLIC","COLOR","TURN ON", "TURN OFF","SHORTCUTS"];
list COLORS = ["white", "black","green","red","yellow","blue","pink", "cyan" ];
list TIME =["ONCE","3 min","5 min", "10 min", "15 min","UNSET"];
list empty;
integer CHANNEL_DIALOG_BOX = -49384756;
//function
TextControl(string text, vector clr) {
if (SetText == TRUE) {
llSetText(text, clr, 1.0);
}
else if (SetText == FALSE){
llSetText("", <1>, 1.0);
llOwnerSay( "\nTittle maker is now turned OFF!\n Write 'setup' for menu and TURN IT ON" );
}
}
default
{
changed(integer change)
{//on owner change or region change
if(change & (CHANGED_OWNER))
{
llResetScript();
}
}
attach (key wearer)
{
if (wearer != NULL_KEY)
{
llRequestPermissions(wearer,PERMISSION_TAKE_CONTROLS);
}
}
run_time_permissions(integer perm)
{
if (perm & PERMISSION_TAKE_CONTROLS);
{
llTakeControls(0,FALSE,TRUE); //as long as an agent has controls given to a script, it will not stop in a no-script parcel.
}
}
state_entry() {
if (SetText == FALSE ){
llOwnerSay("\nTittle maker is turned OFF!\n Write 'setup' for menu and TURN IT ON");
}
CHANNEL_DIALOG_BOX=-100-(integer)llFrand(123000);
llListen(CHANNEL_DIALOG_BOX, "", llGetOwner(), "");
llListen(0, "", llGetOwner(), "setup");
llListen(0, "", llGetOwner(), "color");
llListen(5, "", llGetOwner(), "");
llListen(0, "", llGetOwner(), "");
}
listen(integer channel, string name, key id, string message)
{
if ( message == "setup" && id == llGetOwner() ) {
llDialog(id, "\nTurn your title maker ON or OFF \n PUBLIC - everyone can change your title \n PRIVATE - only you can change your title",MENU, CHANNEL_DIALOG_BOX);
}
if ( message == "color" && id == llGetOwner() ) {
llDialog(llGetOwner(), "Pick color for your title text:", COLORS, 5);
}
//DIALOG COMMANDS list MENU = ["TURN ON", "TURN OFF","SET EVERYONE","PRIVATE"];
if ( channel == CHANNEL_DIALOG_BOX) {
//["TURN ON", "TURN OFF","SET EVERYONE","PRIVATE"];
if (message == "TURN ON") {
SetText= TRUE;
textsay ="You can WRITE:\n 'title' some new title \n 'color' to change text color";
llOwnerSay("\nTittle maker is now turned ON \n Write 'setup' for menu with options\n Add new title - just write 'title' some new title" );
}
else if (message == "TURN OFF"){
SetText= FALSE;
llOwnerSay("\nTittle maker is turned OFF \n Write 'setup' for menu and TURN IT ON" );
}
else if (message == "PUBLIC") {
state on_everyone;
}
else if (message == "COLOR") {
llDialog(llGetOwner(), "Pick color for your title text:", COLORS, 5);
}
else if (message == "SHORTCUTS"){
llDialog(llGetOwner(), "You can write following commands on local chat:\n\n 'on' - Turn title ON\n 'off' - Turn title OFF\n 'color' Get menu with colors\n 'public' - Everyone can change your title\n 'private' - Only you can change your title\n", empty, 50);
}
}
if (channel == 5) {
if(message =="red") {
TextColor = <1 .0="">;
llOwnerSay("color is set to red" );
}
else if(message =="white") {
TextColor = <1 .0="" 1.0="">;
llOwnerSay("color is set to white" );
}
else if(message =="black") {
TextColor = <0 .0="" 0.0="">;
llOwnerSay("color is set to black" );
}
else if(message =="green") {
TextColor = <0 .0="" 0.0="" 1.0="">;
llOwnerSay("color is set to green" );
}
else if(message =="yellow") {
TextColor = <1 .0="" 0.0="" 1.0="">;
llOwnerSay("color is set to yellow" );
}
else if(message =="blue") {
TextColor = <0 .0="" 0.0="" 1.0="">;
llOwnerSay("color is set to blue" );
}
else if(message =="pink") {
TextColor = <1 .0="" 0.0="" 1.0="">;
llOwnerSay("color is set to pink" );
}
else if(message =="cyan") {
TextColor = <0 .0="" 1.0="">;
llOwnerSay("color is set to cyan" );
}
colortext = TextColor;
}
if (channel == 0 ) {
string sub = llGetSubString(message,0,4);
if (sub =="title") {
string mess = llGetSubString(message,5,-1);
textsay = mess;
}
else if (message == "on"){
SetText= TRUE;
textsay ="You can WRITE:\n 'title' some new title \n 'color' to change text color";
llOwnerSay("\nTittle maker is now turned ON \n Write 'setup' for menu with options\n Add new title - just write 'title' some new title" );
}
else if (message == "off"){
SetText= FALSE;
llOwnerSay("\nTittle maker is now turned OFF \n Write 'setup' for menu and TURN IT ON or\n Write 'on'" );
}
else if (message == "public"){
state on_everyone;
}
else if (message == "private"){
state default;
}
}
TextControl(textsay,colortext);
}
state_exit(){
llOwnerSay("SET to PUBLIC: Everyone can change your title.");
}
}
state on_everyone {
changed(integer change)
{//on owner change or region change
if(change & (CHANGED_OWNER))
{
llResetScript();
}
}
state_entry()
{
CHANNEL_DIALOG_BOX=-100-(integer)llFrand(123000);
llDialog(llGetOwner(), "Please select how often should we ask people around you to give you a new TITLE \n\n Select just ONCE to ask once \n Select timer \n Select UNSET to remove timer", TIME, CHANNEL_DIALOG_BOX);
llSay (0, "Change "+llKey2Name(llGetOwner())+"'s" +" title\n Write on chan 4 -> '/4 SOME NEW TITLE'");
llListen(CHANNEL_DIALOG_BOX, "", llGetOwner(), "");
llSetText("Write /4 to give me a new TITLE",<0>,1); textsay ="Write /4 to give me a new TITLE";
llOwnerSay("Everyone can give you title");
llListen(5, "", NULL_KEY, "");
llListen(4, "", NULL_KEY, "");
llListen(0, "", llGetOwner(), "setup");
llListen(0, "", llGetOwner(), "color");
llListen(0, "", llGetOwner(), "");
}
attach (key wearer)
{
if (wearer != NULL_KEY)
{
llRequestPermissions(wearer,PERMISSION_TAKE_CONTROLS);
}
}
run_time_permissions(integer perm)
{
if (perm & PERMISSION_TAKE_CONTROLS);
{
llTakeControls(0,FALSE,TRUE); //as long as an agent has controls given to a script, it will not stop in a no-script parcel.
}
}
listen(integer channel, string name, key id, string message) {
if ( message == "setup" && id == llGetOwner() ) {
llDialog(id, "\nTurn your title maker ON or OFF \n PUBLIC - everyone can change your title \n PRIVATE - only you can change your title",MENU, CHANNEL_DIALOG_BOX);
}
if ( message == "color" && id == llGetOwner() ) {
llDialog(llGetOwner(), "Pick color for your title text:", COLORS, 5);
}
if (channel == 0 && id == llGetOwner()){
if (message == "on"){
SetText= TRUE;
textsay ="Write /4 to give me a new TITLE";
llOwnerSay("\nTittle maker is now turned ON \n Write 'setup' for menu with options\n SET to PUBLIC - everyone can give you a title" );
}
else if (message == "off"){
SetText= FALSE;
llOwnerSay("\nTittle maker is now turned OFF \n Write 'setup' for menu and TURN IT ON or\n Write 'on'" );
}
else if (message == "public"){
state default;
}
else if (message == "private"){
state default;
}
}
//SETTING listen on DIALOG COMMANDS list MENU = ["TURN ON", "TURN OFF","SET EVERYONE","PRIVATE"];
if ( channel == CHANNEL_DIALOG_BOX) {
//["TURN ON", "TURN OFF","SET EVERYONE","PRIVATE"];
if (message == "TURN ON") {
SetText= TRUE;
llOwnerSay("Title maker is turned ON \n in STATE: Everyone can give you title \n Write '/2 set' for more options " );
}
else if (message == "TURN OFF"){
SetText= FALSE;
llOwnerSay("Tittle maker is turned OFF \n Write '/2 set' for more options" );
}
else if (message == "PRIVATE") {
state default;
}
else if (message == "PUBLIC") {
llDialog(llGetOwner(), "Please select how often should we ask people around you to give you a new TITLE \n\n Select just ONCE to ask once \n Select timer \n Select UNSET to remove timer", TIME, CHANNEL_DIALOG_BOX);
}
else if (message == "COLOR") {
llDialog(llGetOwner(), "Pick color for your title text:", COLORS, 5);
}
else if (message == "SHORTCUTS"){
llDialog(llGetOwner(), "You can write following commands on local chat:\n\n 'on' - Turn title ON\n 'off' - Turn title OFF\n 'color' Get menu with colors\n 'public' - Everyone can change your title\n 'private' - Only you can change your title\n" , empty, 50);
}
//SETTING listen on list TIME =["ONCE","3 min","5 min", "10 min", "15 min"] - to set timer event;
else if (message == "ONCE"){
llSay (0, "Change "+llKey2Name(llGetOwner())+"'s" +" title\n Write on chan 4 -> '/4 some new title'");
llSetText("Write /4 to give me a new TITLE",<0>,1);
}
else if (message =="UNSET"){
llSetTimerEvent(0.0);
llOwnerSay("TIMER removed");
}
else if (message == "3 min"){
llSetTimerEvent(180.0);
llSay (0, "Change "+llKey2Name(llGetOwner())+"'s" +" title\n Write on chan 4 -> '/4 SOME NEW TITLE'");
llSetText("Write /4 to give me a new TITLE",<0>,1);
llOwnerSay("SET TO: send title request after every 3 minutes");
}
else if (message == "5 min"){
llSetTimerEvent(300.0);
llSay (0, "Change "+llKey2Name(llGetOwner())+"'s" +" title\n Write on chan 4 -> '/4 SOME NEW TITLE'");
llSetText("Write /4 to give me a new TITLE",<0>,1);
llOwnerSay("SET TO: send title request after every 5 minutes");
}
else if (message == "10 min"){
llSetTimerEvent(600.0);
llSay (0, "Change "+llKey2Name(llGetOwner())+"'s" +" title\n Write on chan 4 -> '/4 SOME NEW TITLE'");
llSetText("Write /4 to give me a new TITLE",<0>,1);
llOwnerSay("SET TO: send title request after every 10 minutes");
}
else if (message == "15 min"){
llSetTimerEvent(900.0);
llSay (0, "Change "+llKey2Name(llGetOwner())+"'s" +" title\n Write on chan 4 -> '/4 SOME NEW TITLE'");
llSetText("Write /4 to give me a new TITLE",<0>,1);
llOwnerSay("SET TO: send title request after every 15 minutes");
}
//can add new option to MENU
}
if (channel == 5) {
if(message =="red") {
TextColor = <1 .0="">;
llOwnerSay("color is set to red" );
}
else if(message =="white") {
TextColor = <1 .0="" 1.0="">;
llOwnerSay("color is set to white" );
}
else if(message =="black") {
TextColor = <0 .0="" 0.0="">;
llOwnerSay("color is set to black" );
}
else if(message =="green") {
TextColor = <0 .0="" 0.0="" 1.0="">;
llOwnerSay("color is set to green" );
}
else if(message =="yellow") {
TextColor = <1 .0="" 0.0="" 1.0="">;
llOwnerSay("color is set to yellow" );
}
else if(message =="blue") {
TextColor = <0 .0="" 0.0="" 1.0="">;
llOwnerSay("color is set to blue" );
}
else if(message =="pink") {
TextColor = <1 .0="" 0.0="" 1.0="">;
llOwnerSay("color is set to pink" );
}
else if(message =="cyan") {
TextColor = <0 .0="" 1.0="">;
llOwnerSay("color is set to cyan" );
}
colortext = TextColor;
}
if (channel == 4) {
string author;
author = llKey2Name(id);
string owner = llKey2Name(llGetOwner());
llInstantMessage(llGetOwner(), author+" changed your title to: "+ message);
llInstantMessage(id, owner+" knows you changed his/her title to: "+ message);
textsay = message;
}
TextControl(textsay,colortext);
}
timer() {
llSay (0, "Change "+llKey2Name(llGetOwner())+"'s" +" title \n Write on chan 4 -> '/4 new title'");
}
state_exit(){
llSetText("You can WRITE:\n 'title' some new title \n 'color' to change text color", <1>, 1.0);
textsay="Write 'title' some new title";
llOwnerSay("\nSET to OWNER: Only owner can change title.");
}
}
/*///////////////////////////////////////////////////
//OPEN SOURCE SCRIPT LIBRARY
//[W] Wili Clip - 2022 \⊙͜o/
//For more open source scripts check:
//https://society-sl.blogspot.com
//
// License: GPLv3
// https://choosealicense.com/licenses/gpl-3.0/
*////////////////////////////////////////////////////
1>0>1>0>1>0>0>1>1>0>0>0>0>0>0>0>1>0>1>0>0>1>1>1>1>0>
Comments
Post a Comment