[Aide]-Correction script-

Répondre
Partager Rechercher
Bonjour tout le monde,

J'ai creer (enfin essayé) de creer un script qui a le meme principe que le script light ON / OFF au toucher sauf que .... a la place de cliquer sur l'objet, il suffit qu'un avatar rentre en collision avec pour qu'il s'allume et une foi la collision fini il s'éteind .


Code PHP:

integer etat;
float delai_allumage;
float delai_extinction;

allumage() {
llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,TRUE]);
llSetPrimitiveParams([PRIM_POINT_LIGHT,TRUE,
<
1.0,0.7,1.0>, // couleur
1.0// intensite (0.0-1.0)
10.0// rayin (.1-10.0)
0.6 ]); // attenuation (.01-1.0)
}
extinction() {
llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,FALSE]);
llSetPrimitiveParams([PRIM_POINT_LIGHTFALSE, <0.0,1.0,0.0>,1.010.00.5]);
}
default
{
state_entry() {
delai_allumage 1.0;
delai_extinction 5.0;
etat FALSE;
state inaction;
}
}
state action {
state_entry() {
llSetTimerEvent(llFrand(delai_allumage));
}
timer()
{
if(
etat) {
extinction();
llSetTimerEvent(llFrand(delai_extinction));
}
else {
allumage();
llSetTimerEvent(llFrand(delai_allumage));
}
etat = !etat;
}
collision_end(integer num_detected) {
extinction();
llSetTimerEvent(0.0);
state inaction;
}
}
state inaction {
collision_start(integer num_detected) {
allumage();
state action;
}

Probleme c'est qu'il ne se passe rien ...


Merci de jeter un oeil a ce script et de me dire ce que j'ai oublier ou mal fait.
Citation :
Publié par Tha Doggfather
Tu as testé ?

Moi je l'est tester et rien ne ce passait.

JE vais essayer d'inverser , merci .

j'ai copié le script et quand je marche dessus et m'enlève ca marche essaye de mettre SL en mode nuit tu ne le vois peut ètre pas sans doute car il fait trop clair.
Talking
Citation :
Publié par BlackAngel Mhia
j'ai copié le script et quand je marche dessus et m'enlève ca marche essaye de mettre SL en mode nuit tu ne le vois peut ètre pas sans doute car il fait trop clair.

/me se pouf de rire

Ah oui pas bete !!!
et j'avais pas mis de texture sur ma prims pour tester ...

/me est trop bete des fois (ou abuse trop des herbes medicinale)


Merci
Un peu lourd ton script avec des trucs qui servent à rien, on peut l'améliorer :

Code PHP:

float delai_allumage;
float delai_extinction;

action(integer i) {
    
llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,iPRIM_POINT_LIGHT,i,
        <
1.0,0.7,1.0>, // couleur
        
1.0// intensite (0.0-1.0)
        
10.0// rayon (.1-10.0)
        
0.6 ]); // attenuation (.01-1.0)
}

default
{
    
state_entry() {
        
delai_allumage 1.0;
        
delai_extinction 5.0;
    }
    
collision_start(integer num_detected) {
        
llSleep(delai_allumage);
        
action(TRUE);
    }
    
collision_end(integer num_detected) {
        
llSleep(delai_extinction);
        
action(FALSE);
    }

Code PHP:

float delai_allumage=1.0;
float delai_extinction=5.0;

action(integer i) {
    
llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,iPRIM_POINT_LIGHT,i,
        <
1.0,0.7,1.0>, // couleur
        
1.0// intensite (0.0-1.0)
        
10.0// rayon (.1-10.0)
        
0.6 ]); // attenuation (.01-1.0)
}

default
{
    
collision_start(integer num_detected) {
        
llSleep(delai_allumage);
        
action(TRUE);
    }
    
collision_end(integer num_detected) {
        
llSleep(delai_extinction);
        
action(FALSE);
    }

Encore plus court pour embêter bestmomo
Bonjour vous,

Et ça peu marcher, c'est le cas de le dire, si un AV passe dessus ?

Je m'explique : dans notre sous-bois nous avons des dalles en pierre et je trouve que ça pourrait faire jolie si les dalles s'illumine au fur et à mesure que l'AV marche dessus.

Merki,

DOM
Encore plus court pour embêter mon chaton

Code PHP:

float delai_allumage=1.0;
float delai_extinction=5.0;

action(integer ifloat time) {
    
llSleep(time);
    
llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,iPRIM_POINT_LIGHT,i,
        <
1.0,0.7,1.0>, // couleur
        
1.0// intensite (0.0-1.0)
        
10.0// rayon (.1-10.0)
        
0.6 ]); // attenuation (.01-1.0)
}

default
{
    
collision_start(integer num_detected) {
        
action(TRUEdelai_allumage);
    }
    
collision_end(integer num_detected) {
        
action(FALSEdelai_extinction);
    }

Dominique oui ça "marche" avec des "marches"
Bonjour tous,

Vous pourriez accélérer l'illumination au contact de l'AV ?

Et du temps, accélérer l'arrêt de l'illumination dès qu'il n'y a plus de contact ?

J'ai mis le script sur des dalles en pierre qui jalonnent mon sous bois et c'est super la nuit de marcher dessus. Merci à vous les builders

Merci d'avance,

DOM
Salut à tous
J'ai fait des escaliers en colimaçon et je n'ai que la première marche qui s'allume ... faut-il faire quelque chose de particulier sur les prims liés ?
essaye ça dans chaque élément qui doit s' allumer


default
{
collision_start(integer num_detected)
{
llSetLinkPrimitiveParamsFast(LINK_THIS,[PRIM_GLOW,ALL_SIDES,0.2]);
}

collision_end(integer num_detected)
{
llSetLinkPrimitiveParamsFast(LINK_THIS,[PRIM_GLOW,ALL_SIDES,0.0]);
}
}
Salut
On m'a parlé d'alléger mes escaliers (qui on un script à chaque marche, car je risque de ralentir la SIM) et d'utiliser les fonctions : llMessageLinked & llGetLinkNumber ... quelqu'un s'aurait où et comment les placer dans le script de bestmomo ou de Magic Cat ? Merci
Là, c 'est beaucoup plus dur pour avoir un fonctionnement propre, surtout si plusieurs personnes se trouvent sur l' escalier, et ça dependra aussi de la manière dont l' escalier et la maison sont buildés, pas sur que ce soit beaucoup moins laggy....le llMessageLinked, je ne vois pas trop l' interêt....quand on a des idées aussi avancées, faut leur demander de faire courage , et puis un escalier de 15 ou 20 marches....c 'est moins de temps serveur qu'un lit sex...
Répondre

Connectés sur ce fil

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