Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var road = ['=',' ','+','@','+',' ','='];
- var xPos = 2;
- var yPos = 2;
- IO.exec("TITLE Zavada\'s Graphic Drawing Algorithm");
- print "Starting loop";
- func getTime(filename?){
- var file = (filename is (what is nil)?"a.time":filename+".time");
- IO.exec("echo %time%>"+file);
- return (String::IO.read(file)).split(":");
- };
- func getDate(filename?){
- var file = (filename is (what is nil)?"a.date":filename+".date");
- IO.exec("echo %date%>"+file);
- var dayDate = (String::IO.read(file)).split(" ");
- var date = dayDate[1].split("/");
- date[2] = date[2].head(4);
- date = toNumbers(date);
- return date;
- };
- func toNumbers(arr){
- for(var i = 0; i < arr.len; i+=1){
- arr[i] = Number::arr[i];
- }
- };
- func getMillis(){
- var time = getTime();
- time[2] = time[2].sub('\n', "");
- toNumbers(time);
- var date = getDate();
- return (date[0]-1) * 2629800 + date[1] * 86400 + (date[2] - 1970) * 31557600
- + time[0] * 3600 + time[1] * 60 + time[2];
- };
- func deltaTime(a,b){
- return [ a[0]-b[0] , a[1]-b[1], a[2]-b[2] ];
- };
- func drawRoad(){
- for(var i = 0; i < road.len; i += 1){
- var str = "";
- for(var j = 0; j < 48; j += 1){
- if(xPos == j && yPos == i){
- str += '#';
- }else{
- str += road[i];
- }
- }
- }
- };
- var lastTimeMoved = 0;
- var lastTimeUp = 0;
- var frequency = .016;
- var hertz = 1/frequency;
- for(;true;){
- var currentTime = getMillis();
- if(currentTime-lastTimeUp >= .016){
- drawRoad();
- lastTimeUp = currentTime;
- print "\n"*256;
- };
- if(currentTime - lastTimeMoved >= 1){
- xPos = (xPos+1 > 48 ? 0 : xPos + 1);
- lastTimeMoved = currentTime;
- };
- }
- print "Done";
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement