Update characters' speed

This commit is contained in:
2022-08-23 14:54:01 +02:00
parent 933608b753
commit 329e8a18c5
6 changed files with 19 additions and 13 deletions

View File

@@ -76,7 +76,9 @@ public abstract class Creature extends NamedCharacter {
}
protected void die() {
if(isMoving()) {
abortMove();
}
}
public abstract String getName();

View File

@@ -7,11 +7,12 @@ import com.bartlomiejpluta.base.api.entity.Entity;
import com.bartlomiejpluta.base.api.character.Character;
import com.bartlomiejpluta.base.api.ai.AI;
import com.bartlomiejpluta.base.api.ai.NPC;
import com.bartlomiejpluta.base.api.move.MoveEvent;
import com.bartlomiejpluta.base.api.move.*;
import com.bartlomiejpluta.base.lib.ai.*;
import com.bartlomiejpluta.base.lib.animation.*;
import com.bartlomiejpluta.base.util.random.DiceRoller;
import com.bartlomiejpluta.base.util.path.*;
import com.bartlomiejpluta.demo.runner.DemoRunner;
import com.bartlomiejpluta.demo.world.weapon.*;
@@ -44,8 +45,9 @@ public class Enemy extends Creature implements NPC {
name = template.getName();
maxHp = DiceRoller.of(template.getHp()).roll();
hp = maxHp;
setSpeed(template.getSpeed());
setAnimationSpeed(template.getAnimationSpeed());
var speed = DiceRoller.of(template.getSpeed()).roll()/10f;
setSpeed(speed);
setAnimationSpeed(speed/2.0f);
setBlocking(template.isBlocking());
var runner = (DemoRunner) context.getGameRunner();
var meleeWeaponTemplate = template.getMeleeWeapon();

View File

@@ -10,6 +10,7 @@ import com.bartlomiejpluta.base.api.move.Direction;
import com.bartlomiejpluta.base.api.screen.Screen;
import com.bartlomiejpluta.base.api.camera.Camera;
import com.bartlomiejpluta.base.api.input.*;
import com.bartlomiejpluta.base.api.icon.Icon;
import com.bartlomiejpluta.base.lib.camera.*;

View File

@@ -75,11 +75,11 @@ public class DemoRunner implements GameRunner {
private void resetPlayer() {
this.player.changeCharacterSet(A.charsets.luna.uid);
this.player.setScale(1.0f);
this.player.setSpeed(0.07f);
this.player.setAnimationSpeed(0.005f);
this.player.setScale(1f);
this.player.setSpeed(4f);
this.player.setAnimationSpeed(2f);
this.player.setBlocking(true);
this.player.setCoordinates(0, 11);
this.player.setCoordinates(14, 11);
this.player.setWeapon(new RangedWeapon("wooden_bow"));
}

View File

@@ -34,12 +34,13 @@ public class MeleeWeapon implements Weapon {
this.name = template.getName();
this.roller = DiceRoller.of(template.getDamage());
this.cooldown = template.getCooldown();
this.animation = new RandomAnimationsRunner(5)
this.animation = new RandomAnimationsRunner(2)
.nRange(0, 2f)
.nScale(0.2f, 0.15f)
.uAnimationSpeed(0.01f, 0.05f)
.uAnimationSpeed(0.5f, 1f)
.nRotation(0, 10)
.offset(0, -10)
.uDelay(0, 500)
.uDelay(250, 500)
.with(A.animations.get(template.getAnimation()).uid);
this.sound = A.sounds.get(template.getSound()).uid;
}

View File

@@ -47,8 +47,8 @@ public class RangedWeapon implements Weapon {
.offset(0, -15)
.onHit(this::onHit)
.onMiss(this::onMiss)
.speed(0.25f)
.animationSpeed(0.07f)
.speed(7f)
.animationSpeed(4f)
.scale(0.6f);
this.sound = A.sounds.get(template.getSound()).uid;
this.punchAnimation = new SimpleAnimationRunner(A.animations.get(template.getPunchAnimation()).uid);