Binette

joined 10 months ago
[–] Binette@lemmy.ml 3 points 1 week ago

"It's so over" or "joever". Because yeah, it has never been so joever.

Also fanum taxing. It's just funny sounding and I can't figure out what it means.

[–] Binette@lemmy.ml 32 points 1 week ago (3 children)
  1. You're replying to someone from db0

  2. Lemmy.ml is not the only place that believes the US isn't a democracy.

  3. The US is an oligarchy. It's one of the things agreed by philosophers, including my teacher. The current controversy in the left surrounding the elections obviously proves this point.

[–] Binette@lemmy.ml 13 points 1 week ago

One of the most important things we learned in English class when studying fascism was that when it comes to fascism, you're next. It is not wise for a minority to throw the other under the bus, as if their suffering does not matter, not only because it isn't moral, but you'll see the people use the same excuses when your rights will be in danger.

[–] Binette@lemmy.ml 4 points 1 week ago

Yeah cuz hexbear is the only place on the internet where you'll find this opinion /s

[–] Binette@lemmy.ml 3 points 1 week ago

I've been waiting for this one lol

[–] Binette@lemmy.ml -2 points 1 week ago

It just replaces the down votes with comments. I don't consider argumentative responders to be obnoxious either, so I guess it depends on what kind of environment you want.

[–] Binette@lemmy.ml 3 points 1 week ago (4 children)

It's not really that they don't allow negative feedback. They just prefer that if you do have negative feedback, you comment it instead of just downvoting and moving on.

[–] Binette@lemmy.ml 12 points 1 week ago* (last edited 1 week ago) (2 children)

Biden finally taught Harris the secret of his "Biden blast" move

[–] Binette@lemmy.ml 2 points 1 week ago

NOOOO I MISSED IT ;-;

[–] Binette@lemmy.ml 15 points 1 week ago

Inexplicably based

[–] Binette@lemmy.ml 5 points 1 week ago

Can threads really be considered part of the fediverse if they can't be bitten 😔

 

I'll start!

Vocaloid: Flower v4. I love her growls

SynthV: Kasane Teto. I may be very biased here, but I really like her original songs.

CeVIO: RIME. Her breathy voice is cool, and is used especially well in Utsu-P's collage.

Utau: Anna Nyui. A lot of options, and a pretty versatile voicebank I love to use.

 

For context, I am using the bevy engine.

I know that you aren't supposed to store stuff that might contain a lot of information, such as dialogue, NPCs and skills.

I already found a library that helps me store dialogue (bevy_yarnspinner), but I've yet to find such a library for other ressources.

So I was wondering, usually in RPGs, where and how are stats, skills, NPCs (including enemies) and maps are stored? And how does leveling up work?

 

It's been a while since I've heard any news. Not that there's anything wrong with that cause you guys are working on Lemmy aswell.

 

For context, I am using the libraries bevy and print_typewriter.

I noticed that before the program even starts, I am able to type in characters. This is bad, since when I ask for the user's input, the previous characters are included inside of it.

How do I make sure that only the user's input after the program starts, and after I print a question gets in?

 

So according to Merriam Webster bread is: a usually baked and leavened food made of a mixture whose basic constituent is flour or meal

And cake is: A: a breadlike food made from a dough or batter that is usually fried or baked in small flat shapes and is often unleavened B: a sweet baked food made from a dough or thick batter usually containing flour and sugar and often shortening, eggs, and a raising agent (such as baking powder)

And yet some people don't think that cake is bread.

What's your opinion?

 

In order to update hyprland-git, I need to install hyprwayland-scanner-git. But when I try to install it, pacman says that it failed to commit a transaction.

I followed the arch wiki, but unfortunately, the file in question is owned by hyprwayland-scanner, so I'm not sure how to proceed.

 
 

I'm trying to make minesweeper using rust and bevy, but it feels that my code is bloated (a lot of for loops, segments that seem to be repeating themselves, etc.)

When I look at other people's code, they are using functions that I don't really understand (map, zip, etc.) that seem to make their code faster and cleaner.

I know that I should look up the functions that I don't understand, but I was wondering where you would learn stuff like that in the first place. I want to learn how to find functions that would be useful for optimizing my code.

 

I don't know if it's the best place to ask this, but I've been having issues with trying to make minesweeper with bevy.

I tried making a function that would give the number of mines around the tile that was clicked if it wasn't a mine. Then, I wanted to make it so that when the number of mines around the clicked tiles is 0, it reveals the surrounding tiles. Finally, I tried making the function recursive by rerunning it on the empty surrounding tiles.

The issue is that it seems that certain tiles with no mines surrounding them don't reveal the surrounding tiles.

Here's the portion of the code I am talking about (I know it's pretty bad):

fn find_surrounding_mines(
                          mut set: ParamSet<(
                              EventReader<TileEntity>,
                              EventWriter<TileEntity>,
                             )>,
                          mut surrounding_mines: EventWriter<SurroundingMines>,
                          mut query_board: Query<&mut Board>,
                          mut change_tile_image: EventWriter<ChangeTileImage>,
                        mut query_mine: Query<(&Mine, &mut Tile)>) {
    let dy: [i8; 8] = [-1, -1, -1, 0, 0, 1, 1, 1];
    let dx: [i8; 8] = [-1, 0, 1, -1, 1, -1, 0, 1];
    
    let board = query_board.single_mut();
    let mut num_mine: u8 = 0;
    let mut y: u8 = 0;
    let mut copy_x: usize = 0;
    let mut tile_read:bool = false;
    let mut copy_num_mine:u8 = 0;
    for tile in set.p0().read(){
        for (row_index, vector) in board.tiles.iter().enumerate(){
            if let Some(x) = vector.iter().position(|&x|x == tile.0) {
                copy_x = x;
                y = row_index as u8;
                for i in 0..8{
                    if x as i8 + dx[i] >= 0 && x as i8 + dx[i] < board.width as i8 && y as i8 + dy[i] >= 0 && y as i8 +dy[i] < board.height as i8{
                        if let Ok((_mine,mut tile)) = query_mine.get_mut(board.tiles[(y as i8 + dy[i]) as usize][(x as i8+ dx[i]) as usize]){
                            num_mine += 1;
                            tile.hidden = false;
                        }
                    }
                }
                break;
            } 
        }
        
        surrounding_mines.send(SurroundingMines(num_mine));
        change_tile_image.send(ChangeTileImage{tile: tile.0, asset: "Minesweeper_LAZARUS_21x21_".to_string() + &num_mine.to_string() + ".png"});
        copy_num_mine = num_mine;
        num_mine = 0;
        tile_read = true;
    }

    if copy_num_mine == 0 && tile_read{
            tile_read = false;
            for i in 0..8{
                if copy_x as i8 + dx[i] >= 0 && copy_x as i8 + dx[i] < board.width as i8 && y as i8 + dy[i] >= 0 && y as i8 +dy[i] < board.height as i8{
                    if let Ok((_mine, mut tile)) = query_mine.get(board.tiles[(y as i8 + dy[i]) as usize][(copy_x as i8 + dx[i]) as usize]){
                        continue;
                    }else{
                        println!("{:?}", (y as i8 + dy[i], copy_x as i8 + dx[i]));
                        set.p1().send(TileEntity(board.tiles[(y as i8 + dy[i]) as usize][(copy_x as i8 + dx[i]) as usize]));
                    }
                }
            }
        }
}
view more: ‹ prev next ›