95 lines
4.4 KiB
Swift
95 lines
4.4 KiB
Swift
//
|
|
// SettingsScene.swift
|
|
// GoldWars
|
|
//
|
|
// Created by Tim Herbst on 10.05.20.
|
|
// Copyright © 2020 SP2. All rights reserved.
|
|
//
|
|
|
|
import SpriteKit
|
|
|
|
class SettingsScene: SKScene {
|
|
var entityManager: EntityManager!
|
|
|
|
override func sceneDidLoad() {
|
|
entityManager = EntityManager(scene: self)
|
|
let positionX = self.size.width * 0.1
|
|
let positionY = self.size.height * 0.05
|
|
|
|
entityManager.add(Button(name: "backToMenuScene",
|
|
iconName: "",
|
|
text: "Back",
|
|
position: CGPoint(x: positionX, y: positionY),
|
|
onButtonPress: {
|
|
self.loadScene(scene: MenuScene(size: self.size))
|
|
}))
|
|
entityManager.add(Button(name: "StopMenuMusic",
|
|
iconName: "",
|
|
text: "ON/OFF",
|
|
position: CGPoint(x: self.size.width * 0.6, y: self.size.height / 2),
|
|
onButtonPress: {
|
|
if SoundManager.sharedInstance.isMusicPlaying {
|
|
SoundManager.sharedInstance.stopMenuMusic()
|
|
SoundManager.sharedInstance.isMusicEnabled = false
|
|
} else {
|
|
SoundManager.sharedInstance.isMusicEnabled = true
|
|
SoundManager.sharedInstance.startMenuMusic()
|
|
}
|
|
}))
|
|
entityManager.add(Button(name: "StopMovingBackground",
|
|
iconName: "",
|
|
text: "MOVE/STOP",
|
|
position: CGPoint(x: self.size.width * 0.6, y: self.size.height / 2 - 100),
|
|
onButtonPress: {
|
|
if BackgroundComponent.isMovingBackgroundEnabled {
|
|
BackgroundComponent.isMovingBackgroundEnabled = false
|
|
} else {
|
|
BackgroundComponent.isMovingBackgroundEnabled = true
|
|
}
|
|
}))
|
|
entityManager.add(Label(fontnamed: "Courier-Bold",
|
|
name: "SettingsLabel",
|
|
text: "Settings",
|
|
fontSize: 200.0,
|
|
fontColor: .black,
|
|
position: CGPoint(x: self.size.width * 0.5, y: self.size.height * 0.7),
|
|
horizontalAlignmentMode: .center,
|
|
vertikalAligmentMode: .baseline,
|
|
isAnimationEnabled: true,
|
|
isAnimationInfinite: true)
|
|
)
|
|
entityManager.add(Label(fontnamed: "Courier-Bold",
|
|
name: "LabelMusic",
|
|
text: "Music", fontSize: 50.0,
|
|
fontColor: .black,
|
|
position: CGPoint(x: self.size.width * 0.5, y: self.size.height / 2 - 15),
|
|
horizontalAlignmentMode: .right,
|
|
vertikalAligmentMode: .baseline,
|
|
isAnimationEnabled: true,
|
|
isAnimationInfinite: false)
|
|
)
|
|
entityManager.add(Label(fontnamed: "Courier-Bold",
|
|
name: "LabelBackground",
|
|
text: "Background",
|
|
fontSize: 50.0,
|
|
fontColor: .black,
|
|
position: CGPoint(x: self.size.width * 0.5, y: self.size.height / 2 - 115),
|
|
horizontalAlignmentMode: .right,
|
|
vertikalAligmentMode: .baseline,
|
|
isAnimationEnabled: true,
|
|
isAnimationInfinite: false)
|
|
)
|
|
entityManager.add(Background(size: self.size))
|
|
}
|
|
|
|
func loadScene(scene: SKScene) {
|
|
let transition = SKTransition.flipVertical(withDuration: 0.5)
|
|
self.view?.presentScene(scene, transition: transition)
|
|
}
|
|
|
|
override func update(_ currentTime: TimeInterval) {
|
|
entityManager.getBackground()!.update(deltaTime: currentTime)
|
|
}
|
|
|
|
}
|