dev menu, buffs

This commit is contained in:
anton.gurov
2019-11-12 15:57:20 +03:00
parent 7837051e80
commit 6197e3be8e
9 changed files with 94 additions and 76 deletions

View File

@ -39,28 +39,28 @@ func (ts *GameScreen) HandleInput(input string) {
//ts.state.Do(func(){
switch input {
case "Up", "k", "KP_8":
ts.walk(ts.state, 0, -1)
movement.Walk(ts.state.Player, ts.state, 0, -1)
break
case "Down", "j", "KP_2":
ts.walk(ts.state, 0, 1)
movement.Walk(ts.state.Player, ts.state, 0, 1)
break
case "Left", "h", "KP_4":
ts.walk(ts.state, -1, 0)
movement.Walk(ts.state.Player, ts.state, -1, 0)
break
case "Right", "l", "KP_6":
ts.walk(ts.state, 1, 0)
movement.Walk(ts.state.Player, ts.state, 1, 0)
break
case "y", "KP_7":
ts.walk(ts.state, -1, -1)
movement.Walk(ts.state.Player, ts.state, -1, -1)
break
case "u", "KP_9":
ts.walk(ts.state, 1, -1)
movement.Walk(ts.state.Player, ts.state, 1, -1)
break
case "b", "KP_1":
ts.walk(ts.state, -1, 1)
movement.Walk(ts.state.Player, ts.state, -1, 1)
break
case "n", "KP_3":
ts.walk(ts.state, 1, 1)
movement.Walk(ts.state.Player, ts.state, 1, 1)
break
case "Shift+/":
ts.scm.SetScreenByName("help")
@ -76,7 +76,6 @@ func (ts *GameScreen) HandleInput(input string) {
ts.mw.GetLayer("base").ClearArea(0, 3, 40, 1)
ts.mw.GetLayer("base").Print(1, 3, "Key: "+input)
ts.mw.GetLayer("base").Print(1, 6, "█")
}
//})
}
@ -85,16 +84,4 @@ func (ts *GameScreen) Render() {
ts.vp.Render(ts.state)
}
func (ts *GameScreen) walk(state *gamestate.GameState, dx, dy int) {
controller := state.Controller
coords := controller.GetComponent(state.Player, ecs.CoordsComponent).(types.Coords)
newCoords := types.Coords{coords.X + dx, coords.Y + dy}
movable := controller.GetComponent(state.Player, ecs.MoveableComponent).(movement.Moveable)
if !movable.IsBlocked(newCoords) {
controller.UpdateComponent(state.Player, ecs.CoordsComponent, newCoords)
}
state.Redraw <- struct{}{}
state.FovRecompute <- struct{}{}
}