SitePoint Sponsor

User Tag List

Results 1 to 3 of 3

Thread: Timer for game

Hybrid View

  1. #1
    SitePoint Member
    Join Date
    Jul 2013
    Posts
    18
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Timer for game

    i'm using the code below but its going below 0 when it is in use or running in background. Everything else is perfect. i am testing on a ios mobile device and when i minimise and then resume, the timer is still running in background. when it is not in use or minimised, the timer needs to stop and when resumed it needs to start again. most probably like a game timer should stop at 0.Hope someone can help me on this

    Code:
    <span id="count" ></span>
    <script type="text/javascript">
    /*<![CDATA[*/
    
    var zxcMatch={
    
     Reset:function(id){
      var o=this[id],z0=0;
      if (o){
       clearTimeout(o.to);
       o.time[1]=null;
       for (;z0<o.imgs.length;z0++){
        o.imgs[z0].style.visibility='visible';
       }
       o.cnt=z0/2;
       o.lst=null;
      }
     },
    
     init:function(o){
      var id=o.ParentID,imgs=document.getElementById(id).getElementsByTagName('IMG'),z0=0;
      o.imgs=imgs;
      for (;z0<imgs.length;z0++){
       this.addevt(imgs[z0],'mouseup','match',o,imgs[z0]);
      }
      o.time=[typeof(o.Timer)=='function'?o.Timer:null];
      o.cnt=z0/2;
      this[id]=o;
     },
    
     match:function(o,img){
      if (o.time[0]&&!o.time[1]){
       o.time[1]=new Date();
       o.to=setInterval(function(){ o.time[0](o,Math.floor((new Date()-o.time[1])/1000)); },1000);
      }
      if (!o.lst){
       o.lst=img;
      }
      else {
       if (o.lst.className==img.className&&o.lst!=img){
        img.style.visibility=o.lst.style.visibility='hidden';
        o.cnt--;
        if (o.cnt==0){
         clearTimeout(o.to);
         o.time[1]=null;
         o.Complete();
        }
       }
       else {
        alert('try again');
       }
       o.lst=null;
      }
     },
    
     addevt:function(o,t,f,p,p1){
      var oop=this;
      o.addEventListener?o.addEventListener(t,function(e){ return oop[f](p,p1);},false):o.attachEvent?o.attachEvent('on'+t,function(e){ return oop[f](p,p1); }):null;
     }
    
    
    }
    
    zxcMatch.init({
     ParentID:'match-holder',
     Timer:function(o,sec){
      document.getElementById('count').innerHTML=30-sec;
      if (sec>29){
        alert('Time Out');
        zxcMatch.Reset('match-holder');
      }
     },
     Complete:function(){
    //  window.top.location='http://www.vicsjavascripts.org.uk/';
     }
    });
    /*]]>*/
    </script>

  2. #2
    SitePoint Member
    Join Date
    Sep 2013
    Location
    France
    Posts
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Yea all things here are fine and I think you have to put option in game to resume first. I will try to solve your issue but I also want few time. I hope you will patience.

  3. #3
    SitePoint Member
    Join Date
    Jul 2013
    Posts
    18
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by henryhill108 View Post
    Yea all things here are fine and I think you have to put option in game to resume first. I will try to solve your issue but I also want few time. I hope you will patience.
    its ok. take your own time. can i expect before september end


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •