gameScene을 다른 곳에서 쓰는 방법?
// fileprivate func tigRules_stresslessMode(_ vUpperBloc: AtomicBloc, _ vX: Int, _ vY: Int, _ effectX: CGFloat, _ effectY: CGFloat) {
// // Shape.random(startingColumn: GS.s.hjhPreviewXposition, startingRow: GS.s.hjhPreviewYposition)
// let blocYposition : Int = vUpperBloc.mYposition
// var tigRulesY : Int = vUpperBloc.mYposition
//
// while checkingDrawOrWin(typeUpper: vUpperBloc.mBlocType, typelower: GS.s.hjhBlocStorage?[vX, tigRulesY + 1]?.mBlocType ?? hjhBlocType.Rock) {
// debugPrint("tigRules2", vUpperBloc.mYposition)
//
// tigRulesY += 1
// if tigRulesY >= GS.s.hjhMaxBlocksVertical - 1 {
// // GS.s.hjhBlocStorage?[vX, GS.s.hjhMaxBlocksVertical - 1] = vUpperBloc
// tigRulesY -= 1
// break
// } else {
// // GS.s.hjhBlocStorage?[vX, tigRulesY] = vUpperBloc.copy(column: vUpperBloc.mXposition, row: vUpperBloc.mYposition, type: vUpperBloc.mBlocType)
// }
// }
//
//
// GS.s.hjhBlocStorage?[vX, tigRulesY]?.deletingMeFromStorage()
// let moveAction = SKAction.move(to: GS.s.gameScene?.spritePositionCalculator_(column: vX, row: tigRulesY) ?? CGPoint(x: 0,y: 0), duration: TimeInterval(0.2))
// moveAction.timingMode = .easeOut
// vUpperBloc.mSprite?.run(SKAction.sequence([SKAction.group([moveAction]), SKAction.removeFromParent()]))
//
// for i in blocYposition..<tigRulesY {
// totalScore += 10
//
// GS.s.hjhBlocStorage?[vX, i]?.mSprite?.alpha = 1000
// let hjhAction002 = SKAction.scale(to: 0, duration: 0.5)
// GS.s.hjhBlocStorage?[vX, i]?.mSprite?.run(
// SKAction.sequence(
// [SKAction.group([hjhAction002]),
// SKAction.removeFromParent()]
// )
// )
//
// GS.s.hjhBlocStorage?[vX, i]?.deletingMeFromStorage()
//
// let effect = eff_baamTwoBlocks(x: effectX, y: effectY)
// GS.s.gameScene?.addChild(effect)
// }
//
// }
간단하다. 싱글톤으로 쓰면 된다.
싱글톤 기법이 참 여러군데서 쓰이는데 C++ 전문 개발자 말고는 왠만하면 안 썼으면 한다.
프로그램 커지고 나면 메모리 단 까지 디버깅 할 수 있는 엔지니어야 괜찮은데
어설프게 쓰고 나서 코드 리뷰 들어가면, 결국 이직해야 하는 상황이 올 수도 있다.
뭐, 중간에 커뮤니케이션 잘 되는 실력 있는 개발자라면 같이 잘 해결하면 될 듯.
내가 추구하는 개발 문화까지 매 번 적으려니 노파심 쩐다. ㅋㅋㅋ 뭐 어쩔 수 있나...
다 통일해야 하는데.
최근댓글