www.webdeveloper.com
Results 1 to 8 of 8

Thread: Code repeats itself

  1. #1
    Join Date
    Dec 2010
    Posts
    60

    Code repeats itself

    Ok, so I'm progamming a game again, and Here is the trouble I am havving.

    Every time I push right as the box is falling, it doubles in speed. if I hold down the right arrow, it continues to go faster until it hits the ground. how can i stop the speed from doubling?




    HTML Code:
    <html>
    <head>
    <script type="text/javascript">
    var guy;
    var ground;
    var guytop=25;
    var guyleft=25;
    var groundtop=400;
    var groundleft=0;
    
    
    function animate(e){
    guy=document.getElementById('guy');
    ground=document.getElementById('ground');
    
    if(!e){
    	e=window.event;
    }
    if(e.keyCode===39){
    	guyleft +=5;
    	guy.style.left = guyleft + 'px';
    }
    
    
    gravityInt();
    }
    
    
    function gravity(){
    	if((guytop)+50 < groundtop){
    		guytop +=5;
    		guy.style.top = guytop + 'px';
    	
    }
    
    }
    
    function gravityInt(){
    	setInterval('gravity()', 50);
    }
    document.onkeydown=animate;
    </script>
    </head>
    <body onload="animate()">
    <div id="guy" style="height: 50px; width: 50px; top: 25px; left: 25px; background: red; border: 1px solid black; position: absolute;"></div>
    <div id="ground" style="height: 25px; width: 500px; background: gray; border: 1px solid black;
    position: absolute; left: 0; top: 400;"></div>


    Also, I am making a map array. It would be something like this.


    var map=new Array=(a,a,a,a,a,
    a,a,a,x,a,
    a,a,a,a,a);

    And then let's say i put my character in that array and when he collides with "x" I want something to happen. But I'm having trouble with that. I tried doing it like this.

    if(guy >= map[8] && guy <= map[8]){
    //something happens here
    }


    but nothing does, the only way I can get something to happen is to write it like this which is no good.

    if(guy < map[8]){
    //something happen
    }

    Help is appreciated!

  2. #2
    Join Date
    Oct 2006
    Posts
    939
    You are calling gravityInt() and then setting Interval each time you click right.
    Either clearInterval or seperate the codes

    PHP Code:
    <html>
    <
    head>
    <
    script type="text/javascript">
    var 
    guy;
    var 
    ground;
    var 
    guytop=25;
    var 
    guyleft=25;
    var 
    groundtop=400;
    var 
    groundleft=0;


    function 
    animate(e){

    if(!
    e){    e=window.event;}
    if(
    e.keyCode===39){
        
    guyleft +=5;
        
    guy.style.left guyleft 'px';
    }


    }


    function 
    gravity(){
        if((
    guytop)+50 groundtop){    guytop +=5;    guy.style.top guytop 'px'; }
    }

    function 
    gravityInt(){guy=document.getElementById('guy');
    ground=document.getElementById('ground');
        
    setInterval('gravity()'50);}

    document.onkeydown=animate;
    </script>
    </head>
    <body onload="gravityInt();
    ">
    <div id="guy" style="height: 50px; width: 50px; top: 25px; left: 25px; background: red; border: 1px solid black; position: absolute;"></div>
    <div id="ground" style="height: 25px; width: 500px; background: gray; border: 1px solid black;
    position: absolute; left: 0; top: 400;"></div>

    </body></html> 

  3. #3
    Join Date
    Dec 2010
    Posts
    60
    Thanks for your reply. Do You think, you coudl tell me why I can't get collision to work with this grid array?

  4. #4
    Join Date
    Oct 2006
    Posts
    939
    Your map is filled with undefined variables. if it is a string you need to quote them

    var map='a,a,a,a,a,a,a,a,x,a,a,a,a,a,a'; map=map.split(',');

  5. #5
    Join Date
    Dec 2010
    Posts
    60
    NO they aren't undefined. I didn't post what I defined them as. but above them I posted var a=<img src="" /> and so on. So How would I say if guy collides into a stop. or die

  6. #6
    Join Date
    Dec 2010
    Posts
    60
    bump

  7. #7
    Join Date
    Oct 2006
    Posts
    939
    Quote Originally Posted by pdiddles03 View Post
    NO they aren't undefined. I didn't post what I defined them as. but above them I posted var a=<img src="" /> and so on. So How would I say if guy collides into a stop. or die
    We can't read your mind, only your code. If there is relevant code you need to paste all of it.

  8. #8
    Join Date
    Dec 2010
    Posts
    60
    Stop being a jerk and read what I wrote. You don't need the variables. I explained I wanted a collision once my character moves to x. If you don't have the answer for me don't reply. I can't read the mind of morons to find answers.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

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



Recent Articles