DashAPI 图标

DashAPI

作者:rebot | 分类:模组

价格:0 墨喵币 下载量:0 点赞:0 版本 1.1.0
本资源为搬运资源,原资源地址: https://modrinth.com/mod/dashapi
资源信息

Minecraft 版本: 1.20 1.20.1 1.20.2 1.20.3 1.20.4 1.20.5 1.20.6 1.21

平台: paper purpur spigot

标签: game-mechanics library

资源介绍

DashAPI

DashAPI adds "dash()": set the velocity of entities in terms of blocks instead of a vector.

[Github All Releases]()

Walkthrough

First, include DashAPI in your project. Then, add this as a dependency in your "plugin.yml" file.

depend: [DashAPI]

To get an instance of this API for use, define a "DashFunctions" object with "DashAPI.getInstance()":

DashAPI api;

@Override
public void onEnable() {
    api = DashAPI.getInstance();
}

Example #1 (base function):

@EventHandler
public void onClick(PlayerInteractEntityEvent event) {
    api.dash(event.getRightClicked(), 10, 10, -10);
}

When a player interacts with an entity, the entity will be dashed 10 blocks forward, 10 blocks up, and 10 blocks left on Minecraft's x, y, and z axes, respectively.

Example #2 (adjustments):

@EventHandler
public void onCrouch(PlayerToggleSneakEvent event) {
    api.dash(event.getPlayer(), 10, 100, 0, true, true, true);
}

When a player crouches or uncrouches, they will be dashed forward relative to their looking direction due to "adjustHorizontal" being true, and the player's current velocity will be added to the dash due to "additive" being true. Additionally, as the maximum number of blocks an entity can be dashed vertically is 60 (43 horizontally), the plugin reduces the value 100 to 60 and dashes the player up 60 blocks, assuming no gravity (ex. player in flight). Finally, because "adjustVertical" is set to true, the player's looking up or down affects the y of the dash.

Example #3 (int and Double inputs):

@EventHandler
public void bounceClick(PlayerInteractEntityEvent event) {
    api.dash(event.getPlayer(), 0, event.getPlayer().getLocation().getDirection().getY() * -4, 0);
}

Int values for block distance and Double values for velocity can be used in any combination, and in this example it is (int, Double, int). In this example, when a player interacts with an entity, the y value of that player's looking direction is multiplied by -4, which means that if a player looks down to click an entity, they will be dashed with a high positive y velocity.

Example #4 (multipliers):

@EventHandler
public void pushAndPull(PlayerInteractEntityEvent event) {
    api.dash(event.getRightClicked(), event.getPlayer().getLocation().getDirection());
    api.dash(event.getPlayer(), event.getRightClicked().getVelocity(), 0.5, 0.5, 0.5);
}

The first dash is applied to the entity interacted by the player, based off of the direction the player is facing, creating a knockback effect. The second dash is applied to the player, based off of the velocity of the clicked entity, creating a pull effect. Additionally, the pull effect is halved with the x, y, and z multiplers, meaning that, if repeated, the interacted entity will eventually be too far away for the player to interact with.

下载太慢?试试 墨喵加速站,支持 Modrinth 和外网直链高速下载! 用的人越多,下载的越快!
下载与版本
评论(0)
登录 后发表评论。

暂无评论,抢个沙发吧~

举报此资源

请登录后举报

🔥 相关推荐
ZeroContact

价格:0 墨喵币
下载量:0

查看详情
Proximity Optimized Vanilla

价格:0 墨喵币
下载量:0

查看详情
Lanse's Combined Challenges

价格:0 墨喵币
下载量:0

查看详情
Minato's Flying Raijin X Ender Pearl

价格:0 墨喵币
下载量:0

查看详情