Hammer

De DigiWiki.

// Hammer v1.0
 
string anim = "marteau";
key texture = "etoile";
string sound = "marteau";
float volume = 1.0;
key avatar_key;
list particle_parameters=[]; 
list nothing=[];
 
default
{
    on_rez(integer param) {llResetScript();}
 
    changed(integer change)
    {
        llSleep(1);
 
        if(change & CHANGED_OWNER)
        {
            avatar_key =llGetOwner();
 
            if(avatar_key!=NULL_KEY)
            {
                llRequestPermissions(avatar_key,PERMISSION_TRIGGER_ANIMATION);
                llSleep(1.0);
                llRequestPermissions(avatar_key,PERMISSION_TAKE_CONTROLS);
                llStartAnimation(anim);
            }
        }
    }
 
    state_entry()
    {
        avatar_key=llGetOwner();
 
        llRequestPermissions(avatar_key,PERMISSION_TRIGGER_ANIMATION);
        llSleep(3.0);
        llRequestPermissions(avatar_key,PERMISSION_TAKE_CONTROLS);
 
        particle_parameters = [
            PSYS_SRC_TEXTURE, texture,
            PSYS_PART_START_SCALE, <.3, .3, FALSE>,
            PSYS_PART_END_SCALE, <.3, .3, FALSE>,
            PSYS_PART_START_COLOR, <1, 1, 1>,
            PSYS_PART_END_COLOR, <1, 1, 1>,
            PSYS_PART_START_ALPHA, (float) 1.0,
            PSYS_PART_END_ALPHA, (float) 1.0,
            PSYS_SRC_BURST_PART_COUNT, (integer)  15,
            PSYS_SRC_BURST_RATE, (float) 1.5,
            PSYS_PART_MAX_AGE, (float)  5.0,
            PSYS_SRC_PATTERN, (integer) 2,
            PSYS_SRC_BURST_SPEED_MIN, (float) 0.5,
            PSYS_SRC_BURST_SPEED_MAX, (float) 5.5,
            PSYS_SRC_BURST_RADIUS, (float) 00.5,
            PSYS_SRC_ANGLE_BEGIN, (float) 0.4 * PI,
            PSYS_SRC_ANGLE_END, (float) 0.0 * PI,            
            PSYS_SRC_ACCEL, < 00.00, 00.00, - 00.1>,
            PSYS_PART_FLAGS, (integer) (0
                | PSYS_PART_INTERP_COLOR_MASK
                | PSYS_PART_INTERP_SCALE_MASK
                | PSYS_PART_EMISSIVE_MASK
                | PSYS_PART_FOLLOW_VELOCITY_MASK
                | PSYS_PART_BOUNCE_MASK   
        )];
    }
 
    run_time_permissions(integer permissions)
    {
        if (permissions & PERMISSION_TRIGGER_ANIMATION)
        {
            llGetPermissions ();
        }
 
        if (permissions & PERMISSION_TAKE_CONTROLS)
        {
            llTakeControls(CONTROL_LBUTTON , TRUE, FALSE);
            llGetPermissions ();
        }
    }
 
    control(key name, integer levels, integer edges)
    {
        integer pressed = levels & edges;
 
        if ((levels & CONTROL_LBUTTON) && (edges & CONTROL_LBUTTON))
        {
            llRequestPermissions(avatar_key,PERMISSION_TRIGGER_ANIMATION);
            llStartAnimation(anim);
            llSleep(0.5);
            llRequestPermissions(avatar_key,PERMISSION_TAKE_CONTROLS);
            llPlaySound(sound,volume);
            llSleep(0.5);
            llParticleSystem(particle_parameters);
            llSleep(1.0);
            llParticleSystem(nothing);
        }
    }
}
Outils personnels
  • Cette page a été consultée 767 fois.
donate
Google Ads