Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
N
Netrunner
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Olivia Foshaug Ingvaldsen
Netrunner
Merge requests
!12
Resolve "make the players stand before countdown"
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Resolve "make the players stand before countdown"
41-make-the-players-stand-before-countdown
into
master
Overview
0
Commits
7
Pipelines
2
Changes
5
Merged
Helena Steine Tysland
requested to merge
41-make-the-players-stand-before-countdown
into
master
2 years ago
Overview
0
Commits
7
Pipelines
2
Changes
5
Expand
Closes
#41 (closed)
0
0
Merge request reports
Compare
master
version 1
e8970d44
2 years ago
master (base)
and
latest version
latest version
ac0dae72
7 commits,
2 years ago
version 1
e8970d44
6 commits,
2 years ago
5 files
+
14536
−
38
Side-by-side
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
Files
5
Search (e.g. *.vue) (Ctrl+P)
core/src/tdt4240/netrunner/view/controllers/PlayerRenderer.kt
+
60
−
25
Options
@@ -2,45 +2,80 @@ package tdt4240.netrunner.view.controllers
@@ -2,45 +2,80 @@ package tdt4240.netrunner.view.controllers
import
com.badlogic.gdx.Gdx
import
com.badlogic.gdx.Gdx
import
com.badlogic.gdx.graphics.Color
import
com.badlogic.gdx.graphics.Color
import
com.badlogic.gdx.graphics.Texture
import
com.badlogic.gdx.scenes.scene2d.ui.Label
import
tdt4240.netrunner.game.Client
import
tdt4240.netrunner.game.GameController
import
tdt4240.netrunner.game.GameController
import
tdt4240.netrunner.model.game.EcsController
import
tdt4240.netrunner.model.game.EcsController
import
tdt4240.netrunner.model.game.EcsEngine
import
tdt4240.netrunner.model.game.EcsEngine
import
tdt4240.netrunner.model.game.components.dynamic.PositionComponent
import
tdt4240.netrunner.model.game.components.dynamic.PositionComponent
import
tdt4240.netrunner.model.game.components.dynamic.VelocityComponent
import
tdt4240.netrunner.model.game.components.living.DimensionComponent
import
tdt4240.netrunner.model.game.components.living.DimensionComponent
import
tdt4240.netrunner.model.game.components.living.PlayerComponent
import
tdt4240.netrunner.model.game.components.living.PlayerComponent
class
PlayerRenderer
(
val
gController
:
GameController
,
engine
:
EcsEngine
)
:
EcsController
(
engine
)
{
class
PlayerRenderer
(
val
gController
:
GameController
,
engine
:
EcsEngine
)
:
EcsController
(
engine
)
{
override
fun
render
()
{
override
fun
render
()
{
gController
.
game
.
batch
.
begin
()
val
labelStyle
=
Label
.
LabelStyle
()
labelStyle
.
font
=
gController
.
game
.
skin
.
getFont
(
"default-font"
)
labelStyle
.
fontColor
=
Color
.
WHITE
val
label
=
Label
(
" "
,
labelStyle
)
label
.
setFontScale
(
5F
,
5F
)
label
.
setPosition
(
20f
,
20f
)
//gController.stage.addActor(label)
val
players
=
super
.
ecs
.
getEntitiesByComponent
(
PlayerComponent
::
class
.
java
)
val
players
=
super
.
ecs
.
getEntitiesByComponent
(
PlayerComponent
::
class
.
java
)
for
(
player
in
players
)
{
for
(
player
in
players
)
{
gController
.
game
.
batch
.
begin
()
player
.
getComponent
(
PositionComponent
::
class
.
java
)
!!
.
also
{
pos
->
player
.
getComponent
(
PositionComponent
::
class
.
java
)
!!
.
also
{
pos
->
player
.
getComponent
(
PlayerComponent
::
class
.
java
).
also
{
playerComponent
->
player
.
getComponent
(
PlayerComponent
::
class
.
java
).
also
{
playerComponent
->
player
.
getComponent
(
DimensionComponent
::
class
.
java
)
!!
.
let
{
dims
->
player
.
getComponent
(
DimensionComponent
::
class
.
java
)
!!
.
let
{
dims
->
val
color
=
playerComponent
!!
.
color
player
.
getComponent
(
VelocityComponent
::
class
.
java
)
!!
.
also
{
velocity
->
gController
.
game
.
apply
{
val
color
=
playerComponent
!!
.
color
val
texture
=
characterTextures
[
color
]
!!
gController
.
game
.
apply
{
batch
.
draw
(
texture
.
getFrame
(),
pos
.
pos
.
x
,
if
(
velocity
.
velocity
.
x
==
0.0
.
toFloat
()){
pos
.
pos
.
y
,
val
standing
=
PlayerComponent
.
PLAYER_WIDTH
,
PlayerComponent
.
PLAYER_HEIGHT
batch
.
draw
(
)
Texture
(
playerComponent
.
color
.
graphicStand
),
texture
.
update
(
0.75
)
pos
.
pos
.
x
,
val
isCurrentPlayer
=
playerComponent
.
uid
==
gController
.
playerUid
pos
.
pos
.
y
,
PlayerComponent
.
PLAYER_WIDTH
,
font
.
color
=
if
(
isCurrentPlayer
)
Color
.
GREEN
else
Color
.
WHITE
PlayerComponent
.
PLAYER_HEIGHT
)
font
.
draw
(
batch
,
if
(
isCurrentPlayer
)
"You"
else
playerComponent
.
username
,
pos
.
pos
.
x
+
dims
.
dims
.
x
/
2f
,
}
else
{
pos
.
pos
.
y
+
dims
.
dims
.
y
-
45f
)
val
texture
=
characterTextures
[
color
]
!!
batch
.
draw
(
texture
.
getFrame
(),
pos
.
pos
.
x
,
pos
.
pos
.
y
,
PlayerComponent
.
PLAYER_WIDTH
,
PlayerComponent
.
PLAYER_HEIGHT
)
texture
.
update
(
Gdx
.
graphics
.
deltaTime
.
toDouble
())
}
val
isCurrentPlayer
=
playerComponent
.
uid
==
gController
.
playerUid
font
.
color
=
if
(
isCurrentPlayer
)
Color
.
GREEN
else
Color
.
WHITE
font
.
draw
(
batch
,
if
(
isCurrentPlayer
)
"You"
else
playerComponent
.
username
,
pos
.
pos
.
x
+
dims
.
dims
.
x
/
2f
,
pos
.
pos
.
y
+
dims
.
dims
.
y
-
45f
)
}
}
}
// TODO: render username
}
}
// TODO: render username
}
}
}
gController
.
game
.
batch
.
end
()
}}}}
}
gController
.
game
.
batch
.
end
()
}
}
\ No newline at end of file
Loading