本地存储

/**
         * 获得指引ID,新手引导走到哪一步
         */
        public getGuideId():number {
            var key:string = PlayerService.instance.puid + "_" + Global.serverId + "_guide";
            var id:number = parseInt(egret.localStorage.getItem(key));
            if (id && id > 0) {
                return id;
            }
            return 1;
        }

        /**
         * 保存指引ID
         */
        public saveGuideId():void {
            var key:string = PlayerService.instance.puid + "_" + Global.serverId + "_guide";
            egret.localStorage.setItem(key, this.nowId.toString());
        }
    }

本地存储 用到egret.localStorage,本身是一个hasMap,即键值对

key的生成就是 玩家的puid+_+服务器的Id+_guide;

获取的方式也是key。这样就保证了同一个账号,不同账号之间在本地都有个需要存储的值,一一对应。简洁方便!!!!


下面是保存玩家最近登录的服务器信息。也是存储在本地文件中

<span style="white-space:pre">	</span>//最近登录列表
                var historyServer: string = egret.localStorage.getItem("gjgame_servers_" + PlayerService.instance.puid);<pre name="code" class="javascript"> <span style="white-space:pre">	</span>/**
         * 收到登录返回
         * @param data
         */
        private recvLogin(data:any):void {
            // LoadManager.instance.load("main",this.onLogin, this);
            //服务器系统时间
            PlayerService.instance.sysTime = data.timeStamp;
            //防止进入多次,来到这变设为false
            Global.isNewPlayer = false;
            //记录登录名
            egret.localStorage.setItem("gjgame_puid", PlayerService.instance.puid);
<span style="white-space:pre">	</span>    if (!Global.isInit) {
               //记录服务器
               this.saveServerId();
<span style="white-space:pre">	</span>   }
<span style="white-space:pre">	</span>}

<span style="white-space:pre">	 /**
         * 保存服务器ID
         */
        private saveServerId():void {
            var serverIds:string[];
            var servers:string = egret.localStorage.getItem("gjgame_servers_" + PlayerService.instance.puid);
            if (servers) {
                serverIds = servers.split(",");
                if (serverIds) {
                    var index:number = serverIds.indexOf(Global.serverId);
                    while (index > -1) {
                        serverIds.splice(index, 1);
                        index = serverIds.indexOf(Global.serverId);
                    }
                }
            } else {
                serverIds = [];
            }
            serverIds.push(Global.serverId);
            var idStr:string = serverIds.join(",");
            egret.localStorage.setItem("gjgame_servers_" + PlayerService.instance.puid, idStr);
        }</span>


 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值