初始化方法写错也会报空指针异常, 我r!!
1.先得到生成的钉子组合平台的方向;
2.在得到钉子组合平台延伸平台的起始位子;
3.然后申明变量:生成钉子组合平台后,延伸需要生成平台的数量;
4. 在确认路径时判断是否正在生成延伸平台;
5. 在生成延伸平台时,同时主路径也生成平台,这里进行if判断;
先导入材质包,选一个最简单的台阶,
台阶的Sorting Layer添加一个Platfrom,将Platfrom调至Defult和GUI之间
每一个方块之间Position的值向右相差x = +0.554,y = +0.645。向左相差x = -0.554,y = +0.645
在一个原先的脚本ManagerVars,在后面添加一段代码
public float nextXPos = 0.554f, nextYPos = 0.645f;
在unity创建一个空对象并改名为PlatformSpawner,挂一个脚本PlatformSpawner,并添加一段代码
public Vector3 startSpawnPos;(将void start和void update删除)。
在unity里将空对象里的 start Spawn Pos里的Y值0改为-2.4,、
在unity里新建一个名为Prefabs的文件夹,
1 根据不同的主题 ,生成 对应的 平台 ,平台障碍物。
父物体 Platfrom 平台 障碍物 Obstacle
中心点还是正常的Platfrom 平台====
随机在左边 或者右边生成 障碍物-------------
Application.platform:所属平台
RuntimePlatform.Android:运行在安卓平台
uuu
1.给平台增加RigidBody 2D;
2.锁定旋转,并且切换成static;
3.选中Platform预制体,复制Sprite组件并移除
4.在预制体下创建空物体Platform,重置res并复制Sprite
5.复制一份Platform改名Obstacle,图片障碍0,位置-1.096
碰到障碍物游戏结束
6.障碍物添加Box2D,调整大小
冰系预制体
7.Platform预制体改名PlatformWinterGroup1,并且制成预制体放入新建文件夹中
8.Obstade0/3/6一样
草系预制体1/5PlatformGrassGroup1
通用预制体2/4PlatformCommonGroup1
流水三个
1.新建脚本PlatformScript
2.选中所有组合平台预制体添加脚本
3.一个方法外界对图进行设置,定义一个数组
public SpriteRenderer[] spriteRenderers;
public void Init(Sprite sprite)
{
for()
{
spriteRenderers[i].sprite=sprite;
}
}
4.在预制体中添加size
5.在PlatformSpawner脚本中
14min有生成路径的说明
RankPanel的实现流程:
同样的半透明黑色背景,并且背景也被当做成是退出按钮(个人感觉很是巧妙,因为排行榜界面很简单,只是一个显示成绩的作用,界面和脚本之间没有任何的交互,也让用户查看的非常的便捷,同时点击除了排行榜以外的任意位置作为退出,很好)
排行榜是由三个图片和三个text组成,点击弹出,点击别的位置退出
1.更新平台掉落时间的方法,在Update中调用;
和里程碑数有关;
2.掉落时间变更
问题一
我试着自己完成
我创建了一个方法用于获得BestScoreArr,也在Rank Panel中调用了,然后将BestScoreArr中的值赋给了txt_Score,但是并没有想到这个我获取的BestScoreArr是没有进行过排序的,额,主要是排序方法是在GameOverPanel时调用的。
1.砖石,给砖石添加碰撞器,刚体
2.修改砖石层级 ,标签
3.将砖石放入对象池
4.在生成平台后生成砖石
spike
1.按照路径生成钉子,右边对左边,左边对右边
2.int value=-1
3.生成钉子平台方法
int dir
4.把钉子放在Manager下方便拿取
5.GO temp
定义一个参与随机的数组obstacles
obstacle==0//右边
i==0//生成原来方向
先实例化一下普通平台
/如果钉子在左边,路径在右边