~starkingdoms/starkingdoms

2daf0b3ad06baff5290c86fc6fa1a5308af0c352 — core 8 months ago 361225c
format
M crates/server/src/module/mod.rs => crates/server/src/module/mod.rs +1 -1
@@ 4,8 4,8 @@ use bevy::{math::vec2, prelude::*};
use bevy_rapier2d::prelude::*;
use component::*;
use rand::Rng;
use starkingdoms_common::packet::{DespawnPartPacket, Packet, SpawnPartPacket};
use starkingdoms_common::packet::Part;
use starkingdoms_common::packet::{DespawnPartPacket, Packet, SpawnPartPacket};
use starkingdoms_common::proto_part_flags;
use starkingdoms_common::proto_transform;


M crates/server/src/module/save.rs => crates/server/src/module/save.rs +4 -4
@@ 1,9 1,5 @@
use std::{collections::HashMap, f32::consts::PI};

use bevy::{math::vec2, prelude::*};
use bevy_rapier2d::prelude::*;
use starkingdoms_common::{packet::Packet, PartType as c_PartType, SaveModule};
use starkingdoms_common::packet::SaveEligibilityPacket;
use crate::{
    capacity, mass,
    planet::PlanetType,


@@ 11,6 7,10 @@ use crate::{
    ws::{PacketMessageConvert, WsEvent},
    Attach, CanAttach, LooseAttach, PartBundle, PartFlags, PartType,
};
use bevy::{math::vec2, prelude::*};
use bevy_rapier2d::prelude::*;
use starkingdoms_common::packet::SaveEligibilityPacket;
use starkingdoms_common::{packet::Packet, PartType as c_PartType, SaveModule};

pub fn load_savefile(
    commands: &mut Commands,

M crates/server/src/player/client_login.rs => crates/server/src/player/client_login.rs +15 -13
@@ 1,16 1,5 @@
use std::{collections::HashMap, net::SocketAddr};

use bevy::{math::vec2, prelude::*};
use bevy_rapier2d::prelude::*;
use hmac::{Hmac, Mac};
use jwt::VerifyWithKey;
use rand::Rng;
use sha2::Sha256;
use starkingdoms_common::{
    packet::{MessageType, Packet, Part, Planet, ProtoPartFlags},
    proto_part_flags, proto_transform, unpack_savefile, PartType as c_PartType,
};
use starkingdoms_common::packet::{LoginResponsePacket, MessagePacket, PlanetPositionsPacket, PlayerListPacket, SpawnPartPacket, SpawnPlayerPacket};
use crate::{
    config::StkConfig,
    crafting::components::{IsMining, VarietyMaterialStorage},


@@ 22,6 11,20 @@ use crate::{
    ws::{PacketMessageConvert, WsEvent},
    AppKeys, UserToken, CLIENT_SCALE,
};
use bevy::{math::vec2, prelude::*};
use bevy_rapier2d::prelude::*;
use hmac::{Hmac, Mac};
use jwt::VerifyWithKey;
use rand::Rng;
use sha2::Sha256;
use starkingdoms_common::packet::{
    LoginResponsePacket, MessagePacket, PlanetPositionsPacket, PlayerListPacket, SpawnPartPacket,
    SpawnPlayerPacket,
};
use starkingdoms_common::{
    packet::{MessageType, Packet, Part, Planet, ProtoPartFlags},
    proto_part_flags, proto_transform, unpack_savefile, PartType as c_PartType,
};

use super::component::{Input, Player};



@@ 166,8 169,7 @@ pub fn load_save(
            // HEY! GHOSTLY! THIS SAVE FILE IS VALID! PLEASE LOAD IT!
            // THANKS!

            let (children,
                _module_counts) = load_savefile(
            let (children, _module_counts) = load_savefile(
                commands,
                transform,
                id,

M crates/server/src/player/mod.rs => crates/server/src/player/mod.rs +13 -10
@@ 1,12 1,3 @@
use bevy::{ecs::event::ManualEventReader, math::vec2, prelude::*};
use bevy_rapier2d::prelude::*;
use client_login::packet_stream;
use component::Player;
use player_mouse_input::{attach_or_detach, mouse_picking};
use request_save::request_save;
use send_message::send_message;
use starkingdoms_common::{packet::Packet, PartType as c_PartType};
use starkingdoms_common::packet::{ClientLoginPacket, PlayerInputPacket, PlayerMouseInputPacket, RequestSavePacket, SendMessagePacket};
use crate::{
    config::StkConfig,
    crafting::components::IsMining,


@@ 21,6 12,18 @@ use crate::{
    ws::{PacketMessageConvert, WsEvent},
    AppKeys, CLIENT_SCALE,
};
use bevy::{ecs::event::ManualEventReader, math::vec2, prelude::*};
use bevy_rapier2d::prelude::*;
use client_login::packet_stream;
use component::Player;
use player_mouse_input::{attach_or_detach, mouse_picking};
use request_save::request_save;
use send_message::send_message;
use starkingdoms_common::packet::{
    ClientLoginPacket, PlayerInputPacket, PlayerMouseInputPacket, RequestSavePacket,
    SendMessagePacket,
};
use starkingdoms_common::{packet::Packet, PartType as c_PartType};

pub mod client_login;
pub mod component;


@@ 79,7 82,7 @@ pub fn on_message(
            let packet: Packet = err_or_cont!(Packet::from_message(message));

            match packet {
                Packet::ClientLogin(ClientLoginPacket{
                Packet::ClientLogin(ClientLoginPacket {
                    username,
                    save,
                    jwt,

M crates/server/src/player/packet.rs => crates/server/src/player/packet.rs +8 -6
@@ 1,15 1,17 @@
use bevy::{ecs::event::ManualEventReader, prelude::*};
use starkingdoms_common::{
    packet::{Packet, Part, Planet},
    proto_part_flags, proto_transform,
};
use starkingdoms_common::packet::{EnergyUpdatePacket, PartPositionsPacket, PlanetPositionsPacket, PlayerLeavePacket};
use crate::{
    module::component::{Attach, PartFlags, PartType},
    planet::PlanetType,
    ws::{PacketMessageConvert, WsEvent},
    CLIENT_SCALE,
};
use bevy::{ecs::event::ManualEventReader, prelude::*};
use starkingdoms_common::packet::{
    EnergyUpdatePacket, PartPositionsPacket, PlanetPositionsPacket, PlayerLeavePacket,
};
use starkingdoms_common::{
    packet::{Packet, Part, Planet},
    proto_part_flags, proto_transform,
};

use super::component::Player;


M crates/server/src/player/player_mouse_input.rs => crates/server/src/player/player_mouse_input.rs +4 -3
@@ 1,18 1,18 @@
use bevy::{math::vec3, prelude::*};
use bevy_rapier2d::prelude::*;

use super::component::Player;
use crate::{
    crafting::components::IsMining,
    module::component::{Attach, CanAttach, LooseAttach, PartFlags, PartType},
    planet::PlanetType,
    ws::{PacketMessageConvert, WsEvent},
};
use starkingdoms_common::packet::OpenCraftingUiPacket;
use starkingdoms_common::{
    packet::{ButtonType, Packet},
    PartType as c_PartType,
};
use starkingdoms_common::packet::OpenCraftingUiPacket;
use super::component::Player;

pub fn attach_or_detach(
    select: Entity,


@@ 193,7 193,8 @@ pub fn mouse_picking(
            if *button == ButtonType::Right {
                send_events.push(WsEvent::Send {
                    to: q_player.addr,
                    message: Packet::OpenCraftingUi(OpenCraftingUiPacket { id: entity.index() }).into_message(),
                    message: Packet::OpenCraftingUi(OpenCraftingUiPacket { id: entity.index() })
                        .into_message(),
                });
                // toggle mining
                /*if let Ok(mut is_mining) = mining_query.get_mut(entity) {

M crates/server/src/player/request_save.rs => crates/server/src/player/request_save.rs +4 -4
@@ 1,15 1,15 @@
use std::net::SocketAddr;

use bevy::prelude::*;
use bevy_rapier2d::prelude::Velocity;
use starkingdoms_common::{pack_savefile, packet::Packet, unpack_savefile, SaveData};
use starkingdoms_common::packet::SaveDataPacket;
use crate::{
    module::component::{Attach, CanAttach, LooseAttach, PartFlags, PartType},
    planet::PlanetType,
    ws::{PacketMessageConvert, WsEvent},
    AppKeys,
};
use bevy::prelude::*;
use bevy_rapier2d::prelude::Velocity;
use starkingdoms_common::packet::SaveDataPacket;
use starkingdoms_common::{pack_savefile, packet::Packet, unpack_savefile, SaveData};

use super::component::Player;