feat: add poc
This commit is contained in:
parent
43d27b04d9
commit
4a4fa05ce4
53 changed files with 6191 additions and 0 deletions
36
src/skills/SkillRegistry.js
Normal file
36
src/skills/SkillRegistry.js
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
import { SlimeGun } from './skills/WaterGun.js'; // File still named WaterGun.js but class is SlimeGun
|
||||
import { FireBreath } from './skills/FireBreath.js';
|
||||
import { Pounce } from './skills/Pounce.js';
|
||||
import { StealthMode } from './skills/StealthMode.js';
|
||||
|
||||
/**
|
||||
* Registry for all skills in the game
|
||||
*/
|
||||
export class SkillRegistry {
|
||||
static skills = new Map();
|
||||
|
||||
static {
|
||||
// Register all skills
|
||||
this.register(new SlimeGun());
|
||||
this.register(new FireBreath());
|
||||
this.register(new Pounce());
|
||||
this.register(new StealthMode());
|
||||
}
|
||||
|
||||
static register(skill) {
|
||||
this.skills.set(skill.id, skill);
|
||||
}
|
||||
|
||||
static get(id) {
|
||||
return this.skills.get(id);
|
||||
}
|
||||
|
||||
static getAll() {
|
||||
return Array.from(this.skills.values());
|
||||
}
|
||||
|
||||
static has(id) {
|
||||
return this.skills.has(id);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue