cargo fix

This commit is contained in:
Tao Tien 2026-02-15 09:09:04 -08:00
parent 4a833da757
commit 1afb7f4e3d
10 changed files with 29 additions and 47 deletions

6
docs/queries.rs Normal file
View file

@ -0,0 +1,6 @@
commands: Commands
tiles: Query<(&Tile, &TileId, Entity)>,
player: Option<Single<&mut player::Player>>,
hand_ent: Option<Single<Entity, With<Hand>>>,

View file

@ -1,28 +1,17 @@
#![allow(unused)]
use bevy::prelude::*; use bevy::prelude::*;
use bevy_spacetimedb::{ use bevy_spacetimedb::{
ReadInsertUpdateMessage, ReadStdbConnectedMessage, ReadStdbDisconnectedMessage, StdbPlugin, ReadInsertUpdateMessage, ReadStdbConnectedMessage, ReadStdbDisconnectedMessage, StdbPlugin,
TableMessages,
}; };
use spacetimedb::Identity; use spacetimedb_sdk::{DbContext, Table};
use spacetimedb_sdk::{DbContext, Table, credentials};
use crate::stdb::{self, DbConnection, LobbyTableAccess, PlayerTableAccess, RemoteTables}; use crate::stdb::{self, DbConnection, LobbyTableAccess, PlayerTableAccess, RemoteTables};
use crate::stdb::{ use crate::stdb::{
add_bot, draw_tile, join_or_create_lobby, login_or_add_player, set_ready, shuffle_deal, add_bot, draw_tile, set_ready, shuffle_deal,
skip_call, start_game, skip_call, start_game,
}; };
use crate::{ use crate::{
SpacetimeDB, creds_store, SpacetimeDB, creds_store,
game::{ game::hand::{Drawn, Hand, Pond},
self,
hand::{Drawn, Hand, Pond},
player::{CurrentPlayer, MainPlayer, Player},
round::Wind,
wall::Wall,
},
tile::{self},
}; };
use jong_types::*; use jong_types::*;
@ -34,7 +23,7 @@ pub mod wall;
pub struct Riichi; pub struct Riichi;
impl Plugin for Riichi { impl Plugin for Riichi {
fn build(&self, app: &mut App) { fn build(&self, app: &mut App) {
let mut plugins = StdbPlugin::default() let plugins = StdbPlugin::default()
.with_uri("http://localhost:3000") .with_uri("http://localhost:3000")
.with_module_name("jongline") .with_module_name("jongline")
.with_run_fn(DbConnection::run_threaded) .with_run_fn(DbConnection::run_threaded)
@ -80,7 +69,7 @@ impl Plugin for Riichi {
; ;
} }
} }
fn on_connect(stdb: SpacetimeDB, mut messages: ReadStdbConnectedMessage, mut commands: Commands) { fn on_connect(stdb: SpacetimeDB, mut messages: ReadStdbConnectedMessage, _commands: Commands) {
for msg in messages.read() { for msg in messages.read() {
info!("you're now jongline"); info!("you're now jongline");
@ -94,7 +83,7 @@ fn on_connect(stdb: SpacetimeDB, mut messages: ReadStdbConnectedMessage, mut com
} }
// TODO how reconnect? // TODO how reconnect?
fn on_disconnect(stdb: SpacetimeDB, mut messages: ReadStdbDisconnectedMessage) { fn on_disconnect(_stdb: SpacetimeDB, mut messages: ReadStdbDisconnectedMessage) {
for msg in messages.read() { for msg in messages.read() {
warn!("lost connection: {:#?}", msg.err); warn!("lost connection: {:#?}", msg.err);
} }
@ -118,26 +107,26 @@ fn subscriptions(stdb: SpacetimeDB) {
pub struct TileId(pub u32); pub struct TileId(pub u32);
fn on_player_insert_update( fn on_player_insert_update(
stdb: SpacetimeDB, _stdb: SpacetimeDB,
mut messages: ReadInsertUpdateMessage<stdb::Player>, mut messages: ReadInsertUpdateMessage<stdb::Player>,
mut commands: Commands, mut commands: Commands,
tiles: Query<(&Tile, &TileId, Entity)>, tiles: Query<(&Tile, &TileId, Entity)>,
mut player: Option<Single<&mut player::Player>>, player: Option<Single<&mut player::Player>>,
mut hand_ent: Option<Single<Entity, With<Hand>>>, hand_ent: Option<Single<Entity, With<Hand>>>,
) { ) {
use player::*; use player::*;
for msg in messages.read() { for msg in messages.read() {
// debug!("player_insert_update msg:\n{:#?}", msg.new); // debug!("player_insert_update msg:\n{:#?}", msg.new);
if let (Some(player), Some(hand_ent)) = (player.as_ref(), hand_ent.as_ref()) { if let (Some(_player), Some(hand_ent)) = (player.as_ref(), hand_ent.as_ref()) {
// if msg.old.as_ref().is_some_and(|m| !m.ready) && msg.new.ready { // if msg.old.as_ref().is_some_and(|m| !m.ready) && msg.new.ready {
// trace!("entered ready"); // trace!("entered ready");
// // TODO add a start game button in the future // // TODO add a start game button in the future
// stdb.reducers().start_game().unwrap(); // stdb.reducers().start_game().unwrap();
// } // }
let mut tiles: Vec<_> = msg let tiles: Vec<_> = msg
.new .new
.hand .hand
.iter() .iter()
@ -177,7 +166,7 @@ fn on_lobby_insert_update(
stdb: SpacetimeDB, stdb: SpacetimeDB,
mut messages: ReadInsertUpdateMessage<stdb::Lobby>, mut messages: ReadInsertUpdateMessage<stdb::Lobby>,
mut commands: Commands, _commands: Commands,
mut next_gamestate: ResMut<NextState<GameState>>, mut next_gamestate: ResMut<NextState<GameState>>,
mut next_turnstate: ResMut<NextState<TurnState>>, mut next_turnstate: ResMut<NextState<TurnState>>,
) { ) {

View file

@ -1,8 +1,6 @@
use std::mem::discriminant;
use bevy::prelude::*; use bevy::prelude::*;
use crate::game::{GameState, player::Player, wall::Wall};
use jong_types::*; use jong_types::*;
#[derive(Component)] #[derive(Component)]
@ -26,7 +24,7 @@ pub struct Discarded;
// } // }
/// assumes hand is sorted /// assumes hand is sorted
pub(crate) fn check_wincon(hand: &[Tile; 14], melds: &[&[Tile]]) -> bool { pub(crate) fn check_wincon(_hand: &[Tile; 14], _melds: &[&[Tile]]) -> bool {
// 4x3 + pair // 4x3 + pair
// assume sorted // assume sorted
// //

View file

@ -1,17 +1,8 @@
use std::rc::Weak;
use bevy::{platform::collections::HashMap, prelude::*}; use bevy::{platform::collections::HashMap, prelude::*};
use strum::{EnumCount, FromRepr}; use strum::{EnumCount, FromRepr};
use crate::{ use crate::EnumNextCycle;
EnumNextCycle,
game::{
GameState,
hand::{Discarded, Drawn, Hand, Pond},
player::{CurrentPlayer, Player},
wall::Wall,
},
};
use jong_types::TurnState; use jong_types::TurnState;
// #[derive(Resource)] // #[derive(Resource)]

View file

@ -1,5 +1,4 @@
use bevy::{log::LogPlugin, prelude::*}; use bevy::{log::LogPlugin, prelude::*};
use bevy_spacetimedb::{StdbConnection, StdbPlugin};
use clap::{Parser, Subcommand}; use clap::{Parser, Subcommand};
use tracing::Level; use tracing::Level;
use tracing_subscriber::{layer::SubscriberExt, util::SubscriberInitExt}; use tracing_subscriber::{layer::SubscriberExt, util::SubscriberInitExt};
@ -42,7 +41,6 @@ fn main() {
tui_logger::init_logger(tui_logger::LevelFilter::Trace).unwrap(); tui_logger::init_logger(tui_logger::LevelFilter::Trace).unwrap();
tui_logger::set_env_filter_from_string(FILTERSTRING); tui_logger::set_env_filter_from_string(FILTERSTRING);
// app.add_plugins(tui::RiichiTui)
app.add_plugins(tui::TuiPlugin) app.add_plugins(tui::TuiPlugin)
} }
}; };

View file

@ -1,5 +1,5 @@
use log::{debug, info}; use log::debug;
use spacetimedb::{ReducerContext, Table, ViewContext, reducer, view}; use spacetimedb::{ReducerContext, Table, reducer};
use crate::tables::{player::player, *}; use crate::tables::{player::player, *};

View file

@ -1,4 +1,4 @@
use log::{info, trace}; use log::info;
use spacetimedb::{ReducerContext, Table, rand::seq::SliceRandom, reducer}; use spacetimedb::{ReducerContext, Table, rand::seq::SliceRandom, reducer};
use crate::tables::{player::player, *}; use crate::tables::{player::player, *};

View file

@ -1,8 +1,8 @@
use log::{debug, trace}; use log::debug;
use spacetimedb::{ReducerContext, Table, rand::seq::SliceRandom, reducer}; use spacetimedb::{ReducerContext, Table, rand::seq::SliceRandom, reducer};
use super::hand::deal_hands; use super::hand::deal_hands;
use crate::tables::{player::player, *}; use crate::tables::*;
use jong_types::*; use jong_types::*;
#[reducer] #[reducer]

View file

@ -1,5 +1,5 @@
use log::{debug, info, trace}; use log::{debug, trace};
use spacetimedb::{ReducerContext, Table, ViewContext, reducer, view}; use spacetimedb::{ReducerContext, Table, reducer};
use crate::tables::{player::player, *}; use crate::tables::{player::player, *};
use jong_types::*; use jong_types::*;
@ -80,7 +80,7 @@ pub fn discard_tile(ctx: &ReducerContext, tile_id: u32) -> Result<(), String> {
pub fn skip_call(ctx: &ReducerContext) { pub fn skip_call(ctx: &ReducerContext) {
trace!("skip_call"); trace!("skip_call");
let mut player = ctx.db.player().identity().find(ctx.sender).unwrap(); let player = ctx.db.player().identity().find(ctx.sender).unwrap();
let mut lobby = ctx.db.lobby().id().find(player.lobby_id).unwrap(); let mut lobby = ctx.db.lobby().id().find(player.lobby_id).unwrap();
lobby.turn_state = TurnState::Tsumo; lobby.turn_state = TurnState::Tsumo;

View file

@ -1,4 +1,4 @@
use spacetimedb::{Filter, SpacetimeType, client_visibility_filter, table}; use spacetimedb::table;
use jong_types::*; use jong_types::*;