classpublicPriority 3
ForceKnockback
com.hypixel.hytale.server.core.modules.interaction.interaction.config.server.combat.ForceKnockback
extends Knockback
2
Methods
2
Public Methods
1
Fields
1
Constructors
Constants
BuilderCodec<ForceKnockback>CODEC= BuilderCodec.builder(ForceKnockback.class, ForceKnockback::new, Knockback.BASE_CODEC)
.appe...
Constructors
public
ForceKnockback()Methods
Public Methods (2)
public
Vector3d calculateVector(Vector3d source, float yaw, Vector3d target)@Nonnull@Override
public
String toString()@Nonnull@Override
Fields
Private/Package Fields (1)
private
Vector3d directionInheritance
Parent
Current
Interface
Child
Use mouse wheel to zoom, drag to pan. Click nodes to navigate.
Related Classes
Source Code
package com.hypixel.hytale.server.core.modules.interaction.interaction.config.server.combat;
import com.hypixel.hytale.codec.KeyedCodec;
import com.hypixel.hytale.codec.builder.BuilderCodec;
import com.hypixel.hytale.codec.validation.Validators;
import com.hypixel.hytale.math.vector.Vector3d;
import javax.annotation.Nonnull;
public class ForceKnockback extends Knockback {
public static final BuilderCodec<ForceKnockback> CODEC = BuilderCodec.builder(ForceKnockback.class, ForceKnockback::new, Knockback.BASE_CODEC)
.appendInherited(new KeyedCodec<>("Direction", Vector3d.CODEC), (o, i) -> o.direction = i, o -> o.direction, (o, p) -> o.direction = p.direction)
.addValidator(Validators.nonNull())
.add()
.afterDecode(i -> i.direction.normalize())
.build();
private Vector3d direction = Vector3d.UP;
public ForceKnockback() {
}
@Nonnull
@Override
public Vector3d calculateVector(Vector3d source, float yaw, Vector3d target) {
Vector3d vel = this.direction.clone();
vel.rotateY(yaw);
vel.scale((double)this.force);
return vel;
}
@Nonnull
@Override
public String toString() {
return "ForceKnockback{direction=" + this.direction + "} " + super.toString();
}
}