func init // add using namespace sys.add_use('System.IO') // initialize instance if(linked("doCombine") and linked("Path")) sys.add_var(this.name, 2) end end func make_path(data) p = this.numdatas s = d('Path1') for(i = 2; i <= p; i++) dt = 'Path' + i s = '' + s + ', ' + d(dt, 2) end if(p < 5) return('Path.Combine(' + s + ')') else return('Path.Combine(new string[] { ' + s + ' })') end end func doCombine(data) if(linked("Path")) blk.println(this.codename, ' = ', this.make_path(data), ';') event("onCombine", this.codename) else event("onCombine", this.make_path(data)) end end func Path if(linked("doCombine")) return(this.codename) else return(make_path()) end end