Element For Vars Self#.i dd ? Self#.start dd ? Self#.end dd ? Self#.tmp dd ? PointWork doFor \local rStart,rEnd,lbl,lbl2,sv.t \\match =0,Self#.prop.InData \\{ restore data.type data.type equ data_null \\} DataSave data,data.type,[Self#.tmp],sv.t ReadInt rStart,[Self#.tmp],data.type,Self#.Start,Self#.prop.Start mov_ex [Self#.start],rStart ReadInt rEnd,[Self#.tmp],data.type,Self#.End,Self#.prop.End mov_ex [Self#.end],rEnd if Self#.prop.IncludeEnd eq 0 sub [Self#.end],Self#.prop.Step end if mov eax,[Self#.start] lbl: cmp eax,[Self#.end] if Self#.prop.Step>0 jle @f else jge @f end if jmp lbl2 @@: mov [Self#.i],eax Self#.onEvent eax,data_int mov eax,[Self#.i] add eax,Self#.prop.Step jmp lbl lbl2: Self#.onStop eax,data_int DataClear [Self#.tmp],sv.t EndPoint PointWork doStop mov eax,[Self#.i] mov [Self#.end],eax EndPoint PointVar Position,data_int result equ [Self#.i] EndPoint EndElement