Shortnote

This is a play on syntax and semantics using state transitions, timers and the particle system to simulate a primitive having an orgasm. It was meant as a funny toy to read, similar to the profile generator.

Code

primitive_orgasm.lsl
//////////////////////////////////////////////////////////
//   (C) Wizardry and Steamworks 2010, license: GPLv3   //
// Please see: http://www.gnu.org/licenses/gpl.html     //
// for legal details, rights of fair usage and          //
// the disclaimer and warranty conditions.              //
//////////////////////////////////////////////////////////
 
list cum_load = [ PSYS_SRC_TEXTURE, "sperm", PSYS_PART_START_SCALE, <.5, 1, FALSE>, PSYS_PART_END_SCALE, <1, .5, FALSE>, PSYS_PART_START_COLOR, <.6,.6,.6>,    PSYS_PART_END_COLOR, <.1,.2,.4>, PSYS_PART_START_ALPHA,  .5,            PSYS_PART_END_ALPHA, .1,PSYS_SRC_BURST_PART_COUNT, 2, PSYS_SRC_BURST_RATE, .03,PSYS_PART_MAX_AGE, 3,PSYS_SRC_MAX_AGE,.0, PSYS_SRC_PATTERN, 4,PSYS_SRC_BURST_SPEED_MIN, 1,   PSYS_SRC_BURST_SPEED_MAX, 3, PSYS_SRC_ANGLE_BEGIN, 1.15,    PSYS_SRC_ANGLE_END, 0, PSYS_SRC_ACCEL, <.0,.0, - 2 >,PSYS_PART_FLAGS,0];
 
default
{
    state_entry() {
        if(llGetListLength(cum_load) > 0) return;
        llSay(0, "That's the best I've ever had...");
    }
 
    touch_start(integer penis) 
    {
        llSay(0, "Mmmmm...");
        state excited;
    }
}
 
state excited {
    state_entry() {
        llSetTimerEvent(llFrand(5));
    }
    timer() {
        llSay(0, llList2String( [ "Yes!", "OMG YES!", "Do me baby!", "WoW! Hot.", "Talk dirty! Talk dirty!" ], 1+(integer)llFrand(4)));
        if(llFrand(1.) < .1) state orgasm;
    }
}
 
state orgasm {
    state_entry() {
        llSay(0, "Aaaaah... I'm cumming!!!!");
        llParticleSystem(cum_load);
        llSleep(10);
        llParticleSystem((cum_load=[]));
        state default;
    }
    state_exit() {
        llSay(0, "Whew...");
        llSleep(5);
    }
}