New to Javascript, need help

Im trying to make a pokemon like game, i cant do the stat equations right.

Equation
image

My attempt

mySprite = sprites.create(assets.imageBulbasaur, SpriteKind.MyMon)

sprites.setDataNumber(mySprite, “Pokemon”, 1)

sprites.setDataNumber(mySprite, “Level”, 5)

sprites.setDataNumber(mySprite, “BaseHP”, 45)

sprites.setDataNumber(mySprite, “HP,IV”, randint(1, 31))

sprites.setDataNumber(mySprite, “HP,EV”, 0)

sprites.setDataNumber(mySprite, “BaseAttack”, 49)

sprites.setDataNumber(mySprite, “BaseDef”, 49)

sprites.setDataNumber(mySprite, “BaseSp.Atk”, 65)

sprites.setDataNumber(mySprite, “BaseSp.Def”, 65)

sprites.setDataNumber(mySprite, “BaseSpeed”, 45)

sprites.setDataNumber (mySprite, “HP”, 2 * (sprites.readDataNumber(mySprite, “BaseHP”) + (sprites.readDataNumber(mySprite, “HP,IV”) + ((sprites.readDataNumber(mySprite, “HP,EV”) / 4) * sprites.readDataNumber(mySprite, “Level”)) / 100 + sprites.readDataNumber(mySprite, “Level”) + 10)

game.splash(sprites.readDataNumber(mySprite, “HP”)))

Problems with brackets at start of second last sentence and end of last sentence.

2 Likes

Welcome, @KingOzy !

Those brackets in the equation are the floor function, which always rounds down to the nearest integer.

let hp = Math.floor(
    (2 * sprites.readDataNumber(mySprite, "BaseHP") +
        sprites.readDataNumber(mySprite, "HP,IV") +
        Math.floor(sprites.readDataNumber(mySprite, "HP,EV") / 4)
    ) *
    sprites.readDataNumber(mySprite, "Level") /
    100 +
    sprites.readDataNumber(mySprite, "Level") +
    10
)
sprites.setDataNumber (mySprite, “HP”, hp)
3 Likes