composition/src/main.rs
2021-03-01 19:24:46 -07:00

45 lines
1.2 KiB
Rust

#![allow(unused_imports)]
#![allow(non_snake_case)]
pub mod mctypes;
pub mod net;
pub mod server;
use log::{debug, error, info, warn};
use net::NetworkServer;
use server::GameServer;
use std::time::{Duration, Instant};
pub fn main() {
let start_time = Instant::now();
// Set up fern logging.
fern::Dispatch::new()
.format(move |out, message, record| {
out.finish(format_args!(
"[{date}][{target}][{level}] {message}",
date = chrono::Local::now().format("%Y-%m-%d %H:%M:%S"),
target = record.target(),
level = record.level(),
message = message,
))
})
.level(log::LevelFilter::Debug)
.chain(std::io::stdout())
.chain(fern::log_file("output.log").unwrap())
.apply()
.unwrap();
info!("Starting server...");
// Start the network.
let network = NetworkServer::new("0.0.0.0:25565");
let mut server = GameServer { network: network };
info!("Done! Start took {:?}", start_time.elapsed());
// The main server loop.
loop {
server.update();
std::thread::sleep(Duration::from_millis(2));
}
}