satané sliding doors

Répondre
Partager Rechercher
salut a tous

Cela va faire quelque temps que j'essai de modifier le script sliding doors sans succes : mon probleme est simple apres la creation du script , tout se déroule a merveille cependant lorsque je change l'angle de ma prim , le script suit le fonctionnement de l'ancien emplacement . Et je me retrouve avec une porte qui avance au lieu de ce deplacer vers la droite ou vers la gauche
pourriez vous s'il vous plait enfin m'oter cette epine du pied
Citation :
Publié par 3xcalibur
hummmm
je vois pas trop ce que cela va changer ...
Hummm
A enregistrer la nouvelle position de porte. C'est juste une suggestion, j'dis pas que c'est la solution.
Code PHP:

integer DOOR_OPEN=1;
integer DOOR_CLOSE=-1;
 
vector door_open_dir = <1.00.00.0>;
integer door_move_steps 3;

// ===============================================
// FUNCTIONS FOR OPENING AND CLOSING DOOR
// ===============================================
door_move(integer open
{
    
vector curr_pos llGetPos();
    
rotation curr_rot llGetRot();
    
vector curr_sca llGetScale();
    
integer step;
    
    
vector curr_dir open * ( <curr_sca.door_open_dir.x,
                                
curr_sca.door_open_dir.y,
                                
curr_sca.door_open_dir.z> * curr_rot ) / door_move_steps;
    
vector next_pos;
    
    
next_pos curr_pos;
    for (
step=step door_move_steps step++)
    {
        
next_pos += curr_dir;
        
llSetPos(next_pos);
    }
}

// ===============================================
// DEFAULT STATE
// ===============================================
default
{
    
state_entry()
    {
        
state door_closed;
    }
}

// ===============================================
// CLOSED DOOR STATE
// ===============================================
state door_closed
{
    
touch_start(integer touch_num)
    {
            
door_move(DOOR_OPEN);
            
state door_open;
    }
    
    
on_rez(integer num)
    {
        
llResetScript();
    }
}

// ===============================================
// DOOR OPEN STATE
// ===============================================
state door_open
{
    
touch_start(integer touch_num)
    {
            
door_move(DOOR_CLOSE);
            
state door_closed;
    }
    
    
on_rez(integer num)
    {
        
llResetScript();
    }

La prochaine fois mets ton script dans ton message, on ne peut pas trouver l'erreur si on n'y a pas accès.
Répondre

Connectés sur ce fil

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