diff options
| author | Physcik <mynameisgennadiy@vk.com> | 2026-01-12 00:41:09 +0500 |
|---|---|---|
| committer | Physcik <mynameisgennadiy@vk.com> | 2026-01-12 00:41:09 +0500 |
| commit | 2cf8b5cad01cb67b71d51834ca8d048cfddd69e6 (patch) | |
| tree | 409ba57e7a372b9834cd89048427019b991ea78c /engine/Components/World.go | |
| parent | 4c614ef14ebf4c3cd16c1e96283dc3763b9b0d0a (diff) | |
Character creation start
Diffstat (limited to 'engine/Components/World.go')
| -rw-r--r-- | engine/Components/World.go | 31 |
1 files changed, 9 insertions, 22 deletions
diff --git a/engine/Components/World.go b/engine/Components/World.go index 0605703..7e6e8e3 100644 --- a/engine/Components/World.go +++ b/engine/Components/World.go @@ -11,6 +11,8 @@ type World struct { Name string Floor []FloorTile + Player *Player + Camera *rl.Camera2D } @@ -22,30 +24,14 @@ func (base *World) Destroy() { } func (base *World) Update() { - base.handleFreecam() + base.Player.Update() + base.Player.SnapCamera(base.Camera) + base.handleZoom() } -func (base *World) handleFreecam() { - var speed = 150 * rl.GetFrameTime() - var zoomSpeed = 0.2 * rl.GetFrameTime() - if rl.IsKeyDown(rl.KeyW) { - base.Camera.Target.Y -= speed - } - if rl.IsKeyDown(rl.KeyS) { - base.Camera.Target.Y += speed - } - if rl.IsKeyDown(rl.KeyA) { - base.Camera.Target.X -= speed - } - if rl.IsKeyDown(rl.KeyD) { - base.Camera.Target.X += speed - } - if rl.IsKeyDown(rl.KeyEqual) { - base.Camera.Zoom += zoomSpeed - } - if rl.IsKeyDown(rl.KeyMinus) { - base.Camera.Zoom -= zoomSpeed - } +func (base *World) handleZoom() { + var zoomSpeed = 50 * rl.GetFrameTime() + base.Camera.Zoom += zoomSpeed * rl.GetMouseWheelMove() } func (base *World) Draw() { @@ -54,6 +40,7 @@ func (base *World) Draw() { for _, v := range base.Floor { v.Draw() } + base.Player.Draw() } // The single texture drawn at level 0 of the world |
