相关疑难解决方法(0)

Sprite Kit设置Min.和马克斯.跳跃

我想在上面移动一个SKSpriteNode Y-Axis.名为Player的SKSpriteNode没有Velocity.播放器只有在平台接触时才能跳转.

每次触摸屏幕时,我都想给玩家一个最小冲动或最大冲动的冲动

如果屏幕很快被点击,最小脉冲应该是例如y = 50.如果屏幕被保持,这意味着手指在屏幕上长,最大值应该是例如y = 100.

但是玩家也应该能够在最小高度和最高高度之间跳跃,如果对于例如屏幕不长但也没有很快按下,玩家应该只能得到一个冲动y = 70.

如果屏幕被保持,播放器应该跳到他的最大高度,跌倒,如果它再次与平台接触,它应该跳,因为你仍然按住屏幕.

我已经尝试过这个线程中的建议答案:StackOverFlow 但是这不会给出最小跳跃,也没有按下跳转.

为清楚起见:冲击不应该在敲击完成后,而是在敲击时.你握的时间越长,跳跃的时间就越长.

import SpriteKit
import GameKit

struct Constants {

static let minimumJumpForce:CGFloat = 40.0
static let maximumJumpForce:CGFloat = 60.0
static let characterSideSpeed:CGFloat = 18.0
}

class GameScene: SKScene, SKPhysicsContactDelegate {

var Player: SKSpriteNode!

var Platform0: SKSpriteNode!

var World: SKNode!
var Camera: SKNode!

var force: CGFloat = 40.0

var pressed = false

var isCharacterOnGround = false

.....

func …
Run Code Online (Sandbox Code Playgroud)

game-physics ios sprite-kit swift

14
推荐指数
1
解决办法
1325
查看次数

标签 统计

game-physics ×1

ios ×1

sprite-kit ×1

swift ×1