Spritekit Gameoverlay
-
21-12-2019 - |
题
如果2对象彼此匹配,则应出现一个游戏层,但它应该是透明的。这意味着,整个游戏场景应该显示,具有透明的游戏和得分等。 我可以配置。自己的场景,但我不知道如何在我的myscene.h中添加它。
2对象冲突的代码:
- (void)didBeginContact:(SKPhysicsContact *)contact
.
{ SkphysicsBody * Fornbody,* secondbody;
if (contact.bodyA.categoryBitMask < contact.bodyB.categoryBitMask)
{
firstBody = contact.bodyA;
secondBody = contact.bodyB;
}
else
{
firstBody = contact.bodyB;
secondBody = contact.bodyA;
}
if ((firstBody.categoryBitMask & StoneCategory) != 0 &&
(secondBody.categoryBitMask & HumanCategory) != 0)
{
// Here should be some code
}
.
}
解决方案
@interface yourScene()
@property (strong, nonatomic) SKSpriteNode *scoreMenu;
@end
.
...
if ((firstBody.categoryBitMask & StoneCategory) != 0 &&
(secondBody.categoryBitMask & HumanCategory) != 0)
{
self.scoreMenu = [SKSpriteNode spriteNodeWithImageNamed:@"ScoreMenuPicture.png"];
self.scoreMenu.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame));
self.scoreMenu.name = @"scoreMenu";
self.scoreMenu.yScale = 0.7;
self.scoreMenu.xScale = 0.5;
self.scoreMenu.alpha = 0.7;
[self addChild:self.scoreMenu];
}
.
相应地调整Y级,X级和Alpha到您的偏好。
另一个补救措施: 使用Alpha背景使用任何图像编辑软件(GIMP等)创建图像并将其添加到场景
不隶属于 StackOverflow