aide script rezz object typer

Répondre
Partager Rechercher
Bonjour tout le monde ,

Je suis à la recherche si jamais l'un d'entre vous à cela d'un script qui rezz un objet par exemple a mes pied quand j'écris sur le chat et le derezz quand je n'écris plus .

J'ai cette sorte de script mais qui produit une animation et des particules quand j’écris ..

merci d'avance ;-::
Hellow....
Essaye ça.....
tu fait un petit prim que tu portes en HUD avec ce script dedans...
Le tout est OnOff, pour eviter le lag inutile si t 'en as pas besoin....

////////////


Code PHP:

list anims;
integer typing;
integer canal;
integer onoff;

default
{
    
state_entry()
    {        
        
canal = (integer)("0xA" llGetSubString((string)llGetOwner(), 0,));
        
llSetTimerEvent(.0);
        
llSetText("OFF", <1.00.00.0>, 1.0);    
    }
    
    
touch_start(integer total_number)
    {
        if(!
onoff)
        {
            
llSetTimerEvent(.1);
            
llSetText("ON", <0.01.00.0>, 1.0);
        }
        else
        {
            
llSetTimerEvent(.0);
            
llSetText("OFF", <1.00.00.0>, 1.0);
        }
        
onoff = !onoff;            
    }
    
    
timer()
    {
        
anims llGetAnimationList(llGetOwner());
        
        if(
llListFindList(anims,[(key)("c541c47f-e0c0-058b-ad1a-d6ae3a4584d9")]) != -1)
        {
            if(
typing == 0)
            {
                
llRezObject("objet"llGetPos() + <1.0,0.0,-0.5>*llGetRot(),<0.0,0.0,0.0>,<0.0,0.0,0.0,1.0>*llGetRot(),canal);
                
typing 1
            }
            else {}        
        }
        else
        {
            
llSay(canal,"die");
            
typing 0
        }
    }



/////////////
et dans ton objet, qu'il faut nommer quand dans la ligne rez du 1er script (dans cet exemple "objet"), tu mets ce script.....et l' objet dans l' inventaire du prim en HUD....



////////


Code PHP:

integer canal;

default
{  
    
state_entry()
    {
        
canal = (integer)("0xA" llGetSubString((string)llGetOwner(), 0,));
        
llListen(canal,"","","die");      
    }
    
listen(integer channelstring namekey idstring message)
    {
            
llDie();
    }


Dernière modification par MenthalOH ; 20/01/2022 à 09h34.
whaou exelent exactement ce dont j'ai besoin ... grand merci Menthal ////

petite question en + car j'ai pas encore bidouiller le script j'ai juste test rapidement . Si j'ai besoin de rezz l'object un peut plus sur les pied ou le rezz vers mes mains comme une petite boule de feu quand j'ecris est ce bien cette ligne ?

Code:
RezObject("objet", llGetPos() + <1.0,0.0,-0.5>*llGetRot(),<0.0,0.0,0.0>,<0.0,0.0,0.0,1.0>*llGetRot(),canal);
                typing++;
ou y a t'il une autre fonction plus simple pour que cela rezz sous mes pied dans mes mains au dessus de ma tete ...? ou dois je uniquement changer les valeurs du rezz ..

merci merci encore de ton puit de savoir
merci pour se lien ...

autre petite question pour continuer à avancer et pourquoi pas évoluer mon petit projet ^^,

a quoi correspond cette ligne ?

Code:
if(llListFindList(anims,[(key)("c541c47f-e0c0-058b-ad1a-d6ae3a4584d9")]) != -1)
car j'ai acheté une animation full perm de typing j'ai mis l'uuid à la place de celui la mais ça n'a pas fonctionné . J’imagine que cet uuid ne correspond pas a l'animation que l'avatar fait quand il écris ?

merci pour les lumières ^^
Dans cette ligne, le script vérifie si, dans la liste des animations jouées par l' avatar, se trouve l' animation de base "TYPING"...qui par défaut est declenchée quand on écrit. (la clé, est la clé de cette anim par défaut)
Si oui....il rez....sinon il envoit un message de die.
Mais comme le script vérifie toutes les 0,1 ou 0,2 sec....il ne doit rez qu'une fois au début....d' où la présence de l' integer "typing"....sinon, il rezzerait des dizaines d' objets en quelques secondes
Pour faire jouer ton animation, il faudra d' abord vérifier si l' anim SL est jouée, puis demander l' autorisation de jouer la tienne...puis la lancer.

Dernière modification par MenthalOH ; 20/01/2022 à 10h27.
ok je comprend mieux le mode de fonctionnement et les priorité d’exécution du script merci beaucoup pour l'explication ^^

je me permet d'abuser encore un peu ^^ haha

le 1er script marche super pour rez l'objet ...

j'imagine que ce que je vais essayer d'expliquer va être une autre méthode .
Le but serais que quand j’écris sur le chat il agrandit un cercle par exemple que j'ai a mes pieds donc que mon avatar porte , l'objet serais tout petit et en transparent pour une fois l'avatar ecris il agrandit le cercle a mes pied , enlevé la transparence du prim et redeviens tout petit et transparent quand j’arrête d’écrire .


https://gyazo.com/b878ebec1cd228e79d2f59b555000424

voici un exemple en GIF ou au début tu vois un tout petit point rouge ( j'ai mis en CTRL ALT T ) et une fois que j'ecris se petit point rouge s'agrandit pour faire une sorte de petite aura sous mes pied , il perd aussi sa transparence ( la on vois pas sur le gif car j'ai laissé en CTRL ALT T


j'ai essayée de m'expliquer au mieux lol

https://zupimages.net/up/22/03/cfo9.png

Dernière modification par laloute777 ; 20/01/2022 à 11h33. Motif: Auto-fusion
C 'est assez simple, au moment où le script rez (ou à la place) il faut envoyer un petit message à l' objet porté pour lui dire de s' agrandir et devenir visible...et l' inverse à la fin, au moment où il envoit le message de die....

Et limite encore plus simple....si le truc devient transparent, quel interêt de retrecir ?

Dernière modification par MenthalOH ; 20/01/2022 à 11h52. Motif: Auto-fusion
ton explication est très clair merci ^^malheureusement je suis pas très doué pour écrire les scripts , alors si jamais l'un d'entre à vous à se style de petit script ...

je suis pour le moment plus doué en graphisme qu'en lsl hahaha


merci d'avance ¨¨¨¨¨¨
Script principal...


Code PHP:

&#8203;list anims;
integer typing;
integer canal;
integer onoff;

default
{
    
state_entry()
    {        
        
canal = (integer)("0xA" llGetSubString((string)llGetOwner(), 0,));
        
llSetTimerEvent(.0);
        
llSetText("OFF", <1.00.00.0>, 1.0);     
    }
    
    
touch_start(integer total_number)
    {
        if(!
onoff)
        {
            
llSetTimerEvent(.1);
            
llSetText("ON", <0.01.00.0>, 1.0);
        }
        else
        {
            
llSetTimerEvent(.0);
            
llSetText("OFF", <1.00.00.0>, 1.0);
        }
        
onoff = !onoff;            
    }
    
    
timer()
    {
        
anims llGetAnimationList(llGetOwner());
        
        if(
llListFindList(anims,[(key)("c541c47f-e0c0-058b-ad1a-d6ae3a4584d9")]) != -1)
        {
            if(
typing == 0)
            {
                
llRezObject("cube"llGetPos() + <1.0,0.0,-0.5>*llGetRot(),<0.0,0.0,0.0>,<0.0,0.0,0.0,1.0>*llGetRot(),0);

                
llSay(canal,"go");
                
typing 1
            }
            else {}         
        }
        else
        {
            
llSay(canal,"die");
            
llSay(canal,"stop");
            
typing 0
        }
    }



et dans l' objet porté....




Code PHP:

&#8203;integer canal;

default
{    
    
state_entry()
    {
        
canal = (integer)("0xA" llGetSubString((string)llGetOwner(), 0,));
        
llListen(canal,"","","");        
    }
    
listen(integer channelstring namekey idstring msg)
    {
        if(
msg == "go")
        {
            
llSetLinkPrimitiveParamsFast(LINK_THIS, [PRIM_SIZE, <1.01.01.0>,PRIM_COLOR,ALL_SIDES,<1.0,1.0,1.0>,1.0]);
        }
        if(
msg == "stop")
        {
            
llSetLinkPrimitiveParamsFast(LINK_THIS, [PRIM_SIZE, <0.20.20.2>,PRIM_COLOR,ALL_SIDES,<1.0,1.0,1.0>,0.0]);
        }
    }

whaou du rapide lol big merci ca marche nickel , du moins y a juste un truc bizarre quand ça rezz le cube , une fois que j’arrête d’écrire sa laisse le petit cube en transparent je suis obligée de l'effacer manuellement ... je ne vois pas d'ou peut venir se problème
oups erreur de ma part désolé , y avais encore un cube dans le hud lol ... du coup la c'est nickel

grand merci encore une fois à toi Menthal

biz

Dernière modification par laloute777 ; 20/01/2022 à 14h23.
Répondre

Connectés sur ce fil

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