mirror of
https://github.com/morbalint/kemkas.git
synced 2026-07-17 19:03:46 +00:00
parse spells
This commit is contained in:
+1
-1
@@ -8,7 +8,7 @@ services:
|
|||||||
POSTGRES_PASSWORD: "kemkas-dev42"
|
POSTGRES_PASSWORD: "kemkas-dev42"
|
||||||
|
|
||||||
backend:
|
backend:
|
||||||
image: registry.digitalocean.com/kemkas/kemkas-be:ebe5c333
|
image: registry.digitalocean.com/kemkas/kemkas-be:e0a2e489
|
||||||
ports:
|
ports:
|
||||||
- "8080:8080"
|
- "8080:8080"
|
||||||
environment:
|
environment:
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -8,6 +8,7 @@ import {Szintlepes} from "./szintlepes";
|
|||||||
import {AllowedFegyver} from "./allowed-fegyver";
|
import {AllowedFegyver} from "./allowed-fegyver";
|
||||||
import {BaseHP} from "./masodlagos_ertekek";
|
import {BaseHP} from "./masodlagos_ertekek";
|
||||||
import {dAny} from "../../shared/domain-models/kockak";
|
import {dAny} from "../../shared/domain-models/kockak";
|
||||||
|
import {Varazslat} from "./varazslat";
|
||||||
|
|
||||||
export interface Karakter2E {
|
export interface Karakter2E {
|
||||||
id?: string,
|
id?: string,
|
||||||
@@ -24,7 +25,9 @@ export interface Karakter2E {
|
|||||||
tolvajKepzettsegek?: KepzettsegId[]
|
tolvajKepzettsegek?: KepzettsegId[]
|
||||||
szint: number,
|
szint: number,
|
||||||
felszereles: KarakterFelszereles,
|
felszereles: KarakterFelszereles,
|
||||||
szintlepesek: Szintlepes[]
|
szintlepesek: Szintlepes[],
|
||||||
|
ismertVarazslatok: Varazslat[],
|
||||||
|
memorizaltVarazslatok: Varazslat[],
|
||||||
}
|
}
|
||||||
|
|
||||||
export const DefaultKarakter: Karakter2E = {
|
export const DefaultKarakter: Karakter2E = {
|
||||||
@@ -45,7 +48,9 @@ export const DefaultKarakter: Karakter2E = {
|
|||||||
szintlepesek: [{
|
szintlepesek: [{
|
||||||
osztaly: Osztaly2E.Tengeresz,
|
osztaly: Osztaly2E.Tengeresz,
|
||||||
HProll: 10,
|
HProll: 10,
|
||||||
}]
|
}],
|
||||||
|
ismertVarazslatok: [],
|
||||||
|
memorizaltVarazslatok: []
|
||||||
}
|
}
|
||||||
|
|
||||||
function setOsztalyForSzintLepes(szintlepesek: Szintlepes[], osztaly: Osztaly2E, szint: number): Szintlepes[] {
|
function setOsztalyForSzintLepes(szintlepesek: Szintlepes[], osztaly: Osztaly2E, szint: number): Szintlepes[] {
|
||||||
|
|||||||
@@ -0,0 +1,72 @@
|
|||||||
|
import {Osztaly2E} from "./osztaly2E";
|
||||||
|
import spells from "../data/spells.json";
|
||||||
|
|
||||||
|
export interface Cantrip {
|
||||||
|
szint: 0,
|
||||||
|
id: string,
|
||||||
|
nev: string,
|
||||||
|
leiras: string,
|
||||||
|
megfordithato: boolean,
|
||||||
|
variabilis: boolean,
|
||||||
|
komponens?: string,
|
||||||
|
opcionalis_komponens?: string,
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface MagasabbSzintuVarazslat {
|
||||||
|
szint: 1 | 2 | 3 | 4 | 5,
|
||||||
|
id: string,
|
||||||
|
d100_start: number,
|
||||||
|
d100_end: number,
|
||||||
|
nev: string,
|
||||||
|
leiras: string,
|
||||||
|
megfordithato: boolean,
|
||||||
|
variabilis: boolean,
|
||||||
|
komponens?: string,
|
||||||
|
opcionalis_komponens?: string,
|
||||||
|
}
|
||||||
|
|
||||||
|
export type Varazslat = Cantrip | MagasabbSzintuVarazslat;
|
||||||
|
|
||||||
|
export interface OsztalyCantrip extends Cantrip {
|
||||||
|
Osztaly2E: Osztaly2E
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface OsztalySzintVarazslat extends MagasabbSzintuVarazslat {
|
||||||
|
Osztaly2E: Osztaly2E
|
||||||
|
}
|
||||||
|
|
||||||
|
export type OsztalyVarazslat = OsztalyCantrip | OsztalySzintVarazslat;
|
||||||
|
|
||||||
|
export function GetCantrips(osztaly: Osztaly2E): Cantrip[] {
|
||||||
|
switch (osztaly) {
|
||||||
|
case Osztaly2E.Pap:
|
||||||
|
return spells.pap.tomor.filter(x => x.szint === 0).map(x => x as Cantrip)
|
||||||
|
case Osztaly2E.Dalnok:
|
||||||
|
return spells.dalnok.tomor.filter(x => x.szint === 0).map(x => x as Cantrip)
|
||||||
|
case Osztaly2E.Druida:
|
||||||
|
return spells.druida.tomor.filter(x => x.szint === 0).map(x => x as Cantrip)
|
||||||
|
case Osztaly2E.Varazslo:
|
||||||
|
return spells.varazslo.tomor.filter(x => x.szint === 0).map(x => x as Cantrip)
|
||||||
|
case Osztaly2E.Illuzionista:
|
||||||
|
return spells.illuzionista.tomor.filter(x => x.szint === 0).map(x => x as Cantrip)
|
||||||
|
default:
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export function GetLeveledSpells(osztaly: Osztaly2E): MagasabbSzintuVarazslat[] {
|
||||||
|
switch (osztaly) {
|
||||||
|
case Osztaly2E.Pap:
|
||||||
|
return spells.pap.tomor.filter(x => x.szint > 0).map(x => x as MagasabbSzintuVarazslat)
|
||||||
|
case Osztaly2E.Dalnok:
|
||||||
|
return spells.dalnok.tomor.filter(x => x.szint > 0).map(x => x as MagasabbSzintuVarazslat)
|
||||||
|
case Osztaly2E.Druida:
|
||||||
|
return spells.druida.tomor.filter(x => x.szint > 0).map(x => x as MagasabbSzintuVarazslat)
|
||||||
|
case Osztaly2E.Varazslo:
|
||||||
|
return spells.varazslo.tomor.filter(x => x.szint > 0).map(x => x as MagasabbSzintuVarazslat)
|
||||||
|
case Osztaly2E.Illuzionista:
|
||||||
|
return spells.illuzionista.tomor.filter(x => x.szint > 0).map(x => x as MagasabbSzintuVarazslat)
|
||||||
|
default:
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user