mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Revert some changes
This commit is contained in:
parent
559d5ca804
commit
3d2dcbf894
@ -152,7 +152,6 @@ pub enum BuffEffect {
|
|||||||
rate: f32,
|
rate: f32,
|
||||||
accumulated: f32,
|
accumulated: f32,
|
||||||
kind: ModifierKind,
|
kind: ModifierKind,
|
||||||
// TODO: Change hud/mod.rs to account for over time changes???
|
|
||||||
instance: u64,
|
instance: u64,
|
||||||
},
|
},
|
||||||
/// Periodically consume entity energy
|
/// Periodically consume entity energy
|
||||||
|
@ -26,7 +26,7 @@ pub struct HealthChange {
|
|||||||
pub time: Time,
|
pub time: Time,
|
||||||
/// The crit multiplier (None if it isn't a crit)
|
/// The crit multiplier (None if it isn't a crit)
|
||||||
pub crit_mult: Option<f32>,
|
pub crit_mult: Option<f32>,
|
||||||
/// A random ID, used to group up health changes
|
/// A random ID, used to group up health changes from the same attack
|
||||||
pub instance: u64,
|
pub instance: u64,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
use crate::{combat::DamageContributor, comp, uid::Uid, DamageSource};
|
use crate::{combat::DamageContributor, comp, uid::Uid};
|
||||||
use comp::{beam, item::Reagent, poise::PoiseState, skillset::SkillGroupKind, UtteranceKind};
|
use comp::{beam, item::Reagent, poise::PoiseState, skillset::SkillGroupKind, UtteranceKind};
|
||||||
use hashbrown::HashSet;
|
use hashbrown::HashSet;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
@ -11,7 +11,6 @@ pub struct DamageInfo {
|
|||||||
pub target: Uid,
|
pub target: Uid,
|
||||||
pub by: Option<DamageContributor>,
|
pub by: Option<DamageContributor>,
|
||||||
pub instance: u64,
|
pub instance: u64,
|
||||||
pub cause: Option<DamageSource>,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// An outcome represents the final result of an instantaneous event. It implies
|
/// An outcome represents the final result of an instantaneous event. It implies
|
||||||
|
@ -86,7 +86,6 @@ pub fn handle_health_change(server: &Server, entity: EcsEntity, change: HealthCh
|
|||||||
target: *uid,
|
target: *uid,
|
||||||
crit_mult: change.crit_mult,
|
crit_mult: change.crit_mult,
|
||||||
instance: change.instance,
|
instance: change.instance,
|
||||||
cause: change.cause,
|
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -1412,18 +1412,12 @@ impl Hud {
|
|||||||
.filter(|fl| !fl.floaters.is_empty()),
|
.filter(|fl| !fl.floaters.is_empty()),
|
||||||
healths.get(me),
|
healths.get(me),
|
||||||
) {
|
) {
|
||||||
// TODO: Change both font_col closures to account for healing
|
let player_font_col = |crit: bool| {
|
||||||
let player_font_col = |hp_damage: f32, crit: bool| {
|
if crit {
|
||||||
if hp_damage < 0.0 {
|
// TODO: Temporary color for crits
|
||||||
if crit {
|
Rgb::new(1.0, 0.9, 0.0)
|
||||||
// TODO: Temporary color for crits
|
|
||||||
Rgb::new(1.0, 0.9, 0.0)
|
|
||||||
} else {
|
|
||||||
Rgb::new(1.0, 0.1, 0.0)
|
|
||||||
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
Rgb::new(0.1, 1.0, 0.1)
|
Rgb::new(1.0, 0.1, 0.0)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
if global_state.settings.interface.sct_player_batch {
|
if global_state.settings.interface.sct_player_batch {
|
||||||
@ -1488,7 +1482,7 @@ impl Hud {
|
|||||||
} else {
|
} else {
|
||||||
0
|
0
|
||||||
};
|
};
|
||||||
let font_col = player_font_col(hp_damage, crit);
|
let font_col = player_font_col(crit);
|
||||||
// Timer sets the widget offset
|
// Timer sets the widget offset
|
||||||
let y = timer as f64 * number_speed * -1.0;
|
let y = timer as f64 * number_speed * -1.0;
|
||||||
// Timer sets text transparency
|
// Timer sets text transparency
|
||||||
@ -1497,21 +1491,13 @@ impl Hud {
|
|||||||
Text::new(&hp_dmg_text)
|
Text::new(&hp_dmg_text)
|
||||||
.font_size(font_size)
|
.font_size(font_size)
|
||||||
.font_id(self.fonts.cyri.conrod_id)
|
.font_id(self.fonts.cyri.conrod_id)
|
||||||
.color(if hp_damage < 0.0 {
|
.color(Color::Rgba(0.0, 0.0, 0.0, hp_fade))
|
||||||
Color::Rgba(0.0, 0.0, 0.0, hp_fade)
|
|
||||||
} else {
|
|
||||||
Color::Rgba(0.0, 0.0, 0.0, 0.0)
|
|
||||||
})
|
|
||||||
.mid_bottom_with_margin_on(ui_widgets.window, 297.0 + y)
|
.mid_bottom_with_margin_on(ui_widgets.window, 297.0 + y)
|
||||||
.set(player_sct_bg_id, ui_widgets);
|
.set(player_sct_bg_id, ui_widgets);
|
||||||
Text::new(&hp_dmg_text)
|
Text::new(&hp_dmg_text)
|
||||||
.font_size(font_size)
|
.font_size(font_size)
|
||||||
.font_id(self.fonts.cyri.conrod_id)
|
.font_id(self.fonts.cyri.conrod_id)
|
||||||
.color(if hp_damage < 0.0 {
|
.color(Color::Rgba(font_col.r, font_col.g, font_col.b, hp_fade))
|
||||||
Color::Rgba(font_col.r, font_col.g, font_col.b, hp_fade)
|
|
||||||
} else {
|
|
||||||
Color::Rgba(0.0, 0.0, 0.0, 0.0)
|
|
||||||
})
|
|
||||||
.mid_bottom_with_margin_on(ui_widgets.window, 300.0 + y)
|
.mid_bottom_with_margin_on(ui_widgets.window, 300.0 + y)
|
||||||
.set(player_sct_id, ui_widgets);
|
.set(player_sct_id, ui_widgets);
|
||||||
}
|
}
|
||||||
@ -1548,7 +1534,7 @@ impl Hud {
|
|||||||
};
|
};
|
||||||
let crit = floater.info.crit_mult.is_some();
|
let crit = floater.info.crit_mult.is_some();
|
||||||
let crit_mult = floater.info.crit_mult.unwrap_or(1.0);
|
let crit_mult = floater.info.crit_mult.unwrap_or(1.0);
|
||||||
|
|
||||||
// Timer sets text transparency
|
// Timer sets text transparency
|
||||||
let hp_fade = ((crate::ecs::sys::floater::MY_HP_SHOWTIME - floater.timer)
|
let hp_fade = ((crate::ecs::sys::floater::MY_HP_SHOWTIME - floater.timer)
|
||||||
* 0.25)
|
* 0.25)
|
||||||
@ -1573,7 +1559,7 @@ impl Hud {
|
|||||||
} else {
|
} else {
|
||||||
0
|
0
|
||||||
};
|
};
|
||||||
let font_col = player_font_col(floater.info.amount, crit);
|
let font_col = player_font_col(crit);
|
||||||
// Timer sets the widget offset
|
// Timer sets the widget offset
|
||||||
let y = if floater.info.amount < 0.0 {
|
let y = if floater.info.amount < 0.0 {
|
||||||
floater.timer as f64
|
floater.timer as f64
|
||||||
@ -1606,7 +1592,11 @@ impl Hud {
|
|||||||
Text::new(&hp_dmg_text)
|
Text::new(&hp_dmg_text)
|
||||||
.font_size(font_size)
|
.font_size(font_size)
|
||||||
.font_id(self.fonts.cyri.conrod_id)
|
.font_id(self.fonts.cyri.conrod_id)
|
||||||
.color(Color::Rgba(font_col.r, font_col.g, font_col.b, hp_fade))
|
.color(if floater.info.amount < 0.0 {
|
||||||
|
Color::Rgba(font_col.r, font_col.g, font_col.b, hp_fade)
|
||||||
|
} else {
|
||||||
|
Color::Rgba(0.1, 1.0, 0.1, hp_fade)
|
||||||
|
})
|
||||||
.x_y(x, y)
|
.x_y(x, y)
|
||||||
.set(player_sct_id, ui_widgets);
|
.set(player_sct_id, ui_widgets);
|
||||||
}
|
}
|
||||||
@ -2232,7 +2222,6 @@ impl Hud {
|
|||||||
let floaters = &hpfl.floaters;
|
let floaters = &hpfl.floaters;
|
||||||
|
|
||||||
// Colors
|
// Colors
|
||||||
// TODO: Maybe make an array of colors for crits too?
|
|
||||||
const WHITE: Rgb<f32> = Rgb::new(1.0, 0.9, 0.8);
|
const WHITE: Rgb<f32> = Rgb::new(1.0, 0.9, 0.8);
|
||||||
const LIGHT_OR: Rgb<f32> = Rgb::new(1.0, 0.925, 0.749);
|
const LIGHT_OR: Rgb<f32> = Rgb::new(1.0, 0.925, 0.749);
|
||||||
const LIGHT_MED_OR: Rgb<f32> = Rgb::new(1.0, 0.85, 0.498);
|
const LIGHT_MED_OR: Rgb<f32> = Rgb::new(1.0, 0.85, 0.498);
|
||||||
@ -2249,18 +2238,12 @@ impl Hud {
|
|||||||
];
|
];
|
||||||
// Largest value that select the first color is 40, then it shifts colors
|
// Largest value that select the first color is 40, then it shifts colors
|
||||||
// every 5
|
// every 5
|
||||||
// TODO: Change to account for healing/damage here; handle different DamageSources differently???
|
let font_col = |font_size: u32, crit: bool| {
|
||||||
// TODO: Change both font_col closures to account for healing
|
if crit {
|
||||||
let font_col = |hp_damage: f32, font_size: u32, crit: bool| {
|
// TODO: Temporary color for crits
|
||||||
if hp_damage < 0.0 {
|
Rgb::new(1.0, 0.9, 0.0)
|
||||||
if crit {
|
|
||||||
// TODO: Temporary color for crits
|
|
||||||
Rgb::new(1.0, 0.9, 0.0)
|
|
||||||
} else {
|
|
||||||
DAMAGE_COLORS[(font_size.saturating_sub(36) / 5).min(5) as usize]
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
Rgb::new(0.1, 1.0, 0.1)
|
DAMAGE_COLORS[(font_size.saturating_sub(36) / 5).min(5) as usize]
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -2319,7 +2302,7 @@ impl Hud {
|
|||||||
} else {
|
} else {
|
||||||
0
|
0
|
||||||
};
|
};
|
||||||
let font_col = font_col(hp_damage, font_size, crit);
|
let font_col = font_col(font_size, crit);
|
||||||
// Timer sets the widget offset
|
// Timer sets the widget offset
|
||||||
let y = (timer as f64 / crate::ecs::sys::floater::HP_SHOWTIME as f64
|
let y = (timer as f64 / crate::ecs::sys::floater::HP_SHOWTIME as f64
|
||||||
* number_speed)
|
* number_speed)
|
||||||
@ -2338,7 +2321,11 @@ impl Hud {
|
|||||||
.font_size(font_size)
|
.font_size(font_size)
|
||||||
.font_id(self.fonts.cyri.conrod_id)
|
.font_id(self.fonts.cyri.conrod_id)
|
||||||
.x_y(0.0, y)
|
.x_y(0.0, y)
|
||||||
.color(Color::Rgba(font_col.r, font_col.g, font_col.b, fade))
|
.color(if hp_damage < 0.0 {
|
||||||
|
Color::Rgba(font_col.r, font_col.g, font_col.b, fade)
|
||||||
|
} else {
|
||||||
|
Color::Rgba(0.1, 1.0, 0.1, fade)
|
||||||
|
})
|
||||||
.position_ingame(ingame_pos)
|
.position_ingame(ingame_pos)
|
||||||
.set(sct_id, ui_widgets);
|
.set(sct_id, ui_widgets);
|
||||||
}
|
}
|
||||||
@ -2391,9 +2378,8 @@ impl Hud {
|
|||||||
} else {
|
} else {
|
||||||
0
|
0
|
||||||
};
|
};
|
||||||
let font_col = font_col(floater.info.amount, font_size, crit);
|
let font_col = font_col(font_size, crit);
|
||||||
// Timer sets the widget offset
|
// Timer sets the widget offset
|
||||||
// TODO: Keep working on this
|
|
||||||
let y = if crit {
|
let y = if crit {
|
||||||
ui_widgets.win_h * (floater.rand as f64 % 0.1)
|
ui_widgets.win_h * (floater.rand as f64 % 0.1)
|
||||||
+ ui_widgets.win_h * 0.05
|
+ ui_widgets.win_h * 0.05
|
||||||
|
Loading…
Reference in New Issue
Block a user