<?xml version="1.0"?>
<rss version="2.0">
   <channel>
      <title>1학년 5반 웹게임 개발의 복제물 by 이왕렬</title>
      <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9</link>
      <description></description>
      <language>en-us</language>
      <pubDate>2025-06-23 01:50:25 UTC</pubDate>
      <lastBuildDate>2025-06-23 01:50:28 UTC</lastBuildDate>
      <webMaster>hello@padlet.com</webMaster>
      <image>
         <url></url>
      </image>
      <item>
         <title>1팀</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514045</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514045</guid>
      </item>
      <item>
         <title>10501 김경원 10502 김나우 10508 복시우 10516 정여진 10522 김지유 
</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514051</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514051</guid>
      </item>
      <item>
         <title>더블 점프, 장애물 크기 키우기, 공룡 이미지 바꾸기, 배경 색 바꾸기, 장애물 이미지 바꾸기 시도</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514054</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514054</guid>
      </item>
      <item>
         <title>이미지 조사, 공룡 게임 기존 요소 조사</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514055</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514055</guid>
      </item>
      <item>
         <title>하루만에 여소를 2명이나 받아버린 이도윤</title>
         <author>24sunrin093</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514056</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514056</guid>
      </item>
      <item>
         <title>이윤서 박기준 이도윤 정지율</title>
         <author>24sunrin093</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514057</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514057</guid>
      </item>
      <item>
         <title>아이템 추가</title>
         <author>24sunrin093</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514059</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514059</guid>
      </item>
      <item>
         <title>101219</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514061</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514061</guid>
      </item>
      <item>
         <title>유은재,신유준 그 외 1인</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514064</link>
         <description><![CDATA[<p>이현</p>]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514064</guid>
      </item>
      <item>
         <title>신유준,gpt,gpt,gpt,유은재</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514066</link>
         <description><![CDATA[<p>최이현(응원)</p>]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514066</guid>
      </item>
      <item>
         <title>총알발사</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514068</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514068</guid>
      </item>
      <item>
         <title></title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514071</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads-usc1.storage.googleapis.com/3056356736/b5e4c4c5b6fcfd34bd3335bc3c36246e/___2024_11_19_141551.mp4" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514071</guid>
      </item>
      <item>
         <title>총알 발사 모드</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514072</link>
         <description><![CDATA[<pre><code class="language-javascript">const canvas = document.getElementById("game");
const ctx = canvas.getContext("2d");

let score = 0;
let gameSpeed = 3;
let obstacles = [];
let bullets = [];
let gravity = 1;
let keys = {};
let dino;
let spwanTimer = 200;
let initialSpawnTimer = 200;

document.addEventListener('keydown', function(evt){
    keys[evt.code] = true;
});

document.addEventListener('keyup', function(evt){
    keys[evt.code] = false;
});

class Dino {
    constructor(x, y, w, h, c) {
        this.x = x;
        this.y = y;
        this.w = w;
        this.h = h;
        this.c = c;
        this.dy = 0;
        this.jumpForce = 15;
        this.originalHeight = h;
        this.grounded = false;
        this.jumpTimer = 0;
    }

    Draw() {
        ctx.beginPath();
        ctx.fillStyle = this.c;
        ctx.fillRect(this.x, this.y, this.w, this.h);
        ctx.closePath();
    }

    Jump() {
        if (this.grounded &amp;&amp; this.jumpTimer == 0) {
            this.jumpTimer = 1;
            this.dy = -this.jumpForce;
        } else if (this.jumpTimer &gt; 0 &amp;&amp; this.jumpTimer &lt; 15) {
            this.jumpTimer++;
            this.dy = -this.jumpForce - (this.jumpTimer / 50);
        }
    }

    Animate() {
        if (keys['Space']) {
            this.Jump();
        } else {
            this.jumpTimer = 0;
        }

        if (keys['ShiftLeft'] || keys['KeyS']) {
            this.h = this.originalHeight / 2;
        } else {
            this.h = this.originalHeight;
        }
        this.y += this.dy;

        if (this.y + this.h &lt; canvas.height) {
            this.dy += gravity;
            this.grounded = false;
        } else {
            this.dy = 0;
            this.grounded = true;
            this.y = canvas.height - this.h;
        }

        this.Draw();
    }
}

// 총알 클래스 추가
class Bullet {
    constructor(x, y, w, h, c) {
        this.x = x;
        this.y = y;
        this.w = w;
        this.h = h;
        this.c = c;
        this.dx = 10; // 총알 이동 속도
    }

    // 총알 그리기
    Draw() {
        ctx.beginPath();
        ctx.fillStyle = this.c;
        ctx.fillRect(this.x, this.y, this.w, this.h);
        ctx.closePath();
    }

    // 총알 이동
    Update() {
        this.x += this.dx;
        this.Draw();
    }
}

// 장애물 클래스
class Obstacle {
    constructor(x, y, w, h, c) {
        this.x = x;
        this.y = y;
        this.w = w;
        this.h = h;
        this.c = c;
        this.dx = -gameSpeed;
    }

    // 장애물 그리기
    Draw() {
        ctx.beginPath();
        ctx.fillStyle = this.c;
        ctx.fillRect(this.x, this.y, this.w, this.h);
        ctx.closePath();
    }

    // 장애물 이동
    Update() {
        this.x += this.dx;
        this.Draw();
    }
}

// 장애물 생성
function SpawnObstacle() {
    let size = RandomIntInRange(20, 70);
    // 장애물의 y 위치를 최대 점프 높이까지 랜덤으로 설정
    let yPos = canvas.height - size - RandomIntInRange(0, 100);
    let obstacle = new Obstacle(canvas.width + size, yPos, size, size, '#2484E4');
    obstacles.push(obstacle);
}

// 랜덤 숫자 생성
function RandomIntInRange(min, max) {
    return Math.round(Math.random() * (max - min) + min);
}

// 총알 발사
function FireBullet() {
    let bullet = new Bullet(dino.x + dino.w, dino.y + dino.h / 2 - 5, 10, 5, '#ff0000');
    bullets.push(bullet);
}

// 총알과 장애물 충돌 체크
function CheckBulletCollision() {
    for (let i = 0; i &lt; bullets.length; i++) {
        let b = bullets[i];
        for (let j = 0; j &lt; obstacles.length; j++) {
            let o = obstacles[j];
            // 총알과 장애물 충돌 확인
            if (b.x &lt; o.x + o.w &amp;&amp; b.x + b.w &gt; o.x &amp;&amp; b.y &lt; o.y + o.h &amp;&amp; b.y + b.h &gt; o.y) {
                // 충돌 시 첫 번째 장애물만 제거
                obstacles.splice(j, 1);
                bullets.splice(i, 1);
                score += 10; // 점수 증가
                break; // 충돌 후 다른 장애물과의 충돌은 확인하지 않음
            }
        }
    }
}

// 초기화 함수
function Start() {
    canvas.width = window.innerWidth;
    canvas.height = window.innerHeight;

    ctx.font = "20px sans-serif";

    gameSpeed = 3;
    gravity = 1;
    score = 0;
    dino = new Dino(25, canvas.height - 150, 50, 50, '#ff0000');

    requestAnimationFrame(Update);
}

// 게임 업데이트 함수
function Update() {
    requestAnimationFrame(Update);
    ctx.clearRect(0, 0, canvas.width, canvas.height);

    dino.Animate();
    spwanTimer--;
    if (spwanTimer &lt;= 0) {
        SpawnObstacle();
        spwanTimer = initialSpawnTimer - gameSpeed * 8;

        if (spwanTimer &lt; 60) {
            spwanTimer = 60;
        }
    }

    for (let i = 0; i &lt; obstacles.length; i++) {
        let o = obstacles[i];
        if (o.x + o.w &lt; 0) {
            obstacles.splice(i, 1);
        }
        o.Update();
    }

    for (let i = 0; i &lt; bullets.length; i++) {
        let b = bullets[i];
        if (b.x &gt; canvas.width) {
            bullets.splice(i, 1); // 총알이 화면을 벗어나면 제거
        }
        b.Update();
    }

    CheckBulletCollision();

    gameSpeed += 0.003;
    score++;
    // 점수 표시
    ctx.fillStyle = "#212121";
    ctx.fillText("Score: " + score, 25, 25);
}

// 게임 시작
Start();

// 키 이벤트 처리 (점프는 space, 총알 발사는 enter)
document.addEventListener('keydown', function(evt) {
    if (evt.code === 'Space') {
        dino.Jump();
    }
    if (evt.code === 'Enter') {
        FireBullet();
    }
});
</code></pre>]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514072</guid>
      </item>
      <item>
         <title>리스타트</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514073</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads-usc1.storage.googleapis.com/3056394871/6ee3ffb307eb62dcb15016ae25e6d515/____________2024_11_19______2_15_25.mov" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514073</guid>
      </item>
      <item>
         <title>restart 코드</title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514079</link>
         <description><![CDATA[<pre><code>function Restart () {
    restartButton.style.display = 'flex';
    document.getElementById('game').style.display = 'none'
    restartButton.addEventListener("click", () =&gt; {
        isPlaying = true; // 게임 상태 변경
        restartButton.style.display = 'none'; // 버튼 숨기기
        document.getElementById('game').style.display = 'block'
        init()
        Start(); // 게임 재시작
    });
}</code></pre>]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514079</guid>
      </item>
      <item>
         <title>4팀</title>
         <author>24sunrin100</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514081</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514081</guid>
      </item>
      <item>
         <title>10520최진호, 10509 서아람, 10515정가빈</title>
         <author>24sunrin100</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514083</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514083</guid>
      </item>
      <item>
         <title>10509</title>
         <author>24sunrin089</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514085</link>
         <description><![CDATA[<p>브레스(?)를 쏠 수 있으며, 진행 중 자주 나오는 아이템을 먹으면 브레스(?)가 두꺼워진다</p><p><br></p>]]></description>
         <enclosure url="https://padlet-uploads-usc1.storage.googleapis.com/2593749522/9840a225daea0c8c9072eab79e31e810/test3.js" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514085</guid>
      </item>
      <item>
         <title>새를 추가하려고함</title>
         <author>24sunrin100</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514087</link>
         <description><![CDATA[<pre><code class="language-javascript">if (this.isBird == false) {
      const randomValue = Math.random();
      if (randomValue &lt; 0.1) {
        this.isBird = true;
      }
    } else {
      this.isBird = false;
    }</code></pre>]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514087</guid>
      </item>
      <item>
         <title></title>
         <author></author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514089</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads-usc1.storage.googleapis.com/3056452019/375f5329f9e6a3a58a4dadf09e2075c7/dino.js" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514089</guid>
      </item>
      <item>
         <title>팀명</title>
         <author>sunrinsw</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514095</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514095</guid>
      </item>
      <item>
         <title>우리팀원</title>
         <author>sunrinsw</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514098</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514098</guid>
      </item>
      <item>
         <title>개발자:김선린</title>
         <author>sunrinsw</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514100</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://pixabay.com/get/gb9057745d58f233f1048280caf87dcda41daaa7f8023ddde274439d7eca40da56e43733c95d1b4a6597fb1d73c9a7ea6.jpg" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514100</guid>
      </item>
      <item>
         <title>개선기능</title>
         <author>sunrinsw</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514101</link>
         <description><![CDATA[<p>팀원별로</p>]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514101</guid>
      </item>
      <item>
         <title>개선을 위한 자료조사</title>
         <author>sunrinsw</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514102</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514102</guid>
      </item>
      <item>
         <title>핵심아이디어 및 기능</title>
         <author>sunrinsw</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514105</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514105</guid>
      </item>
      <item>
         <title>코드리뷰</title>
         <author>sunrinsw</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514106</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514106</guid>
      </item>
      <item>
         <title>시연화면</title>
         <author>sunrinsw</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514107</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514107</guid>
      </item>
      <item>
         <title>최종 제출물</title>
         <author>sunrinsw</author>
         <link>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514108</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2025-06-23 01:50:25 UTC</pubDate>
         <guid>https://padlet.com/seoulonlineschool/zewzs1220l8lcwz9/wish/3498514108</guid>
      </item>
   </channel>
</rss>
