Skip to content

关于游戏资源加载顺序和联网功能处理

psy edited this page Apr 29, 2016 · 4 revisions

关于游戏资源加载顺序和联网功能处理

  1. 本地增加了mark-sgt-html5-game字段标示。

  2. 首次不用加载资源可分为两类, res1就是不管有无角色都可以延后加载(比如充值、邮件等需要进入游戏后用户去触发执行),res2 是如果有角色就必须加载。

var res1 = [res.hero_102_json,res.hero_103_json,res.hero_104_json,res.hero_105_json,res.hero101skill02,res.hero102skill02,res.hero103skill01,res.hero104skill02,res.effect5003,res.effect5004,res.effect5005,res.effect5006,res.effect5007,res.effect5008,res.effect5009,res.effect5010,res.enemy_1003_json,res.enemy_1004_json,res.enemy_1005_json];

var res2 = [res.mail_view_json ,res.mail_layer_json,res.first_recharge_layer_json,res.recharge_layer_json,res.recharge_icon_layer_json,res.hero_desc_json,res.prompt1_layer_json,res.prompt2_layer_json,res.prompt_icon_json,res.offline_reward_layer,res.skill_desc_json,res.pack_layer_json,res.statistics_layer];

在resource.js 中增加full_resources 、getFirstResources()、getSecondResource(). full_resources 全部res资源 本地有标示时执行 与登陆注册并行执行 getFirstResources 获取除了res1、res2之外的所有资源。 本地没有标示,在登陆注册后执行加载这部分数据 getSecondResource 获取res2的资源 本地没有标示 本地没有标示,在点击开始游戏后如果角色存在则执行加载这部资源 3. 加载顺序分为三种情况 * 本地有标示,直接加载全部资源full_resouces和登陆/注册、获取存档等并行执行(async.parallel)后,进入cover页面。 * 如果本地没有标示,先执行登陆注册获取存档等操作后,最后同步加载getFirstResources后,才进入cover页面,然后执行cover动画时,并行执行(async.parallel)获取服务器信息(这里会首先根据本地存储最近登录服务器信息显示,没有则联网取所有服务器数据,并默认显示最新的服务器)和全服公告信息。 * 如果本地没有标示, 点击开始游戏 会判断当前用户是否存在角色,如果存在则加载getSecondResource资源后,才能进入游戏,如果不存在角色,直接进入游戏。