回答編集履歴
1
drag or drug
answer
CHANGED
@@ -11,4 +11,23 @@
|
|
11
11
|
|
12
12
|
touchesMovedを修正すれば関係なくなるのでサラっと書きます。
|
13
13
|
|
14
|
-
`.location(in: self)`を使っているので、取得できる座標は自分自身(**Square**)のローカル座標になってしまいます。その座標をScene座標系として使って(セットして)いるために、変な位置に移動&元の位置に戻る、を繰り返してしまいます。
|
14
|
+
`.location(in: self)`を使っているので、取得できる座標は自分自身(**Square**)のローカル座標になってしまいます。その座標をScene座標系として使って(セットして)いるために、変な位置に移動&元の位置に戻る、を繰り返してしまいます。
|
15
|
+
|
16
|
+
# 本来やりたかったこと
|
17
|
+
|
18
|
+
> 四角をドラッグしたときだけ移動するようにしたかったです。
|
19
|
+
|
20
|
+
ということなので、現状のコードを少し修正すればOKです。
|
21
|
+
タップした座標をSceneの座標系で取得します。
|
22
|
+
|
23
|
+
```swift
|
24
|
+
let location = touches.first!.location(in: self.gameScene)
|
25
|
+
```
|
26
|
+
|
27
|
+
ちゃんと書くならこうです。
|
28
|
+
|
29
|
+
```swift
|
30
|
+
if let location = touches.first?.location(in: self.gameScene) {
|
31
|
+
self.position = location
|
32
|
+
}
|
33
|
+
```
|