인터넷정보

포트리스 게임

알 수 없는 사용자 2007. 10. 18. 14:25
http://oxtag.com/html/ex/fortress.html

<html>
<head>
<title>Project 3 by Koo</title>
<meta http-equiv="Content-type" content="text/html; charset=euc-kr">
<script language=javascript>
<!--
//어느 심심한 주말에 구름이가..... ~(-_-~) ~(-_-~) ~(-_-~) ~(-_-~) ~(-_-~) ~(-_-~)
var left = 80;                //왼쪽 끝 좌표
var mycharAttack = Array("  /)/)(=^-^)_","  /)/)(+-_-)_","  /)/)(+-0-)/");
var AttNum = 0;
var ball = new Object() // 볼객체 생성
ball.x = left;                //볼의 위치 x좌표
ball.y = 500;        //볼의 위치 y좌표
var t = 0;                //시간의 흐름값
var power = 0;        //파워
var checkkeyup = 0;        //키 누르고있는지 체크
var e_x = 0;
var e_y = 500;

//적 위치 초기화
function initenmy(){
        e_x = parseInt(500 * Math.random()) + 300;
        enemy.style.left = e_x;
        enemy.style.top = e_y;
        enemy.style.visibility= "visible";
}

//무기 초기화 시키기
function init(){
        myball.style.left = ball.x;
        myball.style.top = ball.y;
        myball.style.visibility = "visible";
}

//공식을 이용해서 현재 뿌려줄 위치 가져오기
function gety(time){
        var value = -(time - power/2) * (time - power/2) + power*power/4;
        var res = 20 / power * value;
        return 500 - parseInt(res)
}

//쏘는 동작
function Attack(){
        mychar.innerHTML = mycharAttack[AttNum];
        if(AttNum == mycharAttack.length - 1){
                AttNum = 0;
                shot();
        }
        else{
                AttNum++;
                setTimeout(Attack,100 * (AttNum + 1));
        }
}

//쏘기
function shot(){
        ball.x = 8 * t + left;
        ball.y = gety(t);
        t++;
        init();
        if(t == power + 1){
                setTimeout(checkresult,100);
        }
        else{
                setTimeout(shot,50);
        }
}

//파워 게이지 체크
function gageup(){
        if(checkkeyup > 0 && power < 100){
                power++;
                powergage.style.width = 4 * power;
                setTimeout(gageup,20);
        }
        else{
                Attack();
        }
}

//키 가로채기 샤샥
function keyStill(){
        var key = event.keyCode;
        if(key == 32 && checkkeyup == 0 && power == 0){
                checkkeyup = 1;
                gageup();
        }
}
//키 놓기
function keyclear(){
        checkkeyup = 0;//-1;
}

//결과 체크 하기
function checkresult(){
        if(ball.x > e_x - 10 && ball.x < e_x + 50){
                enemy.innerHTML = "_( _ _)_/~";
                wow.style.visibility = "visible";
                // setTimeout(ending,2000);  // 이동하기 싫은 경우 주석 처리..
        }
        else{
                initenmy()
                mychar.innerHTML = mycharAttack[AttNum];
                ball.x = left;
                ball.y = 500;
                t = 0;
                init();
                power = 0;
                powergage.style.width = 0;
        }
}

//보내주기
function ending(){
        //alert("이동");
        document.location.href = "bbs1.html";  // 맞출 경우 이동 페이지
}
//-->
</script>
</head>
<body onKeypress=keyStill(); onKeyup=keyclear() onload="initenmy();init();" leftmargin=0 topmargin=0>

<span id=myball style="position:absolute;visibility:hidden;width:10;height:10;color:#59D747;">★</span>
<span id=mychar style="position:absolute;width:70;height:20;left:35;top:485;">  /)/)(=^-^)_</span>
<span id=enemy style="position:absolute;visibility:hidden;width:80;height:10;">(-_-ㆀ)</span>

<span id=powerzone style="position:absolute;top:520;left:200;width:500;height:10;background-color:#59D747;z-index:101;"></span>
<span id=powergage style="position:absolute;top:520;left:200;width:0;height:10;background-color:#FFAAAA;z-index:102;"></span>

<center>
<span id=wow style="position:absolute;top:300;left:0;width:100%;height:10;visibility:hidden;"><span id=wow_left>(↗^^)↗</span><span style="background-color:#FFFFFF;color:#FF0000;cursor:pointer;" onClick="javascript:window.location.reload();"><b>오!! 대단~ [다시하기]</b></span><span id=wow_right>↖(^^↖)</span></span>

<span id=help style="position:absolute;top:100;left:0;width:100%;z-index:103;font-size:9pt;">
미리 막내 구름임다 -_-a 집이 워낙 허접해서 아무나 못 들어 옵니다.<br>
스페이스바로 조정 해서 오른쪽 적을 무찌른 자만 입장 가능 합니다.<br>
그럼 굿럭.
</span>
<center>
</body>
</html>
반응형