mirror of
https://github.com/morbalint/kemkas.git
synced 2026-07-18 11:23:47 +00:00
refactoring in progress checkpoint reached
goal: remove class by breaking it up into smaller functions
This commit is contained in:
@@ -1,3 +1,6 @@
|
||||
import {Osztaly} from "./osztaly";
|
||||
import {KarakterTulajdonsagok} from "./tulajdonsag";
|
||||
|
||||
export interface Mentok {
|
||||
kitartas: number
|
||||
reflex: number
|
||||
@@ -6,19 +9,14 @@ export interface Mentok {
|
||||
export type MentoTipus = keyof Mentok
|
||||
|
||||
export function MentoTipusLabel(tipus: MentoTipus): string {
|
||||
let label: string | null = null
|
||||
switch (tipus) {
|
||||
case "akaratero":
|
||||
label = "Akaraterő";
|
||||
break;
|
||||
return "Akaraterő";
|
||||
case "kitartas":
|
||||
label = "Kitartás";
|
||||
break;
|
||||
return "Kitartás";
|
||||
case "reflex":
|
||||
label = "Reflex";
|
||||
break;
|
||||
return "Reflex";
|
||||
}
|
||||
return label
|
||||
}
|
||||
|
||||
export function ElsodlegesMento(szint: number): number {
|
||||
@@ -27,4 +25,45 @@ export function ElsodlegesMento(szint: number): number {
|
||||
|
||||
export function MasodlagosMento(szint: number): number {
|
||||
return Math.floor(szint / 3)
|
||||
}
|
||||
|
||||
export function ElsodlegesMentok(osztaly: Osztaly) : MentoTipus[] {
|
||||
let t: MentoTipus[] = []
|
||||
switch (osztaly){
|
||||
case Osztaly.Barbar:
|
||||
case Osztaly.Amazon:
|
||||
case Osztaly.Ijasz:
|
||||
case Osztaly.Kaloz:
|
||||
case Osztaly.Harcos:
|
||||
t = ['kitartas'];
|
||||
break;
|
||||
case Osztaly.Pap:
|
||||
t = ['kitartas', 'akaratero'];
|
||||
break;
|
||||
case Osztaly.Tolvaj:
|
||||
t = ['reflex'];
|
||||
break;
|
||||
case Osztaly.Varazslo:
|
||||
case Osztaly.Illuzionista:
|
||||
t = ['akaratero']
|
||||
break;
|
||||
}
|
||||
return t
|
||||
}
|
||||
|
||||
export function MentokAlap(osztaly: Osztaly, szint: number = 1) {
|
||||
const elsodlegesek = ElsodlegesMentok(osztaly)
|
||||
return {
|
||||
kitartas: elsodlegesek.includes('kitartas') ? ElsodlegesMento(szint) : MasodlagosMento(szint),
|
||||
reflex: elsodlegesek.includes('reflex') ? ElsodlegesMento(szint) : MasodlagosMento(szint),
|
||||
akaratero: elsodlegesek.includes('akaratero') ? ElsodlegesMento(szint) : MasodlagosMento(szint),
|
||||
}
|
||||
}
|
||||
|
||||
export function MentoModositok(tulajdonsagModositok: KarakterTulajdonsagok) {
|
||||
return {
|
||||
kitartas: tulajdonsagModositok.t_egs,
|
||||
reflex: tulajdonsagModositok.t_ugy,
|
||||
akaratero: tulajdonsagModositok.t_bol,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user