Skip to content

Commit

Permalink
Refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
Vanessa Mae committed Mar 23, 2024
1 parent 10fd203 commit 50cf5c0
Show file tree
Hide file tree
Showing 5 changed files with 35 additions and 23 deletions.
Binary file not shown.
2 changes: 1 addition & 1 deletion TowerForge/TowerForge/GameWorld.swift
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ class GameWorld {
func setupPlayerInfo() {
let point = Point(initialPoint: 0)
entityManager.add(point)
renderer?.addNodeToScene(entity: point)
// renderer?.addNodeToScene(entity: point)
}
// TODO: Move contact handling to a system
func contactDidBegin(between idA: UUID, and idB: UUID) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,21 +14,21 @@ class LabelComponent: TFComponent {
self.text = text
super.init()
}
override func didAddToEntity(_ entity: TFEntity) {
self.entity = entity
guard let spriteComponent = entity.component(ofType: SpriteComponent.self) else {
return
}
let label = SKLabelNode(text: self.text)
label.fontName = "HelveticaNeue-Bold"
label.fontSize = 60.0
label.fontColor = .white
label.horizontalAlignmentMode = .center
label.verticalAlignmentMode = .center
label.position = CGPoint(x: spriteComponent.node.width, y: 0)
label.name = "point"
spriteComponent.node.addChild(label)
}
// override func didAddToEntity(_ entity: TFEntity) {
// self.entity = entity
// guard let spriteComponent = entity.component(ofType: SpriteComponent.self) else {
// return
// }
// let label = SKLabelNode(text: self.text)
// label.fontName = "HelveticaNeue-Bold"
// label.fontSize = 60.0
// label.fontColor = .white
// label.horizontalAlignmentMode = .center
// label.verticalAlignmentMode = .center
// label.position = CGPoint(x: spriteComponent.node.width, y: 0)
// label.name = "point"
// spriteComponent.node.addChild(label)
// }
func changeText(_ text: String) {
guard let spriteComponent = entity?.component(ofType: SpriteComponent.self),
let labelNode = spriteComponent.node.childNode(withName: "point") as? SKLabelNode else {
Expand Down
1 change: 1 addition & 0 deletions TowerForge/TowerForge/LevelManager/Entities/Point.swift
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,6 @@ class Point: TFEntity {
self.addComponent(HomeComponent(initialLifeCount: Team.lifeCount, pointInterval: Team.pointsInterval))
self.addComponent(LabelComponent(text: String(initialPoint)))
self.addComponent(PositionComponent(position: Point.position))
self.addComponent(PlayerComponent(player: .ownPlayer))
}
}
25 changes: 18 additions & 7 deletions TowerForge/TowerForge/Rendering/Renderer.swift
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@ class Renderer {
self.target = target
self.scene = scene
}
func addNodeToScene(entity: TFEntity) {
guard let spriteComponent = entity.component(ofType: SpriteComponent.self) else {
return
}
renderedNodes[entity.id] = spriteComponent.node
self.scene?.addChild(spriteComponent.node)
}
// func addNodeToScene(entity: TFEntity) {
// guard let spriteComponent = entity.component(ofType: SpriteComponent.self) else {
// return
// }
// renderedNodes[entity.id] = spriteComponent.node
// self.scene?.addChild(spriteComponent.node)
// }
func render() {
var nodesToBeRemoved = renderedNodes

Expand Down Expand Up @@ -56,6 +56,17 @@ class Renderer {
let playerComponent = entity.component(ofType: PlayerComponent.self) else {
return
}
if let labelComponent = entity.component(ofType: LabelComponent.self) {
let label = SKLabelNode(text: labelComponent.text)
label.fontName = "HelveticaNeue-Bold"
label.fontSize = 60.0
label.fontColor = .white
label.horizontalAlignmentMode = .center
label.verticalAlignmentMode = .center
label.position = CGPoint(x: spriteComponent.node.width, y: 0)
label.name = "point"
spriteComponent.node.addChild(label)
}

let node = spriteComponent.node
// Flips the image if it is the opposite team
Expand Down

0 comments on commit 50cf5c0

Please sign in to comment.