/// <summary> /// 创建星魂信息对象 /// </summary> /// <param name="array">元组数据结构</param> public StarSoulInfo createStarSoulInfo(ErlArray array) { StarSoulInfo starSoulInfo = new StarSoulInfo(); starSoulInfo.bytesRead(0, array); return(starSoulInfo); }
/// <summary> /// 回调读取通讯 /// </summary> /// <param name="message">Message.</param> public override void read(ErlKVMessage message) { string msgInfo = (message.getValue("msg") as ErlType).getValueString(); if (msgInfo == "info") { ErlType erlType = message.getValue("value") as ErlType; if (erlType is ErlArray) { StarSoulManager manager = StarSoulManager.Instance; ErlArray arr = erlType as ErlArray; StarSoulInfo starSoulInfo = manager.createStarSoulInfo(arr); manager.setStarSoulInfo(starSoulInfo); } else { UiManager.Instance.openDialogWindow <MessageWindow> ((win) => { win.initWindow(1, LanguageConfigManager.Instance.getLanguage("s0093"), null, erlType.getValueString(), null); }); } if (callback != null) { callback(); callback = null; } } else if (msgInfo == "lock") { ErlType erlType = message.getValue("value") as ErlType; if (erlType.getValueString() == "ok") { StarSoulManager manager = StarSoulManager.Instance; manager.updateStarSoulLockState(); StarSoulManager.Instance.cleanDic(); StorageManagerment.Instance.starSoulStorageVersion++; } else { UiManager.Instance.openDialogWindow <MessageWindow> ((win) => { win.initWindow(1, LanguageConfigManager.Instance.getLanguage("s0093"), null, erlType.getValueString(), null); }); } if (callback != null) { callback(); callback = null; } } }
/// <summary> /// 设置星魂信息对象 /// </summary> /// <param name="starSoulInfo">Star soul info.</param> public void setStarSoulInfo(StarSoulInfo starSoulInfo) { this.starSoulInfo = starSoulInfo; }