-
카테고리
-
해결 여부
미해결
자스스톤 응용법 질문
20.05.20 15:16 작성 조회수 140
0
math 객체를 사용하셔서 난수값 연산으로 랜덤 능력치를 가진 5장의 카드가 덱에 생성되게 되어있는 것 같습니다만
카드
var 상대 = {
영웅: document.getElementById('rival-hero'),
덱: document.getElementById('rival-deck'),
필드: document.getElementById('rival-cards'),
코스트: document.getElementById('rival-cost'),
덱data: [알파, 베타, 감마, 오메가, 제타, 델타, 빔펠],
영웅data: [],
필드data: [],
선택카드: null,
선택카드data: null,
이런 식으로 기존 코드에 덱 data 배열에 따로 미리 만들어둔 카드 이름을 넣고
이런 식으로 미리 카드에 따른 능력치 값을 입력시켜놓았는데 이걸 화면상에 구현하는 법을 모르겠습니다.
function Card(name, att, hp, cost) {
this.name = name;
this.att = att;
this.hp = hp;
this.cost = cost;
}
var 알파 = new Card('알파', 8, 35, 1)
var 베타 = new Card('베타', 900, 8570, 6)
var 감마 = new Card('감마', 5, 30, 1)
var 오메가 = new Card('오메가', 450, 7500, 5)
var 제타 = new Card('제타', 15, 70, 2)
var 델타 = new Card('델타', 740, 6850, 5)
답변을 작성해보세요.
1
조현영
지식공유자2020.05.21
덱data에 미리 이름을 넣지마시고
new Card로 만드신 후에
상대.덱data.push(알파)
상대.덱data.push(베타)
이런 식으로 추가하세요.
0
0
사랑수학
질문자2020.05.21
감사합니다 상대덱과 내덱에 미리 구상한 10장의 카드 데이터를 각각 입력하고 이 중 랜덤으로 5장을 뽑아서 게임을 진행하게 할려하면 이 부분들을 어떻게 고쳐야 할까요?
var 상대 = {
영웅: document.getElementById('rival-hero'),
덱: document.getElementById('rival-deck'),
필드: document.getElementById('rival-cards'),
코스트: document.getElementById('rival-cost'),
덱data: [],
영웅data: [],
필드data: [],
선택카드: null,
선택카드data: null,
};
var 나 = {
영웅: document.getElementById('my-hero'),
덱: document.getElementById('my-deck'),
필드: document.getElementById('my-cards'),
코스트: document.getElementById('my-cost'),
덱data: [],
영웅data: [],
필드data: [],
선택카드: null,
선택카드data: null,
};
function Card(영웅, 내카드) {
if (영웅) {
this.att = Math.ceil(Math.random() * 2);
this.hp = Math.ceil(Math.random() * 5) + 25;
this.hero = true;
this.field = true;
} else {
this.att = Math.ceil(Math.random() * 5);
this.hp = Math.ceil(Math.random() * 5);
this.cost = Math.floor((this.att + this.hp) / 2);
}
if (내카드) {
this.mine = true;
}
}
답변 3