dungeon-sdk-drikkx
Version:
Shared types and entities for the Dungeon game
351 lines • 12.9 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.CHARACTER_DEFAULTS = exports.SkillType = exports.ResourcesType = exports.Role = void 0;
const stats_types_1 = require("./stats.types");
// ====================================
// Role Types
// ====================================
var Role;
(function (Role) {
Role["TANK"] = "tank";
Role["MELEE"] = "melee";
Role["RANGED"] = "ranged";
Role["HEALER"] = "healer";
})(Role || (exports.Role = Role = {}));
// ====================================
// Resource and Skill Types
// ====================================
var ResourcesType;
(function (ResourcesType) {
ResourcesType["NONE"] = "none";
ResourcesType["MANA"] = "mana";
ResourcesType["RAGE"] = "rage";
ResourcesType["ENERGY"] = "energy";
})(ResourcesType || (exports.ResourcesType = ResourcesType = {}));
var SkillType;
(function (SkillType) {
SkillType["ATTACK"] = "attack";
SkillType["COMBO"] = "combo";
SkillType["SPECIAL"] = "special";
SkillType["SKILL"] = "skill";
SkillType["HEAL"] = "heal";
SkillType["BUFF"] = "buff";
SkillType["DEBUFF"] = "debuff";
SkillType["DOT"] = "dot";
SkillType["HOT"] = "hot";
SkillType["ITEM"] = "item";
})(SkillType || (exports.SkillType = SkillType = {}));
// ====================================
// Character Defaults
// ====================================
exports.CHARACTER_DEFAULTS = {
knight: {
name: 'knight',
damageType: stats_types_1.DamageType.PHYSICAL_MELEE,
role: Role.TANK,
resources: ResourcesType.RAGE,
stats: {
strength: 5,
agility: 2,
intelligence: 0,
vitality: 10,
spirit: 3
},
animations: {
idle: { key: 'idle', frameStart: 0, frameEnd: 5, frameRate: 8, repeat: true },
walk: { key: 'walk', frameStart: 11, frameEnd: 18, frameRate: 12, repeat: true },
attack: { key: 'attack', frameStart: 22, frameEnd: 29, frameRate: 12, repeat: false },
combo: { key: 'combo', frameStart: 33, frameEnd: 42, frameRate: 12, repeat: false },
special: { key: 'special', frameStart: 44, frameEnd: 54, frameRate: 12, repeat: false },
skill: { key: 'skill', frameStart: 55, frameEnd: 58, frameRate: 12, repeat: false },
hurt: { key: 'hurt', frameStart: 66, frameEnd: 69, frameRate: 12, repeat: false },
death: { key: 'death', frameStart: 77, frameEnd: 80, frameRate: 10, repeat: false }
},
skills: [
{
id: '1',
resourceType: ResourcesType.NONE,
name: 'attack',
type: SkillType.ATTACK,
damage: 3,
cost: 0,
cooldown: 0,
currentCooldown: 0,
effects: [],
animationName: 'attack'
}
]
},
swordsman: {
name: 'swordsman',
damageType: stats_types_1.DamageType.PHYSICAL_MELEE,
role: Role.MELEE,
resources: ResourcesType.RAGE,
stats: {
strength: 5,
agility: 5,
intelligence: 0,
vitality: 8,
spirit: 2
},
animations: {
idle: { key: 'idle', frameStart: 0, frameEnd: 5, frameRate: 8, repeat: true },
walk: { key: 'walk', frameStart: 15, frameEnd: 22, frameRate: 10, repeat: true },
attack: { key: 'attack', frameStart: 30, frameEnd: 36, frameRate: 12, repeat: false },
combo: { key: 'combo', frameStart: 45, frameEnd: 59, frameRate: 12, repeat: false },
special: { key: 'special', frameStart: 60, frameEnd: 71, frameRate: 12, repeat: false },
hurt: { key: 'hurt', frameStart: 75, frameEnd: 79, frameRate: 12, repeat: false },
death: { key: 'death', frameStart: 90, frameEnd: 93, frameRate: 10, repeat: false }
},
skills: [
{
id: '1',
resourceType: ResourcesType.NONE,
name: 'attack',
type: SkillType.ATTACK,
damage: 4,
cost: 0,
cooldown: 0,
currentCooldown: 0,
effects: [],
animationName: 'attack'
},
{
id: '2',
resourceType: ResourcesType.RAGE,
name: 'combo',
type: SkillType.COMBO,
damage: 2,
cost: 10,
cooldown: 4,
currentCooldown: 0,
effects: [],
animationName: 'combo'
}
]
},
archer: {
name: 'archer',
damageType: stats_types_1.DamageType.PHYSICAL_RANGED,
role: Role.RANGED,
resources: ResourcesType.ENERGY,
stats: {
strength: 4,
agility: 10,
intelligence: 0,
vitality: 5,
spirit: 1
},
animations: {
idle: { key: 'idle', frameStart: 0, frameEnd: 5, frameRate: 8, repeat: true },
walk: { key: 'walk', frameStart: 12, frameEnd: 19, frameRate: 10, repeat: true },
attack: { key: 'attack', frameStart: 24, frameEnd: 32, frameRate: 12, repeat: false },
combo: { key: 'combo', frameStart: 36, frameEnd: 47, frameRate: 12, repeat: false },
hurt: { key: 'hurt', frameStart: 48, frameEnd: 51, frameRate: 12, repeat: false },
death: { key: 'death', frameStart: 60, frameEnd: 63, frameRate: 10, repeat: false }
},
skills: [
{
id: '1',
resourceType: ResourcesType.NONE,
name: 'attack',
type: SkillType.ATTACK,
damage: 4,
cost: 0,
cooldown: 0,
currentCooldown: 0,
effects: [],
animationName: 'attack'
},
{
id: '2',
resourceType: ResourcesType.ENERGY,
name: 'combo',
type: SkillType.COMBO,
damage: 7,
cost: 10,
cooldown: 4,
currentCooldown: 0,
effects: [],
animationName: 'combo'
}
]
},
priest: {
name: 'priest',
damageType: stats_types_1.DamageType.MAGICAL,
role: Role.HEALER,
resources: ResourcesType.MANA,
stats: {
strength: 0,
agility: 0,
intelligence: 6,
vitality: 4,
spirit: 10
},
animations: {
idle: { key: 'idle', frameStart: 0, frameEnd: 5, frameRate: 8, repeat: true },
walk: { key: 'walk', frameStart: 9, frameEnd: 16, frameRate: 10, repeat: true },
attack: { key: 'attack', frameStart: 27, frameEnd: 35, frameRate: 10, repeat: false },
heal: { key: 'heal', frameStart: 54, frameEnd: 59, frameRate: 12, repeat: false },
hurt: { key: 'hurt', frameStart: 72, frameEnd: 75, frameRate: 12, repeat: false },
death: { key: 'death', frameStart: 81, frameEnd: 84, frameRate: 10, repeat: false }
},
skills: [
{
id: '1',
resourceType: ResourcesType.NONE,
name: 'attack',
type: SkillType.ATTACK,
damage: 2,
cost: 0,
cooldown: 0,
currentCooldown: 0,
effects: [],
animationName: 'attack'
},
{
id: '2',
resourceType: ResourcesType.MANA,
name: 'heal',
type: SkillType.HEAL,
healing: 5,
cost: 10,
cooldown: 4,
currentCooldown: 0,
effects: [],
animationName: 'heal'
}
]
},
skeleton: {
name: 'skeleton',
damageType: stats_types_1.DamageType.PHYSICAL_MELEE,
role: Role.MELEE,
resources: ResourcesType.RAGE,
stats: {
strength: 2,
agility: 1,
intelligence: 0,
vitality: 3,
spirit: 0
},
animations: {
idle: { key: 'idle', frameStart: 0, frameEnd: 5, frameRate: 8, repeat: true },
walk: { key: 'walk', frameStart: 8, frameEnd: 15, frameRate: 10, repeat: true },
attack: { key: 'attack', frameStart: 16, frameEnd: 21, frameRate: 12, repeat: false },
combo: { key: 'combo', frameStart: 24, frameEnd: 30, frameRate: 12, repeat: false },
special: { key: 'special', frameStart: 32, frameEnd: 35, frameRate: 12, repeat: false },
hurt: { key: 'hurt', frameStart: 40, frameEnd: 43, frameRate: 12, repeat: false },
death: { key: 'death', frameStart: 48, frameEnd: 51, frameRate: 10, repeat: false }
},
skills: [
{
id: '1',
resourceType: ResourcesType.NONE,
name: 'attack',
type: SkillType.ATTACK,
damage: 2,
cost: 0,
cooldown: 0,
currentCooldown: 0,
effects: [],
animationName: 'attack'
},
{
id: '2',
resourceType: ResourcesType.RAGE,
name: 'combo',
type: SkillType.COMBO,
damage: 2,
cost: 10,
cooldown: 4,
currentCooldown: 0,
effects: [],
animationName: 'combo'
}
]
},
skeleton_archer: {
name: 'skeleton_archer',
damageType: stats_types_1.DamageType.PHYSICAL_RANGED,
role: Role.RANGED,
resources: ResourcesType.ENERGY,
stats: {
strength: 2,
agility: 1,
intelligence: 0,
vitality: 2,
spirit: 0
},
animations: {
idle: { key: 'idle', frameStart: 0, frameEnd: 5, frameRate: 8, repeat: true },
walk: { key: 'walk', frameStart: 9, frameEnd: 16, frameRate: 10, repeat: true },
attack: { key: 'attack', frameStart: 18, frameEnd: 26, frameRate: 12, repeat: false },
hurt: { key: 'hurt', frameStart: 27, frameEnd: 30, frameRate: 12, repeat: false },
death: { key: 'death', frameStart: 36, frameEnd: 39, frameRate: 10, repeat: false }
},
skills: [
{
id: '1',
resourceType: ResourcesType.NONE,
name: 'attack',
type: SkillType.ATTACK,
damage: 2,
cost: 0,
cooldown: 0,
currentCooldown: 0,
effects: [],
animationName: 'attack'
}
]
},
armored_skeleton: {
name: 'armored_skeleton',
damageType: stats_types_1.DamageType.PHYSICAL_MELEE,
role: Role.MELEE,
resources: ResourcesType.RAGE,
stats: {
strength: 3,
agility: 1,
intelligence: 0,
vitality: 4,
spirit: 0
},
animations: {
idle: { key: 'idle', frameStart: 0, frameEnd: 5, frameRate: 8, repeat: true },
walk: { key: 'walk', frameStart: 9, frameEnd: 16, frameRate: 10, repeat: true },
attack: { key: 'attack', frameStart: 18, frameEnd: 25, frameRate: 12, repeat: false },
combo: { key: 'combo', frameStart: 27, frameEnd: 35, frameRate: 12, repeat: false },
hurt: { key: 'hurt', frameStart: 36, frameEnd: 49, frameRate: 12, repeat: false },
death: { key: 'death', frameStart: 45, frameEnd: 48, frameRate: 10, repeat: false }
},
skills: [
{
id: '1',
resourceType: ResourcesType.NONE,
name: 'attack',
type: SkillType.ATTACK,
damage: 3,
cost: 0,
cooldown: 0,
currentCooldown: 0,
effects: [],
animationName: 'attack'
},
{
id: '2',
resourceType: ResourcesType.RAGE,
name: 'combo',
type: SkillType.COMBO,
damage: 2,
cost: 10,
cooldown: 4,
currentCooldown: 0,
effects: [],
animationName: 'combo'
}
]
}
};
//# sourceMappingURL=character.types.js.map