private static void filemap_add(IOwinContext context, FormData formdata) { if (formdata.mapParams.ContainsKey("url") && formdata.mapParams.ContainsKey("pathondrive")) { var b = CustomServer.AddStaticFileMap(formdata.mapParams["url"], formdata.mapParams["pathondrive"]); if (b) { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(0); context.Response.Write(json.ToString()); return; } else { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(-2); json["msg"] = new MyJson.JsonNode_ValueString("add filemap fail."); context.Response.Write(json.ToString()); return; } } else { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(-1); json["msg"] = new MyJson.JsonNode_ValueString("need param: url & pathondrive."); context.Response.Write(json.ToString()); return; } }
public MyJson.IJsonNode Parser(Component com, NeedList list) { MeshRenderer t = com as MeshRenderer; var json = new MyJson.JsonNode_Object(); json["castShadows"] = new MyJson.JsonNode_ValueNumber(t.castShadows); json["receiveShadows"] = new MyJson.JsonNode_ValueNumber(t.receiveShadows); json["useLightProbes"] = new MyJson.JsonNode_ValueNumber(t.useLightProbes); int meshcount = t.sharedMaterials.Length; json["materials"] = new MyJson.JsonNode_Array(); foreach (var m in t.sharedMaterials) { MyJson.JsonNode_Object matobj = new MyJson.JsonNode_Object(); json["materials"].AddArrayValue(matobj); matobj.SetDictValue("name", m.name); matobj.SetDictValue("shader", m.shader.name); matobj.SetDictValue("shaderkeyword", new MyJson.JsonNode_Array()); foreach (var shaderkey in m.shaderKeywords) { matobj["shaderkeyword"].AddArrayValue(shaderkey); } if (m.mainTexture != null) { string name = AssetMgr.SaveTexture(m.mainTexture, System.IO.Path.Combine(Application.streamingAssetsPath, "texture")); matobj.SetDictValue("maintex", name); list.AddDependTexture(name); } } return json; }
public async Task HandleRequest(IOwinContext context, string rootpath, string relativePath) { var api = relativePath.ToLower(); var formdata = await FormData.FromRequest(context.Request); if (formdata == null) { context.Response.StatusCode = 500; context.Response.ContentType = "text/plain"; MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["msg"] = new MyJson.JsonNode_ValueString("formdata format error."); json["tag"] = new MyJson.JsonNode_ValueNumber(-1); await context.Response.WriteAsync(json.ToString()); return; } if (relativePath == "parse") { await parse(context, formdata); return; } else { await help(context, formdata); return; } }
public void CreateFlyItem(int hp, int life, string str, Vector3 vec, int dir) { Action ctask = () => { var p = new MyJson.JsonNode_Object(); p["pushbox"] = new MyJson.JsonNode_ValueNumber(true); int cc = battleField.Cmd_CreateChar(str, 1, p); var pos = ap.transform.position; battleField.Cmd_Char_Pos(cc, new Vector3(pos.x, pos.y + 1, pos.z)); //注册控制器 battleField.RegCharactorController(new CharController_Direct(cc, 1, null)); var _cc = (battleField as BattleField).GetCharactorController(cc) as CharController_Direct; _cc.SetParam("hp", hp); _cc.SetCCLife(life); _cc.type = "flyitem"; /* Debug.Log("给对方加力:");*/ vec.x *= dir; _cc.fightFSM.AddForceSpeed(vec); _cc.SetForce(9.8f, 0f); //其他 battleField.GetRealChar(cc).transform.GetComponent <FB.FFSM.com_FightFSM>().debugMode = false; AddChild(cc); }; battleField.queueTask(ctask); }
public void WriteToJson(IResMgr resmgr, GameObject node, Component component, MyJson.JsonNode_Object json) { SkinnedMeshRenderer ic = component as SkinnedMeshRenderer; //json["type"] = new MyJson.JsonNode_ValueString(this.comptype.Name.ToLower());//必须的一行 //放到外面去了 //材质 MyJson.JsonNode_Array mats = new MyJson.JsonNode_Array(); json["mats"] = mats; foreach (var m in ic.sharedMaterials) { string hash = resmgr.SaveMat(m); mats.Add(new MyJson.JsonNode_ValueString(hash)); } //bounds json["center"] = new MyJson.JsonNode_ValueString(StringHelper.ToString(ic.localBounds.center)); json["size"] = new MyJson.JsonNode_ValueString(StringHelper.ToString(ic.localBounds.size)); //mesh json["mesh"] = new MyJson.JsonNode_ValueString(resmgr.SaveMesh(ic.sharedMesh)); json["rootboneobj"] = new MyJson.JsonNode_ValueNumber(ic.rootBone.gameObject.GetInstanceID()); MyJson.JsonNode_Array bones = new MyJson.JsonNode_Array(); foreach (var b in ic.bones) { bones.Add(new MyJson.JsonNode_ValueNumber(b.gameObject.GetInstanceID())); } json["boneobjs"] = bones; ic.rootBone.GetInstanceID(); }
private static async Task file_list(IOwinContext context, FormData formdata) { if (formdata.mapParams.ContainsKey("url") && formdata.mapParams.ContainsKey("path")) { var p = CustomServer.GetStaticFileParser(formdata.mapParams["url"]); if (p != null) { var dirs = System.IO.Directory.GetDirectories(p.pathOnDrive); var files = System.IO.Directory.GetFiles(p.pathOnDrive); MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(0); MyJson.JsonNode_Array _files = new MyJson.JsonNode_Array(); MyJson.JsonNode_Array _dirs = new MyJson.JsonNode_Array(); json["files"] = _files; json["subpaths"] = _dirs; foreach (var d in dirs) { MyJson.JsonNode_Object item = new MyJson.JsonNode_Object(); item.SetDictValue("name", d); _dirs.Add(item); } foreach (var f in files) { MyJson.JsonNode_Object item = new MyJson.JsonNode_Object(); item.SetDictValue("name", f); try { System.IO.FileInfo finfo = new System.IO.FileInfo(f); item.SetDictValue("length", finfo.Length); } catch { } _files.Add(item); } await context.Response.WriteAsync(json.ToString()); return; } else { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(-2); json["msg"] = new MyJson.JsonNode_ValueString("file_list fail."); await context.Response.WriteAsync(json.ToString()); return; } } else { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(-1); json["msg"] = new MyJson.JsonNode_ValueString("need param: url & path."); await context.Response.WriteAsync(json.ToString()); return; } }
private static async Task parse(IOwinContext context, FormData formdata) { if (formdata.mapParams.ContainsKey("language") && formdata.mapFiles.ContainsKey("file")) { var l = formdata.mapParams["language"].ToLower(); if (l == "csharp") { await parseCSharp(context, formdata); } else if (l == "java") { await parseJAVA(context, formdata); } else { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(-5); json["msg"] = new MyJson.JsonNode_ValueString("fail language."); await context.Response.WriteAsync(json.ToString()); } } else { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(-1); json["msg"] = new MyJson.JsonNode_ValueString("need param: language & file."); await context.Response.WriteAsync(json.ToString()); return; } }
private static async Task filemap_remove(IOwinContext context, FormData formdata) { if (formdata.mapParams.ContainsKey("url")) { var b = CustomServer.RemoveStaticFileMap(formdata.mapParams["url"]); if (b) { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(0); await context.Response.WriteAsync(json.ToString()); return; } else { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(-2); json["msg"] = new MyJson.JsonNode_ValueString("remove filemap fail."); await context.Response.WriteAsync(json.ToString()); return; } } else { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(-1); json["msg"] = new MyJson.JsonNode_ValueString("need param: url."); await context.Response.WriteAsync(json.ToString()); return; } }
private static void signCallBack(byte[] outdata, string hashstr, bool suc) { if (iOwinContext == null) { return; } //读出来,拼为http响应,发回去 MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); if (suc) { json["tag"] = new MyJson.JsonNode_ValueNumber(0); json["msg"] = new MyJson.JsonNode_ValueString("success"); json["srchash"] = new MyJson.JsonNode_ValueString(hashstr); var pubkeylen = outdata[0]; var pubkey = new byte[pubkeylen]; Array.Copy(outdata, 1, pubkey, 0, pubkeylen); var signdata = outdata.Skip(pubkeylen + 1).ToArray(); json["signdata"] = new MyJson.JsonNode_ValueString(SignTool.Bytes2HexString(signdata, 0, signdata.Length)); json["pubkey"] = new MyJson.JsonNode_ValueString(SignTool.Bytes2HexString(pubkey, 0, pubkey.Length)); } else { json["tag"] = new MyJson.JsonNode_ValueNumber(-1); json["msg"] = new MyJson.JsonNode_ValueString("faild"); } linking = false; time = 0; Console.WriteLine(json.ToString()); iOwinContext.Response.Write(json.ToString()); driver_win.DriverCtr.Ins.signEventHandlerCallBack -= signCallBack; iOwinContext = null; }
public MyJson.IJsonNode Parser(Component com, NeedList needlist) { UISlider t = com as UISlider; var json = new MyJson.JsonNode_Object(); json["value"] = new MyJson.JsonNode_ValueNumber(t.value); json["alpha"] = new MyJson.JsonNode_ValueNumber(t.alpha); json["numberOfSteps"] = new MyJson.JsonNode_ValueNumber(t.numberOfSteps); if (t.foregroundWidget != null) { json["foregroundWidget"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.foregroundWidget.gameObject)); } if (t.backgroundWidget != null) { json["backgroundWidget"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.backgroundWidget.gameObject)); } if (t.thumb != null) { json["thumb"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.thumb.gameObject)); } json["fillDirection"] = new MyJson.JsonNode_ValueString(t.fillDirection.ToString()); return json; }
public MyJson.IJsonNode Parser(Component com, NeedList list) { MeshRenderer t = com as MeshRenderer; var json = new MyJson.JsonNode_Object(); json["castShadows"] = new MyJson.JsonNode_ValueNumber(t.castShadows); json["receiveShadows"] = new MyJson.JsonNode_ValueNumber(t.receiveShadows); json["useLightProbes"] = new MyJson.JsonNode_ValueNumber(t.useLightProbes); int meshcount = t.sharedMaterials.Length; json["materials"] = new MyJson.JsonNode_Array(); foreach (var m in t.sharedMaterials) { MyJson.JsonNode_Object matobj = new MyJson.JsonNode_Object(); json["materials"].AddArrayValue(matobj); matobj.SetDictValue("name", m.name); matobj.SetDictValue("shader", m.shader.name); matobj.SetDictValue("shaderkeyword", new MyJson.JsonNode_Array()); foreach (var shaderkey in m.shaderKeywords) { matobj["shaderkeyword"].AddArrayValue(shaderkey); } if (m.mainTexture != null) { string name = AssetMgr.SaveTexture(m.mainTexture, System.IO.Path.Combine(Application.streamingAssetsPath, "texture")); matobj.SetDictValue("maintex", name); list.AddDependTexture(name); } } return(json); }
static MyJson.IJsonNode UnPackJsonNumber(System.IO.Stream stream, byte tagfirst) { MyJson.JsonNode_ValueNumber number = new MyJson.JsonNode_ValueNumber(); bool isFloat = (tagfirst & 32) > 0; bool isBool = (tagfirst & 16) > 0; bool isNull = (tagfirst & 8) > 0; int blen = tagfirst % 8 + 1; byte[] buf = new byte[4]; for (int i = 0; i < 4; i++) { buf[i] = 0; } if (isBool) { number.SetBool(isNull); } else if (isNull) { number.SetNull(); } else if (isFloat) { stream.Read(buf, 0, blen); number.value = BitConverter.ToSingle(buf, 0); } else { stream.Read(buf, 0, blen); number.value = BitConverter.ToInt32(buf, 0); } return(number); }
public override void HandleMsg(params object[] _params) { EnumMsgCode enumMsgCode = (EnumMsgCode)_params[0]; EnumErrorCode enumErrorCode = (EnumErrorCode)_params[1]; MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); if (enumMsgCode == EnumMsgCode.SignSuc) { byte[] _outdata = (byte[])_params[1]; var pubkeylen = _outdata[0]; var pubkey = new byte[pubkeylen]; Array.Copy(_outdata, 1, pubkey, 0, pubkeylen); var signdata = _outdata.Skip(pubkeylen + 1).ToArray(); json["signdata"] = new MyJson.JsonNode_ValueString(SignTool.Bytes2HexString(signdata, 0, signdata.Length)); json["pubkey"] = new MyJson.JsonNode_ValueString(SignTool.Bytes2HexString(pubkey, 0, pubkey.Length)); json["tag"] = new MyJson.JsonNode_ValueNumber(0); } else { json["signdata"] = new MyJson.JsonNode_ValueString(""); json["pubkey"] = new MyJson.JsonNode_ValueString(""); json["tag"] = new MyJson.JsonNode_ValueNumber(0); } result.msgCode = enumMsgCode; result.data = json; }
string _http_cmd_ping(System.Net.HttpListenerContext req) {//固定协议 MyJson.JsonNode_Object map = new MyJson.JsonNode_Object(); map["status"] = new MyJson.JsonNode_ValueNumber(0); map["ver"] = new MyJson.JsonNode_ValueString("V0.01"); map["sign"] = new MyJson.JsonNode_ValueString("sha1"); return(map.ToString()); }
private static void ver(IOwinContext context, FormData formdata) { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(0); MyJson.JsonNode_Array maps = new MyJson.JsonNode_Array(); json.SetDictValue("msg", "SignMachine 0.01"); context.Response.Write(json.ToString()); return; }
public static void ParserWidget(MyJson.JsonNode_Object json, UIWidget widget) { json["w_color"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(widget.color)); json["w_pivot"] = new MyJson.JsonNode_ValueString(widget.pivot.ToString()); json["w_depth"] = new MyJson.JsonNode_ValueNumber(widget.depth); json["w_dimensions"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector2ToString(new Vector2(widget.width, widget.height))); json["w_keepasp"] = new MyJson.JsonNode_ValueString(widget.keepAspectRatio.ToString()); //json["w_asp"] = new MyJson.JsonNode_ValueNumber(widget.aspectRatio); }
public MyJson.IJsonNode Parser(Component com, NeedList list) { BoxCollider t = com as BoxCollider; var json = new MyJson.JsonNode_Object(); json["isTrigger"] = new MyJson.JsonNode_ValueNumber(t.isTrigger); json["center"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector3ToString(t.center)); json["size"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector3ToString(t.size)); return(json); }
private static async Task ver(IOwinContext context, FormData formdata) { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(0); MyJson.JsonNode_Array maps = new MyJson.JsonNode_Array(); json.SetDictValue("msg", "HardDrive Http Gate By GD3D 0.01"); await context.Response.WriteAsync(json.ToString()); return; }
private static async Task help(IOwinContext context, FormData formdata) { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(0); MyJson.JsonNode_Array maps = new MyJson.JsonNode_Array(); json.SetDictValue("msg", "AntShares Http Gate By lights " + AntGateway.ver); await context.Response.WriteAsync(json.ToString()); return; }
public MyJson.IJsonNode Parser(Component com,NeedList list) { BoxCollider t = com as BoxCollider; var json = new MyJson.JsonNode_Object(); json["isTrigger"] = new MyJson.JsonNode_ValueNumber(t.isTrigger); json["center"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector3ToString(t.center)); json["size"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector3ToString(t.size)); return json; }
void onCLick_wallet_creat2() { string passward1 = m_panel.FindChild("wallet_create/wallet_password1").GetComponent <InputField>().text; string passward2 = m_panel.FindChild("wallet_create/wallet_password2").GetComponent <InputField>().text; if (passward1 == "") { testtool.showNotice("请输入密码"); return; } if (passward2 == "") { testtool.showNotice("请确认密码"); return; } if (passward1 != passward2) { testtool.showNotice("密码不一致"); return; } try { //创建一个钱包 ThinNeo.NEP6.NEP6Wallet wallet = new ThinNeo.NEP6.NEP6Wallet(""); byte[] privateKey = new byte[32]; RandomNumberGenerator rng = RandomNumberGenerator.Create(); rng.GetBytes(privateKey); wallet.CreateAccount(privateKey, passward1); MyJson.JsonNode_Object wallet_json = new MyJson.JsonNode_Object(); var n = new MyJson.JsonNode_ValueNumber(); n.SetNull(); wallet_json["name"] = n; wallet_json["version"] = new MyJson.JsonNode_ValueString("1.0"); wallet_json["scrypt"] = wallet.scrypt.ToJson(); wallet_json["accounts"] = new MyJson.JsonNode_Array(); foreach (var ac in wallet.accounts.Values) { var jnot = ac.ToJson(); wallet_json["accounts"].AsList().Add(jnot); } wallet_json["extra"] = n; var wif = ThinNeo.Helper.GetWifFromPrivateKey(privateKey); roleInfo.getInstance().set_storage(wif); m_panel.FindChild("wallet_create").gameObject.SetActive(false); api_tool._instance.bindWallet(roleInfo.getInstance().uid, roleInfo.getInstance().token, wallet_json.ToString(), on_wallet_bind); } catch { testtool.showNotice("创建钱包错误"); } }
void SaveItem() { //GameObject setobj = null;//选中的对象 //bool bUseHashName = true;//是否使用hash作为资源文件名 //string exportResult = null;//导出结果 //string exportPath = null;//导出路径 //bool bUseHashTreeName = false;//是否使用hash作为导出节点名 //string exportNodeName = "";//导出节点名称 nodeParser.nodeParser np = new nodeParser.nodeParser(); np.SaveNode(this.setobj);//先强制使用HashName if (System.IO.Directory.Exists(exportPath) == false) { System.IO.Directory.CreateDirectory(exportPath); } string respath = System.IO.Path.Combine(exportPath, "resources"); if (System.IO.Directory.Exists(respath) == false) { System.IO.Directory.CreateDirectory(respath); } MyJson.JsonNode_Array indexfile = new MyJson.JsonNode_Array(); foreach (var f in np.bufs) { //写入文件 { var file = System.IO.Path.Combine(respath, f.Key); System.IO.File.WriteAllBytes(file, f.Value); } //记录索引 MyJson.JsonNode_Object indexitem = new MyJson.JsonNode_Object(); indexitem["Name"] = new MyJson.JsonNode_ValueString("resources/" + f.Key); indexitem["Length"] = new MyJson.JsonNode_ValueNumber(f.Value.Length); indexfile.Add(indexitem); } indexfile.Sort((a, b) => { return(string.Compare(a.asDict()["Name"].AsString(), b.asDict()["Name"].AsString())); }); {//保存索引文件 byte[] indexcode = System.Text.Encoding.UTF8.GetBytes(indexfile.ToString()); exportResult = exportNodeName; if (bUseHashTreeName) { exportResult = ResLibTool.ComputeHashString(indexcode); } string outfile = System.IO.Path.Combine(exportPath, exportResult + ".indexlist.txt"); System.IO.File.WriteAllBytes(outfile, indexcode); } }
public static MyJson.IJsonNode Parser(GameObject obj, NeedList needList = null) { AssetMgr.Reset(); MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); Debug.Log("ParserObj:" + obj.name); var comps = obj.GetComponents <Component>(); MyJson.JsonNode_Array jsoncs = new MyJson.JsonNode_Array(); json["name"] = new MyJson.JsonNode_ValueString(obj.name); json["active"] = new MyJson.JsonNode_ValueNumber(obj.activeSelf); json["_id"] = new MyJson.JsonNode_ValueNumber(ObjToID(obj)); json["coms"] = jsoncs; foreach (var c in comps) { if (c == null) { Debug.LogWarning("--组件丢失"); } else { Type type = c.GetType(); var pp = ComponentParser.Instance.GetParser(type); if (pp != null) { MyJson.JsonNode_Object jsonc = new MyJson.JsonNode_Object(); jsonc["type"] = new MyJson.JsonNode_ValueString(type.ToString()); if (c is Behaviour) { jsonc["enabled"] = new MyJson.JsonNode_ValueNumber((c as Behaviour).enabled); } jsonc["param"] = pp.Parser(c, needList); Debug.Log("--" + c.name + "<" + type.ToString() + ">:" + jsonc["param"].ToString()); jsoncs.Add(jsonc); } else { Debug.LogWarning("--" + c.name + "<" + type.ToString() + ">" + "没有处理器"); } } } if (obj.transform.childCount > 0) { MyJson.JsonNode_Array jsonsubarray = new MyJson.JsonNode_Array(); json["child"] = jsonsubarray; foreach (Transform t in obj.transform) { jsonsubarray.Add(Parser(t.gameObject, needList)); } } Debug.Log("ParserObjFinish:" + obj.name); AssetMgr.Reset(); return(json); }
public MyJson.IJsonNode Parser(Component com, NeedList needlist) { UIDragDropContainer t = com as UIDragDropContainer; var json = new MyJson.JsonNode_Object(); if (t.reparentTarget != null) { json["reparentTarget"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.reparentTarget.gameObject)); } return(json); }
public void ChangeLanguage(EnumLanguage enumLanguage) { MyJson.JsonNode_Object jsonConfig = new MyJson.JsonNode_Object(); //读取语言配置包 if (System.IO.File.Exists("appsetting.txt")) { var txt = System.IO.File.ReadAllText("appsetting.txt"); jsonConfig = MyJson.Parse(txt) as MyJson.JsonNode_Object; jsonConfig["language"] = new MyJson.JsonNode_ValueNumber((uint)enumLanguage); } System.IO.File.WriteAllText("appsetting.txt", jsonConfig.ToString()); }
public MyJson.IJsonNode Parser(Component com, NeedList needlist) { UIDragScrollView t = com as UIDragScrollView; var json = new MyJson.JsonNode_Object(); if (t.scrollView != null) { json["scrollView"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.scrollView.gameObject)); } return(json); }
public MyJson.IJsonNode Parser(Component com,NeedList needlist) { UISprite t = com as UISprite; var json = new MyJson.JsonNode_Object(); //t.atlas atlas 有特殊的打包逻辑 string atlas = AtlasMgr.SaveAtlas(t.atlas, System.IO.Path.Combine(Application.streamingAssetsPath, "nguiatlas"), System.IO.Path.Combine(Application.streamingAssetsPath, "nguitex")); json["atlas"] =new MyJson.JsonNode_ValueString( atlas); if(needlist!=null) { needlist.AddDependAtlas(atlas); } json["spriteName"] = new MyJson.JsonNode_ValueString(t.spriteName); json["spriteType"] = new MyJson.JsonNode_ValueString(t.type.ToString()); if (t.type == UISprite.Type.Simple) { json["flip"] = new MyJson.JsonNode_ValueString(t.flip.ToString()); } else if (t.type == UISprite.Type.Sliced) { json["centerType"] = new MyJson.JsonNode_ValueString(t.centerType.ToString()); json["flip"] = new MyJson.JsonNode_ValueString(t.flip.ToString()); } else if (t.type == UISprite.Type.Tiled) { } else if (t.type == UISprite.Type.Filled) { json["flip"] = new MyJson.JsonNode_ValueString(t.flip.ToString()); json["fillDirection"] = new MyJson.JsonNode_ValueString(t.fillDirection.ToString()); json["fillAmount"] = new MyJson.JsonNode_ValueNumber(t.fillAmount); json["invert"] = new MyJson.JsonNode_ValueNumber(t.invert); } else if(t.type== UISprite.Type.Advanced) { json["leftType"] = new MyJson.JsonNode_ValueString(t.leftType.ToString()); json["rightType"] = new MyJson.JsonNode_ValueString(t.rightType.ToString()); json["topType"] = new MyJson.JsonNode_ValueString(t.topType.ToString()); json["bottomType"] = new MyJson.JsonNode_ValueString(t.bottomType.ToString()); json["centerType"] = new MyJson.JsonNode_ValueString(t.centerType.ToString()); json["flip"] = new MyJson.JsonNode_ValueString(t.flip.ToString()); } ComponentParser.ParserWidget(json, t); return json; }
public MyJson.IJsonNode Parser(Component com,NeedList list) { MeshCollider t = com as MeshCollider; var json = new MyJson.JsonNode_Object(); json["isTrigger"] = new MyJson.JsonNode_ValueNumber(t.isTrigger); var name = AssetMgr.SaveMesh(t.sharedMesh, System.IO.Path.Combine(Application.streamingAssetsPath, "mesh")); list.AddDependMesh(name); json.SetDictValue("mesh", name); json.SetDictValue("convex", t.convex); json.SetDictValue("smoothSphereCollisions", t.smoothSphereCollisions); return json; }
public MyJson.IJsonNode Parser(Component com,NeedList list) { UIAnchor t = com as UIAnchor; var json = new MyJson.JsonNode_Object(); json["uiCamera"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ComponentToID(t.uiCamera)); json["container"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.container)); json["side"] = new MyJson.JsonNode_ValueString(t.side.ToString()); json["runOnlyOnce"] = new MyJson.JsonNode_ValueNumber(t.runOnlyOnce); json["relativeOffset"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector2ToString(t.relativeOffset)); json["pixelOffset"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector2ToString(t.pixelOffset)); return json; }
public MyJson.IJsonNode Parser(Component com, NeedList needlist) { UIDragScrollView t = com as UIDragScrollView; var json = new MyJson.JsonNode_Object(); if (t.scrollView != null) { json["scrollView"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.scrollView.gameObject)); } return json; }
public MyJson.IJsonNode Parser(Component com, NeedList list) { MeshCollider t = com as MeshCollider; var json = new MyJson.JsonNode_Object(); json["isTrigger"] = new MyJson.JsonNode_ValueNumber(t.isTrigger); var name = AssetMgr.SaveMesh(t.sharedMesh, System.IO.Path.Combine(Application.streamingAssetsPath, "mesh")); list.AddDependMesh(name); json.SetDictValue("mesh", name); json.SetDictValue("convex", t.convex); json.SetDictValue("smoothSphereCollisions", t.smoothSphereCollisions); return(json); }
public MyJson.IJsonNode Parser(Component com, NeedList needlist) { UISprite t = com as UISprite; var json = new MyJson.JsonNode_Object(); //t.atlas atlas 有特殊的打包逻辑 string atlas = AtlasMgr.SaveAtlas(t.atlas, System.IO.Path.Combine(Application.streamingAssetsPath, "nguiatlas"), System.IO.Path.Combine(Application.streamingAssetsPath, "nguitex")); json["atlas"] = new MyJson.JsonNode_ValueString(atlas); if (needlist != null) { needlist.AddDependAtlas(atlas); } json["spriteName"] = new MyJson.JsonNode_ValueString(t.spriteName); json["spriteType"] = new MyJson.JsonNode_ValueString(t.type.ToString()); if (t.type == UISprite.Type.Simple) { json["flip"] = new MyJson.JsonNode_ValueString(t.flip.ToString()); } else if (t.type == UISprite.Type.Sliced) { json["centerType"] = new MyJson.JsonNode_ValueString(t.centerType.ToString()); json["flip"] = new MyJson.JsonNode_ValueString(t.flip.ToString()); } else if (t.type == UISprite.Type.Tiled) { } else if (t.type == UISprite.Type.Filled) { json["flip"] = new MyJson.JsonNode_ValueString(t.flip.ToString()); json["fillDirection"] = new MyJson.JsonNode_ValueString(t.fillDirection.ToString()); json["fillAmount"] = new MyJson.JsonNode_ValueNumber(t.fillAmount); json["invert"] = new MyJson.JsonNode_ValueNumber(t.invert); } else if (t.type == UISprite.Type.Advanced) { json["leftType"] = new MyJson.JsonNode_ValueString(t.leftType.ToString()); json["rightType"] = new MyJson.JsonNode_ValueString(t.rightType.ToString()); json["topType"] = new MyJson.JsonNode_ValueString(t.topType.ToString()); json["bottomType"] = new MyJson.JsonNode_ValueString(t.bottomType.ToString()); json["centerType"] = new MyJson.JsonNode_ValueString(t.centerType.ToString()); json["flip"] = new MyJson.JsonNode_ValueString(t.flip.ToString()); } ComponentParser.ParserWidget(json, t); return(json); }
private static async Task file_save(IOwinContext context, FormData formdata) { if (formdata.mapParams.ContainsKey("url") && formdata.mapParams.ContainsKey("path") && formdata.mapFiles.ContainsKey("file")) { try { var p = CustomServer.GetStaticFileParser(formdata.mapParams["url"]); if (p != null) { var path = System.IO.Path.Combine(p.pathOnDrive, formdata.mapParams["path"]); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } var pathpath = System.IO.Path.GetDirectoryName(path); System.IO.Directory.CreateDirectory(pathpath); var file = formdata.mapFiles["file"]; System.IO.File.WriteAllBytes(path, file); MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(0); await context.Response.WriteAsync(json.ToString()); return; } } catch { } { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(-2); json["msg"] = new MyJson.JsonNode_ValueString("file_save fail."); await context.Response.WriteAsync(json.ToString()); return; } } else { MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["tag"] = new MyJson.JsonNode_ValueNumber(-1); json["msg"] = new MyJson.JsonNode_ValueString("need param: url & path & file."); await context.Response.WriteAsync(json.ToString()); return; } }
public static void SaveNep5() { MyJson.JsonNode_Object mapInfo = new MyJson.JsonNode_Object(); foreach (var item in assetNep5) { MyJson.JsonNode_Object jsonItem = new MyJson.JsonNode_Object(); mapInfo[item.Key] = jsonItem; jsonItem["name"] = new MyJson.JsonNode_ValueString(item.Value.name); jsonItem["symbol"] = new MyJson.JsonNode_ValueString(item.Value.symbol); jsonItem["decimals"] = new MyJson.JsonNode_ValueNumber(item.Value.decimals); } System.IO.File.Delete("nep5config.json"); System.IO.File.WriteAllText("nep5config.json", mapInfo.ToString(), System.Text.Encoding.UTF8); }
public MyJson.IJsonNode Parser(Component com, NeedList list) { UIAnchor t = com as UIAnchor; var json = new MyJson.JsonNode_Object(); json["uiCamera"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ComponentToID(t.uiCamera)); json["container"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.container)); json["side"] = new MyJson.JsonNode_ValueString(t.side.ToString()); json["runOnlyOnce"] = new MyJson.JsonNode_ValueNumber(t.runOnlyOnce); json["relativeOffset"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector2ToString(t.relativeOffset)); json["pixelOffset"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector2ToString(t.pixelOffset)); return(json); }
public MyJson.IJsonNode Parser(Component com, NeedList needlist) { UIDragDropContainer t = com as UIDragDropContainer; var json = new MyJson.JsonNode_Object(); if (t.reparentTarget != null) { json["reparentTarget"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.reparentTarget.gameObject)); } return json; }
public static string SaveAtlas(UIAtlas atlas, string path, string pathtex) { if (System.IO.Directory.Exists(path) == false) { System.IO.Directory.CreateDirectory(path); } string tname = SaveTexture(atlas.texture, pathtex); MyJson.JsonNode_Object obj = new MyJson.JsonNode_Object(); obj["pixelSize"] = new MyJson.JsonNode_ValueNumber(atlas.pixelSize); var jsonmat = new MyJson.JsonNode_Object(); obj["mat"] = jsonmat; jsonmat["shader"] = new MyJson.JsonNode_ValueString(atlas.spriteMaterial.shader.name); MyJson.JsonNode_Array shaderparams = new MyJson.JsonNode_Array(); jsonmat["shaderparam"] = shaderparams; foreach (var p in atlas.spriteMaterial.shaderKeywords) { shaderparams.Add(new MyJson.JsonNode_ValueString(p)); } jsonmat["img"] = new MyJson.JsonNode_ValueString(tname); var jsonsparray = new MyJson.JsonNode_Object(); obj["sprites"] = jsonsparray; foreach (var s in atlas.spriteList) { MyJson.JsonNode_Array sarray = new MyJson.JsonNode_Array(); jsonsparray[s.name] = sarray; sarray.Add(new MyJson.JsonNode_ValueNumber(s.x)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.y)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.width)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.height)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.borderLeft)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.borderRight)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.borderTop)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.borderBottom)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.paddingLeft)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.paddingRight)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.paddingTop)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.paddingBottom)); } string atalsName = atlas.name.ToLower(); System.IO.File.WriteAllText(System.IO.Path.Combine(path, atalsName + ".atlas.txt"), obj.ToString()); return(atalsName); }
public void WriteToJson(IResMgr resmgr, Material mat, MyJson.JsonNode_Object json) { json["shaderName"] = new MyJson.JsonNode_ValueString(this.shaderName); if (jsonConfig.ContainsKey("params")) { foreach (var item in jsonConfig["params"].asDict()) { //Debug.Log(item.Value); string type = item.Value.asDict()["type"].AsString(); string flag = item.Value.asDict()["flags"].AsString(); string name = item.Value.asDict()["name"].AsString(); if (type == "Float" || type == "Range") { json[name] = new MyJson.JsonNode_ValueNumber(mat.GetFloat(name)); } else if (type == "Vector") { json[name] = new MyJson.JsonNode_ValueString(StringHelper.ToString(mat.GetVector(name))); } else if (type == "Color") { json[name] = new MyJson.JsonNode_ValueString(StringHelper.ToString((Color32)mat.GetColor(name))); } else if (type == "Texture") { string texdim = item.Value.asDict()["texdim"].AsString(); var tex = mat.GetTexture(name); if (tex != null) { if (texdim == "Tex2D") { string texname = resmgr.SaveTexture(tex as Texture2D); json[name] = new MyJson.JsonNode_ValueString(texname); } else { throw new Exception("not support texdim:" + texdim); } } } else { throw new Exception("not support type:" + type); } } } }
public MyJson.JsonNode_Object ToJson() { MyJson.JsonNode_Object contract = new MyJson.JsonNode_Object(); contract["script"] = new MyJson.JsonNode_ValueString(Helper.Bytes2HexString(Script)); contract["parameters"] = new MyJson.JsonNode_Array(); { MyJson.JsonNode_Object item = new MyJson.JsonNode_Object(); item["name"] = new MyJson.JsonNode_ValueString("signature"); item["type"] = new MyJson.JsonNode_ValueString("Signature"); contract["parameters"].AsList().Add(item); } contract["deployed"] = new MyJson.JsonNode_ValueNumber(false); return(contract); }
public MyJson.IJsonNode Parser(Component com,NeedList list) { UIToggle t = com as UIToggle; var json = new MyJson.JsonNode_Object(); if (t.activeSprite != null) { json["activeSprite"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.activeSprite.gameObject)); Debug.Log(t.gameObject + "&&&&&&&&&&&&&&&&&&&&&"+t.activeSprite.gameObject); } //json["activeSprite"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t)); //json["group"] = new MyJson.JsonNode_ValueNumber(t.group); //json["value"] = new MyJson.JsonNode_ValueNumber(t.value); // json ["sprite"] = new MyJson.JsonNode_ValueString (t.activeSprite); // json ["onChange"] = new MyJson.JsonNode_ValueString (t.onChange); return json; }
public MyJson.IJsonNode Parser(Component com, NeedList needlist) { UIScrollView sv = com as UIScrollView; var json = new MyJson.JsonNode_Object(); json["movement"] = new MyJson.JsonNode_ValueString(sv.movement.ToString()); json["dragEffect"] = new MyJson.JsonNode_ValueString(sv.dragEffect.ToString()); json["scrollWheelFactor"] = new MyJson.JsonNode_ValueNumber(sv.scrollWheelFactor); json["momentumAmount"] = new MyJson.JsonNode_ValueNumber(sv.momentumAmount); json["restrictWithinPanel"] = new MyJson.JsonNode_ValueNumber(sv.restrictWithinPanel); json["disableDragIfFits"] = new MyJson.JsonNode_ValueNumber(sv.disableDragIfFits); json["smoothDragStart"] = new MyJson.JsonNode_ValueNumber(sv.smoothDragStart); json["iOSDragEmulation"] = new MyJson.JsonNode_ValueNumber(sv.iOSDragEmulation); return json; }
public MyJson.IJsonNode Parser(Component com,NeedList list) { UILabel t = com as UILabel; var json = new MyJson.JsonNode_Object(); //font 有特殊的打包逻辑 if (t.bitmapFont != null) { json["bfont"] = new MyJson.JsonNode_ValueString(t.bitmapFont.name); } else if (t.trueTypeFont != null) { json["tfont"] = new MyJson.JsonNode_ValueString(t.trueTypeFont.name); if(list!=null) { list.AddDependTFont(t.trueTypeFont.name); } } else { Debug.LogError("UILabel" + com.name + " 未指定Font"); } json["fontsize"] = new MyJson.JsonNode_ValueNumber(t.fontSize); //材质有特殊的打包逻辑 //json["mate"] = t.material; json["text"] = new MyJson.JsonNode_ValueString(t.text); json["overflowMethod"] = new MyJson.JsonNode_ValueString(t.overflowMethod.ToString()); json["alignment"] = new MyJson.JsonNode_ValueString(t.alignment.ToString()); json["keepCrispWhenShrunk"] = new MyJson.JsonNode_ValueString(t.keepCrispWhenShrunk.ToString()); json["applyGradient"] = new MyJson.JsonNode_ValueNumber(t.applyGradient); json["gradientTop"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(t.gradientTop)); json["gradientBottom"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(t.gradientBottom)); json["effectStyle"] = new MyJson.JsonNode_ValueString(t.effectStyle.ToString()); json["effectColor"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(t.effectColor)); json["effectDistance"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector2ToString(t.effectDistance)); json["spacing"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector2ToString(new Vector2(t.spacingX, t.spacingY))); json["maxLineCount"] = new MyJson.JsonNode_ValueNumber(t.maxLineCount); ComponentParser.ParserWidget(json, t); return json; }
public static string SaveAtlas(UIAtlas atlas, string path,string pathtex) { if (System.IO.Directory.Exists(path) == false) { System.IO.Directory.CreateDirectory(path); } string tname = SaveTexture(atlas.texture, pathtex); MyJson.JsonNode_Object obj = new MyJson.JsonNode_Object(); obj["pixelSize"] = new MyJson.JsonNode_ValueNumber(atlas.pixelSize); var jsonmat = new MyJson.JsonNode_Object(); obj["mat"] = jsonmat; jsonmat["shader"] = new MyJson.JsonNode_ValueString(atlas.spriteMaterial.shader.name); MyJson.JsonNode_Array shaderparams = new MyJson.JsonNode_Array(); jsonmat["shaderparam"] = shaderparams; foreach (var p in atlas.spriteMaterial.shaderKeywords) { shaderparams.Add(new MyJson.JsonNode_ValueString(p)); } jsonmat["img"] = new MyJson.JsonNode_ValueString(tname); var jsonsparray = new MyJson.JsonNode_Object(); obj["sprites"] = jsonsparray; foreach (var s in atlas.spriteList) { MyJson.JsonNode_Array sarray = new MyJson.JsonNode_Array(); jsonsparray[s.name] = sarray; sarray.Add(new MyJson.JsonNode_ValueNumber(s.x)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.y)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.width)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.height)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.borderLeft)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.borderRight)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.borderTop)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.borderBottom)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.paddingLeft)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.paddingRight)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.paddingTop)); sarray.Add(new MyJson.JsonNode_ValueNumber(s.paddingBottom)); } string atalsName = atlas.name.ToLower(); System.IO.File.WriteAllText(System.IO.Path.Combine(path, atalsName + ".atlas.txt"), obj.ToString()); return atalsName; }
public MyJson.IJsonNode Parser(Component com, NeedList needlist) { UIGrid t = com as UIGrid; var json = new MyJson.JsonNode_Object(); json["arrangement"] = new MyJson.JsonNode_ValueString(t.arrangement.ToString()); json["sorting"] = new MyJson.JsonNode_ValueString(t.sorting.ToString()); json["pivot"] = new MyJson.JsonNode_ValueString(t.pivot.ToString()); json["maxPerLine"] = new MyJson.JsonNode_ValueNumber(t.maxPerLine); json["cellWidth"] = new MyJson.JsonNode_ValueNumber(t.cellWidth); json["cellHeight"] = new MyJson.JsonNode_ValueNumber(t.cellHeight); json["animateSmoothly"] = new MyJson.JsonNode_ValueNumber(t.animateSmoothly); json["hideInactive"] = new MyJson.JsonNode_ValueNumber(t.hideInactive); json["keepWithinPanel"] = new MyJson.JsonNode_ValueNumber(t.keepWithinPanel); return json; }
public MyJson.IJsonNode Parser(Component com,NeedList list) { UIPanel t = com as UIPanel; var json = new MyJson.JsonNode_Object(); json["alpha"] = new MyJson.JsonNode_ValueNumber(t.alpha); json["depth"] = new MyJson.JsonNode_ValueNumber(t.depth); json["clipping"] = new MyJson.JsonNode_ValueString(t.clipping.ToString()); if(t.clipping!= UIDrawCall.Clipping.None) { json["offset"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector2ToString(t.clipOffset)); json["region"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector4ToString(t.baseClipRegion)); if(t.clipping== UIDrawCall.Clipping.SoftClip) { json["softness"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.Vector2ToString(t.clipSoftness)); } } return json; }
public MyJson.IJsonNode Parser(Component com,NeedList list) { UIButton t = com as UIButton; var json = new MyJson.JsonNode_Object(); json["tweenTarget"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(t.tweenTarget)); json["dragHighlight"] = new MyJson.JsonNode_ValueNumber(t.dragHighlight); json["duration"] = new MyJson.JsonNode_ValueNumber(t.duration); json["colorN"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(t.defaultColor)); json["colorH"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(t.hover)); json["colorP"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(t.pressed)); json["colorD"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(t.disabledColor)); json["spriteN"] = new MyJson.JsonNode_ValueString(t.normalSprite); json["springH"] = new MyJson.JsonNode_ValueString(t.hoverSprite); json["springP"] = new MyJson.JsonNode_ValueString(t.pressedSprite); json["springD"] = new MyJson.JsonNode_ValueString(t.disabledSprite); json["pixelSnap"] = new MyJson.JsonNode_ValueNumber(t.pixelSnap); return json; }
public MyJson.IJsonNode Parser(Component com, NeedList needlist) { UIInput inp = com as UIInput; var json = new MyJson.JsonNode_Object(); if (inp.label != null) { json["label"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ComponentToID(inp.label.GetComponent<UILabel>())); } json["value"] = new MyJson.JsonNode_ValueString(inp.value); json["savedAs"] = new MyJson.JsonNode_ValueString(inp.savedAs); json["activeTextColor"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(inp.activeTextColor)); json["caretColor"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(inp.caretColor)); json["selectionColor"] = new MyJson.JsonNode_ValueString(ComponentTypeConvert.ColorToString(inp.selectionColor)); if (inp.selectOnTab != null) { json["selectOnTab"] = new MyJson.JsonNode_ValueNumber(GameObjParser.ObjToID(inp.selectOnTab.gameObject)); } json["inputType"] = new MyJson.JsonNode_ValueString(inp.inputType.ToString()); json["validation"] = new MyJson.JsonNode_ValueString(inp.validation.ToString()); json["characterLimit"] = new MyJson.JsonNode_ValueNumber(inp.characterLimit); return json; }
void SaveItem() { //GameObject setobj = null;//选中的对象 //bool bUseHashName = true;//是否使用hash作为资源文件名 //string exportResult = null;//导出结果 //string exportPath = null;//导出路径 //bool bUseHashTreeName = false;//是否使用hash作为导出节点名 //string exportNodeName = "";//导出节点名称 nodeParser.nodeParser np = new nodeParser.nodeParser(); np.SaveNode(this.setobj);//先强制使用HashName if (System.IO.Directory.Exists(exportPath) == false) System.IO.Directory.CreateDirectory(exportPath); string respath = System.IO.Path.Combine(exportPath, "resources"); if (System.IO.Directory.Exists(respath) == false) System.IO.Directory.CreateDirectory(respath); MyJson.JsonNode_Array indexfile = new MyJson.JsonNode_Array(); foreach (var f in np.bufs) { //写入文件 { var file = System.IO.Path.Combine(respath, f.Key); System.IO.File.WriteAllBytes(file, f.Value); } //记录索引 MyJson.JsonNode_Object indexitem = new MyJson.JsonNode_Object(); indexitem["Name"] = new MyJson.JsonNode_ValueString("resources/" + f.Key); indexitem["Length"] = new MyJson.JsonNode_ValueNumber(f.Value.Length); indexfile.Add(indexitem); } indexfile.Sort((a, b) => { return string.Compare(a.asDict()["Name"].AsString(), b.asDict()["Name"].AsString()); }); {//保存索引文件 byte[] indexcode = System.Text.Encoding.UTF8.GetBytes(indexfile.ToString()); exportResult = exportNodeName; if (bUseHashTreeName) { exportResult = ResLibTool.ComputeHashString(indexcode); } string outfile = System.IO.Path.Combine(exportPath, exportResult + ".indexlist.txt"); System.IO.File.WriteAllBytes(outfile, indexcode); } }
public static MyJson.JsonNode_Object GetMatConfig(Material mat) { MaterialProperty[] mps = MaterialEditor.GetMaterialProperties(new UnityEngine.Object[] { mat }); MyJson.JsonNode_Object json = new MyJson.JsonNode_Object(); json["name"] = new MyJson.JsonNode_ValueString(mat.shader.name); if (mps != null && mps.Length > 0) { MyJson.JsonNode_Object _params = new MyJson.JsonNode_Object(); json["params"] = _params; foreach (var mp in mps) { if (mp.flags == MaterialProperty.PropFlags.HideInInspector) continue; MyJson.JsonNode_Object p = new MyJson.JsonNode_Object(); _params[mp.name] = p; p["name"] = new MyJson.JsonNode_ValueString(mp.name); p["type"] = new MyJson.JsonNode_ValueString(mp.type.ToString()); p["flags"] = new MyJson.JsonNode_ValueString(mp.flags.ToString()); if (mp.type == MaterialProperty.PropType.Texture) { p["texdim"] = new MyJson.JsonNode_ValueString(mp.textureDimension.ToString()); } if (mp.type == MaterialProperty.PropType.Range) { p["rangex"] = new MyJson.JsonNode_ValueNumber(mp.rangeLimits.x); p["rangey"] = new MyJson.JsonNode_ValueNumber(mp.rangeLimits.y); } } } else { json["error"] = new MyJson.JsonNode_ValueString("this mat do not have property."); } return json; }
void Obj2Json(GameObject _obj, MyJson.JsonNode_Object _json) { _json["name"] = new MyJson.JsonNode_ValueString(_obj.name); _json["id"] = new MyJson.JsonNode_ValueNumber(_obj.GetInstanceID()); //遍历填充组件 MyJson.JsonNode_Array comps = new MyJson.JsonNode_Array(); _json["components"] = comps; foreach (var c in _obj.GetComponents<Component>()) { if (c == null) { Debug.LogWarning("got a commponet null."); continue; } string type = c.GetType().Name.ToLower(); var _cjson = new MyJson.JsonNode_Object(); _cjson["type"] = new MyJson.JsonNode_ValueString(type); if (componentParsers.ContainsKey(type) == false) { Debug.LogWarning("can't find comparser:" + type); continue; } componentParsers[type].WriteToJson(resmgr, _obj, c, _cjson); comps.Add(_cjson); } //遍历填充树 if (_obj.transform.childCount > 0) { MyJson.JsonNode_Array children = new MyJson.JsonNode_Array(); _json["children"] = children; for (int i = 0; i < _obj.transform.childCount; i++) { var subobj = _obj.transform.GetChild(i).gameObject; MyJson.JsonNode_Object _subjson = new MyJson.JsonNode_Object(); Obj2Json(subobj, _subjson); children.Add(_subjson); } } }
static MyJson.IJsonNode UnPackJsonNumber(System.IO.Stream stream, byte tagfirst) { MyJson.JsonNode_ValueNumber number = new MyJson.JsonNode_ValueNumber(); bool isFloat = (tagfirst & 32) > 0; bool isBool = (tagfirst & 16) > 0; bool isNull = (tagfirst & 8) > 0; int blen = tagfirst % 8 + 1; byte[] buf = new byte[4]; for (int i = 0; i < 4; i++) { buf[i] = 0; } if (isBool) { number.SetBool(isNull); } else if (isNull) { number.SetNull(); } else if (isFloat) { stream.Read(buf, 0, blen); number.value = BitConverter.ToSingle(buf, 0); } else { stream.Read(buf, 0, blen); number.value = BitConverter.ToInt32(buf, 0); } return number; }
//从Atlas 加载 public static UIAtlas UIAtlasFromJson(MyJson.JsonNode_Object objJson,string name) { GameObject _obj = new GameObject(); _obj.hideFlags = HideFlags.HideInHierarchy;// false; _obj.SetActive(false); UIAtlas atlas = _obj.AddComponent<UIAtlas>(); MyJson.JsonNode_Object obj = objJson; atlas.name = name; atlas.pixelSize = obj["pixelSize"] as MyJson.JsonNode_ValueNumber; obj["pixelSize"] = new MyJson.JsonNode_ValueNumber(atlas.pixelSize); MyJson.JsonNode_Object jsonmat = obj["mat"] as MyJson.JsonNode_Object; string shader = jsonmat["shader"] as MyJson.JsonNode_ValueString; List<string> pp = new List<string>(); foreach (MyJson.JsonNode_ValueString p in jsonmat["shaderparam"] as MyJson.JsonNode_Array) { pp.Add(p); } Material mat = new Material(Shader.Find(shader)); mat.shaderKeywords = pp.ToArray(); if(jsonmat.ContainsKey("img")) { string texname =jsonmat["img"] as MyJson.JsonNode_ValueString; texname = texname.ToLower(); var tex = AtlasMgr.Instance.GetTexture(texname); if(tex!=null) { mat.mainTexture = tex; } else { Debug.Log("tex:" + texname + " not found"); } } else { Debug.Log("tex not exist."); } atlas.spriteMaterial = mat; MyJson.JsonNode_Object sps = obj["sprites"] as MyJson.JsonNode_Object; //jsonmat["img"] = new MyJson.JsonNode_ValueString(tname); foreach (var s in sps) { UISpriteData data = new UISpriteData(); data.name = s.Key; MyJson.JsonNode_Array sarray = s.Value as MyJson.JsonNode_Array; data.x = sarray[0] as MyJson.JsonNode_ValueNumber; data.y = sarray[1] as MyJson.JsonNode_ValueNumber; data.width = sarray[2] as MyJson.JsonNode_ValueNumber; data.height = sarray[3] as MyJson.JsonNode_ValueNumber; data.borderLeft = sarray[4] as MyJson.JsonNode_ValueNumber; data.borderRight = sarray[5] as MyJson.JsonNode_ValueNumber; data.borderTop = sarray[6] as MyJson.JsonNode_ValueNumber; data.borderBottom = sarray[7] as MyJson.JsonNode_ValueNumber; data.paddingLeft = sarray[8] as MyJson.JsonNode_ValueNumber; data.paddingRight = sarray[9] as MyJson.JsonNode_ValueNumber; data.paddingTop = sarray[10] as MyJson.JsonNode_ValueNumber; data.paddingBottom = sarray[11] as MyJson.JsonNode_ValueNumber; atlas.spriteList.Add(data); } return atlas; }
public static MyJson.JsonNode_Object ToJson(object ScriptObject) { CLRSharp.CLRSharp_Instance sobj = ScriptObject as CLRSharp.CLRSharp_Instance; if (sobj == null) return null; MyJson.JsonNode_Object obj = new MyJson.JsonNode_Object(); var stype = sobj.type; // CSLE.SType stype=sobj.type; var ms = stype.GetFieldNames(); foreach (var m in ms) { var field = stype.GetField(m); if (field.isStatic) continue; if ((Type)field.FieldType.TypeForSystem == typeof(int)) { obj[m] = new MyJson.JsonNode_ValueNumber((int)sobj.Fields[m]); } else if ((Type)field.FieldType.TypeForSystem == typeof(float)) { obj[m] = new MyJson.JsonNode_ValueNumber((float)sobj.Fields[m]); } else if ((Type)field.FieldType.TypeForSystem == typeof(double)) { obj[m] = new MyJson.JsonNode_ValueNumber((double)sobj.Fields[m]); } else if ((Type)field.FieldType.TypeForSystem == typeof(string)) { obj[m] = new MyJson.JsonNode_ValueString((string)sobj.Fields[m]); } // else if ((Type)m.Value.type.type == typeof(List<object>)) else if ((Type)field.FieldType.TypeForSystem == typeof(List<CLRSharp.CLRSharp_Instance>)) { //处理List List<CLRSharp.CLRSharp_Instance> slist = sobj.Fields[m] as List<CLRSharp.CLRSharp_Instance>; var list = new MyJson.JsonNode_Array(); obj[m] = list; foreach (var item in slist) { list.Add(ToJson(item)); } } else if ((Type)field.FieldType.TypeForSystem == typeof(List<string>)) { var list = new MyJson.JsonNode_Array(); obj[m] = list; List<string> slist = sobj.Fields[m] as List<string>; foreach (var item in slist) { list.Add(new MyJson.JsonNode_ValueString(item)); } } else if ((Type)field.FieldType.TypeForSystem == typeof(List<int>)) { var list = new MyJson.JsonNode_Array(); obj[m] = list; List<int> slist = sobj.Fields[m] as List<int>; foreach (var item in slist) { list.Add(new MyJson.JsonNode_ValueNumber(item)); } } else if ((Type)field.FieldType.TypeForSystem == typeof(List<float>)) { var list = new MyJson.JsonNode_Array(); obj[m] = list; List<float> slist = sobj.Fields[m] as List<float>; foreach (var item in slist) { list.Add(new MyJson.JsonNode_ValueNumber(item)); } } else if ((Type)field.FieldType.TypeForSystem == typeof(List<double>)) { var list = new MyJson.JsonNode_Array(); obj[m] = list; List<double> slist = sobj.Fields[m] as List<double>; foreach (var item in slist) { list.Add(new MyJson.JsonNode_ValueNumber(item)); } } else if (field.FieldType is CLRSharp.ICLRType_Sharp) // else if ((CSLE.SType)m.Value.type.type != null)//其他嵌套脚本类型 { obj[m] = ToJson(sobj.Fields[m]); } else { Logger.Log("发现不能处理的类型:" + stype.Name + ":" + m + ":" + field.FieldType.ToString()); } } return obj; }