Radulovic Attila
Tag
Bejegyzések száma: 653

A kulcs az, hogy minden gyertya első tickjében fusson le a programod.

Ezt többféleképpen el lehet érni, pl. a Bars (gyertyák száma) változását figyelve vagy az aktuális szerver idő figyelésével:

 
if (Bars != Bars.Prev) {
 
   // Funkciók
 
  Bars.Prev = Bars;
}
 
if (TimeCurrent() >= NextRun) {
 
   // Funkciók
 
   NextRun = Time[0] + Period() * 60;
}

Az első esetben azt használjuk ki, hogy a gyertyák száma csak akkor növekszik ha egy új gyertya elkezdődött.

A második esetben pedig azt, hogy tudjuk: a beérkező ticknél a gyertyák periodikus időbeli indulásához igazítjuk a legközelebbi futást.