From Hack Wars Wiki
<script>//Universal timer loop
function Timer(){
var self = this;
this.active = false;
this.Time = new Date().getTime();
this.intervalID;
this.interval = [];
this.intervalCounter = 0;
this.setInterval = function(Action,delay){
this.setTimer(Action,delay,'setInterval');
}
this.setTimeout = function(Action,delay){
this.setTimer(Action,delay,'setTimeout');
}
this.setTimer = function(Action,delay,type){
var id = self.intervalCounter++;
this.interval.push({'ID':id,'action':Action,'start':new Date().getTime(),'delay':delay,'type':type});
if (self.active != true){
self.active = true;
self.intervalID = setInterval("GoProcessInterval()",1);
}
return id;
}
this.processInterval = function(){
clearInterval(self.intervalID);
for (var i=0; i<self.interval.length; i++){
if (new Date().getTime() - self.interval[i]['start'] >= self.interval[i]['delay']){
//if (typeof(self.interval[i]['action']) != "string") Website.Alert(typeof(self.interval[i]['action']));
if (typeof(self.interval[i]['action']) == "function"){
self.interval[i]['action']();
} else if (typeof(self.interval[i]['action']) == "string"){
eval(self.interval[i]['action']);
} else {
Website.Alert("Action: "+typeof(self.interval[i]['action'])+' and '+self.interval[i]['action']);
}
if (self.interval[i]['type']=='setInterval'){
self.interval[i]['start']=new Date().getTime();
} else{ /* if (self.interval[i]['type']=='setTimeout')*/
self.clearInterval(self.interval[i]['ID']);
}
}
}
self.intervalID = setInterval("GoProcessInterval()",1);
}
this.clearInterval = function(ID){
clearInterval(self.intervalID);
for (var i=0;i<self.interval.length;i++){
if (self.interval[i]['ID']==ID){
//Website.Alert('Stopping timer '+self.interval[i]['ID']+' with code '+self.interval[i]['action']+' at delay '+self.interval[i]['delay']);
self.interval.splice(i, 1);
}
}
if (self.interval.length == 0){
self.active = false;
clearInterval(self.intervalID);
//Website.Alert('Timer Stoped!');
}
self.intervalID = setInterval("GoProcessInterval()",1);
}
this.cleanUp = function(){
while (self.interval.length){
//Website.Alert('Stopping timer '+self.interval[0]['ID']+' with code '+self.interval[0]['action']+' at delay '+self.interval[0]['delay']);
self.interval.splice(0, 1);
}
self.active = false;
clearInterval(self.intervalID);
//Website.Alert('Timer Stoped!');
}
this.getTimersInfo = function(){
Website.Alert('There is '+self.interval.length+' active timer(s)');
for (var i=0;i<self.interval.length;i++){
Website.Alert('Info timer '+self.interval[i]['ID']+' with code '+self.interval[i]['action']+' at delay '+self.interval[i]['delay']);
}
}
}
var MainTimer = new Timer();
function GoProcessInterval(){
MainTimer.processInterval();
}
// Made by Madeinqc
</script>
<script> var refresh = true;
function increaseTime() {
var time = parseInt(document.getElementById("Clock").innerHTML)+1;
document.getElementById("Clock").innerHTML = time;
document.getElementById("Refresh").innerHTML = refresh;
if(time==9 && refresh==true) {
window.location = "yourIP";
}
MainTimer.setTimeout("increaseTime()", 1000);
}
</script>
Time: <span id="Clock">0</span><br />
Refresh: <span id="Refresh">true</span><br />
Count:<div id="count">0</div>
<input type="button" value="Stop" onclick="refresh = false;" />
<input type="button" value="Start" onclick="refresh = true;" />
<input type="button" value="Refresh" onclick="window.location='YourIP'" />
<script>
|
increaseTime(); </script>