Odpowiedź 
Dopełnienie spełnionego warunku-uproszczenie skryptu
Autor Wiadomość

_
Użytkownicy
Liczba postów: 43
Dołączył: 05-2015
Podziękowań: 3
Post: #1
Dopełnienie spełnionego warunku-uproszczenie skryptu
Witam,
w celu zwiększenia wyedukowania się, poprzez zapytanie się innych użytkowników, zwracam się z prośbą o to, czy można zapisać dany skrypt łącznie, w której to głównym warunkiem jest "engine_stand_random", ale dopełnieniem spełnionego warunku jest czas "Timer", (tak jak tutaj poniżej jest opisane).


Jak poniżej można zauważyć, chce uzyskać taki efekt, jeśli
engine_stand_random =1 ,to engine_stand_random_control1 =1,
ale gdy engine_stand_random =1 i t∈(2,5) ,to zmienne zmienią się na liczbę 0

Podejrzewam, że {else} odpowiada za w innym przypadku, a nie więcej, jeszcze, więc może to jest ten powód nieodpowiedniego działania skryptu, więc:
•jak powinienem to zapisać?
•czym w takim przypadku różni się warunek {else} od {endif}?

Kod PHP:
    (L.L.elec_busbar_main)
    {if}
        (
L.L.Timer) (L.S.Timegap) + (S.L.Timer)
    {else}
        
(S.L.Timer)
    {endif}
    
    (
L.L.Timer>
    {if}
        
(S.L.Timer)
        
1 3 random + (S.L.engine_stand_random)
    {endif}
        
    (
L.L.engine_stand_random=
    {if}
        
(S.L.engine_stand_random_control1)
    {else}
        (
L.L.Timer> &&
        (
L.L.Timer< &&
        {if}
            
(S.L.engine_stand_random_control2)
            
(S.L.engine_stand_random_control3)
        {endif}
    {endif}
    
    (
L.L.engine_stand_random=
    {if}
        
(S.L.engine_stand_random_control2)
    {else}
        (
L.L.Timer> &&
        (
L.L.Timer< &&
        {if}
            
(S.L.engine_stand_random_control2)
            
(S.L.engine_stand_random_control3)
        {endif}
    {endif}
    
    (
L.L.engine_stand_random>
    {if}
        
(S.L.engine_stand_random_control3)
    {else}
        (
L.L.Timer> &&
        (
L.L.Timer< &&
        {if}
            
(S.L.engine_stand_random_control2)
            
(S.L.engine_stand_random_control1)
        {endif}
    {endif} 
Oczywiście, mógłbym to zapisać w takiej postaci i wszystko będzie działać, natomiast chciałbym to bardziej skrócić
Kod PHP:
    (L.L.engine_stand_random=
    (
L.L.Timer> &&
    (
L.L.Timer< &&
    {if}
        
(S.L.engine_stand_random_control2)
        
(S.L.engine_stand_random_control3)
    {endif}
    
    (
L.L.engine_stand_random=
    {if}
        
(S.L.engine_stand_random_control2)
    {endif}
    
    (
L.L.engine_stand_random=
    (
L.L.Timer> &&
    (
L.L.Timer< &&
    {if}
        
(S.L.engine_stand_random_control1)
        
(S.L.engine_stand_random_control3)
    {endif}
    
    (
L.L.engine_stand_random>
    {if}
        
(S.L.engine_stand_random_control3)
    {endif}
    
    (
L.L.engine_stand_random>
    (
L.L.Timer> &&
    (
L.L.Timer< &&
    {if}
        
(S.L.engine_stand_random_control2)
        
(S.L.engine_stand_random_control1)
    {endif} 

15.03.2020 15:38
Szukaj postów Cytat

Spór o charakterze cywilnym
Zasłużeni
Liczba postów: 213
Dołączył: 10-2013
Podziękowań: 734
Post: #2
RE: Dopełnienie spełnionego warunku-uproszczenie skryptu
Ależ oczywiście, że else nie oznacza "więcej". Materiałów odnośnie pętli if.. else jest masa w internecie. Else oznacza co się dzieje, gdy warunek z początku pętli if NIE jest spełniony. {endif} to po prostu zakończenie pętli if (end if) w języku skryptów OMSI.

15.03.2020 16:07
Szukaj postów Cytat
 Podziękowania za post: Maciex
Odpowiedź 




Użytkownicy przeglądający ten wątek: 1 gości

Forum Strefa-OMSI.pl

Tematyczne Forum dotyczące najpopularniejszego symulatora autobusu - OMSI. Zapraszamy do rejestracji i aktywnego udziału w Społeczności.

Strona wykorzystuje pliki cookies. Korzystanie z witryny oznacza zgodę na ich zapis lub odczyt wg ustawień przeglądarki.

Współpracujemy z:

Polecamy także: