敌人从每一侧移动到屏幕的地方。坠落的敌人很容易在重力作用下制造。
但是,如何让敌人沿着x轴或从屏幕下方移动到顶部?
您可以使用SKAction:
let moveAction = SKAction.moveBy(x: 100, y: 100, duration: 2)
entity.run(moveAction)
这会将您的节点向上移动到右侧。
你可能不需要引力,关闭所有敌人节点上的affectedByGravity
,然后使用SKAction SKAction.moveBy(x:y:duration:)
让你的敌人向某个方向移动
如果你真的想通过引力移动东西,可以使用Linear Gravity SKFieldNode https://developer.apple.com/documentation/spritekit/skfieldnode
通过创建一个“垂直”线性重力场和一个“水平”线性场节点并正确使用fieldBitMask
,你可能会有一些物体垂直落下,因为它们受垂直重力场的影响而其他物体由于水平而“水平落下”水平重力场。