开发接口
提示
开发接口可在售后群下载,如果你是开发者,欢迎联系作者 15568820 进行交流咨询
API
kotlin
package me.yeezhi.combatview.api
object CombatAPI {
/**
* 伤害特效接口
*/
lateinit var DamageFxAPI: IDamageFxAPI
/**
* 战斗信息接口
*/
lateinit var CombatStatsAPI: ICombatStatsAPI
/**
* 组队接口
*/
lateinit var CombatTeamAPI: ICombatTeamAPI
/**
* 字体接口
*/
lateinit var FontAPI: IFontAPI
/**
* 临时属性接口
*/
lateinit var TempAttributeAPI: ITempAttributeAPI
/**
* 自动攻击接口
*/
lateinit var AutoAttackAPI: IAutoAttackAPI
}kotlin
package me.yeezhi.combatview.api
import org.bukkit.entity.Entity
import org.bukkit.entity.LivingEntity
import org.bukkit.entity.Player
interface IDamageFxAPI {
/**
* 发送伤害特效
* @param damager 攻击者
* @param entity 实体
* @param damage 伤害
*
*/
fun sendDamageFx(damager: Entity, entity: Entity, damage: Double)
/**
* 发送伤害特效
* @param damager 攻击者
* @param entity 实体
* @param text 内容
*/
fun sendDamageFx(damager: Entity, entity: Entity, text: String)
/**
* 发送伤害特效
* @param damager 攻击者
* @param entity 实体
* @param type 类型
* @param damage 伤害
*/
fun sendDamageFx(damager: Entity, entity: Entity, type: String, damage: Double)
/**
* 发送伤害特效
* @param damager 攻击者
* @param entity 实体
* @param text 内容
*/
fun sendDamageFx(damager: Entity, entity: Entity, type: String, text: String)
}kotlin
package me.yeezhi.combatview.api
import me.yeezhi.combatview.api.combatstats.CombatStats
import org.bukkit.entity.Entity
import org.bukkit.entity.Player
interface ICombatStatsAPI {
/**
* 记录一次攻击并更新统计
*/
fun recordAttack(attacker: Player, victim: Entity, damage: Double)
/**
* 获取玩家当前统计
*/
fun getStats(player: Player): CombatStats
/**
* 累加自定义字段数值
*/
fun addCustomStat(player: Player, key: String, delta: Double)
/**
* 获取自定义字段数值
*/
fun getCustomStat(player: Player, key: String): Double
/**
* 设置自定义字段数值
*/
fun setCustomStat(player: Player, key: String, value: Double)
/**
* 更新玩家战斗信息
*/
fun Player.updateCombatStatsData()
/**
* 更新玩家队伍战斗信息,一般不用手动调用
*/
fun Player.updateTeamStatsData()
fun Player.sendEmptyTeamStatsData()
}kotlin
package me.yeezhi.combatview.api
import me.yeezhi.combatview.api.entity.config.FontConfig
import org.bukkit.entity.Entity
import org.bukkit.entity.Player
interface IFontAPI {
/**
* 获取默认字体
*/
fun getDefaultFontConfig(): FontConfig
/**
* 获取玩家当前字体配置
*/
fun Entity.getFontConfig(): FontConfig
/**
* 获取玩家当前字体属性
*/
fun Player.getFontAttribute(): List<String>
/**
* 玩家切换字体
*/
fun Player.changeFont(fontId: String): FontConfig
/**
* 切换玩家字体开关
*/
fun Player.setFontEnabled(enable: Boolean): FontConfig
/**
* 获取玩家已拥有的字体列表(包含默认字体)
*/
fun Player.getFonts(): MutableSet<String>
/**
* 获取玩家字体开关状态
*/
fun Player.isFontEnabled(): Boolean
/**
* 根据类型与数值,返回映射后的伤害文本
*/
fun formatDamageText(fontConfig: FontConfig, type: String, damage: Double): String
}Event
提示
由于 YeePlugins 在 onEnable 阶段执行云端加载,若需注册监听,请在插件加载完成后通过循环检测再进行注册
暂无