Adding kenney icons -- thank you kenney.nl!

main
Elijah Voigt 1 year ago
parent 035e4114ba
commit 99f7d37ca9

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -0,0 +1,5 @@
# Kenney.nl Game Icons
These assets come from the [kenney.nl game icons pack](https://kenney.nl/assets/game-icons) ([CC0](https://creativecommons.org/publicdomain/zero/1.0/)).
I have stripped out unused assets from the pack to minimize the size of the game.

@ -0,0 +1,7 @@
gear.png
home.png
information.png
musicOn.png
musicOff.png
power.png
question.png

@ -0,0 +1,14 @@
###############################################################################
Game icon pack by Kenney Vleugels (www.kenney.nl)
------------------------------
License (CC0)
http://creativecommons.org/publicdomain/zero/1.0/
You may use these graphics in personal and commercial projects.
Credit (Kenney or www.kenney.nl) would be nice but is not mandatory.
###############################################################################

@ -8,6 +8,27 @@ impl Plugin for AudioPlugin {
} }
} }
#[derive(Component)]
pub(crate) struct MusicIcon;
fn load_audio(assets: Res<AssetServer>, mut commands: Commands) { fn load_audio(assets: Res<AssetServer>, mut commands: Commands) {
commands.spawn(AudioPlayer::new(assets.load("its-the-balatro-music.ogg"))); commands.spawn(AudioPlayer::new(assets.load("its-the-balatro-music.ogg")));
} }
pub(crate) fn toggle_music(
_trigger: Trigger<Pointer<Click>>,
sinks: Query<&AudioSink>,
mut images: Query<&mut ImageNode, With<MusicIcon>>,
server: Res<AssetServer>,
) {
let sink = sinks.single();
let mut image = images.single_mut();
if sink.is_paused() {
sink.play();
image.image = server.load("kenney_game-icons/PNG/White/1x/musicOn.png");
} else {
sink.pause();
image.image = server.load("kenney_game-icons/PNG/White/1x/musicOff.png");
}
}

@ -6,7 +6,7 @@ use bevy::{
}; };
use crate::{ use crate::{
boot, audio, boot,
deck::{Card, Deck, ItemColor, ItemNumber, ItemPattern, ItemShape}, deck::{Card, Deck, ItemColor, ItemNumber, ItemPattern, ItemShape},
play::{check_for_sets, check_set, DeckOrder, PlayLocation, SetNumber}, play::{check_for_sets, check_set, DeckOrder, PlayLocation, SetNumber},
view::{button_set_state, ViewState}, view::{button_set_state, ViewState},
@ -132,7 +132,7 @@ fn setup(mut commands: Commands, server: Res<AssetServer>) {
#[derive(Component)] #[derive(Component)]
pub(crate) struct SetCounter; pub(crate) struct SetCounter;
fn setup_play(mut commands: Commands) { fn setup_play(mut commands: Commands, server: Res<AssetServer>) {
commands commands
.spawn(( .spawn((
ViewState::Play, ViewState::Play,
@ -143,25 +143,57 @@ fn setup_play(mut commands: Commands) {
}, },
)) ))
.with_children(|parent| { .with_children(|parent| {
parent parent.spawn(Node::default()).with_children(|parent| {
.spawn(( parent
Button, .spawn((
BackgroundColor(BLACK.with_alpha(0.9).into()), Button,
Node { BackgroundColor(BLACK.with_alpha(0.9).into()),
margin: UiRect::all(Val::Px(5.0)), Node {
padding: UiRect::all(Val::Px(10.0)), margin: UiRect::all(Val::Px(5.0)),
border: UiRect::all(Val::Px(1.0)), padding: UiRect::all(Val::Px(5.0)),
..default() border: UiRect::all(Val::Px(1.0)),
}, height: Val::Px(40.0),
BorderColor(WHITE.into()), ..default()
GlobalZIndex(1), },
)) BorderColor(WHITE.into()),
.with_children(|parent| { GlobalZIndex(1),
parent.spawn(Text("Menu".to_string())); ))
}) .with_children(|parent| {
.observe(button_hover_on) parent.spawn(ImageNode {
.observe(button_hover_off) image: server.load("kenney_game-icons/PNG/White/1x/home.png"),
.observe(button_set_state(ViewState::Menu)); ..default()
});
})
.observe(button_hover_on)
.observe(button_hover_off)
.observe(button_set_state(ViewState::Menu));
parent
.spawn((
Button,
BackgroundColor(BLACK.with_alpha(0.9).into()),
Node {
margin: UiRect::all(Val::Px(5.0)),
padding: UiRect::all(Val::Px(5.0)),
border: UiRect::all(Val::Px(1.0)),
height: Val::Px(40.0),
..default()
},
BorderColor(WHITE.into()),
GlobalZIndex(1),
))
.with_children(|parent| {
parent.spawn((
ImageNode {
image: server.load("kenney_game-icons/PNG/White/1x/musicOn.png"),
..default()
},
audio::MusicIcon,
));
})
.observe(button_hover_on)
.observe(button_hover_off)
.observe(audio::toggle_music);
});
parent parent
.spawn(( .spawn((
@ -189,15 +221,19 @@ fn setup_play(mut commands: Commands) {
BackgroundColor(BLACK.with_alpha(0.9).into()), BackgroundColor(BLACK.with_alpha(0.9).into()),
Node { Node {
margin: UiRect::all(Val::Px(5.0)), margin: UiRect::all(Val::Px(5.0)),
padding: UiRect::all(Val::Px(10.0)), padding: UiRect::all(Val::Px(5.0)),
border: UiRect::all(Val::Px(1.0)), border: UiRect::all(Val::Px(1.0)),
height: Val::Px(40.0),
..default() ..default()
}, },
BorderColor(WHITE.into()), BorderColor(WHITE.into()),
GlobalZIndex(1), GlobalZIndex(1),
)) ))
.with_children(|parent| { .with_children(|parent| {
parent.spawn(Text("Help!".to_string())); parent.spawn(ImageNode {
image: server.load("kenney_game-icons/PNG/White/1x/question.png"),
..default()
});
}) })
.observe(button_hover_on) .observe(button_hover_on)
.observe(button_hover_off) .observe(button_hover_off)

Loading…
Cancel
Save