• Help with wiremod!
    9 replies, posted
So I am not that advanced in wiremod but Im not not bad either. And my question is now: How do the "While Loops" Work in WireMod E2? I tried them in normal Lua and they worked fine. I tried them in E2 but it always prints me to close the parenthisis and if it doesnt do that it always prints some other errors. Please help. [Lua] @name Alarm @inputs Keypad Time Gate Button @outputs Indicator Sound Repeat @persist @trigger while(Button~=1){ if(Gate==1){ Time=1 } if(Time>0){ Indicator=1 Sound=1 Repeat=1 } if(Keypad==1){ Repeat=0 Time=0 Indicator=0 Sound=0 } } [/Lua]
Button~=1 to Button!=1, also you need an interval(number) before the while loop
Thanks let me try [editline]26th April 2016[/editline] Tick quota ..... some error. [Lua] @name Alarm @inputs A B C @outputs D @persist @trigger interval(10) while(C != 1) { if( A < B ) { D = 1 } } [/Lua]
You shouldnt use while loop in an inverval() it causes overload [CODE]@name Alarm @inputs A B C @outputs D @persist @trigger interval(10) if (C!= 1){ if( A < B ) { D = 1 } }[/CODE]
Same here. Tick quoate exceeded. [Lua] @name Alarm @inputs Keypad Time Gate Button @outputs Indicator Sound Repeat @persist @trigger interval(10) while(Button!=1){ if(Gate==1){ Time=1 } if(Time>0){ Indicator=1 Sound=1 Repeat=1 } if(Keypad==1){ Repeat=0 Time=0 Indicator=0 Sound=0 } } [/Lua] [editline]26th April 2016[/editline] But when may I use while loops? I dont get it.
intervaal() works like a whilie loop so if you use another while loop inside a while loop it causes error. you can use while loop with RunOnSignal() RunOnKeys() etc.
You can use [code]if (Button!=1){}[/code] While loop is not needed. Also, to prevent overload you can do something like [code]while (Button!=1&perf()){}[/code]
And why is this false just asking? Is there a way to make it with a while loop or just use instead 2 ifs? Error: sv: Expression 2 (Alarm): tick quota exceeded [Lua] @name Alarm @inputs Keypad Time Gate Button @outputs Indicator Sound Repeat @persist @trigger while(Button!=1){ if(Gate==1){ Time=1 } if(Time>0){ Indicator=1 Sound=1 Repeat=1 } if(Keypad==1){ Repeat=0 Time=0 Indicator=0 Sound=0 } } [/Lua] [editline]26th April 2016[/editline] Thanks iJohnny it works but my question is now. What does the &perf mean? [editline]26th April 2016[/editline] [Lua]&perf())[/Lua]
You can find explanation in E2Helper. There is the button in E2Editor
RunOnTick(<integer here>) ??
Sorry, you need to Log In to post a reply to this thread.