|
droxon Newbie
Joined: 13 Aug 2013 Posts: 8
|
Posted: Mon Jun 29, 2015 11:35 pm
Infinite loops |
Is there a way to allow an infinite event loop? I am trying to build a repeater to use health levels and a string list, but cmud keeps disabling my script because it repeats itself over and over.
|
|
|
|
shalimar GURU
Joined: 04 Aug 2002 Posts: 4690 Location: Pensacola, FL, USA
|
Posted: Tue Jun 30, 2015 8:37 am |
No, because a true infinite loop will hog up available memory and never release priority, unless it was being executed in a thread, and even then I'm not sure if it's possible.
But really, there should be no need to have one.
Perhaps if you explain what your loop is trying to do i could help. |
|
_________________ Discord: Shalimarwildcat |
|
|
|
droxon Newbie
Joined: 13 Aug 2013 Posts: 8
|
Posted: Tue Jun 30, 2015 11:17 am |
well i push curing commands to a string list with triggers, there needs to be a delay between their uses so i use wait timers on separate aliases to switch variables on and off to time them properly. It tracks health and mana and uses a series of healing herbs and health potions to maintain health. I was using an alarm to space it out but it was deleting random settings from my package, and i was unable to use the settings window while it was running because of the spastic nature of the very short alarm repeating itself and firing the event.
|
|
|
|
shalimar GURU
Joined: 04 Aug 2002 Posts: 4690 Location: Pensacola, FL, USA
|
Posted: Tue Jun 30, 2015 7:27 pm |
Were you using single use alarms, or a repeater?
#ALARM "HealerBot" -3 {#IF (@healCommands) {%pop(healCommands)}}
Every 3 seconds that will check to see if healCommands has any members, and if so, it will try to perform the first one. |
|
_________________ Discord: Shalimarwildcat |
|
|
|
droxon Newbie
Joined: 13 Aug 2013 Posts: 8
|
Posted: Tue Jun 30, 2015 10:59 pm |
i am using a repeater. #alarm +0.2 {pop}
pop has all the checks string list uses
then sets off the alarm again at the end |
|
|
|
shalimar GURU
Joined: 04 Aug 2002 Posts: 4690 Location: Pensacola, FL, USA
|
Posted: Tue Jun 30, 2015 11:09 pm |
Seems like it would be going so fast it might try to execute the same code multiple times for only one injury. (as the commands haven't had time to resolve and update the stats used in your conditions).
i would suggest the use of #WAITFORs to ensure that each step has a chance to be completed. |
|
_________________ Discord: Shalimarwildcat |
|
|
|
droxon Newbie
Joined: 13 Aug 2013 Posts: 8
|
Posted: Tue Jun 30, 2015 11:16 pm |
Ok tried the #alarm - and it seems to have calmed things down. WIll wait and see if settings are still being deleted randomly
|
|
|
|
droxon Newbie
Joined: 13 Aug 2013 Posts: 8
|
Posted: Tue Jun 30, 2015 11:18 pm |
and thanks for your help shalimar! CMud will keep alive as long as people care enough to help others.
|
|
|
|
droxon Newbie
Joined: 13 Aug 2013 Posts: 8
|
Posted: Wed Jul 01, 2015 4:30 am |
is there a way to turn off the #alarm -1 with settings? I use a different version of the original for different envriments and would like to turn one off and switch the other on.
|
|
|
|
Vijilante SubAdmin
Joined: 18 Nov 2001 Posts: 5182
|
Posted: Wed Jul 01, 2015 6:44 am |
Sure. Set the ID for the alarms, and then use #T+ and #T- to control which ones are active.
|
|
_________________ The only good questions are the ones we have never answered before.
Search the Forums |
|
|
|
|
|