[Recherche] script pose ball

Répondre
Partager Rechercher
Utilisation de la recherche avant de posté, tu en trouvera avec google ou certainement dans la Biblihotèque de script de JOL,ou la recherche SL tu a 10 magasin de Free scripts.

Code:
vector POSITION=<0.0, 0.0, 0.055>;
string HOVERTEXT="Sit Here";
string SIT_TEXT="Sit Here";

string HOVER_RGB="255,255,255";integer LISTEN=TRUE;integer 

CHANNEL=8;set_text()
{
       if (llStringLength(HOVERTEXT)>0)
        {
            rgb=llCSV2List(HOVER_RGB);
            llSetText(HOVERTEXT,<llList2Float(rgb,0)*0.003921568627450980392156862745098,llList2Float(rgb,1)*0.003921568627450980392156862745098,llList2Float(rgb,2)*0.003921568627450980392156862745098>,1.0);
            
        }    
        else
           llSetText("",<0.000,0.000,1.000>,0.0);     
}
start_listen()
{
    llListenRemove(listener);
    if (LISTEN==TRUE)
        listener=llListen(CHANNEL,"","","");
}
hide_me()
{
    llSetAlpha(0.0, ALL_SIDES);
    llSetText("",<0.000,0.000,1.000>,0.0);     
}
show_me()
{
    llSetAlpha(1.0, ALL_SIDES);
    set_text();                
}
list rgb;
string animation;
integer listener;
default 
{
    state_entry() 
    {
        if (llStringLength(SIT_TEXT)>0)
            llSetSitText(SIT_TEXT);
        llSitTarget(POSITION, ZERO_ROTATION); 
        set_text();
        start_listen();
    }
    
    on_rez(integer r)
    {
        start_listen();
    }
    
    listen(integer channel, string name, key id, string msg)  
    {
        if (msg=="hide")
        {
            hide_me();
            llMessageLinked(LINK_SET,0,"hide", NULL_KEY);
        }
        else if (msg=="show")
        {
            show_me();
            llMessageLinked(LINK_SET,0,"show", NULL_KEY);
        }
    }
    
    changed(integer change) 
    { 
        if (change & CHANGED_LINK) 
        {
            
            if llAvatarOnSitTarget() != NULL_KEY )
llGiveInventory( llAvatarOnSitTarget(),
                             llGetInventoryName( INVENTORY_OBJECT, 0 ) );
            { 
                llRequestPermissions(llAvatarOnSitTarget(), PERMISSION_TRIGGER_ANIMATION);
            }
            else
            {
                integer perm=llGetPermissions();
                if ((perm & PERMISSION_TRIGGER_ANIMATION) && llStringLength(animation)>0)       
                llStopAnimation(animation);
                llSetAlpha(1.0, ALL_SIDES);
                set_text();
                animation="";
            }
        }
    }
    run_time_permissions(integer perm)
    {
        if (perm & PERMISSION_TRIGGER_ANIMATION)
        {
                llStopAnimation("sit");
                animation=llGetInventoryName(INVENTORY_ANIMATION,0);
                llStartAnimation(animation);
                llSetAlpha(0.0, ALL_SIDES);
                llSetText("",<0.000,0.000,1.000>,0.0);
        }
    }

    link_message(integer sender_num, integer num, string str, key id)
    {
        if (str=="hide")
        {
            hide_me();
        }
        else if (str=="show")
        {
            show_me();
        }
    }
}
Et sans poseball (plus joli et plus économique en nombre de prims) :

Code PHP:

default
{
state_entry() {
// rotation en degrés
vector rot = <0.0,0.0,0.0>;
// transformation en radians
rot *= DEG_TO_RAD;
// transformation en quaternion
rotation MyRot llEuler2Rot(rot);
// réglage du sittarget
llSitTarget(<0.000.00.0>, MyRot);
}
changed(integer change) {
if (
llAvatarOnSitTarget() != NULL_KEY)
llRequestPermissions(llAvatarOnSitTarget(), PERMISSION_TRIGGER_ANIMATION);
}
run_time_permissions(integer perm) {
string anim llGetInventoryName(INVENTORY_ANIMATION0);
if (
anim != "") {
llStopAnimation("sit");
llStartAnimation(anim);
}
}

Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés