This commit is contained in:
aozhiwei 2024-01-10 19:19:07 +08:00
parent c8ee64c367
commit 31ae2bceea

View File

@ -41,6 +41,7 @@ struct CalcDmgContext
int is_crit = 0;
int is_block = 0;
float crit_dmg = 0.0f;
int dmg_bp = 0;
};
static CalcDmgContext g_calc_dmg_context = {0};
@ -791,7 +792,6 @@ static float ProEffect(Creature* c, float p, float b){
float BattleDataContext::CalcDmg(Creature* target, IBullet* bullet)
{
g_calc_dmg_context = {0};
g_calc_dmg_context.is_crit = 0;
#ifdef MYDEBUG
std::vector<std::string> dbg_strings;
@ -829,6 +829,7 @@ float BattleDataContext::CalcDmg(Creature* target, IBullet* bullet)
E = ProEffect(owner_.Get(), X / vCritBon, vCritBon); //E >= 0
if (E > 0.00001f) {
vEbc = 1 + E;
g_calc_dmg_context.dmg_bp = mt::Param::GetCritEffect(E);
}
} else if (X < -0.00001f) {
//触发格挡 0,-1
@ -836,6 +837,7 @@ float BattleDataContext::CalcDmg(Creature* target, IBullet* bullet)
E = ProEffect(owner_.Get(), X / (-vBlock) , -vBlock); //E >= 0
if (E < 0.00001f) {
vEbc = 1 + E;
g_calc_dmg_context.dmg_bp = mt::Param::GetBlockEffect(E);
}
} else {
vEbc = 1.0f;
@ -1215,17 +1217,17 @@ float BattleDataContext::GetCritDmg()
int BattleDataContext::GetCritBp()
{
return 0;
return g_calc_dmg_context.dmg_bp;
}
int BattleDataContext::GetBlockBp()
{
return 0;
return g_calc_dmg_context.dmg_bp;
}
int BattleDataContext::GetDmgBp()
{
return 0;
return g_calc_dmg_context.dmg_bp;
}
int BattleDataContext::GetSkinId()