class Marine {
attack(target) {
target.health -= 6;
}
}
class Zealot {
attack(target) {
target.health -= 8;
}
}
class Zergling {
attack(target) {
target.health -= 5;
}
}
class Mario {
jumpAttack() {
console.log('Mamamia!');
return 3;
}
}
class MarioAdapter {
constructor(mario) {
this.mario = mario;
}
attack(target) {
target.health = target.health - this.mario.jumpAttack();
}
}
const marioAdapter = new MarioAdapter(mario);
const target = { health: 33 };
marioAdapter.attack(target);