merge master

This commit is contained in:
2020-09-25 01:40:19 +03:00
8 changed files with 111 additions and 14 deletions

View File

@ -7,10 +7,12 @@ import (
"lab.zaar.be/thefish/alchemyst-go/engine/gamestate"
"lab.zaar.be/thefish/alchemyst-go/engine/types"
"lab.zaar.be/thefish/alchemyst-go/ui/mainwindow"
"lab.zaar.be/thefish/alchemyst-go/util/appctx"
"strings"
)
type DevmenuScreen struct {
ctx appctx.ClientCtx
mw *mainwindow.MainWindow
controller *ecs.Controller
scm *types.ScreenManager
@ -23,8 +25,9 @@ type DevmenuScreen struct {
fgColor string
}
func NewDevmenuScreen(mw *mainwindow.MainWindow, controller *ecs.Controller, scm *types.ScreenManager, state *gamestate.GameState, rect types.Rect, renderParent bool) *DevmenuScreen {
func NewDevmenuScreen(ctx appctx.ClientCtx, mw *mainwindow.MainWindow, controller *ecs.Controller, scm *types.ScreenManager, state *gamestate.GameState, rect types.Rect, renderParent bool) *DevmenuScreen {
return &DevmenuScreen{
ctx: ctx,
mw: mw,
controller: controller,
scm: scm,
@ -58,6 +61,7 @@ func (devm *DevmenuScreen) HandleInput(input string) {
level.Tiles[idx].Explored = false
}
devm.scm.SetScreen(devm.scm.PreviousScreen)
appctx.Logger(devm.ctx).Info().Msg("resetting to normal visibility")
break
case "v":
level := devm.state.Level
@ -65,13 +69,15 @@ func (devm *DevmenuScreen) HandleInput(input string) {
level.Tiles[idx].Visible = true
level.Tiles[idx].Explored = true
}
fmt.Printf("making everything visible!")
appctx.Logger(devm.ctx).Info().Msg("making everything visible")
devm.scm.SetScreen(devm.scm.PreviousScreen)
break
case "p":
if devm.controller.HasComponent(devm.state.Player, effects.BuffPassWall) {
appctx.Logger(devm.ctx).Info().Msg("disabling passwall")
devm.controller.RemoveComponent(devm.state.Player, effects.BuffPassWall)
} else {
appctx.Logger(devm.ctx).Info().Msg("enabling passwall")
devm.controller.AddComponent(devm.state.Player, effects.PassWall{})
}
case "Escape":

View File

@ -46,7 +46,7 @@ func (ts *GameScreen) UseEcs() bool { return true }
func (ts *GameScreen) Enter() {
ts.mw.GetLayer("overlay").ClearArea(0, ts.mw.H-3, 30, 3)
ts.mw.GetLayer("overlay").WithColor("#77777777").
Print(1, ts.mw.H-2, "Press [color=white]?[/color] for help")
Print(ts.mw.W - 17 , 1, "Press [color=white]?[/color] for help")
}
func (ts *GameScreen) Exit() {
//trs := ts.controller.GetSystem(ecs.LevelRenderSystem)

View File

@ -57,5 +57,5 @@ Roguebasin Libtcod Tutorial (c) 2010-2011, Jotaf Henriques
Brogue 1.3 (c) 2010 Brian Walker
Madness (c) 2010 hmp <humpolec@gmail.com>
BearLibTerminal (c) Cfyz 2009-2019 <http://foo.wyrd.name/en:bearlibterminal>
Gogue (c) jcerise
Gogue (c) 2019 jcerise
`