Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Aufzug Script
#1
Moin, hat jemand eine Idee, wie man das Ruckeln aus dem Script bekommt?
Die Bewegung ist alles andere als sanft gleitend.

PHP-Code:
// Menu controled on sit. Can also be controlled with local chat eg: /33 Floor2

integer CHANNEL = 36; // dialog channel
list MENU_MAIN = ["down","up"]; // the main menu
float BOTTOM = 20.60; // set platform ground floor height
float FLOOR_HEIGHT = 6.1; // alter to suit floor spacing
float SPEED = 0.4; 
float target;
string sound = "ba0101f0-e6da-43cc-a33b-61c172cbfebc";


default
{
    
state_entry()
    {
 
        
llListen(CHANNEL, "", NULL_KEY, "");
        
llSitTarget(<0.0, 0.0, 0.95>,ZERO_ROTATION);
        
llSetText("Sit",<0.2,0,0>,0.79);
        
target = BOTTOM;
        
llStopAnimation("sit");
        
llStopSound();
    }
   
    
listen(integer channel, string name, key id, string message)
    {
        
integer idx = llListFindList(MENU_MAIN, [message]);
        if( 
idx!=-1 )
        {
                      
llLoopSound(sound, 1.0);
//            llSay(0,"Elevator heading " + message + "." );
            
target = BOTTOM + (idx*FLOOR_HEIGHT);
            
state moving;
        }
    }


    
changed(integer change) 
    {
        if (
change & CHANGED_LINK) 

        { 
       
        
key av = llAvatarOnSitTarget();

       if (
av !=NULL_KEY)

//          if((llGetPermissions() & PERMISSION_TRIGGER_ANIMATION) && llGetPermissionsKey() == av)

            
        
{
        
//          llStopAnimation("sit");
//          llStartAnimation("vb stand_5arms up p2");
          
llPlaySound(sound, 1.0);
          
llDialog(av, "Where to?", MENU_MAIN, CHANNEL);       
        }
        
        else
       {
           
llStopSound();

//            llRequestPermissions(av, PERMISSION_TRIGGER_ANIMATION); 
                      
        
}  
   
    }
}
}

state moving
{
   
   
    
state_entry()
    {
        
llSetTimerEvent(0.1);
    }
   
    
timer()
    {

        
llSleep(0.25); // just to stop things happening instantly.        
        
vector pos = llGetPos();

       
        if( 
pos.z!=target )
        {
            if( 
pos.z>target )
            {
                
pos.z = pos.z - SPEED;
            }
            else
            {
                
pos.z = pos.z + SPEED;
            }
        }
       
        if(  
llFabs(pos.z - target) < SPEED )
        {
            
pos.z = target;
            
llSetTimerEvent(0);
            
llSetPos(pos);
//          llSay(0,"Elevator has reached its target." );
            
state default;
        }   
       
        
llSetPos(pos);
       
    }
} 
Hypergrid : xenolandia.de:8002:Xenotown (copy&paste)
Grid : xenolandia.de:8002
Page: https://Xenopolias.de





Zitieren


Nachrichten in diesem Thema
Aufzug Script - von Xenos Yifu - 15.04.2023, 12:39
RE: Aufzug Script - von Anachron - 15.04.2023, 17:56
RE: Aufzug Script - von Xenos Yifu - 15.04.2023, 21:14
RE: Aufzug Script - von Xenos Yifu - 15.04.2023, 21:59
RE: Aufzug Script - von Anachron - 16.04.2023, 09:47
RE: Aufzug Script - von Xenos Yifu - 16.04.2023, 10:27
RE: Aufzug Script - von Xenos Yifu - 18.04.2023, 14:38

Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Autostart script? Sero 9 4.352 07.03.2025, 12:49
Letzter Beitrag: Sero

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste