player now blockstile
This commit is contained in:
parent
8eb98b5baa
commit
454c2aab63
2 changed files with 21 additions and 21 deletions
40
src/main.rs
40
src/main.rs
|
|
@ -246,29 +246,27 @@ impl GameState for State {
|
|||
new_runstate = RunState::AwaitingInput;
|
||||
}
|
||||
RunState::AwaitingInput => {
|
||||
while particle_system::check_queue(&self.ecs) {
|
||||
// We refresh the index, and run anything that might
|
||||
// still be in the queue, just to make 100% sure that
|
||||
// there are no lingering effects from the last tick.
|
||||
self.refresh_indexes();
|
||||
effects::run_effects_queue(&mut self.ecs);
|
||||
// Sanity-checking that the player actually *should*
|
||||
// be taking a turn before giving them one. If they
|
||||
// don't have a turn component, go back to ticking.
|
||||
let mut can_act = false;
|
||||
{
|
||||
let player_entity = self.ecs.fetch::<Entity>();
|
||||
let turns = self.ecs.read_storage::<TakingTurn>();
|
||||
if let Some(_) = turns.get(*player_entity) {
|
||||
can_act = true;
|
||||
}
|
||||
}
|
||||
if can_act {
|
||||
new_runstate = player_input(self, ctx);
|
||||
} else {
|
||||
new_runstate = RunState::Ticking;
|
||||
// We refresh the index, and run anything that might
|
||||
// still be in the queue, just to make 100% sure that
|
||||
// there are no lingering effects from the last tick.
|
||||
self.refresh_indexes();
|
||||
effects::run_effects_queue(&mut self.ecs);
|
||||
// Sanity-checking that the player actually *should*
|
||||
// be taking a turn before giving them one. If they
|
||||
// don't have a turn component, go back to ticking.
|
||||
let mut can_act = false;
|
||||
{
|
||||
let player_entity = self.ecs.fetch::<Entity>();
|
||||
let turns = self.ecs.read_storage::<TakingTurn>();
|
||||
if let Some(_) = turns.get(*player_entity) {
|
||||
can_act = true;
|
||||
}
|
||||
}
|
||||
if can_act {
|
||||
new_runstate = player_input(self, ctx);
|
||||
} else {
|
||||
new_runstate = RunState::Ticking;
|
||||
}
|
||||
}
|
||||
RunState::Ticking => {
|
||||
while new_runstate == RunState::Ticking && particle_system::check_queue(&self.ecs) {
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ use super::{
|
|||
Skills,
|
||||
TileType,
|
||||
Viewshed,
|
||||
BlocksTile,
|
||||
};
|
||||
use crate::data::entity;
|
||||
use crate::gamesystem::*;
|
||||
|
|
@ -43,6 +44,7 @@ pub fn player(ecs: &mut World, player_x: i32, player_y: i32) -> Entity {
|
|||
let player = ecs
|
||||
.create_entity()
|
||||
.with(Position { x: player_x, y: player_y })
|
||||
.with(BlocksTile {})
|
||||
.with(Renderable {
|
||||
glyph: rltk::to_cp437('@'),
|
||||
fg: RGB::named(rltk::YELLOW),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue