KeyboardInput.java
net.minecraft.client.player.KeyboardInput
信息
- 全限定名:net.minecraft.client.player.KeyboardInput
- 类型:public class
- 包:net.minecraft.client.player
- 源码路径:src/main/java/net/minecraft/client/player/KeyboardInput.java
- 起始行号:L10
- 继承:ClientInput
- 职责:
TODO
字段/常量
options- 类型:
Options - 修饰符:
private final - 源码定位:
L11 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public KeyboardInput(Options options) @ L13
- 构造器名:KeyboardInput
- 源码定位:L13
- 修饰符:public
参数:
- options: Options
说明:
TODO
方法
下面的方法块按源码顺序生成。
private static float calculateImpulse(boolean positive, boolean negative) @ L17
- 方法名:calculateImpulse
- 源码定位:L17
- 返回类型:float
- 修饰符:private static
参数:
- positive: boolean
- negative: boolean
说明:
TODO
public void tick() @ L25
- 方法名:tick
- 源码定位:L25
- 返回类型:void
- 修饰符:public
参数:
- 无
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public class KeyboardInput extends ClientInput {
private final Options options;
public KeyboardInput(Options options) {
this.options = options;
}
private static float calculateImpulse(boolean positive, boolean negative) {
if (positive == negative) {
return 0.0F;
} else {
return positive ? 1.0F : -1.0F;
}
}
@Override
public void tick() {
this.keyPresses = new Input(
this.options.keyUp.isDown(),
this.options.keyDown.isDown(),
this.options.keyLeft.isDown(),
this.options.keyRight.isDown(),
this.options.keyJump.isDown(),
this.options.keyShift.isDown(),
this.options.keySprint.isDown()
);
float forwardImpulse = calculateImpulse(this.keyPresses.forward(), this.keyPresses.backward());
float leftImpulse = calculateImpulse(this.keyPresses.left(), this.keyPresses.right());
this.moveVector = new Vec2(leftImpulse, forwardImpulse).normalized();
}
}引用的其他类
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
继承
- 引用位置:
-
- 引用位置:
构造调用 - 关联成员:
Input()
- 引用位置:
-
- 引用位置:
构造调用 - 关联成员:
Vec2()
- 引用位置: