feat: napi memorizalt varazslatok es varazslat mento NF
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"varazslatok": [
|
||||
[3,1],
|
||||
[4,2],
|
||||
[4,2,1],
|
||||
[5,3,2],
|
||||
[5,3,2,1],
|
||||
[5,3,2,2],
|
||||
[6,4,3,2,1],
|
||||
[6,4,3,3,2],
|
||||
[6,4,4,3,2,1],
|
||||
[6,4,4,3,3,2],
|
||||
[7,5,4,4,3,2],
|
||||
[7,5,4,4,3,3],
|
||||
[7,5,5,4,4,3],
|
||||
[7,5,5,4,4,3],
|
||||
[7,5,5,5,4,4],
|
||||
[8,6,5,5,4,4],
|
||||
[8,6,5,5,5,4],
|
||||
[8,6,6,5,5,4],
|
||||
[8,6,6,5,5,5],
|
||||
[8,6,6,6,5,5]
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
import MemorizaltVarazslatTabla from "./memorizalt_varazslat_tabla.json";
|
||||
import {KarakterInputs} from "./karakter";
|
||||
import {Osztaly} from "./osztaly";
|
||||
import {Modifier} from "./tulajdonsag";
|
||||
|
||||
function isSpellcaster(osztaly: Osztaly): boolean {
|
||||
return osztaly === Osztaly.Pap || osztaly === Osztaly.Illuzionista || osztaly === Osztaly.Varazslo;
|
||||
}
|
||||
|
||||
function getMagicAbilityModifier(karakter: Pick<KarakterInputs, 'osztaly' | 'tulajdonsagok'>) : number {
|
||||
const magicAbility = karakter.osztaly === Osztaly.Pap ? karakter.tulajdonsagok.t_bol : karakter.tulajdonsagok.t_int
|
||||
return Modifier(magicAbility)
|
||||
}
|
||||
|
||||
export function NapiVarazslatok(karakter: Pick<KarakterInputs, 'szint' | 'osztaly' | 'tulajdonsagok'>) : number[] {
|
||||
if (!isSpellcaster(karakter.osztaly)) {
|
||||
return []
|
||||
}
|
||||
const magicAbilityModifier = getMagicAbilityModifier(karakter)
|
||||
const response = [...MemorizaltVarazslatTabla.varazslatok[karakter.szint-1]]
|
||||
for (let i = 1; i <= magicAbilityModifier && i < response.length; i++){
|
||||
response[i] += 1
|
||||
}
|
||||
return response
|
||||
}
|
||||
|
||||
export function CalculateVarazslatMentokNF(karakter: Pick<KarakterInputs, 'osztaly' | 'tulajdonsagok'>): number[] {
|
||||
if (!isSpellcaster(karakter.osztaly)) {
|
||||
return []
|
||||
}
|
||||
const magicAbilityModifier = getMagicAbilityModifier(karakter)
|
||||
const response = []
|
||||
for (let spellLevel = 0; spellLevel < 6; spellLevel++){
|
||||
const NF = 10 + spellLevel + magicAbilityModifier
|
||||
response.push(NF)
|
||||
}
|
||||
return response
|
||||
}
|
||||
Reference in New Issue
Block a user