bi_tux

joined 1 year ago
[–] [email protected] 21 points 3 days ago

I think that's part of the joke

[–] [email protected] 2 points 4 days ago

communism always fails because it's authoritarian, that's the same reason the west, the east and everything else will fall

[–] [email protected] 5 points 5 days ago (6 children)

I always assumed they weigh like 2.5kg for some reason

[–] [email protected] 2 points 6 days ago (1 children)

so I just found out why and don't see how I did something wrong, what to do now?

[–] [email protected] 23 points 1 month ago (1 children)

what's the difference between a klan hood and a maga cap?

the klan hood is actually made in america!

[–] [email protected] 7 points 1 month ago

it took me a minute

[–] [email protected] -1 points 1 month ago

please enlighten me, how is China a democracy?

[–] [email protected] -4 points 1 month ago (13 children)

yeah, but the argument was on these two

Frankly I'm more concerned about my own government spending endless amounts of money on weapons to murder civilians

I don't want that either, but I also don't want people giving money to China for cheap low quality products which finances konzentration camps and suppressing hongkong and I don't like people who say the west is imperialist but in the same breath simp for China and Russia, because all nation states are imperialist by concept.

people I actually know have been injured by cops protesting in the US

for me this is the same with China, I know some chinese people that still suffer under the CCP even tho they live in another country now

[–] [email protected] -2 points 1 month ago (18 children)

ever got beaten up by 3 chinese police officers for wanting free hongkong?

People responding correctly pointing out how we really should be most concerned about our own governments actions and the amount of police violence to any leftwing protest

sure, but I want to inform people and since the people on lemmygrad and hexbear already know that america is bad, I wanted to introduce them to dystopian China

[–] [email protected] 26 points 1 month ago (2 children)
 

also he thought that the CCP wasn't even suppressing free speech, guess who just got banned from a certain tankie cercle jerk instance

 

ofc I imediatly upgraded it from winxp to gnu/linux

 

I hope memes are okay here

 

also ik, I still use neofetch instead of hyfetch

 

So I thought about this in the shower amd it makes sense to me, like praying and stuff never worked for most people I know, so a direkt link to god gotta be unlikely. That made me conclude that religion is probably fake, no matter if there's a god or not. Also people speaking to the same god being given a different set of rules sounds stupid, so at least most religions must be fake.

 

Why do some cars have their engines in the front and some in the back, what are the advantages and disadvantages of the two builds. And why doesn't every car have full wheel drive?

218
doggo (lemmy.world)
 
7
submitted 5 months ago* (last edited 5 months ago) by [email protected] to c/[email protected]
 

So I want to update the sprite so my character looks in a different direction each time the player presses left/right, how could I do this? I can't do it in the setup fn, since it's a startup system, appreciate any help

EDIT: changed formating

here is my code:

use bevy::prelude::*;

`fn main() {
    App::new()
        .add_plugins(DefaultPlugins.set(ImagePlugin::default_nearest())) // prevents blurry sprites
        .add_systems(Startup, setup)
        .add_systems(Update, animate_sprite)
        .add_systems(Update, player_movement_system)
        .run();
}

const BOUNDS: Vec2 = Vec2::new(1200.0, 640.0);
static mut FLIP_BOOLEAN: bool = false;

fn set_flip_boolean(boolean: bool) {
    unsafe {
        FLIP_BOOLEAN = boolean;
    }
}

fn get_flip_boolean() -> bool{
    unsafe {
        FLIP_BOOLEAN
    }
}

#[derive(Component)]
struct Player {
    movement_speed: f32,
}

#[derive(Component)]
struct AnimationIndices {
    first: usize,
    last: usize,
}

#[derive(Component, Deref, DerefMut)]
struct AnimationTimer(Timer);

fn animate_sprite(
    time: Res<Time>,
    mut query: Query<(&AnimationIndices, &mut AnimationTimer, &mut TextureAtlas)>,
) {
    for (indices, mut timer, mut atlas) in &mut query {
        timer.tick(time.delta());
        if timer.just_finished() {
            atlas.index = if atlas.index == indices.last {
                indices.first
            } else {
                atlas.index + 1
            };
        }
    }
}


fn setup(
    mut commands: Commands,
    asset_server: Res<AssetServer>,
    mut texture_atlas_layouts: ResMut<Assets<TextureAtlasLayout>>,
) {
    let texture = asset_server.load("sprites/Idle01.png");
    let layout = TextureAtlasLayout::from_grid(Vec2::new(64.0, 40.0), 5, 1, None, None);
    let texture_atlas_layout = texture_atlas_layouts.add(layout);
    let animation_indices = AnimationIndices { first: 0, last: 4 };
    let boolean = get_flip_boolean();
    commands.spawn(Camera2dBundle::default());
    commands.spawn((
        SpriteSheetBundle {
            texture,
            atlas: TextureAtlas {
                layout: texture_atlas_layout,
                index: animation_indices.first,
            },
            
            ..default()
        },
        Player {
            movement_speed: 500.0,
        },
        animation_indices,
        AnimationTimer(Timer::from_seconds(0.1, TimerMode::Repeating)),
    ));
}

fn player_movement_system(
    time: Res<Time>,
    keyboard_input: Res<ButtonInput<KeyCode>>,
    mut query: Query<(&Player, &mut Transform)>,
) {
    let (guy, mut transform) = query.single_mut();

    let mut movement_factor = 0.0;

    let mut movement_direction = Vec3::X;

    if keyboard_input.pressed(KeyCode::ArrowLeft) {
        movement_factor -= 1.0;
        movement_direction = Vec3::X;
        set_flip_boolean(true);
    }

    if keyboard_input.pressed(KeyCode::ArrowRight) {
        movement_factor += 1.0;
        movement_direction = Vec3::X;
        set_flip_boolean(false);
    }

    if keyboard_input.pressed(KeyCode::ArrowUp) {
        movement_factor += 1.0;
        movement_direction = Vec3::Y;
    }

    if keyboard_input.pressed(KeyCode::ArrowDown) {
        movement_factor -= 1.0;
        movement_direction = Vec3::Y;
    }


    let movement_distance = movement_factor * guy.movement_speed * time.delta_seconds();
    let translation_delta = movement_direction * movement_distance;
    transform.translation += translation_delta;

    let extents = Vec3::from((BOUNDS / 2.0, 0.0));
    transform.translation = transform.translation.min(extents).max(-extents);
}
 

I hope this isn't out of context, also I don't want to "own the libs" or something here, I'm actually interested.

 

I don't know where else to post this, so here you go:

  • How reliable is the yazio kcal counter
  • Does it use anything
  • Are there FOSS alternatives

the reason I'm asking is because I weighted everything I ate and put it into the app, according to the app I should have eaten 1600kcal, but I feel lile I ate 3000kcal

EDIT: I mean the kcal I ate all day, I didn't eat that much at once obviosly

would appreciate help and advise

 

tbh I did a horrible paint job, but she still liked it

EDIT: the parts are 3d printed (not my model tho)

view more: next ›