《Cocos2d 跨平台游戏开发指南(第2版)》一2.6 在场景之间进行过渡切换

简介:

本节书摘来异步社区《Cocos2d 跨平台游戏开发指南(第2版)》一书中的第2章,第2.6节,作者: 【印度】Siddharth Shekar(谢卡)译者: 武传海 责编: 胡俊英,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.6 在场景之间进行过渡切换

在本部分中,我们将讨论如何在场景之间进行过渡切换。

2.6.1 准备工作

绝大部分准备工作已经在前面完成,接下来,让我们专心编写代码。由于我们希望从一个场景过渡到GameplayScene场景,所以必须先把GameplayScene类导入到MainScene.m文件,代码如下:

#import "GameplayScene.h"

2.6.2 操作步骤

接着,在MainScene.m文件的playBtnPressed函数中,添加如下粗体代码:

-(void)playBtnPressed:(id)sender{

  CCLOG(@"play button pressed");

  [[CCDirector sharedDirector] replaceScene:
    [[GameplayScene alloc]
    initWithLevel:@"1"]];
}

2.6.3 工作原理

当我们按play按钮时,游戏将会加载GameplayScene场景,显示“GameplayScene”文本,并且显示当前所选的游戏难度级别1,如图2-6所示。


2_6

2.6.4 更多内容

接下来,我们添加一个重置按钮,以及按下重置按钮要调用的函数,它会让我们从GameplayScene返回到MainMenu场景中。在GameplayScene.m文件中,修改resetButtonPressed函数,代码如下。这样一来,当我们按重置按钮时,就会从当前场景切换回MainMenu场景之中。

-(void)resetBtnPressed:(id)sender{

  CCLOG(@"reset button pressed");

  [[CCDirector sharedDirector]
    replaceScene:[[MainScene alloc] init]];

}

运行代码,按下重置按钮,将返回主菜单场景中。

相关文章
|
11月前
|
XML 安全 Java
|
8月前
|
域名解析 网络协议 Ubuntu
dig 命令深入学习
dig 命令(Domain Information Groper)是一个用于查询 DNS (域名系统)记录的强大工具,它提供了详细的DNS信息,主要用于帮助用户诊断、调试和验证与域名解析相关的问题。
|
12月前
|
传感器 缓存 网络协议
CoAP 协议与 HTTP 协议的区别
CoAP(Constrained Application Protocol)协议是为资源受限的设备设计的轻量级协议,适用于物联网场景。相比HTTP,CoAP具有低功耗、低带宽占用和简单易实现的特点,支持多播通信和无连接的交互模式。
ly~
|
缓存 监控 编译器
如何优化 SDL 图形库在不同系统中的性能
SDL(Simple DirectMedia Layer)是一个跨平台的多媒体开发库,用于优化不同系统中的图形库性能。在银河麒麟系统中,通过SDL渲染模式提升视频监控客户端性能,支持更多播放路数。优化方法包括:1) 图像加载时使用SDL_ConvertSurface转换图像格式,避免内存中存在多份拷贝;2) 在VSCode下配置SDL时,合理设置编译器选项和项目架构,减少API调用带来的性能开销;3) 使用SDL库在景嘉微7200显卡上优化渲染性能,提高播放路数。综合考虑图像加载优化、系统特性利用及硬件兼容性,以实现最佳性能。
ly~
717 6
|
机器学习/深度学习 Serverless 图计算
【视频】时间序列分析:ARIMA-ARCH / GARCH模型分析股票价格-2
【视频】时间序列分析:ARIMA-ARCH / GARCH模型分析股票价格
|
Java 数据库连接 Spring
如何在IDEA中自定义模板、快速生成完整的代码?
这篇文章介绍了如何在IntelliJ IDEA中使用easycode插件自定义代码生成模板,以快速生成Spring Boot、MyBatis等项目中常见的Controller、Service、Dao、Mapper等组件的代码。
如何在IDEA中自定义模板、快速生成完整的代码?
|
机器学习/深度学习 数据采集 人工智能
预测知识 | 机器学习预测模型局限性
预测知识 | 机器学习预测模型局限性
|
安全 Java 网络安全
如何在Java中处理SSLHandshakeException异常?
如何在Java中处理SSLHandshakeException异常?
2175 1
|
开发框架 编解码 移动开发
从网页到应用:探索在线生成App的方法
本文介绍了如何在线生成App,将网页封装成App的技术方法和步骤。通过使用特定的工具和框架,开发者可以将现有的网页转化为功能完善的移动应用程序,提供更好的用户体验和便捷的访问方式。
369 0
|
存储 关系型数据库 MySQL
失物招领|基于Web的校园失物招领系统的设计与实现
失物招领|基于Web的校园失物招领系统的设计与实现
1770 0