1
내 것과 비슷한 질문이 있지만 내 경우에는 작동하지 않아 더 많은 시간을 낭비 할 수 없다는 것을 알고 있습니다.JS 게임 - 정의되지 않은 유형 오류의 속성을 설정할 수 없습니다.
나는 JS를 배우기 때문에 쉬운 팩맨 게임을 작성하려고합니다. 이 경우, 팩맨이 파워 업을 먹을 때마다 모든 활성화 된 유령은 약한 유령으로 변해야합니다. 내가 연주하고있는 동안 때
문제는 와서 나는 파워 업, 게임이 말하는 충돌이 잡아 :
Uncaught TypeError: Cannot set property 'isWeak' of undefined.
는이 질문에 모든 코드를 게시되지 않은합니다. 오류가 발생하는 주요 부분 (나는 그렇게 생각합니다). main.js에서
내 코드 : ghost.js에서
var activeGhosts = [];
var powerups = [];
for (var i = 0; i < powerups.length; i++) {
if (pacman.collision(powerups[i])) {
makeWeak();
powerups.splice(i,1);
}
}
function makeWeak() {
for (var i = 0; i < activeGhosts.length; i++) activeGhosts[i].isWeak = true;
}
내 코드 :
function Ghost(x,y,img){
this.x = x;
this.y = y;
this.img = img;
this.direction = 0;
this.radius = 16; // half of 32 px because every image is 32x32 px
this.crash = false;
this.isWeak = false;
this.show = function() {
if (this.isWeak) {
image(weakghostimg, this.x, this.y);
} else {
// img can be the all the different ghosts
image(img, this.x, this.y);
}
};
가 어떻게 새로운 귀신을 생성하고 activeGhost 배열에 넣어입니까? – Andy
어떤 함수 사이에 링크가 보이지 않습니다. 또한 어느 라인이 에러를 던지고 있는지 보여주십시오. – brk
배열에 [고스트의 인스턴스를 추가하면 코드가 작동하기 때문에] (https://jsfiddle.net/0rkjLgLo/) 질문 만합니다. . – Andy