Merge branch 'pfau/small_fixes' into 'master'

UI fixes, assets update

See merge request veloren/veloren!1280
This commit is contained in:
Monty Marz 2020-08-12 18:10:18 +00:00
commit 5e6dc04714
30 changed files with 170 additions and 81 deletions

View File

@ -0,0 +1,12 @@
Item(
name: "Purple Admin Cape",
description: "Where did I put my banhammer again?",
kind: Armor(
(
kind: Back("DungPurp0"),
stats: (
protection: Invincible,
),
)
),
)

View File

@ -0,0 +1,13 @@
Item(
name: "Magical Cultist Warhammer",
description: "This belonged to an evil Cult Leader.",
kind: Tool(
(
kind: Hammer("CultPurp0"),
stats: (
equip_time_millis: 500,
power: 2.00,
),
)
),
)

View File

@ -9,6 +9,13 @@
length: 629.0, length: 629.0,
timing: Some(Day), timing: Some(Day),
artist: "https://www.youtube.com/watch?v=FwVTkB-BIvM", artist: "https://www.youtube.com/watch?v=FwVTkB-BIvM",
),
(
title: "A Solemn Quest Day",
path: "voxygen.audio.ambient.a_solemn_quest",
length: 206.0,
timing: Some(Day),
artist: "Eden",
), ),
( (
title: "Into The Dark Forest", title: "Into The Dark Forest",

BIN
assets/voxygen/audio/soundtrack/a_solemn_quest.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/background/bg_9.png (Stored with Git LFS)

Binary file not shown.

BIN
assets/voxygen/background/bg_main.png (Stored with Git LFS)

Binary file not shown.

BIN
assets/voxygen/element/help.png (Stored with Git LFS)

Binary file not shown.

View File

@ -384,7 +384,7 @@ magischen Gegenstände ergattern?"#,
"gameinput.wallleap": "Wandsprung", "gameinput.wallleap": "Wandsprung",
"gameinput.togglelantern": "Laterne ein-/ausschalten", "gameinput.togglelantern": "Laterne ein-/ausschalten",
"gameinput.mount": "Aufsteigen", "gameinput.mount": "Aufsteigen",
"gameinput.enter": "Betreten", "gameinput.chat": "Chat",
"gameinput.command": "Befehl", "gameinput.command": "Befehl",
"gameinput.escape": "Escape", "gameinput.escape": "Escape",
"gameinput.map": "Karte", "gameinput.map": "Karte",
@ -403,6 +403,10 @@ magischen Gegenstände ergattern?"#,
"gameinput.declinegroupinvite": "Ablehnen", "gameinput.declinegroupinvite": "Ablehnen",
"gameinput.acceptgroupinvite": "Annehmen", "gameinput.acceptgroupinvite": "Annehmen",
"gameinput.select": "Auswählen", "gameinput.select": "Auswählen",
"gameinput.crafting": "Crafting",
"gameinput.sneak": "Schleichen",
"gameinput.swimdown": "Abwärts Tauchen",
"gameinput.swimup": "Aufwärts Schwimmen",
/// End GameInput section /// End GameInput section

View File

@ -385,7 +385,7 @@ magically infused items?"#,
"gameinput.wallleap": "Wall Leap", "gameinput.wallleap": "Wall Leap",
"gameinput.togglelantern": "Toggle Lantern", "gameinput.togglelantern": "Toggle Lantern",
"gameinput.mount": "Mount", "gameinput.mount": "Mount",
"gameinput.enter": "Enter", "gameinput.chat": "Chat",
"gameinput.command": "Command", "gameinput.command": "Command",
"gameinput.escape": "Escape", "gameinput.escape": "Escape",
"gameinput.map": "Map", "gameinput.map": "Map",
@ -404,6 +404,10 @@ magically infused items?"#,
"gameinput.select": "Select Entity", "gameinput.select": "Select Entity",
"gameinput.acceptgroupinvite": "Accept Group Invite", "gameinput.acceptgroupinvite": "Accept Group Invite",
"gameinput.declinegroupinvite": "Decline Group Invite", "gameinput.declinegroupinvite": "Decline Group Invite",
"gameinput.crafting": "Crafting",
"gameinput.sneak": "Sneak",
"gameinput.swimdown": "Dive downwards",
"gameinput.swimup": "Swim upwards",
/// End GameInput section /// End GameInput section

View File

@ -480,6 +480,10 @@
"voxel.weapon.hammer.2hhammer_mjolnir", "voxel.weapon.hammer.2hhammer_mjolnir",
(2.0, -1.0, 0.0), (-135.0, 90.0, 0.0), 1.1, (2.0, -1.0, 0.0), (-135.0, 90.0, 0.0), 1.1,
), ),
Tool(Hammer("CultPurp0")): VoxTrans(
"voxel.weapon.hammer.cult_purp-0",
(2.0, -1.0, 0.0), (-135.0, 90.0, 0.0), 1.1,
),
// Staffs // Staffs
Tool(Staff("BasicStaff")): VoxTrans( Tool(Staff("BasicStaff")): VoxTrans(
"voxel.weapon.staff.firestaff_starter", "voxel.weapon.staff.firestaff_starter",

View File

@ -34,5 +34,5 @@ void main() {
vec3 fog_color = get_sky_color(normalize(f_pos - cam_pos.xyz), time_of_day.x, cam_pos.xyz, f_pos, 0.5, true, clouds); vec3 fog_color = get_sky_color(normalize(f_pos - cam_pos.xyz), time_of_day.x, cam_pos.xyz, f_pos, 0.5, true, clouds);
vec3 color = mix(mix(surf_color, fog_color, fog_level), clouds.rgb, clouds.a); vec3 color = mix(mix(surf_color, fog_color, fog_level), clouds.rgb, clouds.a);
tgt_color = vec4(color, 1.0 - clamp((distance(focus_pos.xy, f_pos.xy) - (1000.0 - FADE_DIST)) / FADE_DIST, 0, 1)); tgt_color = vec4(color, 0.3);
} }

View File

@ -55,6 +55,10 @@ float exp_scale(float factor) {
return 1 / (1 - lifetime * factor); return 1 / (1 - lifetime * factor);
} }
float linear_scale(float factor) {
return lifetime * factor;
}
void main() { void main() {
float rand0 = hash(vec4(inst_entropy + 0)); float rand0 = hash(vec4(inst_entropy + 0));
float rand1 = hash(vec4(inst_entropy + 1)); float rand1 = hash(vec4(inst_entropy + 1));
@ -70,10 +74,10 @@ void main() {
if (inst_mode == SMOKE) { if (inst_mode == SMOKE) {
attr = Attr( attr = Attr(
linear_motion( linear_motion(
vec3(rand0 * 0.25, rand1 * 0.25, 1.7 + rand5), vec3(0.0, 0.0, 0.0),
vec3(rand2 * 0.2, rand3 * 0.2, 1.0 + rand4 * 0.5)// + vec3(sin(lifetime), sin(lifetime + 1.5), sin(lifetime * 4) * 0.25) vec3(rand2 * 0.1, rand3 * 0.1, 1.0 + rand4 * 0.1)// + vec3(sin(lifetime), sin(lifetime + 1.5), sin(lifetime * 4) * 0.25)
), ),
exp_scale(-0.2), linear_scale(0.5),
vec3(1) vec3(1)
); );
} else if (inst_mode == FIRE) { } else if (inst_mode == FIRE) {

BIN
assets/voxygen/voxel/figure/accessory/orc/male_eyepatch.vox (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -108,6 +108,7 @@
Some(("figure.accessory.orc.teeth-1", (5, 11, 3))), Some(("figure.accessory.orc.teeth-1", (5, 11, 3))),
Some(("figure.accessory.orc.teeth-2", (5, 11, 3))), Some(("figure.accessory.orc.teeth-2", (5, 11, 3))),
Some(("figure.accessory.orc.warpaint-male-0", (0, 4, 3))), Some(("figure.accessory.orc.warpaint-male-0", (0, 4, 3))),
Some(("figure.accessory.orc.male_eyepatch", (0, 3, 0))),
], ],
), ),
(Orc, Female): ( (Orc, Female): (
@ -302,7 +303,8 @@
], ],
beard: [None], beard: [None],
accessory: [ accessory: [
None] None,
Some(("figure.accessory.undead.male_eyepatch", (0, 1, 0))),]
), ),
(Undead, Female): ( (Undead, Female): (
offset: (-5.0, -4.0, -6.75), offset: (-5.0, -4.0, -6.75),
@ -322,7 +324,8 @@
], ],
beard: [None], beard: [None],
accessory: [ accessory: [
None] None,
Some(("figure.accessory.undead.female_eyepatch", (0, 1, -1))),]
), ),
(Danari, Male): ( (Danari, Male): (
offset: (-9.0, -4.0, -7.5), offset: (-9.0, -4.0, -7.5),

View File

@ -425,6 +425,10 @@
vox_spec: ("weapon.hammer.2hhammer_mjolnir", (-2.5, -8.5, -4.0)), vox_spec: ("weapon.hammer.2hhammer_mjolnir", (-2.5, -8.5, -4.0)),
color: None color: None
), ),
Hammer("CultPurp0"): (
vox_spec: ("weapon.hammer.cult_purp-0", (-3.5, -4.5, -5.0)),
color: None
),
/*Dagger("Craftsman"): ( //TODO This should be a 1h hammer! /*Dagger("Craftsman"): ( //TODO This should be a 1h hammer!
vox_spec: ("weapon.hammer.craftsman", (-2.0, -5.0, -5.5)), vox_spec: ("weapon.hammer.craftsman", (-2.0, -5.0, -5.5)),
color: None color: None

BIN
assets/voxygen/voxel/weapon/hammer/cult_purp-0.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/weapon/projectile/multi-arrow.vox (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -441,9 +441,9 @@ impl Species {
(Species::Human, BodyType::Female) => 1, (Species::Human, BodyType::Female) => 1,
(Species::Human, BodyType::Male) => 1, (Species::Human, BodyType::Male) => 1,
(Species::Orc, BodyType::Female) => 4, (Species::Orc, BodyType::Female) => 4,
(Species::Orc, BodyType::Male) => 5, (Species::Orc, BodyType::Male) => 6,
(Species::Undead, BodyType::Female) => 1, (Species::Undead, BodyType::Female) => 2,
(Species::Undead, BodyType::Male) => 1, (Species::Undead, BodyType::Male) => 2,
} }
} }

View File

@ -63,6 +63,7 @@ pub enum Body {
FireworkPurple = 56, FireworkPurple = 56,
FireworkRed = 57, FireworkRed = 57,
FireworkYellow = 58, FireworkYellow = 58,
MultiArrow = 59,
} }
impl Body { impl Body {
@ -72,7 +73,7 @@ impl Body {
} }
} }
pub const ALL_OBJECTS: [Body; 59] = [ pub const ALL_OBJECTS: [Body; 60] = [
Body::Arrow, Body::Arrow,
Body::Bomb, Body::Bomb,
Body::Scarecrow, Body::Scarecrow,
@ -132,6 +133,7 @@ pub const ALL_OBJECTS: [Body; 59] = [
Body::FireworkPurple, Body::FireworkPurple,
Body::FireworkRed, Body::FireworkRed,
Body::FireworkYellow, Body::FireworkYellow,
Body::MultiArrow,
]; ];
impl From<Body> for super::Body { impl From<Body> for super::Body {
@ -200,6 +202,7 @@ impl Body {
Body::FireworkPurple => "firework_purple", Body::FireworkPurple => "firework_purple",
Body::FireworkRed => "firework_red", Body::FireworkRed => "firework_red",
Body::FireworkYellow => "firework_yellow", Body::FireworkYellow => "firework_yellow",
Body::MultiArrow => "multi_arrow",
} }
} }
} }

View File

@ -191,7 +191,7 @@ impl Tool {
prepare_duration: Duration::from_millis(100), prepare_duration: Duration::from_millis(100),
charge_duration: Duration::from_millis(1500), charge_duration: Duration::from_millis(1500),
recover_duration: Duration::from_millis(500), recover_duration: Duration::from_millis(500),
projectile_body: Body::Object(object::Body::Arrow), projectile_body: Body::Object(object::Body::MultiArrow),
projectile_light: None, projectile_light: None,
}, },
], ],

View File

@ -72,7 +72,7 @@ impl From<&crate::settings::GamepadSettings> for ControllerSettings {
.push(GameInput::Escape); .push(GameInput::Escape);
map.entry(settings.game_buttons.enter) map.entry(settings.game_buttons.enter)
.or_default() .or_default()
.push(GameInput::Enter); .push(GameInput::Chat);
map.entry(settings.game_buttons.command) map.entry(settings.game_buttons.command)
.or_default() .or_default()
.push(GameInput::Command); .push(GameInput::Command);

View File

@ -374,7 +374,7 @@ impl<'a> Widget for Chat<'a> {
.w_h(20.0, 20.0) .w_h(20.0, 20.0)
.hover_image(self.imgs.chat_arrow_mo) .hover_image(self.imgs.chat_arrow_mo)
.press_image(self.imgs.chat_arrow_press) .press_image(self.imgs.chat_arrow_press)
.bottom_right_with_margins_on(state.ids.message_box_bg, 0.0, -22.0) .top_right_with_margins_on(state.ids.message_box_bg, 0.0, -22.0)
.parent(id) .parent(id)
.set(state.ids.chat_arrow, ui) .set(state.ids.chat_arrow, ui)
.was_clicked() .was_clicked()

View File

@ -2250,7 +2250,7 @@ impl Hud {
_ if !self.show.ui => false, _ if !self.show.ui => false,
WinEvent::Zoom(_) => !cursor_grabbed && !self.ui.no_widget_capturing_mouse(), WinEvent::Zoom(_) => !cursor_grabbed && !self.ui.no_widget_capturing_mouse(),
WinEvent::InputUpdate(GameInput::Enter, true) => { WinEvent::InputUpdate(GameInput::Chat, true) => {
self.ui.focus_widget(if self.typing() { self.ui.focus_widget(if self.typing() {
None None
} else { } else {

View File

@ -354,11 +354,10 @@ impl<'a> Widget for Overhead<'a> {
})) }))
.parent(id) .parent(id)
.set(state.ids.health_bar, ui); .set(state.ids.health_bar, ui);
// TODO Only show health values for entities below 100% health
let mut txt = format!( let mut txt = format!(
"{}/{}", "{}/{}",
self.stats.health.current().max(1) / 10 as u32, /* Don't show 0 health for (self.stats.health.current() / 10).max(1) as u32, /* Don't show 0 health for
* living entities */ * living entities */
self.stats.health.maximum() / 10 as u32, self.stats.health.maximum() / 10 as u32,
); );
if self.stats.is_dead { if self.stats.is_dead {

View File

@ -262,6 +262,7 @@ impl<'a> MainMenuUi {
env!("CARGO_PKG_VERSION"), env!("CARGO_PKG_VERSION"),
common::util::GIT_VERSION.to_string() common::util::GIT_VERSION.to_string()
); );
let scale = 0.8;
const TEXT_COLOR: Color = Color::Rgba(1.0, 1.0, 1.0, 1.0); const TEXT_COLOR: Color = Color::Rgba(1.0, 1.0, 1.0, 1.0);
const TEXT_COLOR_2: Color = Color::Rgba(1.0, 1.0, 1.0, 0.2); const TEXT_COLOR_2: Color = Color::Rgba(1.0, 1.0, 1.0, 0.2);
const TEXT_BG: Color = Color::Rgba(0.0, 0.0, 0.0, 1.0); const TEXT_BG: Color = Color::Rgba(0.0, 0.0, 0.0, 1.0);
@ -329,9 +330,10 @@ impl<'a> MainMenuUi {
}; };
// Version displayed top right corner // Version displayed top right corner
let pos = if self.connect { 5.0 } else { 98.0 };
Text::new(&version) Text::new(&version)
.color(TEXT_COLOR) .color(TEXT_COLOR)
.top_right_with_margins_on(ui_widgets.window, 5.0, 5.0) .top_right_with_margins_on(ui_widgets.window, pos * scale, 10.0 * scale)
.font_id(self.fonts.cyri.conrod_id) .font_id(self.fonts.cyri.conrod_id)
.font_size(self.fonts.cyri.scale(14)) .font_size(self.fonts.cyri.scale(14))
.set(self.ids.version, ui_widgets); .set(self.ids.version, ui_widgets);
@ -462,20 +464,21 @@ impl<'a> MainMenuUi {
if !self.connect { if !self.connect {
Image::new(self.imgs.banner) Image::new(self.imgs.banner)
.w_h(65.0 * 6.0, 100.0 * 6.0) .w_h(65.0 * 6.0 * scale, 100.0 * 6.0 * scale)
.middle_of(self.ids.bg) .middle_of(self.ids.bg)
.color(Some(Color::Rgba(0.0, 0.0, 0.0, 0.9))) .color(Some(Color::Rgba(0.0, 0.0, 0.0, 0.0)))
.set(self.ids.banner, ui_widgets); .set(self.ids.banner, ui_widgets);
Image::new(self.imgs.banner_top) Image::new(self.imgs.banner_top)
.w_h(70.0 * 6.0, 34.0) .w_h(70.0 * 6.0 * scale, 34.0 * scale)
.mid_top_with_margin_on(self.ids.banner, -34.0) .mid_top_with_margin_on(self.ids.banner, -34.0)
.color(Some(Color::Rgba(0.0, 0.0, 0.0, 0.0)))
.set(self.ids.banner_top, ui_widgets); .set(self.ids.banner_top, ui_widgets);
// Logo // Logo
Image::new(self.imgs.v_logo) Image::new(self.imgs.v_logo)
.w_h(123.0 * 2.5, 35.0 * 2.5) .w_h(123.0 * 2.5 * scale, 35.0 * 2.5 * scale)
.mid_top_with_margin_on(self.ids.banner_top, 45.0) .top_right_with_margins_on(self.ids.bg, 10.0, 10.0)
.color(Some(Color::Rgba(1.0, 1.0, 1.0, 0.95))) .color(Some(Color::Rgba(1.0, 1.0, 1.0, 0.95)))
.set(self.ids.v_logo, ui_widgets); .set(self.ids.v_logo, ui_widgets);
@ -536,18 +539,18 @@ impl<'a> MainMenuUi {
}; };
} }
// Info Window // Info Window
Rectangle::fill_with([550.0, 250.0], COL1) Rectangle::fill_with([550.0 * scale, 250.0 * scale], COL1)
.top_left_with_margins_on(ui_widgets.window, 40.0, 40.0) .top_left_with_margins_on(ui_widgets.window, 40.0 * scale, 40.0 * scale)
.color(Color::Rgba(0.0, 0.0, 0.0, 0.95)) .color(Color::Rgba(0.0, 0.0, 0.0, 0.80))
.set(self.ids.info_frame, ui_widgets); .set(self.ids.info_frame, ui_widgets);
Image::new(self.imgs.banner_bottom) Image::new(self.imgs.banner_bottom)
.mid_bottom_with_margin_on(self.ids.info_frame, -50.0) .mid_bottom_with_margin_on(self.ids.info_frame, -50.0 * scale)
.w_h(550.0, 50.0) .w_h(550.0 * scale, 50.0 * scale)
.color(Some(Color::Rgba(0.0, 0.0, 0.0, 0.95))) .color(Some(Color::Rgba(0.0, 0.0, 0.0, 0.80)))
.set(self.ids.info_bottom, ui_widgets); .set(self.ids.info_bottom, ui_widgets);
Text::new(intro_text) Text::new(intro_text)
.top_left_with_margins_on(self.ids.info_frame, 15.0, 15.0) .top_left_with_margins_on(self.ids.info_frame, 15.0 * scale, 15.0 * scale)
.font_size(self.fonts.cyri.scale(20)) .font_size(self.fonts.cyri.scale(16))
.font_id(self.fonts.cyri.conrod_id) .font_id(self.fonts.cyri.conrod_id)
.color(TEXT_COLOR) .color(TEXT_COLOR)
.set(self.ids.info_text, ui_widgets); .set(self.ids.info_text, ui_widgets);
@ -568,17 +571,20 @@ impl<'a> MainMenuUi {
} }
// Username // Username
Rectangle::fill_with([320.0, 50.0], color::rgba(0.0, 0.0, 0.0, 0.0)) Rectangle::fill_with(
.mid_top_with_margin_on(self.ids.banner_top, 150.0) [320.0 * scale, 50.0 * scale],
.set(self.ids.usrnm_bg, ui_widgets); color::rgba(0.0, 0.0, 0.0, 0.0),
)
.mid_top_with_margin_on(self.ids.banner_top, 150.0)
.set(self.ids.usrnm_bg, ui_widgets);
Image::new(self.imgs.input_bg) Image::new(self.imgs.input_bg)
.w_h(338.0, 50.0) .w_h(338.0 * scale, 50.0 * scale)
.middle_of(self.ids.usrnm_bg) .middle_of(self.ids.usrnm_bg)
.set(self.ids.username_bg, ui_widgets); .set(self.ids.username_bg, ui_widgets);
for event in TextBox::new(&self.username) for event in TextBox::new(&self.username)
.w_h(290.0, 30.0) .w_h(290.0* scale, 30.0* scale)
.mid_bottom_with_margin_on(self.ids.username_bg, 14.0) .mid_bottom_with_margin_on(self.ids.username_bg, 14.0* scale)
.font_size(self.fonts.cyri.scale(22)) .font_size(self.fonts.cyri.scale(18))
.font_id(self.fonts.cyri.conrod_id) .font_id(self.fonts.cyri.conrod_id)
.text_color(TEXT_COLOR) .text_color(TEXT_COLOR)
// transparent background // transparent background
@ -597,16 +603,19 @@ impl<'a> MainMenuUi {
} }
} }
// Password // Password
Rectangle::fill_with([320.0, 50.0], color::rgba(0.0, 0.0, 0.0, 0.0)) Rectangle::fill_with(
.down_from(self.ids.usrnm_bg, 10.0) [320.0 * scale, 50.0 * scale],
.set(self.ids.passwd_bg, ui_widgets); color::rgba(0.0, 0.0, 0.0, 0.0),
)
.down_from(self.ids.usrnm_bg, 10.0 * scale)
.set(self.ids.passwd_bg, ui_widgets);
Image::new(self.imgs.input_bg) Image::new(self.imgs.input_bg)
.w_h(338.0, 50.0) .w_h(338.0 * scale, 50.0 * scale)
.middle_of(self.ids.passwd_bg) .middle_of(self.ids.passwd_bg)
.set(self.ids.password_bg, ui_widgets); .set(self.ids.password_bg, ui_widgets);
for event in TextBox::new(&self.password) for event in TextBox::new(&self.password)
.w_h(290.0, 30.0) .w_h(290.0 * scale, 30.0* scale)
.mid_bottom_with_margin_on(self.ids.password_bg, 10.0) .mid_bottom_with_margin_on(self.ids.password_bg, 10.0* scale)
// the text is smaller to allow longer passwords, conrod limits text length // the text is smaller to allow longer passwords, conrod limits text length
// this allows 35 characters but can be increased, approximate formula: 420 / scale = length // this allows 35 characters but can be increased, approximate formula: 420 / scale = length
.font_size(self.fonts.cyri.scale(12)) .font_size(self.fonts.cyri.scale(12))
@ -694,17 +703,20 @@ impl<'a> MainMenuUi {
}; };
} }
// Server address // Server address
Rectangle::fill_with([320.0, 50.0], color::rgba(0.0, 0.0, 0.0, 0.0)) Rectangle::fill_with(
.down_from(self.ids.passwd_bg, 8.0) [320.0 * scale, 50.0 * scale],
.set(self.ids.srvr_bg, ui_widgets); color::rgba(0.0, 0.0, 0.0, 0.0),
)
.down_from(self.ids.passwd_bg, 8.0 * scale)
.set(self.ids.srvr_bg, ui_widgets);
Image::new(self.imgs.input_bg) Image::new(self.imgs.input_bg)
.w_h(338.0, 50.0) .w_h(338.0 * scale, 50.0 * scale)
.middle_of(self.ids.srvr_bg) .middle_of(self.ids.srvr_bg)
.set(self.ids.address_bg, ui_widgets); .set(self.ids.address_bg, ui_widgets);
for event in TextBox::new(&self.server_address) for event in TextBox::new(&self.server_address)
.w_h(290.0, 30.0) .w_h(290.0*scale, 30.0*scale)
.mid_top_with_margin_on(self.ids.address_bg, 8.0) .mid_top_with_margin_on(self.ids.address_bg, 8.0*scale)
.font_size(self.fonts.cyri.scale(22)) .font_size(self.fonts.cyri.scale(18))
.font_id(self.fonts.cyri.conrod_id) .font_id(self.fonts.cyri.conrod_id)
.text_color(TEXT_COLOR) .text_color(TEXT_COLOR)
// transparent background // transparent background
@ -726,14 +738,14 @@ impl<'a> MainMenuUi {
if Button::image(self.imgs.button) if Button::image(self.imgs.button)
.hover_image(self.imgs.button_hover) .hover_image(self.imgs.button_hover)
.press_image(self.imgs.button_press) .press_image(self.imgs.button_press)
.w_h(258.0, 55.0) .w_h(258.0*scale, 55.0*scale)
.down_from(self.ids.address_bg, 20.0) .down_from(self.ids.address_bg, 20.0*scale)
.align_middle_x_of(self.ids.address_bg) .align_middle_x_of(self.ids.address_bg)
.label(&self.voxygen_i18n.get("common.multiplayer")) .label(&self.voxygen_i18n.get("common.multiplayer"))
.label_font_id(self.fonts.cyri.conrod_id) .label_font_id(self.fonts.cyri.conrod_id)
.label_color(TEXT_COLOR) .label_color(TEXT_COLOR)
.label_font_size(self.fonts.cyri.scale(22)) .label_font_size(self.fonts.cyri.scale(18))
.label_y(Relative::Scalar(5.0)) .label_y(Relative::Scalar(4.0))
/*.with_tooltip( /*.with_tooltip(
tooltip_manager, tooltip_manager,
"Login", "Login",
@ -754,14 +766,14 @@ impl<'a> MainMenuUi {
if Button::image(self.imgs.button) if Button::image(self.imgs.button)
.hover_image(self.imgs.button_hover) .hover_image(self.imgs.button_hover)
.press_image(self.imgs.button_press) .press_image(self.imgs.button_press)
.w_h(258.0, 55.0) .w_h(258.0 * scale, 55.0 * scale)
.down_from(self.ids.login_button, 20.0) .down_from(self.ids.login_button, 20.0 * scale)
.align_middle_x_of(self.ids.address_bg) .align_middle_x_of(self.ids.address_bg)
.label(&self.voxygen_i18n.get("common.singleplayer")) .label(&self.voxygen_i18n.get("common.singleplayer"))
.label_font_id(self.fonts.cyri.conrod_id) .label_font_id(self.fonts.cyri.conrod_id)
.label_color(TEXT_COLOR) .label_color(TEXT_COLOR)
.label_font_size(self.fonts.cyri.scale(22)) .label_font_size(self.fonts.cyri.scale(18))
.label_y(Relative::Scalar(5.0)) .label_y(Relative::Scalar(4.0))
.label_x(Relative::Scalar(2.0)) .label_x(Relative::Scalar(2.0))
.set(self.ids.singleplayer_button, ui_widgets) .set(self.ids.singleplayer_button, ui_widgets)
.was_clicked() .was_clicked()
@ -772,14 +784,14 @@ impl<'a> MainMenuUi {
} }
// Quit // Quit
if Button::image(self.imgs.button) if Button::image(self.imgs.button)
.w_h(190.0, 40.0) .w_h(190.0 * scale, 40.0 * scale)
.bottom_left_with_margins_on(ui_widgets.window, 60.0, 30.0) .bottom_left_with_margins_on(ui_widgets.window, 60.0 * scale, 30.0 * scale)
.hover_image(self.imgs.button_hover) .hover_image(self.imgs.button_hover)
.press_image(self.imgs.button_press) .press_image(self.imgs.button_press)
.label(&self.voxygen_i18n.get("common.quit")) .label(&self.voxygen_i18n.get("common.quit"))
.label_font_id(self.fonts.cyri.conrod_id) .label_font_id(self.fonts.cyri.conrod_id)
.label_color(TEXT_COLOR) .label_color(TEXT_COLOR)
.label_font_size(self.fonts.cyri.scale(20)) .label_font_size(self.fonts.cyri.scale(16))
.label_y(Relative::Scalar(3.0)) .label_y(Relative::Scalar(3.0))
.set(self.ids.quit_button, ui_widgets) .set(self.ids.quit_button, ui_widgets)
.was_clicked() .was_clicked()
@ -789,14 +801,14 @@ impl<'a> MainMenuUi {
// Settings // Settings
if Button::image(self.imgs.button) if Button::image(self.imgs.button)
.w_h(190.0, 40.0) .w_h(190.0*scale, 40.0*scale)
.up_from(self.ids.quit_button, 8.0) .up_from(self.ids.quit_button, 8.0*scale)
//.hover_image(self.imgs.button_hover) //.hover_image(self.imgs.button_hover)
//.press_image(self.imgs.button_press) //.press_image(self.imgs.button_press)
.label(&self.voxygen_i18n.get("common.settings")) .label(&self.voxygen_i18n.get("common.settings"))
.label_font_id(self.fonts.cyri.conrod_id) .label_font_id(self.fonts.cyri.conrod_id)
.label_color(TEXT_COLOR_2) .label_color(TEXT_COLOR_2)
.label_font_size(self.fonts.cyri.scale(20)) .label_font_size(self.fonts.cyri.scale(16))
.label_y(Relative::Scalar(3.0)) .label_y(Relative::Scalar(3.0))
.set(self.ids.settings_button, ui_widgets) .set(self.ids.settings_button, ui_widgets)
.was_clicked() .was_clicked()
@ -806,14 +818,14 @@ impl<'a> MainMenuUi {
// Servers // Servers
if Button::image(self.imgs.button) if Button::image(self.imgs.button)
.w_h(190.0, 40.0) .w_h(190.0 * scale, 40.0 * scale)
.up_from(self.ids.settings_button, 8.0) .up_from(self.ids.settings_button, 8.0 * scale)
.hover_image(self.imgs.button_hover) .hover_image(self.imgs.button_hover)
.press_image(self.imgs.button_press) .press_image(self.imgs.button_press)
.label(&self.voxygen_i18n.get("common.servers")) .label(&self.voxygen_i18n.get("common.servers"))
.label_font_id(self.fonts.cyri.conrod_id) .label_font_id(self.fonts.cyri.conrod_id)
.label_color(TEXT_COLOR) .label_color(TEXT_COLOR)
.label_font_size(self.fonts.cyri.scale(20)) .label_font_size(self.fonts.cyri.scale(16))
.label_y(Relative::Scalar(3.0)) .label_y(Relative::Scalar(3.0))
.set(self.ids.servers_button, ui_widgets) .set(self.ids.servers_button, ui_widgets)
.was_clicked() .was_clicked()

View File

@ -3496,6 +3496,7 @@ pub fn mesh_object(
Body::BoltFire => ("weapon.projectile.fire-bolt-0", Vec3::new(-3.0, -5.5, -3.0)), Body::BoltFire => ("weapon.projectile.fire-bolt-0", Vec3::new(-3.0, -5.5, -3.0)),
Body::BoltFireBig => ("weapon.projectile.fire-bolt-1", Vec3::new(-6.0, -6.0, -6.0)), Body::BoltFireBig => ("weapon.projectile.fire-bolt-1", Vec3::new(-6.0, -6.0, -6.0)),
Body::TrainingDummy => ("object.training_dummy", Vec3::new(-7.0, -5.0, 0.0)), Body::TrainingDummy => ("object.training_dummy", Vec3::new(-7.0, -5.0, 0.0)),
Body::MultiArrow => ("weapon.projectile.multi-arrow", Vec3::new(-4.0, -9.5, -5.0)),
}; };
load_mesh(name, offset, generate_mesh) load_mesh(name, offset, generate_mesh)
} }

View File

@ -122,7 +122,7 @@ impl ControlSettings {
GameInput::Secondary => KeyMouse::Mouse(MouseButton::Right), GameInput::Secondary => KeyMouse::Mouse(MouseButton::Right),
GameInput::ToggleCursor => KeyMouse::Key(VirtualKeyCode::Tab), GameInput::ToggleCursor => KeyMouse::Key(VirtualKeyCode::Tab),
GameInput::Escape => KeyMouse::Key(VirtualKeyCode::Escape), GameInput::Escape => KeyMouse::Key(VirtualKeyCode::Escape),
GameInput::Enter => KeyMouse::Key(VirtualKeyCode::Return), GameInput::Chat => KeyMouse::Key(VirtualKeyCode::Return),
GameInput::Command => KeyMouse::Key(VirtualKeyCode::Slash), GameInput::Command => KeyMouse::Key(VirtualKeyCode::Slash),
GameInput::MoveForward => KeyMouse::Key(VirtualKeyCode::W), GameInput::MoveForward => KeyMouse::Key(VirtualKeyCode::W),
GameInput::MoveLeft => KeyMouse::Key(VirtualKeyCode::A), GameInput::MoveLeft => KeyMouse::Key(VirtualKeyCode::A),
@ -207,7 +207,7 @@ impl Default for ControlSettings {
//GameInput::WallLeap, //GameInput::WallLeap,
GameInput::ToggleLantern, GameInput::ToggleLantern,
GameInput::Mount, GameInput::Mount,
GameInput::Enter, GameInput::Chat,
GameInput::Command, GameInput::Command,
GameInput::Escape, GameInput::Escape,
GameInput::Map, GameInput::Map,

View File

@ -47,7 +47,7 @@ pub enum GameInput {
//WallLeap, //WallLeap,
ToggleLantern, ToggleLantern,
Mount, Mount,
Enter, Chat,
Command, Command,
Escape, Escape,
Map, Map,
@ -98,7 +98,7 @@ impl GameInput {
//GameInput::WallLeap => "gameinput.wallleap", //GameInput::WallLeap => "gameinput.wallleap",
GameInput::ToggleLantern => "gameinput.togglelantern", GameInput::ToggleLantern => "gameinput.togglelantern",
GameInput::Mount => "gameinput.mount", GameInput::Mount => "gameinput.mount",
GameInput::Enter => "gameinput.enter", GameInput::Chat => "gameinput.chat",
GameInput::Command => "gameinput.command", GameInput::Command => "gameinput.command",
GameInput::CycleCamera => "gameinput.cyclecamera", GameInput::CycleCamera => "gameinput.cyclecamera",
GameInput::Escape => "gameinput.escape", GameInput::Escape => "gameinput.escape",
@ -158,12 +158,13 @@ impl GameInput {
GameInput::Sneak, GameInput::Sneak,
GameInput::ToggleLantern, GameInput::ToggleLantern,
GameInput::Mount, GameInput::Mount,
GameInput::Enter, GameInput::Chat,
GameInput::Command, GameInput::Command,
GameInput::Escape, GameInput::Escape,
GameInput::Map, GameInput::Map,
GameInput::Bag, GameInput::Bag,
GameInput::Social, GameInput::Social,
GameInput::Crafting,
GameInput::Spellbook, GameInput::Spellbook,
GameInput::Settings, GameInput::Settings,
GameInput::ToggleInterface, GameInput::ToggleInterface,